/* ----------------------------------------------------
※ サイト全体で共用するCSSのみが書いてあります
※ TopページとLPページは別途個別のCSSがあります
---------------------------------------------------- */

/* html
------------------------------------------------------------------------------*/

html {
	box-sizing: border-box;
}

html .font-genmin {
/*	font-family: 'Noto Serif JP', "Yu Mincho", serif;*/
	font-family: 'Marcellus', 'Noto Serif JP', "Yu Mincho", serif;
}

td,
th {
	padding: 0;
}

.inner {
	max-width: 1200px;
}

.hover:hover {
	-ms-filter: "alpha(opacity=75)";
	opacity: 0.75;
	transition: opacity 0.3s;
}


/* 管理画面より入力のテキスト体裁補助系CSS - 2019.7.29 追加（2020.11.16 更新） */

.komejiru {
	color: #999;
	font-size: 11px;
	letter-spacing: 0.1em;
	margin: 0 auto;
	max-width: 1200px;
	width: 94%;
}

.break-point {
	display: inline-block;
}

.txt-l {/* デフォルト */
	display: block;
	text-align: left;
}

.txt-c {/* PCのみテキスト中央揃えで Mobile見た目時は左寄せに変化 */
	display: block;
	text-align: center;
}

.txt-c-all {/* PC・Mobileすべてテキスト中央揃え */
	display: block;
	text-align: center;
}

.txt-r {/* PCのみテキスト右寄せで Mobile見た目時は左寄せに変化 */
	display: block;
	text-align: right;
}

.txt-r-all {/* PC・Mobileすべてテキスト右寄せ */
	display: block;
	text-align: right;
}

.strong-line {
	background: linear-gradient(transparent 75%,rgba(208, 196, 155, 0.6) 35%);
}

.pad1rem {/* テキスト上下の間隔を少しだけ広げたいとき */
	display: block;
	padding: 1rem 0;
}

.pad1rem + br {/* .pad1remの後に<br>が続くと間隔が広くなりすぎるので補正のため */
	display: none;
}


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

#header {
	background: #fff;
	color: #666;
	width: 100%;
}

#header .inner-top-area {
	margin: 0 auto;
	max-height: 60px;
	max-width: 90%;
	overflow: hidden;
	width: auto;
}

#header .inner-bottom-area {
	margin: 0 auto;
	max-width: 90%;
	overflow: inherit;
	padding-bottom: 14px;
	width: auto;
}


@media screen and (max-width: 1200px) {
	/*--- 表示領域が1200px以下の場合に適用するスタイル ---*/
	#header .inner-top-area {
		max-width: 98%;
	}

	#header .inner-bottom-area {
		max-width: 100%;
	}
}


/* header-area */

#header .header-area {
	font: 100% Helvetica, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	margin: 0;
	position: relative;
}

#header .header-area .header-h1-block {
	margin: 0;
	width: calc(100% - 350px);/* 賃貸が増えたら調整が必要 */
}

#header .header-area table {
	height: 60px;
	width: 100%;
}

#header .header-area th {
	width: auto;/* ロゴの幅に合わせて可変 */
}

#header .header-area th a {
	display: block;
	margin-right: 1rem;
}

#header .header-area th .logo-img-wrap {
	display: inline-block;
	font-size: 10px;
	font-weight: normal;
	vertical-align: middle;
}

#header .header-area .site-logo {
	display: block;
	max-height: 40px;
	max-width: 200px;
	width: auto;
}

#header .header-area a {
	color: #474747;
}

#header .header-area td {
	padding-left: 1%;
	width: 94%;/* ざっくりな設定 */
}

#header .header-area td a {
	display: inline-table;
}

#header .header-area .site-name .ja {
	display: table-cell;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	text-align: left;
	vertical-align: middle;
}

#header .header-area .site-name .ja span {
	display: inline;
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	line-height: 1.6;
}

