@charset "UTF-8";

/*---------------------------------
Basic Style Guide
----------------------------------*/
html {
	font-size: 62.5%;
}

body {
	padding: 0;
	margin: 0;
	line-height: 1.5;
	font-size: 14px;
	font-size: 1.4rem;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
	color: #221814;
	text-align: left;
	position: relative;
}

/*---------------------------------
ここから
----------------------------------*/

/**<a>　リンク*/
a:link,
a:visited,
a:active,
a:hover {
	/* FireFox リンク選択時の点線を消す */
	overflow: hidden;
	outline: none;
	text-decoration: none;
}

a {
	color: #0098D8;
}

a:hover,
a:focus,
a:active {
	color: #0098D8;
	text-decoration: underline;
}

a:hover .img-hover {
	opacity: 0.7;
}

div {
	padding: 0;
	margin: 0;
	position: relative;
}

section {
	padding: 0;
	margin: 0;
	position: relative;
}

article {
	padding: 0;
	margin: 0;
	position: relative;
}

hr {
	text-align: left;
	margin: 0;
	padding: 0;
}

br {
	letter-spacing: normal;
	/* ← IE6、IE7対策 */
}

.m_b2 {
	margin-bottom: 2px;
}

.m_b10 {
	margin-bottom: 10px;
}

.m_b15 {
	margin-bottom: 15px;
}

.m_b20 {
	margin-bottom: 20px;
}

.m_b30 {
	margin-bottom: 30px;
}

.m_b40 {
	margin-bottom: 40px;
}

.m_b80 {
	margin-bottom: 80px;
}

.m_auto {
	margin-left: auto;
	margin-right: auto;
}

.m_nt20 {
	margin-top: -4px;
}

.m_t10 {
	margin-top: 10px;
}

.m_t20 {
	margin-top: 20px;
}

.m_r40 {
	margin-right: 40px !important;
}

.m_l10 {
	margin-left: 10px;
}

.p_t8 {
	padding-top: 8px;
}

.p_t16 {
	padding-top: 16px;
}

.p_t20 {
	padding-top: 20px;
}

.p_t26 {
	padding-top: 26px;
}

.p_t32 {
	padding-top: 32px;
}

.p_b16 {
	padding-bottom: 16px;
}

.p_b36 {
	padding-bottom: 36px;
}

.p_lr6 {
	padding-left: 6px;
	padding-right: 6px;
}

.p_trl {
	padding-top: 20px;
	padding-left: 20px;
	padding-right: 20px;
}

.f_right {
	float: right;
}

.f_left {
	float: left;
}

.t_center {
	text-align: center;
}

.t_indent {
	padding-left: 1em;
	text-indent: -1em;
}

.t_indent02 {
	padding-left: 1em;
	text-indent: -1em;
}

.black {
	color: #3D3938;
}

.blue {
	color: #0096D4;
}

.b_colo1 {
	background-color: #F7F5DB !important;
}

.b_colo2 {
	background-color: #F1EEE9;
}

.font-s11 {
	font-size: 11px;
	font-size: 1.1rem;
}

.font-s12 {
	font-size: 12px;
	font-size: 1.2rem;
}

.font-s16 {
	font-size: 16px;
	font-size: 1.6rem;
}

.font-s20 {
	font-size: 20px;
	font-size: 2rem;
}

.font-s30 {
	font-size: 30px;
	font-size: 3rem;
}

.font-s32 {
	font-size: 32px;
	font-size: 3.2rem;
}

.lheight12 {
	line-height: 1.2;
}

.overzoom {
	overflow: hidden;
	_zoom: 1
}

.clearB {
	clear: both;
}

.weightB {
	font-weight: bold;
}

.g-r10 {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-o-border-radius: 10px;
	background-color: #FFF;
}

.borderw250 {
	width: 250px;
	border: none;
	border-top: solid 1px #5F2E2C;
	height: 1px;
	color: #FFFFFF;
	padding: 0;
	margin: 0 auto 4px auto;
}

