/* ---------------------------------------------------------
CMS移行前サイト スタイル打ち消し
--------------------------------------------------------- */
header.globalheader {
	position:relative;
	background:url(img/bg_header.png) repeat-x top;
	z-index:6;
}
@media screen and (max-width: 600px) {
	header.globalheader {
		/* background:none; */
	}
	body.toppage header.globalheader img {
		border-bottom:none;
	}
}

#header_content h1 {
	padding: 0;
}
#header_content h1::before {
	display: none;
}

#subnav h2 {
	padding: 0;
	border-bottom: none;
}

.heading {
	padding: 0;
	border-bottom: none;
	background-image: none;
}

.heading_error {
	border-bottom: none;
	letter-spacing: normal;
}

.heading_lv1::before {
	display: none;
}

.content_box h3::before {
	display: none;
}

.catch {
	padding: 0;
	border-bottom: none;
}
.catch::before {
	display: none;
}

.catch_vision {
	background-color: transparent;
}

.heading_lv3 {
	border-bottom: none;
}
.heading_lv3::before {
	display: none;
}

.box_02 .box_heading .heading_text {
	padding: 0;
	color: #413431;
}
.box_02 .box_heading .heading_text::before {
	display: none;
}

h3.heading_hospitality {
	padding: 0;
}
h3.heading_hospitality::before {
	display: none;
}

.box_shop_hospitality h4 {
	background-color: transparent;
}

.pagination table.pagerer {
	border: none;
}
.pagination table.pagerer td {
	padding: 0;
	border: none;
}

.box_stretch_01 .box_heading::before {
	display: none;
}

body.onecolumn .page_index_box .region h3 {
	padding: 0;
	border-bottom: none;
}
body.onecolumn .page_index_box .region h3::before {
	display: none;
}

.contact_box .request_web h4 {
	background-color: transparent;
}
.contact_box .request_tel h4 {
	background-color: transparent;
}
.contact_box .request_fax h4 {
	background-color: transparent;
}

.search_result h3::before, .sitemap_wrap h3::before {
	display: none;
}

/* ---------------------------------------------------------
サイトロゴ
--------------------------------------------------------- */
#header_content .logo {
	float: left;
	width: 147px;
	height: 50px;
	margin: 0;
	padding: 0;
}
#header_content .logo::before {
	display: none;
}

/* ---------------------------------------------------------
レイアウト
--------------------------------------------------------- */
@media screen and (max-width: 600px) {
	.contentInner {
		padding: 0 10px;
	}

	td ul, td ol, td dl, td p {
		padding-left: 0;
	}
}

/* ---------------------------------------------------------
共通
--------------------------------------------------------- */
@media screen and (max-width: 600px) {
	p img {
		max-width: 100%;
		height: auto;
	}
}

/* ---------------------------------------------------------
グローバルナビの表示調整
--------------------------------------------------------- */
@media screen and (min-width: 601px) and (max-width: 1000px) {
	nav#globalnav ul li ul,
	nav#globalnav ul li ul li {
		display: block !important;
	}
	nav#globalnav ul li ul li {
		border-right: none;
		text-align: left;
		height: auto;
	}
	nav#globalnav > ul ul {
		position: absolute !important;
		top: 100% !important;
		left: 0 !important;
		z-index: 2 !important;
		visibility: hidden !important;
		opacity: 0 !important;
		margin: 2em 0 0 0 !important;
		width: 270px !important;
		padding: 25px !important;
		transition-property: margin, opacity !important;
		transition-duration: 0.15s !important;
		transition-timing-function: ease-in-out !important;
	}
	nav#globalnav li:hover > ul {
		opacity: 1 !important;
		visibility: visible !important;
		margin: 0 !important;
	}
	nav#globalnav ul li ul.DropMenuBg {
		background-color: #fbf8f4 !important;
		box-shadow: 1px 1px 3px #999 !important;
	}
	nav#globalnav ul li ul#DropMenuRight {
		margin-left: -75px !important;
	}
	nav#globalnav ul ul li {
		width: 220px !important;
		border-bottom: 1px dotted #d1c4bc !important;
	}
	nav#globalnav ul ul a {
		display: block !important;
		padding-left: 8px !important;
		padding-top: 7px !important;
		padding-bottom: 5px !important;
		background-image: url(img/arrow_01.gif) !important;
		background-repeat: no-repeat !important;
		background-position: left 12px !important;
	}
	nav#globalnav > ul ul li a:hover {
		background-color: #ffebe6 !important;
		color: #403331 !important;
		text-decoration: none !important;
	}
}

/* ---------------------------------------------------------
見出し
--------------------------------------------------------- */
h1 {
	display: block;
	position: relative;
	margin: 0 0 45px;
	padding: 6px 0 4px 16px;
	background: transparent;
	color: #000;
	font-weight: normal;
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: 0.1em;
}
h1::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 6px;
	height: 100%;
	background-image: linear-gradient(90deg, #aba19a, #c7bbb3);
}
@media screen and (max-width: 600px) {
	h1 {
		display: flex;
		margin: 0 10px 15px;
		font-size: 1.2rem;
		align-items: center;
	}
	h1::before {
		width: 4px;
	}
}

h2 {
	margin: 30px 0 10px;
	padding: 10px 10px 6px;
	border-bottom: 2px solid #cabeb8;
	background-image: linear-gradient(90deg, #57463d, #765d4d);
	font-weight: bold;
	font-size: 116%;
	line-height: 1.4;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #fff;
}
@media screen and (max-width: 600px) {
	h2 {
		margin: 20px 0 0;
		padding: 5px 10px 3px;
		font-size: 13px;
	}
}

h3 {
	position: relative;
	margin: 20px 0 10px;
	padding: 3px 0 3px 18px;
	border-bottom: 1px solid #b4aeae;
	color: #413431;
	font-size: 116%;
}
h3::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 7px;
	height: 90%;
	background-image: linear-gradient(0deg, #f9a13c, #dd6238);
}
@media screen and (max-width: 600px) {
	h3 {
		margin: 5px 0;
		padding: 2px 0 0 12px;
		border-bottom: none;
		font-size: 13px;
	}
	h3::before {
		width: 5px;
	}
}

h4 {
	margin: 0 0 7px;
	padding: 3px 5px 2px;
	background-color: #fbd0a9;
	font-weight: bold;
	font-size: 108%;
	color: #413431;
}

h5 {
	position: relative;
	margin: 0 0 5px;
	padding: 0 0 0 18px;
	font-size: 108%;
	color: #dd6137;
}
@media screen and (max-width: 600px) {
	h5 {
		margin: 0 0 3px 5px;
		font-size: 13px;
	}
}
h5::before {
	content: '';
	position: absolute;
	top: .4em;
	left: 0;
	width: 11px;
	height: 11px;
	background-image: linear-gradient(0deg, #f9a13c, #dd6238);
}

/* ---------------------------------------------------------
キャッチコピー
--------------------------------------------------------- */
.catch {
	margin: 0 0 10px;
	font-size: 1.1rem;
	color: #dd6137;
}
@media screen and (max-width: 600px) {
	.catch {
		margin: 0 10px 10px;
		font-size: 14px;
	}
}

/* ---------------------------------------------------------
サブナビゲーション
--------------------------------------------------------- */
.subnav-heading {
	padding: 28px 7px 25px 16px;
	border-bottom: 3px solid #a79995;
	background-image: linear-gradient(120deg, #574937, #211912);
}
.subnav-heading a {
	text-decoration: none;
	color: #fff;
}
.subnav-heading a span {
	font-weight: bold;
	font-size: 16px;
  letter-spacing: normal;
}

/* ---------------------------------------------------------
footer
--------------------------------------------------------- */
footer#globalfooter div.footer_links h2 {
	background-image: none !important;
}

/* ---------------------------------------------------------
画像リスト
--------------------------------------------------------- */
.listType_01 {
	position: relative;
	display: inline-block;
	padding: 0 0 0 15px;
}
.listType_01::before {
	content: '';
	position: absolute;
	top: .4em;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #000;
}
a .listType_01 {
	text-decoration: underline;
}
a:hover .listType_01 {
	text-decoration: none;
}

/* ---------------------------------------------------------
表 table
--------------------------------------------------------- */
table {
	width: 100%;
	margin: 0 0 10px;
	border-collapse: collapse;
	border: 1px solid #b4aeae;
	border-spacing: 0;
}
table th {
	background: #efe8d0;
	background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
	box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.7);
	color: #413431;
}
table th, table td {
	padding: 13px;
	border: 1px solid #b4aeae;
	text-align: left;
	vertical-align: top;
}

/* レイアウトテーブル
------------------------------------ */
.tblLayout {
	border-color: #fff;
}

.tblLayout th, .tblLayout td {
	padding: 0;
	border-color: #fff;
}

/* レイアウトテーブル内の通常テーブル
------------------------------------ */
.tblLayout table {
	width: 100%;
	border: 1px solid #b4aeae;
}

.tblLayout table th {
	padding: 13px;
	border: 1px solid #b4aeae;
	background: #efe8d0;
	background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
	box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.7);
	color: #413431;
}