#header .header-area .site-name .name1 {
	letter-spacing: 2px;
/*	padding-right: .3em;*//* .name2を表示することになったらコメントアウト外す */
}

#header .header-area .site-name .name2 {/* 今回は使用せず */
	display: inline-block;
}

#header .header-area .nav-top-right {
	height: 60px;
	overflow: hidden;
	position: absolute;
	right: 0;
	text-align: right;
	top: 0;
	width: 350px;/* 賃貸が増えたら調整が必要 */
}

#header .header-area .nav-top-right ul {
	display: inline-table;
	height: 40px;
	list-style: none;
	margin: 10px 0;
	overflow: hidden;
	padding: 0;
	width: auto;
}

#header .header-area .nav-top-right li {
	display: table-cell;
	max-height: 40px;
	max-width: 160px;/* ボタンが増えたら適度に調整（ボタン３つ時の目安：130px） */
}

#header .header-area .nav-top-right li + li {
	border-left: 6px solid transparent;
}

#header .header-area .nav-top-right .nav-link {
	background: #fff;
	border: 1px solid #474747;
	color: #474747;
	display: table;
	height: 40px;
	padding: 0 30px;
}

#header .header-area .nav-top-right .nav-link:before {
	content: none;
}

#header .header-area .nav-top-right .nav-link:hover {
	background: #5a5f62;
	border-color: #fff;
	color: #fff;
	transition: background-color .5s, border-color .5s, color .3s;
}

#header .header-area .nav-top-right .nav-link span {
	padding: 3px 0;
	text-align: center;
}

#header .header-area .nav-top-right .ja {
	display: table-cell;
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 1px;
	line-height: 1.4;
	vertical-align: middle;
}

#header .header-area .nav-top-right .en {
	display: none;
}


@media screen and (max-width: 1200px) {
	/*--- 表示領域が1200px以下の場合に適用するスタイル ---*/
	#header .header-area .site-name .ja {
		font-size: 13px;
	}
}


@media screen and (max-width: 960px) {
	/*--- 表示領域が960px以下の場合に適用するスタイル ---*/
	#header .header-area .site-name .ja {
		font-size: 12px;
	}

	#header .header-area .site-name .name1 {
		letter-spacing: 1px;
	}

	#header .header-area .header-h1-block {
		width: calc(100% - 300px);
	}

	#header .header-area .nav-top-right {
		width: 300px;
	}

	#header .header-area .nav-top-right li {
		max-width: 130px;
	}

	#header .header-area .nav-top-right .nav-link {
		padding: 0 20px;
	}
}


/* Navigation */

#gNavi {
	width: 100%;
}