.hovers {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.hovers:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}

.font15 {
	font-size: 15px;
	font-size: 1.5rem;
}

@media screen and (min-width: 960px) {
	.att {
		padding-left: 1em;
		text-indent: -1em;
	}

	.sm_b40 {
		margin-bottom: 40px;
	}

	.c_right {
		float: right;
	}

	.l-br {
		display: block;
	}

	/** ヘッダー========================================*/
	#header-wrap {
		padding: 0;
		margin: 0;
	}

	#header {
		width: 980px;
		padding: 0 0 0 0;
		margin: 0 auto;
		position: relative;
		height: 132px;
	}

	/** メインイメージ========================================*/
	#section_top {
		width: 980px;
		padding: 0;
		margin: 0 auto;
		position: relative;
		z-index: 12;
	}

	#l-contact {
		padding: 0;
		margin: 0;
		width: 365px;
		height: 191px;
		background: url(../images/common/l-contact_b.png) no-repeat;
		position: absolute;
		top: -177px;
		right: 0;
		z-index: 10;
	}

	/** トップイメージ========================================*/
	#main_img-wrap {
		width: 100%;
		height: 470px;
		padding: 0;
		margin: -110px 0 0 0;
		position: relative;
		text-align: center;
		filter: alpha(opacity=80);
		-moz-opacity: 0.8;
		opacity: 0.8;
		background-color: #FFFAEC;
		z-index: 9;
		overflow: hidden;
	}

	/* 内部 */
	#inner_img-wrap {
		width: 100%;
		height: 350px;
		position: relative;
		padding: 0;
		margin: -110px 0 0 0;
		text-align: center;
		filter: alpha(opacity=80);
		-moz-opacity: 0.8;
		opacity: 0.8;
		background-color: #FFFAEC;
		z-index: 9;
		overflow: hidden;
	}

	#l-main_img {
		width: 1500px;
		margin: 0 auto;
		padding: 0;
		position: relative;
	}

	#catch {
		position: absolute;
		left: 17%;
		bottom: 120px;
	}

	/** コンテンツ レイアウト========================================*/
	#content {
		width: 980px;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}

	/**左 ===*/
	#content-left {
		width: 640px;
		margin: 0;
		padding: 40px 0 90px 0;
		position: relative;
		float: left;
	}

	/**右 ===*/
	#content-right {
		width: 300px;
		margin: 26px 0 90px 0;
		padding: 0;
		position: relative;
		float: right;
	}

	/**トップ左 ===*/
	#top-sec {
		padding: 20px;
		background: #F8F6EC;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
	}

	#top-sec-p1 {
		width: 560px;
		margin: 0 auto 20px auto;
		line-height: 1.8;
		font-size: 15px;
		font-size: 1.5rem;
		text-align: justify;
	}

	#top-sec-p2 {
		width: 560px;
		font-size: 12px;
		font-size: 1.2rem;
		margin: 0 auto;
		line-height: 1.8;
		;
		text-align: justify;
	}

	#i-photo {
		position: absolute;
		right: 35px;
		top: 16px;
	}

	.news-list a::before {
		color: #FFF;
		content: ">";
		padding-right: 2px;
	}

	.news-list a {
		color: #FFF;
		display: block;
		padding: 6px 10px;
		font-weight: bold;
		right: 0;
		position: absolute;
		top: 0;
		border-radius: 10px;
		background-color: #0098d8;
	}

	.news-list a:hover {
		text-decoration: none;
	}

	#top-dl {
		padding: 0;
		margin: 0;
	}

	#top-dl dt {
		padding: 0;
		margin: 0 0 5px 0;
		color: #004EA2;
		font-size: 17px;
		font-size: 1.7rem;
	}

	#top-dl dt a {
		color: #004EA2;
	}

	#top-dl dd {
		padding: 0 0 10px 0;
		margin: 0 0 20px 0;
		line-height: 1.8;
		color: #303030;
		border-bottom: 1px dashed #5F4C3E;
	}

	#top-dl dd a {
		color: #6C5237;
	}

	/**トップ右 ===*/
	#side-info {
		padding: 15px;
		background: #0098D8;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
		overflow: hidden;
	}

	#side-tell {
		padding: 0;
		margin: 0 auto;
		width: 250px;
		overflow: hidden;
	}

	#l-side_address {
		color: #F7F7F7;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.4;
		margin: 0 0 10px 10px;
	}

	#side-table {
		width: 100%;
		margin-bottom: 35px;
	}

	#side-thead {
		background: #1A3C78;
	}

	#side-thead th {
		border-right: 1px solid #FFF;
		text-align: center;
		color: #FFF;
		padding: 2px 4px;
	}

	#side-thead th:last-child {
		border-right: none;
	}

	#side-tbody {
		background: #FFFFFF;
	}

	#side-tbody tr td {
		background: #FFFFFF;
		border-right: 1px solid #0069B6;
		border-bottom: 1px solid #0069B6;
		color: #0069B6;
		text-align: center;
		padding: 2px 0;
		font-weight: bold;
	}

	#side-tbody tr td:last-child {
		border-right: none;
	}

	#side-tbody tr#tr-tbody td {
		border-bottom: none;
	}

	#side-tfoot {
		background: #BAE2F8;
		text-align: center;
		color: #1A3C78;
		font-weight: bold;
	}

	#side-tfoot th {
		border-top: 1px solid #FFF;
		margin-top: -1px;
	}

	#side-map {
		padding: 0;
		margin: 0;
		width: 270px;
		height: 255px;
		background: #FFF;
		position: relative;
	}

	#g-map {
		width: 250px;
		height: 190px;
		margin: 0 auto 10px auto;
		padding: 45px 0 0 0;
	}

	.s-subject {
		width: 70px;
		height: 70px;
		padding: 0;
		margin: 0;
		border: 1px solid #5F2E2C;
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-weight: bold;
	}

	.dl-subject {
		padding: 0;
		margin: 0 0 10px 0;
		color: #5F2E2C;
	}

	.dl-subject dt {
		margin: 4px 0 0 24px;
		padding: 0;
		width: 72px;
		float: left;
		clear: both;
	}

	.dl-subject dd {
		margin: 10px 0 0 0;
		padding: 0 0 0 80px;
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 1.6;
		line-break: strict;
		word-break: break-strict;
		position: relative;
	}

	.ul-subject {
		text-align: left;
	}

	#l-detail {
		float: right;
		margin: 10px 0 0 0;
	}

	/** フッター========================================*/
	#footer-wrap {
		padding: 25px 0 0 0;
		margin: 0;
		width: 100%;
		height: 100px;
		background-color: #004DA1;
		clear: both;
	}

	#footer {
		padding: 0;
		margin: 0 auto;
		width: 980px;
		position: relative;
		color: FFF;
	}

	#page-top {
		position: absolute;
		top: -76px;
		right: 0;
	}

	#copyright {
		position: absolute;
		top: 42px;
		right: 10px;
	}
}