.tblLayout table td {
	padding: 13px;
	border: 1px solid #b4aeae;
	text-align: left;
	vertical-align: top;
}

/* 通常テーブル
------------------------------------ */
table.scroll {
	display: block;
	overflow: auto;
	width: auto;
	white-space: nowrap;
}
table.scroll tbody {
	width: 100%;
}
table.scroll::-webkit-scrollbar {
	height: 5px;
}
table.scroll::-webkit-scrollbar-track {
	background: #f1f1f1;
}
table.scroll::-webkit-scrollbar-thumb {
	background: #bcbcbc;
}

table caption, .tblLayout table caption {
	padding: 6px 10px;
	border-top: solid 1px #b4aeae;
	border-right: solid 1px #b4aeae;
	border-left: solid 1px #b4aeae;
	background: #efe8d0;
	font-weight: bold;
}

table p {
	margin: 0.5em 0 0;
}
@media screen and (max-width: 600px) {
	table p {
		font-size: 11px;
	}
}

table p.firstChild, table p:first-child {
	margin-top: 0;
}

table .nowrap {
	white-space: nowrap;
}

table ul, table ol, table dl {
	margin: 0;
}

/* ---------------------------------------------------------
画像回り込み
--------------------------------------------------------- */
.columnsBlock {
	width: auto;
	margin: 1em 0 0;
	padding: 0;
	border: none;
}
.columnsBlock tbody,
.columnsBlock tr {
	border: none;
}
.columnsBlock td {
	padding: 0;
	border: none;
}
.columnsBlock .folderImg {
	float: left;
	max-width: 100%;
	margin: 0 30px 10px 0;
}
@media screen and (max-width: 600px) {
	.columnsBlock .folderImg {
		display: block;
		float: none;
		margin-right: auto;
		margin-left: auto;
	}
}
.columnsBlock .folderImg + p {
	position: relative;
	top: -5px;
}
.columnsBlock .folderImg .imgWrap {
	display: block;
}
.columnsBlock .folderImg .imgWrap img {
	max-width: 400px;
}
@media screen and (max-width: 600px) {
	.columnsBlock .folderImg .imgWrap img {
		max-width: 100%;
	}
}
@media screen and (max-width: 600px) {
	.columnsBlock .folderImg .imgWrap {
		text-align: center;
	}
}

.columnsBlock .tblLayout {
	width: auto;
	margin: 0;
	border: none;
	box-sizing: border-box;
}
.columnsBlock .tblLayout tbody,
.columnsBlock .tblLayout tr,
.columnsBlock .tblLayout td {
	border: none;
}
.columnsBlock .tblLayout td {
	padding: 0;
}
.columnsBlock .tblLayout[align=left] {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}
.columnsBlock .tblLayout[align=right] {
	float: right;
	margin-left: 10px;
	margin-bottom: 10px;
}

.columnsBlock-right .folderImg {
	float: right;
	margin: 0 0 10px 30px;
}
@media screen and (max-width: 600px) {
	.columnsBlock-right .folderImg {
		display: block;
		float: none;
		margin-right: auto;
		margin-left: auto;
	}
}

.columnsBlock h2, .columnsBlock h3 {
	overflow: hidden;
	margin-top: 0;
}

.alignR {
	margin-right: 0;
}

.alignL {
	margin-left: 0;
}

img.imgLine_01 {
	padding: 0;
	border: none;
}

img.imgLine_02 {
	padding: 1px;
	border: 1px solid #b8b8b8;
	background: #fff;
}

/* ---------------------------------------------------------
囲みブロック
--------------------------------------------------------- */
/* 通常
------------------------------------ */
.colorBlock {
	border: 2px solid #b4aeae;
	background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
}

/* 白抜きver
------------------------------------ */
.colorBlockWhite {
	border: 1px solid #b4aeae;
	box-shadow: 0 0 2px #ccc;
}

.colorBlock, .colorBlockWhite {
	padding: 10px 10px 5px;
	border-collapse: separate;
}

.colorBlock th, .colorBlock td,
.colorBlockWhite th, .colorBlockWhite td {
	padding: 0;
	border: none;
}

.colorBlock p,
.colorBlockWhite p {
	margin: 1em 0 0;
}

.colorBlock p.firstChild, .colorBlock h2.firstChild, .colorBlock h3.firstChild, .colorBlock h4.firstChild, .colorBlock p:first-child, .colorBlock h2:first-child, .colorBlock h3:first-child, .colorBlock h4:first-child,
.colorBlockWhite p.firstChild, .colorBlockWhite h2.firstChild, .colorBlockWhite h3.firstChild, .colorBlockWhite h4.firstChild, .colorBlockWhite p:first-child, .colorBlockWhite h2:first-child, .colorBlockWhite h3:first-child, .colorBlockWhite h4:first-child {
	margin-top: 0;
}

.colorBlock ul li, .colorBlockWhite ul li,
.colorBlock ol li, .colorBlockWhite ol li {
	margin-bottom: 10px;
}

.colorBlock td ul,
.colorBlock td ol,
.colorBlockWhite td ul,
.colorBlockWhite td ol {
  padding-left: 1.5em;
  overflow: hidden;
}

/* ---------------------------------------------------------
リンク
--------------------------------------------------------- */
/* 通常リンク
------------------------------------ */
.linkTypeNormal {
	display: inline-block;
	overflow: hidden;
	padding: 0 0 0 8px;
	background: url(img/arrow_01.gif) no-repeat 0 5px;
	font-size: 12px;
	vertical-align: middle;
}

/* PDF
------------------------------------ */
.linkTypePdf {
	display: inline-block;
	padding: 0 16px 0 0;
	background: url(img/icon_pdf.png) no-repeat right 0;
	background-size: 15px auto;
	text-decoration: underline;
	font-size: 12px;
	vertical-align: middle;
}

/* Word
------------------------------------ */
.linkTypeDoc {
	display: inline-block;
	padding: 0 24px 0 0;
	background: url(img/icon_doc.png) no-repeat right 0;
	background-size: 16px auto;
	text-decoration: underline;
}

/* Excel
------------------------------------ */
.linkTypeXls {
	display: inline-block;
	padding: 0 24px 0 0;
	background: url(img/icon_xls.png) no-repeat right 0;
	background-size: 16px auto;
	text-decoration: underline;
}

/* PowerPoint
------------------------------------ */
.linkTypePpt {
	display: inline-block;
	padding: 0 24px 0 0;
	background: url(img/icon_ppt.png) no-repeat right 0;
	background-size: 16px auto;
	text-decoration: underline;
}

/* 別ウィンドウ
------------------------------------ */
.linkTypeWindow {
	margin: 0;
	padding: 0 12px 0 0;
	background-size: 14px auto;
	text-decoration: underline;
	background: url(img/icon_external.png) no-repeat right 0;
	font-size: 12px;
	line-height: 1;
	vertical-align: bottom;
}

/* 上向き矢印
------------------------------------ */
.linkTypeUpper {
	display: inline-block;
	padding: 0 0 0 12px;
	background: url(img/arrow_01_upper.gif) no-repeat left center;
	vertical-align: middle;
}