.nav-items {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

.nav-item {
	display: inline-table;
	float: left;
	height: 46px;
	margin: 0;
	overflow: hidden;
	width: 14%;
}

.nav-item:first-child {/* デフォルト */
	width: 9%;
}

.nav-item.here,
.nav-item:hover {/* ナビ現在地（＆ホバー時）のbgカラー */}

.nav-item.dropdown:hover {/* moreホバー */}

.nav-item.here .nav-link,
.nav-item:hover .nav-link {}

.nav-link,
.nav-link:link,
.nav-link:visited,
.nav-link:active {
	color: #474747;
	cursor: pointer;
	display: table-cell;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 1px;
	padding: 0;
	position: relative;
	text-decoration: none;
	vertical-align: middle;
}

.nav-link::before {
	background: #dbd4b0;
	bottom: 0;
	content: "";
	height: 2px;
	left: 5%;
	opacity: 0;
	position: absolute;
	-webkit-transform: translate(0, 5px);
	transform: translate(0, 5px);
	transition: opacity 0.25s ease, transform 0.25s ease;
	width: 90%;
}

.nav-item.here .nav-link::before,
.nav-link:hover::before {
	opacity: 1;
	-webkit-transform: translate(0, -2px);
	transform: translate(0, -2px);
}

.nav-item .ja {
	display: block;
	font-family: 'Noto Serif JP', "Yu Mincho", serif;
	font-size: 10px;
	font-weight: 300;
	letter-spacing: 1px;
	line-height: 1.4;
	margin: 0;
	text-align: center;
	vertical-align: middle;
}

.nav-item .en {
	display: block;
/*	font-family: YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Marcellus', serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.2;
	margin: 0;
	text-align: center;
	text-transform: uppercase;
}

.dropdown .nav-link .en {
	color: #ab9366;
	font-size: 13px;
	padding-right: 13px;/* 矢印ぶんの幅を確保 */
}

.dropdown:hover .nav-link .en {}

.dropdown:hover .nav-link::after {}

.dropdown .submenu .nav-link .ja {
	color: #474747;
	display: block;
	font-size: 13px;
}

.dropdown .submenu .nav-link .en {
	display: none;
}

.dropdown.nav-item {/* デフォルト */
	float: right;
	overflow: visible;
	position: relative;
	width: 7%;
}

.dropdown .nav-link {}

.dropdown .nav-link::before {
	transform: translate(0, -10px);
}

.dropdown .nav-link::after {
	border: 5px solid transparent;
	border-top-color: #ab9366;
	content: "";
	margin-top: -4px;
	position:absolute;
	right: 6px;
	top: 50%;
}

.dropdown .submenu .nav-link::before,
.dropdown .submenu .nav-link::after {
	content: none;
}

.submenu {
	background: #fff;
	border-radius: 3px;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	display: none;
	line-height: 1.6;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	-webkit-transform: translate(0, 0) scale(0.85);
	transform: translate(0, 0) scale(0.85);
	transition: transform 0.1s ease-out, opacity 0.1s ease-out;
	top: 20px;
	width: 200px;
	z-index: 9000;
}

.submenu-items {
	list-style: none;
	padding: 10px 0;
}

.submenu-item {
	display: block;
	text-align: left;
}

.submenu-item a,
.submenu-item a:link,
.submenu-item a:visited,
.submenu-item a:active {
	color: #666;
	cursor: pointer;
	display: block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px 20px;
	position: relative;
	text-decoration: none;
}

.submenu-item a:hover {
	background: #f6f6f6;
}

.show-submenu .submenu {
	display: block;
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: translate(0, 25px) scale(1);
	transform: translate(0, 25px) scale(1);
}


@media screen and (max-width: 960px) {
	/*--- 表示領域が960px以下の場合に適用するスタイル ---*/
	.nav-item .en {
		font-size: 13px;
	}

	.dropdown.nav-item {
		width: calc(7% - 2px);/* 原因不明だがナビリンク幅が計算と合わずスクリーン幅を縮めた際に時折オーバーするので応急処置 */
	}

	.nav-link {
		padding: 0;
	}

	.dropdown .nav-link .en {
		font-size: 12px;
		padding: 0;
	}

	.dropdown .nav-link::before {
		transform: translate(0, -7px);
	}

	.dropdown .nav-link::after {
		border-width: 6px;
		display: block;
		height: 0;
		margin: 5px auto 0;/* 5px auto -3px */
		position: revert;/*inherit*/
		right: 0;
		width: 0;
	}

	.show-submenu .submenu {
		margin-right: -5px;
		width: 180px;
	}

	.dropdown .submenu .nav-link .ja {
		font-size: 12px;
	}
}


/* Mobile系の記述を見えない化 */

.mobile-header-button-wrap,
.nav-toggle,
#mNavi,
.mobile-nav-wrap {
	display: none;
}


/* main
------------------------------------------------------------------------------*/

#main {
	border-top: 1px solid #ddd;
	padding: 0 0 4%;
}

#main.top_page {
	padding-top: 50px;
}

#main.not-found {
	padding: 60px 0 4%;
}


/* clearfix
--------------------------------------*/

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}