@media only screen and (min-width: 481px) and (max-width: 959px) {
	.att {
		padding-left: 1em;
		text-indent: -1em;
	}

	.c_right {
		float: right;
	}

	/** ヘッダー========================================*/
	#header-wrap {
		padding: 0;
		margin: 0;
	}

	#header {
		width: 100%;
		padding: 0 0 0 0;
		margin: 0 auto;
		position: relative;
		height: 132px;
	}

	/** メインイメージ========================================*/
	#section_top {
		width: 100%;
		padding: 0;
		margin: 0 auto;
		position: relative;
		z-index: 12;
	}

	#l-contact {
		padding: 0;
		margin: 0;
		width: 365px;
		height: 191px;
		background: url(../images/common/l-contact_b.png) no-repeat;
		position: absolute;
		top: -177px;
		right: 0;
		z-index: 10;
	}

	/** トップイメージ========================================*/
	#main_img-wrap {
		width: 100%;
		height: 470px;
		padding: 0;
		margin: -110px 0 0 0;
		position: relative;
		text-align: center;
		filter: alpha(opacity=80);
		-moz-opacity: 0.8;
		opacity: 0.8;
		background-color: #FFFAEC;
		z-index: 9;
		overflow: hidden;
	}

	/* 内部 */
	#inner_img-wrap {
		width: 100%;
		height: 350px;
		padding: 0;
		margin: -110px 0 0 0;
		position: relative;
		text-align: center;
		filter: alpha(opacity=80);
		-moz-opacity: 0.8;
		opacity: 0.8;
		background-color: #FFFAEC;
		z-index: 9;
		overflow: hidden;
	}

	#l-main_img {
		width: 1500px;
		margin: 0 auto;
		padding: 0;
		position: relative;
	}

	#catch {
		position: absolute;
		left: 50px;
		bottom: 160px;
	}

	/** コンテンツ レイアウト========================================*/
	#content {
		width: 92%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}

	/**左 ===*/
	#content-left {
		width: 100%;
		margin: 0;
		padding: 35px 0 10px 0;
		position: relative;
	}

	/**右 ===*/
	#content-right {
		width: 100%;
		margin: 0 auto 30px auto;
		padding: 0;
		background: #0098D8;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
		position: relative;
		overflow: hidden;
	}

	/**トップ左 ===*/
	#top-sec {
		padding: 20px;
		background: #F8F6EC;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
	}

	#top-sec-p1 {
		width: 100%;
		margin: 0 auto 20px auto;
		line-height: 1.8;
		font-size: 15px;
		font-size: 1.5rem;
	}

	#top-sec-p2 {
		width: 100%;
		font-size: 12px;
		font-size: 1.2rem;
		margin: 0 auto;
		line-height: 1.8;
	}

	#i-photo {
		position: absolute;
		right: 3%;
		top: 20px;
	}

	.news-list a::before {
		color: #FFF;
		content: ">";
		padding-right: 2px;
	}

	.news-list a {
		color: #FFF;
		display: block;
		padding: 6px 10px;
		font-weight: bold;
		right: 0;
		position: absolute;
		top: 0;
		border-radius: 10px;
		background-color: #0098d8;
	}

	.news-list a:hover {
		text-decoration: none;
	}

	#top-dl {
		padding: 0;
		margin: 0;
	}

	#top-dl dt {
		padding: 0;
		margin: 0 0 5px 0;
		color: #004EA2;
		font-size: 17px;
		font-size: 1.7rem;
	}

	#top-dl dt a {
		color: #004EA2;
	}

	#top-dl dd {
		padding: 0 0 10px 0;
		margin: 0 0 20px 0;
		line-height: 1.8;
		color: #303030;
		border-bottom: 1px dashed #5F4C3E;
	}

	#top-dl dd a {
		color: #6C5237;
	}

	/**トップ右 ===*/
	#side-info {
		padding: 0;
		margin: 300px auto 0 auto;
		width: 92%;
	}

	#side-tell {
		padding: 0;
		margin: 0;
		position: absolute;
		top: 90px;
		right: 0;
	}

	#l-side_address {
		clear: both;
		color: #F7F7F7;
		font-size: 24px;
		font-size: 2.4rem;
		line-height: 1.3;
		margin: 0 0 10px 0;
	}

	#side-table {
		width: 100%;
		margin-bottom: 25px;
		font-size: 18px;
		font-size: 1.8rem;
	}

	#side-thead {
		background: #1A3C78;
	}

	#side-thead th {
		border-right: 1px solid #FFF;
		text-align: center;
		color: #FFF;
		padding: 2px 4px;
	}

	#side-thead th:last-child {
		border-right: none;
	}

	#side-tbody {
		background: #FFFFFF;
	}

	#side-tbody tr td {
		background: #FFFFFF;
		border-right: 1px solid #0069B6;
		border-bottom: 1px solid #0069B6;
		color: #0069B6;
		text-align: center;
		padding: 2px 0;
		font-weight: bold;
	}

	#side-tbody tr td:last-child {
		border-right: none;
	}

	#side-tbody tr#tr-tbody td {
		border-bottom: none;
	}

	#side-tfoot {
		background: #BAE2F8;
		text-align: center;
		color: #1A3C78;
		font-weight: bold;
	}

	#side-tfoot th {
		border-top: 1px solid #FFF;
		margin-top: -1px;
	}

	#side-map {
		padding: 0;
		margin: 0;
		width: 270px;
		height: 255px;
		background: #FFF;
		position: absolute;
		top: -276px;
		right: 0;
	}

	#g-map {
		width: 250px;
		height: 190px;
		margin: 0 auto 10px auto;
		padding: 45px 0 0 0;
	}

	#l-detail {
		float: right;
		margin: 10px 0 0 0;
	}

	.s-subject {
		width: 70px;
		height: 70px;
		padding: 0;
		margin: 0;
		border: 1px solid #5F2E2C;
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-weight: bold;
	}

	.dl-subject {
		padding: 0;
		margin: 0 0 10px 0;
		color: #5F2E2C;
	}

	.dl-subject dt {
		margin: 4px 0 0 24px;
		padding: 0;
		width: 72px;
		float: left;
		clear: both;
	}

	.dl-subject dd {
		margin: 10px 0 0 0;
		padding: 0 0 0 80px;
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 1.6;
		line-break: strict;
		word-break: break-strict;
		position: relative;
	}

	.ul-subject {
		text-align: left;
	}

	#l-detail {
		display: none;
	}

	/** フッター========================================*/
	#footer-wrap {
		padding: 10px 0 0 0;
		margin: 0;
		width: 100%;
		height: 100%;
		background-color: #004DA1;
		clear: both;
		overflow: hidden;
	}

	#footer {
		padding: 0;
		margin: 0;
		position: relative;
		color: FFF;
	}

	#copyright {
		padding: 0;
		margin: 0 auto 20px auto;
		display: block;
	}

	#page-top {
		position: absolute;
		top: -76px;
		right: 0;
	}

}