/* 進む・戻る
------------------------------------ */
.linkPrevious {
	display: inline-block;
	position: relative;
	padding: 0 0 0 12px;
	font-size: 12px;
	vertical-align: middle;
}
.linkPrevious::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 7px;
	margin: -3.5px 0 0;
	background: url(img/arrow_01.gif) no-repeat center center;
	background-size: contain;
	transform: rotate(180deg);
}

.linkNext {
	display: inline-block;
	position: relative;
	padding: 0 0 0 12px;
	font-size: 12px;
	vertical-align: middle;
}
.linkNext::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 7px;
	margin: -3.5px 0 0;
	background: url(img/arrow_01.gif) no-repeat center center;
	background-size: contain;
}

/* ---------------------------------------------------------
画像カラムレイアウト
2カラム：imgColumns_01
3カラム：imgColumns_02
4カラム：imgColumns_03
5カラム：imgColumns_04
------------------------------------ */
.imgColumns_01, .imgColumns_02, .imgColumns_03, .imgColumns_04 {
	margin: 10px 0 0 -20px;
	letter-spacing: -0.4em;
}
.imgColumns_01 *, .imgColumns_02 *, .imgColumns_03 *, .imgColumns_04 * {
	box-sizing: border-box;
}
.imgColumns_01 > *, .imgColumns_02 > *, .imgColumns_03 > *, .imgColumns_04 > * {
	letter-spacing: normal;
}
@media screen and (max-width: 600px) {
	.imgColumns_01, .imgColumns_02, .imgColumns_03, .imgColumns_04 {
		margin: 5px 0 0;
		letter-spacing: normal;
	}
}
.imgColumns_01 .item, .imgColumns_02 .item, .imgColumns_03 .item, .imgColumns_04 .item {
	display: inline-block;
	margin: 20px 0 0 20px;
	vertical-align: top;
}
@media screen and (max-width: 600px) {
	.imgColumns_01 .item, .imgColumns_02 .item, .imgColumns_03 .item, .imgColumns_04 .item {
		display: block;
		margin: 15px 0 0;
		padding: 0;
	}
}
.imgColumns_01 .item:empty, .imgColumns_02 .item:empty, .imgColumns_03 .item:empty, .imgColumns_04 .item:empty {
	display: block;
}
@media screen and (max-width: 600px) {
	.imgColumns_01 .item:empty, .imgColumns_02 .item:empty, .imgColumns_03 .item:empty, .imgColumns_04 .item:empty {
		display: none;
	}
}
.imgColumns_01 p, .imgColumns_02 p, .imgColumns_03 p, .imgColumns_04 p {
	margin-top: 0.5em;
	color: #615e5e;
	font-size: 12px;
}
.imgColumns_01 p:first-child, .imgColumns_02 p:first-child, .imgColumns_03 p:first-child, .imgColumns_04 p:first-child {
	margin-top: 0;
}
.imgColumns_01 p a, .imgColumns_02 p a, .imgColumns_03 p a, .imgColumns_04 p a {
	color: #615e5e;
}
@media screen and (max-width: 600px) {
	.imgColumns_01 p, .imgColumns_02 p, .imgColumns_03 p, .imgColumns_04 p {
		margin-top: 0.25em;
		font-size: 12px;
	}
}
.imgColumns_01 .imgWrap, .imgColumns_02 .imgWrap, .imgColumns_03 .imgWrap, .imgColumns_04 .imgWrap {
	display: block;
	position: relative;
	padding-top: 75%;
}
.imgColumns_01 img, .imgColumns_02 img, .imgColumns_03 img, .imgColumns_04 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	vertical-align: bottom;
	-o-object-fit: cover;
	object-fit: cover;
}

.imgColumns_01 .item {
	width: calc(50% - 20px);
}
@media screen and (max-width: 600px) {
	#content .imgColumns_01, #contentWrapNoneSide .imgColumns_01, #contentWrapNoneSide #content .imgColumns_01, #contentWrapNoneSide #content #topBlock .imgColumns_01 {
		margin: 5px 0 0 -15px;
		letter-spacing: -0.4em;
	}
	#content .imgColumns_01 > *, #contentWrapNoneSide .imgColumns_01 > *, #contentWrapNoneSide #content .imgColumns_01 > *, #contentWrapNoneSide #content #topBlock .imgColumns_01 > * {
		letter-spacing: normal;
	}
	#content .imgColumns_01 .item, #contentWrapNoneSide .imgColumns_01 .item, #contentWrapNoneSide #content .imgColumns_01 .item, #contentWrapNoneSide #content #topBlock .imgColumns_01 .item {
		display: inline-block;
		width: calc(50% - 15px);
		margin: 15px 0 0 15px;
		padding: 0;
	}
}

.imgColumns_02 .item {
	width: calc(33.333% - 20px);
}
@media screen and (max-width: 600px) {
	#content .imgColumns_02, #contentWrapNoneSide .imgColumns_02, #contentWrapNoneSide #content .imgColumns_02, #contentWrapNoneSide #content #topBlock .imgColumns_02 {
		margin: 5px 0 0 -15px;
		letter-spacing: -0.4em;
	}
	#content .imgColumns_02 > *, #contentWrapNoneSide .imgColumns_02 > *, #contentWrapNoneSide #content .imgColumns_02 > *, #contentWrapNoneSide #content #topBlock .imgColumns_02 > * {
		letter-spacing: normal;
	}
	#content .imgColumns_02 .item, #contentWrapNoneSide .imgColumns_02 .item, #contentWrapNoneSide #content .imgColumns_02 .item, #contentWrapNoneSide #content #topBlock .imgColumns_02 .item {
		display: inline-block;
		width: calc(50% - 15px);
		margin: 15px 0 0 15px;
		padding: 0;
	}
}

.imgColumns_03 .item {
	width: calc(25% - 20px);
}
@media screen and (max-width: 600px) {
	#content .imgColumns_03, #contentWrapNoneSide .imgColumns_03, #contentWrapNoneSide #content .imgColumns_03, #contentWrapNoneSide #content #topBlock .imgColumns_03 {
		margin: 5px 0 0 -15px;
		letter-spacing: -0.4em;
	}
	#content .imgColumns_03 > *, #contentWrapNoneSide .imgColumns_03 > *, #contentWrapNoneSide #content .imgColumns_03 > *, #contentWrapNoneSide #content #topBlock .imgColumns_03 > * {
		letter-spacing: normal;
	}
	#content .imgColumns_03 .item, #contentWrapNoneSide .imgColumns_03 .item, #contentWrapNoneSide #content .imgColumns_03 .item, #contentWrapNoneSide #content #topBlock .imgColumns_03 .item {
		display: inline-block;
		width: calc(50% - 15px);
		margin: 15px 0 0 15px;
		padding: 0;
	}
}

.imgColumns_04 .item {
	width: calc(20% - 20px);
}
@media screen and (max-width: 600px) {
	#content .imgColumns_04, #contentWrapNoneSide .imgColumns_04, #contentWrapNoneSide #content .imgColumns_04, #contentWrapNoneSide #content #topBlock .imgColumns_04 {
		margin: 5px 0 0 -15px;
		letter-spacing: -0.4em;
	}
	#content .imgColumns_04 > *, #contentWrapNoneSide .imgColumns_04 > *, #contentWrapNoneSide #content .imgColumns_04 > *, #contentWrapNoneSide #content #topBlock .imgColumns_04 > * {
		letter-spacing: normal;
	}
	#content .imgColumns_04 .item, #contentWrapNoneSide .imgColumns_04 .item, #contentWrapNoneSide #content .imgColumns_04 .item, #contentWrapNoneSide #content #topBlock .imgColumns_04 .item {
		display: inline-block;
		width: calc(50% - 15px);
		margin: 15px 0 0 15px;
		padding: 0;
	}
}

/* ---------------------------------------------------------
ClearFix
--------------------------------------------------------- */
.columnsBlock:after {
	content: '';
	display: block;
	clear: both;
}