/* breadcrumb
------------------------------------------------------------------------------*/

.breadcrumb {
	font-size: 10px;
	list-style: none;
	margin: 12px auto;
	max-width: 1200px;
	overflow: hidden;
	padding: 0;
	width: 98%;
}

.breadcrumb li {
	float: left;
}

.breadcrumb li + li:before {
	content: ">";
	margin: 0 8px;
}

.breadcrumb li a:hover {
	text-decoration: underline;
}


/* headline
--------------------------------------*/

.page-title .inner {/* 20190729 追加 */
	overflow: inherit;
	position: relative;
}

.hd1 {
	margin: 0;
	padding: 0 0 10px;
	text-align: center;
}

.hd1 .en {
	color: #494949;
	display: block;
/*	font-family: "Times New Roman", "Yu Mincho", serif;*/
/*	font-family: YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Marcellus', serif;
	font-size: 42px;
	font-weight: 500;
	letter-spacing: .2rem;
	text-transform: uppercase;/* capitalize */
}

.hd1 .bar {}

.hd1 .ja {
	color: #494949;
	display: block;
	font-family: 'Noto Serif JP', "Yu Mincho", serif;
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-size: 15px;/*16px*/
	font-weight: 500;/*600*/
	letter-spacing: .05rem;
	line-height: 1.5;
}

.hd2 {
	color: #494949;
	font-family: 'Marcellus', 'Noto Serif JP', "Yu Mincho", serif;
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	margin: 2em auto;
	padding: 0;
	position: relative;
	text-align: center;
	width: 94%;
}

.hd2 span {
	display: inline-block;
	font-size: 27px;
	font-weight: 500;
	letter-spacing: 3px;
	line-height: 1.5;
}

.hd3 {
	color: #494949;
	font-family: 'Marcellus', 'Noto Serif JP', "Yu Mincho", serif;
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-size: 18px;/*17px*/
	font-weight: 500;/*500*/
	letter-spacing: 2px;
	line-height: 1.3;
	margin: 6px auto 1em;
	text-align: left;
	padding: 0.6em 0 0.5em;
}

.hd3:after {
	border-bottom: 1px dashed #dbd4b0;
	content: "";
	display: block;
	height: 6px;/*2px*/
	margin: 10px 0 0 0;
	width: 100%;
}

@media screen and (max-width: 1200px) {
	/*--- 表示領域が1200px以下の場合に適用するスタイル ---*/
	.hd1 .en {}
	.hd1 .ja {}
	.content-block .pagehead-text.text {}

	.hd2 span {
		font-size: 25px;
	}

	.hd3 {}
}

@media screen and (max-width: 1024px) {
	/*--- 表示領域が1024px以下の場合に適用するスタイル ---*/
	.hd1 .en {
		font-size: 4vw;
	}

	.hd1 .ja {
		font-size: 1.47vw;
	}

	.content-block .pagehead-text.text {
		font-size: 13px;
	}

	.hd2 span {
		font-size: 24px;
	}

	.hd3 {
		font-size: 17px;/*16px*/
	}
}

@media screen and (max-width: 960px) {
	/*--- 表示領域が960px以下の場合に適用するスタイル ---*/
	.hd1 .en {}
	.hd1 .ja {}
	.content-block .pagehead-text.text {}

	.hd2 span {
		font-size: 2.5vw;
	}

	.hd3 {
		font-size: 16px;/*15px*/
	}
}


/* content-block
--------------------------------------*/

.content-block {
	margin: 0 auto;
	max-width: 1200px;
	padding: 2% 0;
}

.content-block .box {
	overflow: hidden;
}

.content-block a > img:hover {
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
	opacity: 0.75;
}

.content-block .pagehead-text.text {
	text-align: center;
}

.content-block .text {
	color: #666;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 1px;
	margin: 1.2em auto 2em;
	text-align: left;
	width: 94%;
}