@media screen and (min-width: 320px) and (max-width: 480px) {
	.s-br {
		display: block;
	}

	.s-br2 {
		display: block;
		line-height: 1;
		padding-bottom: 7px;
	}

	.att {
		padding-left: 1em;
		text-indent: -1em;
	}

	.c_right {
		margin: 0 auto 20px auto;
		display: block;
	}

	/** ヘッダー========================================*/
	#header-wrap {
		padding: 0;
		margin: 0;
		position: relative;
	}

	#header {
		width: 100%;
		padding: 0;
	}

	#section_top {
		width: 100%;
		padding: 0;
		margin: 0;
	}

	#l-contact {
		background-color: #F4F4F4;
		padding-top: 10px;
	}

	/** コンテンツ レイアウト========================================*/
	#content {
		width: 92%;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}

	/**左 ===*/
	#content-left {
		width: 100%;
		margin: 0;
		padding: 35px 0 10px 0;
		position: relative;
	}

	/**右 ===*/
	#content-right {
		width: 100%;
		margin: 0 0 30px 0;
		padding: 0;
		position: relative;
	}

	/**トップ左 ===*/
	#top-sec {
		padding: 20px;
		background: #F8F6EC;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
	}

	#top-sec-p1 {
		margin: 0 auto 15px auto;
		line-height: 1.8;
		font-size: 15px;
		font-size: 1.5rem;
	}

	#top-sec-p2 {
		font-size: 12px;
		font-size: 1.2rem;
		margin: 0 auto;
		line-height: 1.8;
	}

	#i-photo {
		display: block;
		margin: 0 auto 12px auto;
	}

	.news-list a::before {
		color: #FFF;
		content: ">";
		padding-right: 2px;
	}

	.news-list a {
		color: #FFF;
		display: block;
		padding: 6px 10px;
		font-weight: bold;
		right: 0;
		position: absolute;
		top: -8px;
		border-radius: 10px;
		background-color: #0098d8;
	}

	.news-list a:hover {
		text-decoration: none;
	}

	#top-dl {
		padding: 0;
		margin: 0;
	}

	#top-dl dt {
		padding: 0;
		margin: 0 0 3px 0;
		color: #004EA2;
		font-size: 17px;
		font-size: 1.7rem;
	}

	#top-dl dt a {
		color: #004EA2;
	}

	#top-dl dd {
		padding: 0 0 10px 0;
		margin: 0 0 20px 0;
		line-height: 1.6;
		color: #303030;
		border-bottom: 1px dashed #5F4C3E;
	}

	#top-dl dd a {
		color: #6C5237;
	}

	/**トップ右 ===*/
	#side-info {
		padding: 15px;
		background: #0098D8;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
		overflow: hidden;
	}

	#l-side_address {
		color: #F7F7F7;
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.4;
		margin: 0 0 10px 0;
	}

	#side-table {
		width: 100%;
		margin-bottom: 35px;
	}

	#side-thead {
		background: #1A3C78;
	}

	#side-thead th {
		border-right: 1px solid #FFF;
		text-align: center;
		color: #FFF;
		padding: 2px 4px;
	}

	#side-thead th:last-child {
		border-right: none;
	}

	#side-tbody {
		background: #FFFFFF;
	}

	#side-tbody tr td {
		background: #FFFFFF;
		border-right: 1px solid #0069B6;
		border-bottom: 1px solid #0069B6;
		color: #0069B6;
		text-align: center;
		padding: 2px 0;
		font-weight: bold;
	}

	#side-tbody tr td:last-child {
		border-right: none;
	}

	#side-tbody tr#tr-tbody td {
		border-bottom: none;
	}

	#side-tfoot {
		background: #BAE2F8;
		text-align: center;
		color: #1A3C78;
		font-weight: bold;
	}

	#side-tfoot th {
		border-top: 1px solid #FFF;
		margin-top: -1px;
	}

	#side-map {
		padding: 0;
		margin: 0;
		width: 100%;
		height: 255px;
		background: #FFF;
		position: relative;
	}

	#g-map {
		width: 250px;
		height: 190px;
		margin: 0 auto 10px auto;
		padding: 45px 0 0 0;
	}

	#l-detail {
		float: right;
		margin: 10px 0 0 0;
	}

	/** フッター========================================*/
	#footer-wrap {
		padding: 10px 0 0 0;
		margin: 0;
		width: 100%;
		height: 100%;
		background-color: #004DA1;
		clear: both;
		overflow: hidden;
	}

	#footer {
		padding: 0;
		margin: 0;
		position: relative;
		color: FFF;
	}

	#copyright {
		padding: 0;
		margin: 0 auto 20px auto;
		display: block;
	}

	#page-top {
		display: none;
	}
}

@media screen and (min-width: 320px) and (max-width: 359px) {
	#l-side_address {
		color: #F7F7F7;
		font-size: 17px;
		font-size: 1.7rem;
		line-height: 1.2;
		margin: 0 0 10px 0;
	}
}


.bnr {
	margin-top: -5px;
	margin-bottom: 45px;
}

.side.bnr {
	margin: 25px 0 25px !important;
}

body.top .side.bnr {
	display: none;
}

@media (max-width: 480px) {
	.side.bnr {
		max-width: 330px;
		margin-right: auto !important;
		margin-left: auto !important;
	}
}

@media (max-width: 480px) {
	.only_pc_none {
		display: none;
	}
}

@media (min-width: 481px) {
	.only_sp_none {
		display: none;
	}
}