/* ---------------------------------------------------------
新着情報・トピックス
--------------------------------------------------------- */
.topicsBlock {
	position: relative;
	margin: 0;
	padding: 1px 0 0;
}
.topicsBlock * {
	box-sizing: border-box;
}
@media screen and (max-width: 600px) {
	.topicsBlock {
		text-align: left;
	}
}
.topicsBlock table {
	width: 100%;
	margin: 0;
	border: none;
	border-collapse: collapse;
}
.topicsBlock table col.dateType {
	width: 140px;
}
.topicsBlock table col.icoType {
	width: 90px;
}
@media screen and (max-width: 600px) {
	.topicsBlock table tbody {
		padding: 0;
	}
}
.topicsBlock table tr {
	border-bottom: 1px dotted #a48f82;
}
@media screen and (max-width: 600px) {
	.topicsBlock table tr {
		display: block;
		position: relative;
		margin: 0;
	}
}
.topicsBlock table tr:first-child th {
	padding: 8px 0 3px;
}
@media screen and (max-width: 600px) {
	.topicsBlock table tr:first-child th {
		width: 100%;
		padding: 5px 10px 2px;
		background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
		color: #403331;
	}
}
.topicsBlock table tr:first-child td:nth-child(2) {
	padding: 17px 15px 17px 0;
}
@media screen and (max-width: 600px) {
	.topicsBlock table tr:first-child td:nth-child(2) {
		padding: 0;
	}
}
.topicsBlock table tr:first-child td:last-child {
	padding: 8px 0 3px;
}
@media screen and (max-width: 600px) {
	.topicsBlock table tr:first-child td:last-child {
		padding: 0;
	}
}
.topicsBlock table th {
	width: 10em;
	padding: 8px 0 3px;
	border: none;
	background: transparent;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	color: #a48d80;
}
@media screen and (max-width: 600px) {
	.topicsBlock table th {
		display: inline-block;
		width: 100%;
		padding: 5px 10px 2px;
		background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
		color: #403331;
	}
}
.topicsBlock table td {
	border: 0;
	background: transparent;
	vertical-align: top;
}
@media only print, screen and (min-width: 700px) {
	.topicsBlock table td {
		position: relative;
	}
}
.topicsBlock table td:nth-child(2) {
	width: 110px;
	padding: 22px 15px 17px 0;
}
@media screen and (max-width: 600px) {
	.topicsBlock table td:nth-child(2) {
		display: inline-block;
		width: auto;
		padding: 22px 0 0;
		border-bottom: none;
		vertical-align: middle;
	}
}
.topicsBlock table td:last-of-type {
	width: auto;
	padding: 8px 0 3px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
@media screen and (max-width: 600px) {
	.topicsBlock table td:last-of-type {
		display: block;
		padding: 0;
	}
}
.topicsBlock table td:last-of-type a {
	display: inline;
	overflow: hidden;
	padding: 0 0 0 8px;
	background: url(img/arrow_01.gif) no-repeat 0 5px;
	font-size: 92%;
	letter-spacing: normal;
	text-decoration: none;
	color: #413431;
}
@media screen and (max-width: 600px) {
	.topicsBlock table td:last-of-type a {
		padding: 8px 30px 6px 10px;
		background-position: 97% center;
	}
}
.topicsBlock table td:last-of-type a:before {
	content: '';
	position: absolute;
	top: 0.4em;
	left: 0;
	width: 10px;
	height: 10px;
	background-size: contain;
}
.topicsBlock table td a {
	display: inline;
	position: relative;
	color: #333;
	text-decoration: none;
}
.topicsBlock table td a:hover {
	text-decoration: underline;
	opacity: 1;
}
.topicsBlock table .new {
	display: inline-block;
	overflow: hidden;
	position: relative;
	width: 32px;
	height: 12px;
	margin: 0 0 0 4px;
	background: url(img/icon_new.png) no-repeat 0 0;
	background-size: contain;
	text-indent: 200%;
	white-space: nowrap;
	vertical-align: middle;
}
@media only screen and (max-width: 699px) {
	.topicsBlock table .new {
		width: 25px;
		height: 15px;
		background-position: 0 0.2em;
	}
}

/* ---------------------------------------------------------
区切り線
--------------------------------------------------------- */
hr.breakLine_01 {
	height: 2px;
	border: 0 none;
	background-color: #b4aeae;
}

hr.breakLine_02 {
	height: 1px;
	border: 0 none;
	background-color: #b4aeae;
}

/* ---------------------------------------------------------
サイトマップ
--------------------------------------------------------- */
.sitemap h2 {
	margin: 0 0 10px;
	padding: 5px 10px;
	border-bottom: none;
	border-radius: 4px;
	background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
	color: #413431;
}
@media screen and (max-width: 600px) {
	.sitemap h2 {
		border-radius: 0;
		padding: 7px 5px 5px;
		margin: 0;
		border-top: 1px solid #b4aeae;
		border-bottom: 1px solid #fff;
		font-size: 14px;
	}
}
.sitemap h2 a {
	display: block;
	margin: 0;
	padding: 5px 0 5px 23px;
	background: url(img/bg_heading_arrow.png) no-repeat 0 5px;
	text-decoration: underline;
	color: #413431;
}
.sitemap h2 a:hover {
	color: #a55225;
	opacity: 1;
}
@media screen and (max-width: 600px) {
	.sitemap h2 a {
		display: block;
		text-decoration: none;
	}
}
.sitemap ul {
	margin: 10px 0 10px 20px;
	padding: 0 0 0 8px;
}
@media screen and (max-width: 600px) {
	.sitemap ul {
		margin: 0;
		padding: 0;
	}
}
.sitemap ul li {
	padding: 0;
	background-size: 6px auto;
	list-style: none;
}
@media screen and (max-width: 600px) {
	.sitemap ul li {
		margin: 0;
		border-top: none;
		border-bottom: 1px solid #cabeb8;
		background: linear-gradient(to bottom, #faf2ed 0%, #eadfd7 100%);
	}
}
.sitemap ul li:before {
	display: none;
}
.sitemap ul li a {
	padding: 0 0 0 8px;
	background: url(img/arrow_01.gif) no-repeat left center;
}
@media screen and (max-width: 600px) {
	.sitemap ul li a {
		display: block;
		padding: 9px 4% 7px 5px;
		background: url(img/arrow_01.gif) no-repeat 98% center;
		text-decoration: none;
		color: #403331;
	}
}
.sitemap ul ul {
	list-style-type: none;
	margin: 5px 0 0 20px;
	padding: 0;
}
@media screen and (max-width: 600px) {
	.sitemap ul ul {
		margin: 0;
		border-top: 1px solid #cabeb8;
	}
}

/* ---------------------------------------------------------
404・エラーページ
--------------------------------------------------------- */
@media screen and (max-width: 600px) {
	.notfound p {
		margin-left: 1em;
		margin-right: 1em;
	}
	.notfound p:has(.linkTypeNormal) {
		margin: 0;
	}
	.notfound p .linkTypeNormal {
		display: block;
		border-top: 1px solid #cabeb8;
		border-bottom: 1px solid #cabeb8;
		background: linear-gradient(to bottom, #faf2ed 0%, #eadfd7 100%);
		margin: 0 calc(50% - 50vw);
		padding: 0 calc(50% - 50vw);
	}
	.notfound p .linkTypeNormal a {
		display: block;
		padding: 9px 4% 7px 5px;
		background: url(img/arrow_01.gif) no-repeat 98% center;
		text-decoration: none;
		color: #403331;
	}
}

/* ---------------------------------------------------------
1段組
・レイアウト1
・レイアウト4
2段組
・レイアウト2
・レイアウト5
3段組
・レイアウト3
・レイアウト6
--------------------------------------------------------- */
.columnLayout_01, .columnLayout_02, .columnLayout_03, .columnLayout_04 {
	margin: 10px 0 0 -5px;
	letter-spacing: -0.4em;
}
.columnLayout_01 *, .columnLayout_02 *, .columnLayout_03 *, .columnLayout_04 * {
	box-sizing: border-box;
}
.columnLayout_01 > *, .columnLayout_02 > *, .columnLayout_03 > *, .columnLayout_04 > * {
	letter-spacing: normal;
}
@media screen and (max-width: 600px) {
	.columnLayout_01, .columnLayout_02, .columnLayout_03, .columnLayout_04 {
		margin: 5px 0 0;
		letter-spacing: normal;
	}
}
.columnLayout_01 .itemWrap, .columnLayout_02 .itemWrap, .columnLayout_03 .itemWrap, .columnLayout_04 .itemWrap {
	display: inline-block;
	margin: 10px 0 0 5px;
	padding: 8px 10px 1.3em;
	border: 5px solid #f2e9d2;
	vertical-align: top;
	box-shadow: 1px 1px 0 #d1c4bc inset, -1px -1px 0 #d1c4bc inset;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .itemWrap, .columnLayout_02 .itemWrap, .columnLayout_03 .itemWrap, .columnLayout_04 .itemWrap {
		display: block;
		margin: 15px 0 0;
		padding: 0;
		border: none;
		box-shadow: none;
	}
}

.columnLayout_01 .itemWrap {
	display: block;
}

.columnLayout_02 .itemWrap {
	width: calc(50% - 5px);
}
@media screen and (max-width: 600px) {
	.columnLayout_02 .itemWrap {
		width: 100%;
	}
}

.columnLayout_03 .itemWrap {
	width: calc(33.333% - 5px);
}
@media screen and (max-width: 600px) {
	.columnLayout_03 .itemWrap {
		width: 100%;
	}
}

.columnLayout_04 .itemWrap {
	width: calc(25% - 5px);
}
@media screen and (max-width: 600px) {
	.columnLayout_04 .itemWrap {
		width: 100%;
	}
}

.columnLayout_01 .item, .columnLayout_02 .item, .columnLayout_03 .item, .columnLayout_04 .item {
	border-top: none;
	vertical-align: top;
}
.columnLayout_01 .item > .inner, .columnLayout_02 .item > .inner, .columnLayout_03 .item > .inner, .columnLayout_04 .item > .inner {
	padding: 0;
}
.columnLayout_01 .itemTtl, .columnLayout_02 .itemTtl, .columnLayout_03 .itemTtl, .columnLayout_04 .itemTtl {
	margin: 0 0 10px;
	border-bottom: 4px solid #e0693d;
	background: url(img/bg_heading_arrow.png) no-repeat  5px 2px;
	background-color: transparent;
	background-size: 20px;
	color: #57463d;
	text-decoration: none;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .itemTtl, .columnLayout_02 .itemTtl, .columnLayout_03 .itemTtl, .columnLayout_04 .itemTtl {
		border-top: 1px solid #ccc;
		border-bottom: none;
		background-size: 14px;
		background-position: 5px 11px;
	}
}
.columnLayout_01 .itemTtl a, .columnLayout_02 .itemTtl a, .columnLayout_03 .itemTtl a, .columnLayout_04 .itemTtl a {
	display: block;
	padding: 2px 10px 4px 30px;
	font-size: 1.17em;
	color: #57463d;
	text-decoration: none;
}
.columnLayout_01 .itemTtl a:hover, .columnLayout_02 .itemTtl a:hover, .columnLayout_03 .itemTtl a:hover, .columnLayout_04 .itemTtl a:hover {
	color: #a55225;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .itemTtl a, .columnLayout_02 .itemTtl a, .columnLayout_03 .itemTtl a, .columnLayout_04 .itemTtl a {
		padding: 7px 20px 7px 10px;
		background: url(img/arrow_01.gif) no-repeat 97% center, linear-gradient(to bottom, #faf2ed 0%, #eadfd7 100%);

	}
}
.columnLayout_01 .itemTtl + .inner, .columnLayout_02 .itemTtl + .inner, .columnLayout_03 .itemTtl + .inner, .columnLayout_04 .itemTtl + .inner {
	padding: 0;
}
.columnLayout_01 .inner, .columnLayout_02 .inner, .columnLayout_03 .inner, .columnLayout_04 .inner {
	padding: 20px 0 0;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .inner, .columnLayout_02 .inner, .columnLayout_03 .inner, .columnLayout_04 .inner {
		padding: 16px 0 0;
	}
}
.columnLayout_01 .inner p, .columnLayout_02 .inner p, .columnLayout_03 .inner p, .columnLayout_04 .inner p {
	position: relative;
	top: -3px;
	margin: 0 0 20px;
	padding: 0 5px 0 0;
	font-size: 93%;
	text-align: justify;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .inner p, .columnLayout_02 .inner p, .columnLayout_03 .inner p, .columnLayout_04 .inner p {
		margin: 5px 10px;
		padding: 0;
	}
	.columnLayout_03 .inner p.itemTtl, .columnLayout_04 .inner p.itemTtl {
		margin: 0;
		padding: 0;
	}
}
.columnLayout_01 .inner p span, .columnLayout_02 .inner p span, .columnLayout_03 .inner p span, .columnLayout_04 .inner p span {
	/* font-size: 1.6rem; */
}
.columnLayout_01 .inner .folderImg, .columnLayout_02 .inner .folderImg, .columnLayout_03 .inner .folderImg, .columnLayout_04 .inner .folderImg {
	float: left;
	top: auto;
	z-index: 5;
	margin: 0 6px 5px 0;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .inner .folderImg, .columnLayout_02 .inner .folderImg, .columnLayout_03 .inner .folderImg, .columnLayout_04 .inner .folderImg {
		margin: 0 10px 10px 0;
	}
}
.columnLayout_01 .inner .folderImg a, .columnLayout_02 .inner .folderImg a, .columnLayout_03 .inner .folderImg a, .columnLayout_04 .inner .folderImg a {
	display: block;
	transition: opacity 0.2s ease-in-out;
}
.columnLayout_01 .inner .folderImg a:hover, .columnLayout_02 .inner .folderImg a:hover, .columnLayout_03 .inner .folderImg a:hover, .columnLayout_04 .inner .folderImg a:hover {
	text-decoration: none;
	opacity: 0.7;
}
@media screen and (max-width: 600px) {
	.columnLayout_01 .inner .folderImg a, .columnLayout_02 .inner .folderImg a, .columnLayout_03 .inner .folderImg a, .columnLayout_04 .inner .folderImg a {
		transition: none;
	}
	.columnLayout_01 .inner .folderImg a:hover, .columnLayout_02 .inner .folderImg a:hover, .columnLayout_03 .inner .folderImg a:hover, .columnLayout_04 .inner .folderImg a:hover {
		text-decoration: inherit;
		opacity: 1;
	}
}
.columnLayout_01 .inner .folderImg img, .columnLayout_02 .inner .folderImg img, .columnLayout_03 .inner .folderImg img, .columnLayout_04 .inner .folderImg img {
	border: 1px solid #dde4eb;
}
.columnLayout_01 .inner .imgWrap, .columnLayout_02 .inner .imgWrap, .columnLayout_03 .inner .imgWrap, .columnLayout_04 .inner .imgWrap {
	display: block;
	position: relative;
	margin: 0 0 15px;
	padding-top: 75%;
}
.columnLayout_01 .inner .imgWrap img, .columnLayout_02 .inner .imgWrap img, .columnLayout_03 .inner .imgWrap img, .columnLayout_04 .inner .imgWrap img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	vertical-align: bottom;
	-o-object-fit: cover;
	object-fit: cover;
}

.columnLayout_01 .item .folderImg, .columnLayout_02 .item .folderImg {
	width: 145px;
}

.columnLayout_03 .item .folderImg {
	width: 85px;
}
@media screen and (max-width: 600px) {
	.columnLayout_03 .item .folderImg {
		width: 125px;
	}
}

.columnLayout_01 .item .folderImg .imgWrap, .columnLayout_02 .item .folderImg .imgWrap, .columnLayout_03 .item .folderImg .imgWrap, .columnLayout_04 .item .folderImg .imgWrap {
	display: block;
	position: relative;
	padding-top: 75%;
}

.columnLayout_01 .item .folderImg img, .columnLayout_02 .item .folderImg img, .columnLayout_03 .item .folderImg img, .columnLayout_04 .item .folderImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.columnLayout_01 .item .folderImg a:hover img, .columnLayout_02 .item .folderImg a:hover img, .columnLayout_03 .item .folderImg a:hover img, .columnLayout_04 .item .folderImg a:hover img {
	opacity: 0.8;
}

/* ---------------------------------------------------------
2段組ボタン
・レイアウト15
・レイアウト16
3段組ボタン
・レイアウト7
・レイアウト8
--------------------------------------------------------- */
.columnLayout_02btn, .columnLayout_03btn {
	margin: 10px 0 0 -20px;
	letter-spacing: -0.4em;
}
.columnLayout_02btn *, .columnLayout_03btn * {
	box-sizing: border-box;
}
.columnLayout_02btn > *, .columnLayout_03btn > * {
	letter-spacing: normal;
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn, .columnLayout_03btn {
		margin: 5px;
	}
}
.columnLayout_02btn .itemWrap, .columnLayout_03btn .itemWrap {
	display: inline-block;
	margin: 20px 0 0 20px;
	padding-top: 3px;
	vertical-align: top;
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn .itemWrap, .columnLayout_03btn .itemWrap {
		display: block;
		margin: 15px 0 0;
		padding: 0;
	}
}
.columnLayout_02btn .itemWrap.bl-hover, .columnLayout_03btn .itemWrap.bl-hover {
	cursor: pointer;
}
.columnLayout_02btn .itemWrap.bl-hover .folderImg, .columnLayout_03btn .itemWrap.bl-hover .folderImg {
	opacity: 0.8;
}
.columnLayout_02btn .itemWrap.bl-hover .itemTtl, .columnLayout_03btn .itemWrap.bl-hover .itemTtl {
	opacity: 0.7;
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn .itemWrap.bl-hover .folderImg, .columnLayout_03btn .itemWrap.bl-hover .folderImg {
		opacity: 1;
	}
	.columnLayout_02btn .itemWrap.bl-hover .itemTtl, .columnLayout_03btn .itemWrap.bl-hover .itemTtl {
		opacity: 1;
	}
}
.columnLayout_02btn .item .inner, .columnLayout_03btn .item .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 10px;
	border-radius: 4px;
	background-color: #f2e9d2;
}
.columnLayout_02btn p, .columnLayout_03btn p {
	margin: 0;
	line-height: 1.4;
	flex: 1;
}
.columnLayout_02btn a, .columnLayout_03btn a {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 5px 10px;
	border-radius: 4px;
	text-decoration: underline;
	color: #413431;
}
.columnLayout_02btn a:hover, .columnLayout_03btn a:hover {
	text-decoration: none;
	color: #a55225;
}
.columnLayout_02btn a span, .columnLayout_03btn a span {
	display: block;
	padding-left: 20px;
	background: url(img/bg_heading_arrow.png) no-repeat 0 1px;
	background-size: 15px;
}
.columnLayout_02btn .folderImg, .columnLayout_03btn .folderImg {
	display: flex;
	align-items: center;
	margin: 0 10px 0 0;
	background: transparent;
	vertical-align: middle;
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn .folderImg, .columnLayout_03btn .folderImg {
		margin: 0 8px 0 0;
	}
}
.columnLayout_02btn .folderImg .imgWrap, .columnLayout_03btn .folderImg .imgWrap {
	display: block;
	position: relative;
	width: 100%;
	padding-top: 75%;
}
.columnLayout_02btn .folderImg img, .columnLayout_03btn .folderImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.columnLayout_02btn .itemTtl, .columnLayout_03btn .itemTtl {
	margin: 0;
	letter-spacing: 0.1em;
	vertical-align: middle;
	flex: 1;
}