.content-block .big-text {/* 新機能？ */
	font-size: 26px;
}

.content-block .one-column-text {
	color: #666;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 1px;
	text-align: left;
	margin: 0 auto;
	width: 94%;
}


/* content parts
--------------------------------------*/

/* simpleボタンリンク - since 2011.9.14
   2022.7.27 --- 明朝系フォント用に仕様調整 */
.content-block .simple-btn-link {
	text-align: center;
}

.content-block .simple-btn-link a {
	color: #fff;
	display: inline-block;
}

.content-block .simple-btn-link span {
	background: #5a5f62;
	border-radius: 2px;
	display: inline-block;
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 1.4;
	max-width: 578px;/* 端数はletter-spacingの2pxを加味 */
	min-width: 338px;/* 端数はletter-spacingの2pxを加味 */
	padding: 1em 30px 1.2em 32px;/* 端数はletter-spacingの2pxを加味 */
}

.content-block .simple-btn-link a:hover span {
	background: #7c868d;
	transition: all .2s;
}


/* column 1 image top
--------------------------------------*/

.c1it .box + .box {
	margin: 3% 0 0;
}

.c1it .hd3 {
	width: 94%;
}

.c1it .img img {
	max-width: 94%;
}


/* column 1 image left
--------------------------------------*/

.c1il .box {
	margin: 4em auto 3em;
	max-width: 94%;
}

.c1il .hd {
	float: right;
	margin-top: 0;/***/
	/*  padding-top: 0;*/
	width: 50%;
}

.c1il .img {
	float: left;
	width: 45%;
}

.c1il .text {
	float: right;
	margin: 0;
	width: 50%;
}

.c1il .text p:first-child {
	margin-top: 0;
}

@media screen and (max-width: 850px) {
	/*--- 表示領域が850px以下の場合に適用するスタイル ---*/
	.c1il .box {
		margin: 2em auto;
	}

	.c1il .box:first-child {
		padding-top: 20px;
	}
}


/* column 1 image right
--------------------------------------*/

.c1ir .box {
	margin: 4em auto 3em;
	max-width: 94%;
}

.c1ir .hd {
	float: left;
	margin-top: 0;
	/*	padding-top: 0;*/
	width: 50%;
}

.c1ir .img {
	float: right;
	width: 45%;
}

.c1ir .text {
	float: left;
	margin: 0;
	width: 50%;
}

.c1ir .text p:first-child {
	margin-top: 0;
}

@media screen and (max-width: 850px) {
	/*--- 表示領域が850px以下の場合に適用するスタイル ---*/
	.c1ir .box {
		margin: 2em auto;
	}

	.c1ir .box:first-child {
		padding-top: 20px;
	}
}


/* column 2 image top
--------------------------------------*/

.c2it {
	text-align: left;
}

.c2it .box {
	display: inline-block;
	margin: 0 3% 2em;
	text-align: left;
	vertical-align: top;
	width: 43.7%;
}

.c2it .text {
	width: 100%;
}


/* column 3 image top
--------------------------------------*/

.c3it {
	text-align: left;
}

.c3it .card-wrap {
	margin: 0 auto;
	max-width: 98%;
}

.c3it .box {
	display: inline-block;
	margin: 0 2% 2em;
	text-align: left;
	vertical-align: top;
	width: 28.95%;
}

.c3it .text {
	width: 100%;
}

@media screen and (max-width: 850px) {
	/*--- 表示領域が850px以下の場合に適用するスタイル ---*/
	.c3it .card-wrap {
		max-width: 100%;
	}

	.c3it .box {
		margin: 0 3% 2em;
		width: 43.7%;
	}
}


/* column 4 image top
--------------------------------------*/

.c4it {
	text-align: left;
}

.c4it .card-wrap {
	margin: 0 auto;
	max-width: 96%;
}

.c4it .box {
	display: inline-block;
	margin: 0 1% 2em;
	text-align: left;
	vertical-align: top;
	width: 22.7%;
}