.columnLayout_02btn .itemWrap {
	width: calc(50% - 20px);
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn .itemWrap {
		width: 100%;
	}
}
.columnLayout_02btn .folderImg {
	width: 120px;
	max-width: 120px;
	min-width: 120px;
}
@media screen and (max-width: 600px) {
	.columnLayout_02btn .folderImg {
		width: 110px;
		max-width: 110px;
		min-width: 110px;
	}
}

.columnLayout_03btn .itemWrap {
	width: calc(33.333% - 20px);
}
@media screen and (max-width: 600px) {
	.columnLayout_03btn .itemWrap {
		width: 100%;
	}
}
.columnLayout_03btn .folderImg {
	width: 68px;
	max-width: 68px;
	min-width: 68px;
}
@media screen and (max-width: 600px) {
	.columnLayout_03btn .folderImg {
		width: 110px;
		max-width: 110px;
		min-width: 110px;
	}
}

/* ---------------------------------------------------------
サブフォルダ名表示
1段組
・レイアウト14
2段組
・レイアウト11
3段組
・レイアウト12
4段組
・レイアウト13
--------------------------------------------------------- */
.columnLayout_01sub .item, .columnLayout_02sub .item, .columnLayout_03sub .item, .columnLayout_04sub .item {
	overflow: hidden;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub .item, .columnLayout_02sub .item, .columnLayout_03sub .item, .columnLayout_04sub .item {
		padding: 0;
		border-radius: 0;
	}
}
.columnLayout_01sub .item .itemTtl, .columnLayout_02sub .item .itemTtl, .columnLayout_03sub .item .itemTtl, .columnLayout_04sub .item .itemTtl {
	margin: 0;
	padding: 0;
	background: transparent;
}
.columnLayout_01sub .item .itemTtl a, .columnLayout_02sub .item .itemTtl a, .columnLayout_03sub .item .itemTtl a, .columnLayout_04sub .item .itemTtl a {
	display: block;
	padding: 12px 10px 10px;
	color: #57463d;
	font-weight: normal;
	text-decoration: none;
	letter-spacing: 0.1em;
}
.columnLayout_01sub .item .itemTtl a:hover, .columnLayout_02sub .item .itemTtl a:hover, .columnLayout_03sub .item .itemTtl a:hover, .columnLayout_04sub .item .itemTtl a:hover {
	color: #a55225;
	opacity: 1;
}
.columnLayout_01sub .item .itemTtl span, .columnLayout_02sub .item .itemTtl span, .columnLayout_03sub .item .itemTtl span, .columnLayout_04sub .item .itemTtl span {
	padding: 0;
	background: none;
}
.columnLayout_01sub .item .itemTtl span:before, .columnLayout_02sub .item .itemTtl span:before, .columnLayout_03sub .item .itemTtl span:before, .columnLayout_04sub .item .itemTtl span:before {
	content: '';
	display: inline-block;
	position: relative;
	top: 4px;
	width: 14px;
	height: 14px;
	margin: 0 10px 0 0;
	background: url(img/bg_heading_arrow.png) no-repeat 0 0;
	background-size: contain;
	vertical-align: top;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub .item .itemTtl span:before, .columnLayout_02sub .item .itemTtl span:before, .columnLayout_03sub .item .itemTtl span:before, .columnLayout_04sub .item .itemTtl span:before {
		display: none;
	}
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub .item .itemTtl, .columnLayout_02sub .item .itemTtl, .columnLayout_03sub .item .itemTtl, .columnLayout_04sub .item .itemTtl {
		text-align: left;
	}
	.columnLayout_01sub .item .itemTtl a, .columnLayout_02sub .item .itemTtl a, .columnLayout_03sub .item .itemTtl a, .columnLayout_04sub .item .itemTtl a {
		position: relative;
		text-align: left;
	}
	.columnLayout_01sub .item .itemTtl a:before, .columnLayout_02sub .item .itemTtl a:before, .columnLayout_03sub .item .itemTtl a:before, .columnLayout_04sub .item .itemTtl a:before {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: 5px;
		width: 9px;
		height: 15px;
		margin: -8px 0 0;
		background-size: contain;
	}
	.columnLayout_01sub .item .itemTtl a:hover, .columnLayout_02sub .item .itemTtl a:hover, .columnLayout_03sub .item .itemTtl a:hover, .columnLayout_04sub .item .itemTtl a:hover {
		opacity: 1;
	}
}
.columnLayout_01sub .item .inner, .columnLayout_02sub .item .inner, .columnLayout_03sub .item .inner, .columnLayout_04sub .item .inner {
	padding: 16px 0 0;
	background: #fff;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub .item .inner, .columnLayout_02sub .item .inner, .columnLayout_03sub .item .inner, .columnLayout_04sub .item .inner {
		display: block;
		padding: 14px;
	}
}
.columnLayout_01sub a, .columnLayout_02sub a, .columnLayout_03sub a, .columnLayout_04sub a {
	color: #000;
	transition: opacity 0.2s ease-in-out;
}
.columnLayout_01sub a:hover, .columnLayout_02sub a:hover, .columnLayout_03sub a:hover, .columnLayout_04sub a:hover {
	text-decoration: none;
	opacity: 0.7;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub a, .columnLayout_02sub a, .columnLayout_03sub a, .columnLayout_04sub a {
		transition: none;
	}
	.columnLayout_01sub a:hover, .columnLayout_02sub a:hover, .columnLayout_03sub a:hover, .columnLayout_04sub a:hover {
		text-decoration: inherit;
		opacity: 1;
	}
}
.columnLayout_01sub a:hover, .columnLayout_02sub a:hover, .columnLayout_03sub a:hover, .columnLayout_04sub a:hover {
	color: #a55225;
	opacity: 1;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub a:hover, .columnLayout_02sub a:hover, .columnLayout_03sub a:hover, .columnLayout_04sub a:hover {
		text-decoration: underline;
	}
}