.c4it .text {
	width: 100%;
}

@media screen and (max-width: 1200px) {
	/*--- 表示領域が1200px以下の場合に適用するスタイル ---*/
	.c4it .card-wrap {
		max-width: 100%;
	}

	.c4it .box {
		margin: 0 3% 2em;
		width: 18.65%;
	}
}

@media screen and (max-width: 970px) {
	/*--- 表示領域が970px以下の場合に適用するスタイル ---*/
	.c4it .box {
		margin: 0px 3% 2em;
		width: 26.94%;
	}
}


/* outline
------------------------------------------------------------------------------*/

.outline-table {
	line-height: 2;
	margin: 0 auto;
	width: 90%;
}

.outline-table th {
	background: #5a5f62;
	border-bottom: 1px solid #fff;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 3px;
	padding: 12px 20px;
	text-align: left;
	width: 30%;
}

.outline-table td {
	background: #fff;
	border-bottom: 1px solid #999;
	color: #333;
	font-size: 14px;
	letter-spacing: 2px;
	padding: 12px 20px;
}


/* map
------------------------------------------------------------------------------*/

.googlemap-wrap {
	width: 94%;
}

#map-canvas,
#svp-canvas {
	float: left;
	height: 400px;
	position: relative;
	width: 50%;
}

#svp-canvas {/* ストリートビュー非表示にしたい時 */
/*	height: 0px;*/
}

.map-dl {
	margin: 0 auto 40px;
	max-width: 600px;
}

.map-dl dt {
	font-weight: bold;
	margin: 0 12px;
}

.map-dl dd + dt {
	margin: 20px 12px 0;
}

.map-dl dd {
	margin: 8px 12px 0;
}

/* 開発環境下ではGoogleMap系を出さない */
.map-canvas-develop,
.svp-canvas-develop {
	float: left;
	height: 400px;
	position: relative;
	width: 50%;
}

.map-canvas-develop {
	background: #d8e6e4;
}

.svp-canvas-develop {
	background: #cde0dd;
}

.map-canvas-develop span,
.svp-canvas-develop span {
	display: block;
	padding-top: 190px;
	text-align: center;
}


/* photogallery
------------------------------------------------------------------------------*/

.gallery-list {
	list-style: none;
	margin: 0;
	overflow: hidden;
	padding: 0;
}

.gallery-list li {
	background: #f7f7f7;
	float: left;
	margin: 1%;
	padding: 1%;
	width: 29.3%;
}

.gallery-list .fit-img {
	height: 200px;
	margin: 4px;
}

.gallery-list .f {
	display: block;
}


/* not-found
------------------------------------------------------------------------------*/

.not-found h2 {
	float: left;
	font: bold 300% "Times New Roman", serif;
	font: bold 300% Helvetica, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	margin: 10% 0;
	text-align: center;
	width: 50%;
}

.not-found h2 span {
	font-size: 120%;
}

.not-found .img {
	float: right;
	margin: 20px 10% 20px 0;
	width: 40%;
}

.not-found p {
	clear: both;
	line-height: 2;
	text-align: center;
}

.not-found h3 {
	font: bold 175% "Times New Roman", serif;
	font: bold 175% Helvetica, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	margin: 40px 40px 20px;
	padding: 8px;
}

.not-found ul {
	font-size: 120%;
	list-style: none;
	margin: 20px 40px;
	overflow: hidden;
	padding: 0;
}

.not-found li {
	float: left;
}

.not-found li a {
	display: block;
	padding: 8px 20px;
	width: 8em;
}


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

.footer {
	border-top: 3px solid #eee;
	text-align: center;
}

.footer .footer-contents {
	background: transparent;
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
}


/* foot-nav-フッターナビ
--------------------------------------*/

.footer .footer-contents .foot-nav {
	margin: 0 auto;
	padding: 25px 0 10px;
	width: 100%;
}

.footer .footer-contents .foot-nav ul {
	margin: 0;
	padding: 0;
}

.footer .footer-contents .foot-nav li {
	border-right: 1px solid #ddd;
	display: inline-block;
	font-size: 13px;
	list-style: none;
	margin: 12px 0 0;
	padding: 0 20px 0 15px;
}

.footer .footer-contents .foot-nav li:first-child {
	border-left: 1px solid #ddd;
}

.footer .footer-contents .foot-nav li a {
	color: #666;
}

.footer .footer-contents .foot-nav li a:hover {
	opacity: 1;
	text-decoration: underline;
}


/* foot-info-フッターインフォメーション
--------------------------------------*/

.footer .footer-contents .foot-info {
	margin: 40px auto 0;
	max-width: 1200px;
	min-height: 180px;
}

.footer .foot-info .foot-info-inner-left,
.footer .foot-info .foot-info-inner-center,
.footer .foot-info .foot-info-inner-right {
	display: inline-block;
	margin: 0;
	text-align: center;
	vertical-align: top;
	width: 25%;
}

.footer .foot-info .foot-info-inner-left {}

.footer .foot-info .foot-info-inner-left .logo-img-wrap {
	display: inline-table;
	height: 60px;
}

.footer .foot-info .foot-info-inner-left .logo-img-wrap span {
	display: table-cell;
	vertical-align: middle;
}

.footer .foot-info .foot-info-inner-left .site-logo {
	display: block;
	margin: 0 auto;
	max-height: 40px;
	max-width: 200px;
	width: auto;
}

.footer .foot-info .foot-info-inner-left .logo-btm-txt {
	display: block;
	margin-top: 15px;
	width: 100%;
}

.footer .foot-info .foot-info-inner-left .logo-btm-txt span {
	color: #393939;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	line-height: 1.5;
}

.footer .foot-info .foot-info-inner-center {
	width: 40%;
}

.footer .foot-info .foot-info-inner-center p {
	color: #545454;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 150%;
	margin: 0 0 10px;
	text-align: center;
}

.footer .foot-info .foot-info-inner-center .corp {
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	font-size: 17px;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1.5;
}

.footer .foot-info .foot-info-inner-center .corp span {
	display: block;
}

.footer .foot-info .foot-info-inner-center .info-txt {
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
}

.footer .foot-info .foot-info-inner-center .info-txt span {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
	vertical-align: middle;
}

.footer .foot-info .foot-info-inner-center .info-txt .eigyo-txt,
.footer .foot-info .foot-info-inner-center .info-txt .close-txt {
	padding: 0 6px;
}

.footer .foot-info .foot-info-inner-center .info-txt .tel-before {
	height: 34px;
	margin: 0 2px 0 -10px;
	vertical-align: middle;
}

.footer .foot-info .foot-info-inner-center .font-hiramin .tel-before {
	margin-top: -1px;
}

.footer .foot-info .foot-info-inner-center .info-txt .tel {
	color: #333;
/*	font-family: 'Arial', sans-serif;*/
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	font-size: 37px;
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 150%;
	padding-bottom: 2px;/* 上下方向微調整 */
}

.footer .foot-info .foot-info-inner-center .info-txt .tel.pc {
	display: inline-block;
}

.footer .foot-info .foot-info-inner-center .info-txt .tel.mb {
	display: none;
}

.footer .foot-info .foot-info-inner-right {
	padding-top: 8px;
}

.footer .foot-info .foot-info-inner-right a {
	background: #fff;
	border: 1px solid #474747;
	color: #474747;
	display: inline-table;
	height: 48px;
	margin: 0 auto 15px;
	width: 80%;
}

.footer .foot-info .foot-info-inner-right a:hover {
	background: #5a5f62;
	border-color: #fff;
	color: #fff;
	transition: background-color .5s, border-color .5s, color .3s;
}