.columnLayout_01sub ul {
	margin: 0;
	padding: 0;
	letter-spacing: -0.4em;
}
.columnLayout_01sub ul > * {
	letter-spacing: normal;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub ul {
		margin: -6px 0 0;
		padding: 0;
	}
}
.columnLayout_01sub li {
	display: inline-block;
	margin: 1px 0 0;
	padding: 0;
	line-height: 1.85;
	list-style: none;
}
.columnLayout_01sub li a {
	text-decoration: none;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub li {
		display: block;
		margin: 5px 0 0;
	}
}
.columnLayout_01sub li:before {
	display: none;
}
.columnLayout_01sub li:after {
	content: '';
	display: inline-block;
	position: relative;
	top: -2px;
	width: 1px;
	height: 16px;
	margin: 0 18px;
	background: #000;
	vertical-align: middle;
}
@media screen and (max-width: 600px) {
	.columnLayout_01sub li:after {
		height: 15px;
		margin: 0 14px;
	}
}
.columnLayout_01sub li:last-of-type:after {
	content: none;
}

.columnLayout_02sub ul, .columnLayout_03sub ul, .columnLayout_04sub ul {
	margin: -8px 0 0;
	padding: 0 0 0 16px;
}
@media screen and (max-width: 600px) {
	.columnLayout_02sub ul, .columnLayout_03sub ul, .columnLayout_04sub ul {
		margin: -6px 0 0 -20px;
		padding: 0;
	}
}
.columnLayout_02sub li, .columnLayout_03sub li, .columnLayout_04sub li {
	position: relative;
	margin: 6px 0 0;
	padding-left: 12px;
	list-style: none;
}
@media screen and (max-width: 600px) {
	.columnLayout_02sub li, .columnLayout_03sub li, .columnLayout_04sub li {
		display: inline-block;
		width: 100%;
		margin: 8px 0 0 20px;
		padding-left: 11px;
	}
}
.columnLayout_02sub li:before, .columnLayout_03sub li:before, .columnLayout_04sub li:before {
	content: '';
	display: block;
	position: absolute;
	top: 6px;
	left: 0;
	width: 7px;
	height: 6px;
	background: url(img/arrow_01.gif) no-repeat 0 0;
	background-size: contain;
}

/* ---------------------------------------------------------
日付リスト
・レイアウト9（年月日 tblDateLst_01）
・レイアウト10（月日 tblDateLst_02）
--------------------------------------------------------- */
.tblDateLst_01, .tblDateLst_02 {
	display: block;
}

.tblDateLst_01 table, .tblDateLst_02 table {
	width: 100%;
	margin: 30px 0 0;
	border: none;
}
@media screen and (max-width: 600px) {
	.tblDateLst_01 table, .tblDateLst_02 table {
		margin: 20px 0 0;
	}
}
.tblDateLst_01 table thead th, .tblDateLst_02 table thead th {
	border: 1px solid #b4aeae;
	background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
	box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.7);
	color: #413431;
}
.tblDateLst_01 table td, .tblDateLst_02 table td {
	padding: 8px 10px 6px;
	border: 1px solid #ccc;
	background-color: #fff;
}

/* 年月日
------------------------------------ */
.tblDateLst_01 table col.dateType {
	width: 11em;
}
@media only print, screen and (min-width: 700px) {
	.tblDateLst_01 table col.dateType {
		width: 11.5em;
	}
}

/* 月日
------------------------------------ */
.tblDateLst_02 table col.dateType {
	width: 7.5em;
}
@media only print, screen and (min-width: 700px) {
	.tblDateLst_02 table col.dateType {
		width: 8em;
	}
}

/* リンク
------------------------------------ */
.tblDateLst_01 table a, .tblDateLst_02 table a {
	display: inline-block;
	min-height: 17px;
	padding-left: 22px;
	background: url(img/bg_heading_arrow.png) no-repeat 0 1px;
	background-size: 14px;
	color: #a55225;
}
.tblDateLst_01 table a:hover, .tblDateLst_02 table a:hover {
	color: var(--main-color);
}
@media screen and (max-width: 600px) {
	.tblDateLst_01 table a, .tblDateLst_02 table a {
		padding-left: 18px;
		background-position: 0 1px;
		background-size: 12px;
	}
	.tblDateLst_01 table a:hover, .tblDateLst_02 table a:hover {
		text-decoration: underline;
	}
}

/* ---------------------------------------------------------
ClearFix
--------------------------------------------------------- */
#summaryWrap:after, .columnLayout_01 .inner:after, .columnLayout_02 .inner:after, .columnLayout_03 .inner:after, .columnLayout_04 .inner:after, .columnLayout_02btn .inner:after, .columnLayout_03btn .inner:after {
	content: '';
	display: block;
	clear: both;
}

/* ---------------------------------------------------------
サイト内検索 ■ normal
--------------------------------------------------------- */
.gsc-control-cse.gsc-control-cse-ja {
	padding: 1em;
}
.gsc-control-cse.gsc-control-cse-ja table, .gsc-control-cse.gsc-control-cse-ja th, .gsc-control-cse.gsc-control-cse-ja td {
	border: none;
}
.gsc-control-cse.gsc-control-cse-ja table {
	background-color: transparent;
}
.gsc-control-cse.gsc-control-cse-ja .gsc-option-menu-container {
	white-space: nowrap;
}

.gsc-control-cse {
	border-color: #FFFFFF;
	background-color: #F5F5F5 !important;
}

.gsc-search-box {
	padding: 0 !important;
}
.gsc-search-box th, .gsc-search-box td {
	height: 36px;
	padding: 0;
}

.gsc-input input.gsc-input {
	width: 99% !important;
	margin-right: 0 !important;
	padding: 0 6px !important;
	font-size: 16px;
}

.gsc-input-box {
	padding: 5px !important;
	border: 1px solid #D4BBA8 !important;
}
.gsc-input-box table {
	margin: 0;
}

.gsc-search-button .gsc-search-button-v2 {
	padding: 15px 10px;
	border-color: #D4BBA8;
	background-color: #57463D;
}

.gsc-input .gsst_a .gscb_a {
	color: #e3f2e7;
}
.gsc-input .gsst_a:hover .gscb_a {
	color: var(--main-color);
}

@media only print, screen and (min-width: 700px) {
	table.gsc-search-box {
		width: 700px;
		margin: 0 auto;
	}
}
.gsc-results {
	width: 100% !important;
}

.gsc-webResult.gsc-result {
	margin: 0;
}

.gsc-results .gsc-cursor-box {
	margin: 30px 0 20px !important;
	border-top: none;
}
@media only screen and (max-width: 699px) {
	.gsc-results .gsc-cursor-box {
		text-align: center;
	}
}
.gsc-results .gsc-cursor-box .gsc-cursor-page {
	padding: 7px 10px;
	border: solid 1px var(--main-color) !important;
	background-color: #fff !important;
	color: var(--main-color) !important;
	font-weight: bold;
	text-decoration: none;
	text-shadow: none;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	border-color: var(--main-color) !important;
	background: var(--main-color) !important;
	color: #fff !important;
}