.footer .foot-info .foot-info-inner-right a span {
	display: table-cell;
/*	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', YuGothic, 'Yu Gothic', 'Arial', sans-serif;*/
	font-family: 'Noto Serif JP', 'Yu Mincho', serif;
	font-size: 100%;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 15px 0;
	text-align: center;
	vertical-align: middle;
	width: 100%;
}

.footer .foot-info .foot-info-inner-right .bnr-buy {}
.footer .foot-info .foot-info-inner-right .bnr-sell {}


@media screen and (max-width: 960px) {
	/*--- 表示領域が960px以下の場合に適用するスタイル ---*/
	.footer .footer-contents .foot-info {
		min-height: 170px;
	}

	.footer .foot-info .foot-info-inner-left {
		width: 28%;
	}

	.footer .foot-info .foot-info-inner-center .corp {
		font-size: 16px;
		letter-spacing: 0;
	}

	.footer .foot-info .foot-info-inner-center .info-txt .tel-before {
		margin: 0 0 0 -5px;
	}

	.footer .foot-info .foot-info-inner-center .info-txt .tel {
		font-size: 34px;
		line-height: 130%;
		padding-bottom: 3px;
	}

	.footer .foot-info .foot-info-inner-center small {
		font-size: 10px;
	}

	.footer .foot-info .foot-info-inner-right {
		padding-top: 8px;
	}

	.footer .foot-info .foot-info-inner-right a {
		width: 86%;
	}

	.footer .foot-info .foot-info-inner-right a span {
		font-size: 90%;
		letter-spacing: 2px;
	}
}


@media all and (-ms-high-contrast: none) {/* IE10以降のみ適用のハック */
	.footer .foot-info .foot-info-inner-right a span {
		line-height: 1;
		padding: 18px 0 15px;
	}
}


/* foot-sitelink
--------------------------------------*/

.foot-sitelink {
	background: #fff;
	border-top: 10px dotted #eee;
	padding: 15px 0;
	position: relative;
	text-align: center;
	width: 100%;
}

.foot-sitelink::before {
	background-image: repeating-linear-gradient(40deg, white, white 3px, #eee 3px, #eee 6px);
	content: "";
	display: block;
	height: 10px;
	left: 0;
	position: absolute;
	right: 0;
	top: -10px;
	width: 100%;
}

.foot-sitelink .site-link-all {
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
}

.foot-sitelink .site-logo {
	min-width: 200px;
	text-align: center;
	vertical-align: middle;
	width: 20%;
}

.foot-sitelink .site-logo .site-selection-logo {
	display: inline-block;
	width: 130px;
}

.foot-sitelink .site-logo .site-selection {
	font-size: 11px;
	font-weight: normal;
	letter-spacing: 2px;
	margin: 3px 0 0;
}

.foot-sitelink .site-link-list {
	margin: 0;
	overflow: hidden;
	padding: 0;
	width: 80%;
	zoom: 1;
}

.foot-sitelink .site-link-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

.foot-sitelink .site-link-list li {
	float: left;
	font-size: 12px;
	margin: 6px 0 6px 2em;
	min-width: calc(25% - 2em);
}

.foot-sitelink .site-link-list li a {
	color: #666;
	position: relative;
	padding: 0 20px;
}

.foot-sitelink .site-link-list li > a:before {
	background: #dbd4b0;
	content: "";
	height: 2px;
	left: 0;
	margin-top: -1px;
	position: absolute;
	top: 50%;
	width: 8px;
	z-index: 1;
}

.foot-sitelink .site-link-list li a:hover {
	text-decoration: underline;
}


/* copyright-コピーライト
--------------------------------------*/

.copy-wrap {
	background: #5a5f62;
	width: 100%;
}

.copyright {
	color: #dbd4b0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Droid Sans", sans-serif;
	font-size: 10px;
	line-height: 1;
	margin: 0 auto;
	padding: 4px 0 6px;
	text-align: center;
}