.gsc-table-result {
	border: none;
}
.gsc-table-result td {
	border: none;
}

/* ---------------------------------------------------------
音声ブラウザ用ナビゲーション
--------------------------------------------------------- */
.naviHidden {
	display: inline;
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 100;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border-style: none;
}

/* ---------------------------------------------------------
メインビジュアル（動画）（仮）
--------------------------------------------------------- */
.main_visual {
  position: relative;
  top: -64px;
  z-index: 0;
  height: 520px;
}
@media screen and (max-width: 1000px) {
  .main_visual {
    top: -44px;
  }
}
@media screen and (max-width: 600px) {
  .main_visual {
    top: -4px;
    height: 480px;
  }
}

.main_visual .picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* YouTube iframe のスタイル */
.main_visual .picture iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  height: 56.25vw; /* 16:9 aspect ratio */
  min-height: 100%;
  min-width: 177.77vh; /* 16:9 aspect ratio */
  border: none;
  pointer-events: none;
}

/* 動画の上にオーバーレイ（必要であれば） */
.main_visual .picture::after {
  position: absolute;
  display: block;
  z-index: 10;
  pointer-events: none;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  background-image: radial-gradient(rgba(0, 0, 0, 0.2) 30%, rgba(0, 0, 0, 0) 31%), radial-gradient(rgba(0, 0, 0, 0.2) 30%, rgba(0, 0, 0, 0) 31%);
  background-position: 0 0, 2px 2px;
  background-size: 4px 4px;
  content: '';
}

/* 動画の上にテキスト（必要であれば） */
.main_visual_body {
  position: absolute;
  z-index: 12;
  bottom: 30%;
  left: 0;
  width: auto;
  padding: 16px 0 16px 5.5555555556vw;
  background-color: rgba(0, 0, 0, 0.7);
}
@media screen and (max-width: 600px) {
  .main_visual_body {
    bottom: 10%;
    padding: 16px 0 16px 5.5555555556vw;
  }
}

.main_visual_body p {
  margin: 0;
  font-weight: 700;
  font-size: 30px;
  color: #fff;
}
@media screen and (max-width: 600px) {
  .main_visual_body p {
    font-size: 20px;
  }
}

/* ---------------------------------------------------------
トピックス 年号タブ表示
--------------------------------------------------------- */
.topics_list_btn {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  list-style: none;
  margin: 10px 0 4px;
  padding: 0;
}

.topics_list_btn li {
  flex: 0 0 calc((100% - 40px) / 6); /* PC: 1行6個 (gap 10px × 5箇所 = 50px) */
}

@media screen and (max-width: 600px) {
  .topics_list_btn {
    gap: 8px;
    margin: 8px 0;
  }

  .topics_list_btn li {
    flex: 0 0 calc((100% - 32px) / 5); /* スマホ: 1行5個 (gap 8px × 4箇所 = 32px) */
  }
}

.topics_list_btn .topics__year {
  display: block;
  cursor: pointer;
  padding: 8px 12px;
  border: 1px solid #d1c4bc;
  border-radius: 4px;
  background-color: #fff;
  font-weight: bold;
  color: #413431;
  text-align: center;
  transition: all 0.3s ease;
}

.topics_list_btn .topics__year:hover {
  background-color: #eee3d9;
  color: #413431;
}

.topics_list_btn li.is-active .topics__year {
  border-color: #eee3d9;
  background-color: #eee3d9;
  color: #413431;
}

/* ---------------------------------------------------------
移行後CSS調整
--------------------------------------------------------- */
nav#globalnav ul div p {
  text-align: left;
}

@media screen and (max-width: 600px) {
  footer#globalfooter #footer_content nav .footer_contentLink {
    width: auto;
    margin: 0 auto;
    padding: 0;
    list-style-type: none;
  }

  footer#globalfooter #footer_content nav .footer_contentLink .footer_contentLinkItem {
      float: left;
      margin: 0 2em 0 0;
  }

  footer#globalfooter #footer_content nav .footer_contentLink .footer_contentLinkItem a {
    padding-left: 8px;
    background: url(img/arrow_02.gif) no-repeat left center;
    line-height: 2;
  }
}

.footer_contentLink .linkTypeNormal {
  display: inline;
  overflow: visible;
  padding: 0;
  background: none;
  font-size: inherit;
  vertical-align: baseline;
}

footer#globalfooter #footer_content nav .footer_contentLink {
  overflow: hidden;
}

table tbody th {
  width: 28%;
}

table tbody .cell_split {
  width: auto;
}

table td ul,
table td ol {
  padding-left: 1.5em;
  overflow: hidden;
}

table td {
  overflow: hidden;
}
@media screen and (max-width: 600px) {
  table th,
  table td {
    white-space: wrap !important;
  }
}

table thead th {
  border-bottom: 2px solid #60574a;
}

#header_content {
  width: 980px;
  height: 59px;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1000px) {
  #header_content {
    width: 98%;
  }
}

#header_content .logo {
  width: 147px;
  height: 50px;
  margin: 0 0 8px 0;
}

#header_content ul#utility {
  margin: 24px 0 0 auto;
  padding: 0;
  list-style-type: none;
}

#header_content #tel_number {
  width: 143px;
  margin: 0 0 0 20px;
}
@media screen and (max-width: 1000px) {
  #header_content #tel_number {
    position: static;
    margin: 0 0 0 20px;
  }
}

@media screen and (max-width: 600px) {
  h3.heading_hospitality img {
    width: 100% !important;
    height: auto !important;
  }
}

body.onecolumn .page_index_box .region h2 {
  float: left;
  width: 150px;
}
.page_index_box h2 {
  margin: 0 0 5px;
  padding: 0;
  border-bottom: none;
  background-image: none;
  font-size: 100%;
  letter-spacing: normal;
  color: #403331;
}
@media screen and (max-width: 600px) {
  body.onecolumn .page_index_box .region h2 {
    float: none;
    width: auto;
    padding: 3px 5px 2px;
    background: #efe8d0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #efe8d0), color-stop(100%, #f4f1e3));
    background: -webkit-linear-gradient(top, #efe8d0 0%, #f4f1e3 100%);
    background: -o-linear-gradient(top, #efe8d0 0%,#f4f1e3 100%);
    background: linear-gradient(to bottom, #efe8d0 0%, #f4f1e3 100%);
    color: #403331;
  }
}
@media screen and (max-width: 850px) {
  body.onecolumn .page_index_box .region h2 {
    float: none;
    margin-bottom: 3px;
  }
}

@media screen and (max-width: 600px) {
  .box_shop_hospitality h4 img {
    max-width: 100% !important;
    height: 100% !important;
  }
}

body.onecolumn #main {
  float: right;
  width: 705px;
  min-height: 230px;
}
@media screen and (max-width: 1000px) {
  #main, body.toppage #main, body.onecolumn #main {
    float: none;
    width: 100%;
    min-height: auto;
    margin-bottom: 20px;
  }
}
#contents:not(:has(#sub > *)) #main {
  float: none;
  width: 100%;
}

#subnav h2 a {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 80px;
  padding: 28px 7px 25px 16px;
  border-bottom: 3px solid #a79995;
  background-image: linear-gradient(120deg, #574937, #211912);
  font-size: 93%;
  text-decoration: none;
  color: #fff;
}
@media screen and (max-width: 600px) {
  #subnav h2 a {
    width: auto;
    min-height: auto;
    height: auto;
    padding: 8px 10px 3px;
    border-bottom: none;
    font-size: 14px;
    text-decoration: none;
    color: #fff;
  }
}
#subnav h2 a span {
  display: block;
  font-weight: bold;
  letter-spacing: normal;
}
body.shop #subnav h2 a span,
body.ir #subnav h2 a span,
body.company #subnav h2 a span,
body.group #subnav h2 a span {
  display: none;
}
@media screen and (max-width: 600px) {
  body.shop #subnav h2 a span,
  body.ir #subnav h2 a span,
  body.company #subnav h2 a span,
  body.group #subnav h2 a span {
    display: block;
  }
}
