@charset "utf-8";

/* 全体 */
html {
	font-size: 62.5%;
}

body {
	margin: 0px;
	padding: 0px;
	border: 0px;
	font-size: 1.6rem;
	line-height: 1.5;
	word-wrap: break-word;
	word-break: break-all;
}

#container {
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}

img {
	max-width: 100% !important;
	height: auto !important;
}

/* ヘッダ */
#header {
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
}

#content_header {
	display: block;
	margin-bottom: 10px;
	text-align: right;
	font-size: 1.5rem;
}

/* フッタ */
#footer {
	clear: both;
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
}

div:not(.site_index) #container #mymainback {
	background: #f1ece3;
	padding-bottom: 8rem;
}

/* サイド */
/* レスポンシブアコーディオン用 */
.acc_title + input {
	display: none;
}

.acc_icon {
	display: none;
}

/* 隠す */
.hide {
	display: block;
	width: 0px;
	height: 0px;
	margin: 0px;
	padding: 0px;
	clip: rect(0, 0, 0, 0);
	overflow: hidden;
}

hr.hide {
	border: none;
}

/* iOSでのボタンデザインをリセット */
input[type="button"],
input[type="submit"],
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	cursor: pointer;
}

/* telリンク無効 */
.open_page_id a[href^="tel:"],
.f_number a[href^="tel:"] {
	text-decoration: none !important;
	color: currentColor !important;
	pointer-events: none !important;
}

/* 承認枠 */
#approval_table {
	font-size: 1.4rem;
}

/* フォント */
body,
button,
input[type="button"],
input[type="submit"],
input[type="text"],
textarea,
select {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体",
		YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Osaka,
		sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #333;
}

em {
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Osaka,
		"MS PGothic", sans-serif;
}

/* 基本タグ */
p {
	margin: 1em 0px;
	word-wrap: break-word;
	word-break: normal;
}

hr {
	clear: both;
}

/* 検索 */
/********** 4 パンくず **********/
/* パンくず */
#pankuzu_wrap {
	padding: 1rem 0;
	margin-bottom: 8rem;
}

#pankuzu_wrap > div {
	max-width: 1366px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.6rem;
}

.pankuzu {
	position: relative;
	padding-left: 10rem;
}

.pankuzu_mark {
	margin: 0 1rem;
	visibility: hidden;
	position: relative;
}

.pankuzu_mark::before {
	content: "";
	width: 8px;
	height: 10px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	left: 50%;
	visibility: visible;
	background-image: url(/img/furusato/pankuzu_img.png);
}

.pankuzu .icon_current {
	display: none;
}

.pankuzu:first-child .icon_current {
	display: block;
	width: 8rem;
	height: 3rem;
	background: #3e3324;
	border-radius: 5px;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.2rem;
	padding: 1rem 0;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: -4px;
	left: 0px;
	font-weight: 600;
}

/* 印刷 */
#print_mode_link,
#print_mode_link_large {
	display: inline-block;
	background: url(/img/common/icon_print.png) no-repeat left center;
	padding-left: 20px;
}

/* 見出し */
#main_header {
	position: relative;
	margin-bottom: 20px;
	background-image: url(/img/furusato/furusato_header_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	padding: 0 2rem;
	height: 480px;
}

#main_header h1 {
	max-width: 1366px;
	margin: 0px auto;
	padding: 0 2rem;
	font-size: 4.2rem;
	color: #fff;
	letter-spacing: 3px;
	font-weight: 600;
	text-shadow: #000 0px 0px 10px;
	position: absolute;
	left: 50%;
	top: calc(50% - -50px);
	transform: translate(-50%, -50%);
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}

#main_body h2 {
	clear: both;
	margin: 3rem 0;
	padding: 2rem 2rem;
	background-color: #413422;
	font-size: 2.6rem;
	font-weight: bold;
	position: relative;
	color: #fff;
	border-radius: 10px;
	box-shadow: #f1ece3 0px 6px 0px;
	letter-spacing: 2px;
}

#main_body h3 {
	clear: both;
	margin: 3rem 0;
	padding: 1.2rem 2rem 1.2rem 3.5rem;
	background-color: #f1ece3;
	font-size: 2.1rem;
	position: relative;
	color: #413422;
	border-radius: 10px;
	border: 2px solid #413422;
}

#main_body h3::before {
	content: "";
	position: absolute;
	width: 4px;
	height: 45%;
	top: 50%;
	left: 18px;
	transform: translateY(-50%);
	background-color: #413422;
	border-radius: 20px;
}

#main_body h4 {
	position: relative;
	clear: both;
	margin: 2rem 0;
	padding: 0.5rem 1rem 0.5rem 3rem;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.3;
	border-bottom: dashed 1px #1b3923;
	color: #1b3923;
}

#main_body h4:before {
	position: absolute;
	top: 50%;
	transform: translatey(-50%);
	left: 0px;
	content: "";
	display: inline-block;
	background-image: url(/img/furusato/h4_img.png);
	width: 21px;
	height: 21px;
}

#main_body h5 {
	clear: both;
	margin: 2rem 0;
	padding: 0.5rem 1rem;
	font-size: 1.6rem;
	font-weight: bold;
	position: relative;
}

#main_body h5:before {
	position: absolute;
	bottom: 0rem;
	left: 0px;
	content: "";
	background-image: url(/img/furusato/h5_under.png);
	background-repeat: repeat-x;
	width: 100%;
	height: 4px;
}

#main_body h6 {
	clear: both;
	margin: 20px 0px;
	padding: 9px 14px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	border-bottom: dotted 1px #333;
}

#main_body ul {
	list-style: none;
}

#main_body ul li {
	position: relative;
}

#main_body ul li::before {
	position: absolute;
	top: 7px;
	left: -16px;
	content: "";
	background-image: url(/img/furusato/list_img.png);
	background-repeat: no-repeat;
	width: 9px;
	height: 9px;
}

#main_body ol li::marker {
	font-weight: bold;
}

/* テーブル */
#main_body table {
	border-color: #1f5134;
	border-collapse: collapse;
	border-style: solid;
	margin: 0px 0px 20px;
	max-width: 100%;
}

#main_body th {
	background-color: #afd3b3;
	border-color: #413422;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 1.5rem 4rem;
	color: #413422;
}

#main_body td {
	border-color: #413422;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 1.5rem 4rem;
}

#main_body table caption {
	font-weight: bold;
	padding: 1em 0;
	color: #333;
}

/* テーブル内のpタグのマージンを0にする */
#main_body table p {
	margin: 0px 0px 1em;
}

#main_body table p:last-child {
	margin: 0px;
}

#main_body div.detail_table_center {
	clear: both;
	width: 100%;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_writing {
	clear: both;
	width: 100%;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_map {
	clear: both;
	width: 100%;
	margin: 20px 0px 10px;
	padding: 0px;
}

#main_body div.detail_movie {
	clear: both;
	width: 100%;
	margin: 20px 0px 30px;
	padding: 0px;
}

#main_body div.detail_free {
	clear: both;
	width: 100%;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_image_normal {
	clear: both;
	width: 100%;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_image_left {
	text-align: left;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_image_center {
	text-align: center;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_image_right {
	text-align: right;
	margin: 0px 0px 20px;
	padding: 0px;
}

#main_body div.detail_h2 {
	clear: both;
	width: 100%;
}

#main_body div.detail_h3 {
	clear: both;
	width: 100%;
}

hr.hr_1 {
	clear: both;
	height: 1px;
	border-top: 2px dotted #999999;
	border-right: none;
	border-bottom: none;
	border-left: none;
	margin: 15px 0px;
}

hr.hr_2 {
	clear: both;
	height: 1px;
	border-top: 1px solid #333333;
	border-right: none;
	border-bottom: none;
	border-left: none;
	margin: 15px 0px;
}

hr.hr_3 {
	clear: both;
	height: 1px;
	border-top: 1px solid #ff0000;
	border-right: none;
	border-bottom: none;
	border-left: none;
	margin: 15px 0px;
}

/* リンク */
.detail_link {
	margin: 1em 0px;
}

.link_l {
	margin: 1em 0px;
}

.detail_free .external_link_text,
.link_l .external_link_text {
	display: inline;
}

/* 画像 */
.detail_free img {
	max-width: 100%;
	height: auto !important;
}

.detail_img_left {
	text-align: left;
}

.detail_img_center {
	text-align: center;
}

.detail_img_right {
	text-align: right;
}

/* 添付ファイル */
.detail_file {
	margin: 1em 0px;
}

div[class^="detail_"] a[href^="/uploaded/attachment/"]::before,
div[class^="file_"] a[href^="/uploaded/attachment/"]::before,
div[class^="detail_"] a[href^="/uploaded/life/"]::before,
div[class^="file_"] a[href^="/uploaded/life/"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_etc.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".pdf"]::before,
div[class^="detail_"] a[href$=".PDF"]::before,
div[class^="file_"] a[href$=".pdf"]::before,
div[class^="file_"] a[href$=".PDF"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_pdf.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".xls"]::before,
div[class^="detail_"] a[href$=".XLS"]::before,
div[class^="file_"] a[href$=".xls"]::before,
div[class^="file_"] a[href$=".XLS"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_xls.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".xlsx"]::before,
div[class^="detail_"] a[href$=".XLSX"]::before,
div[class^="file_"] a[href$=".xlsx"]::before,
div[class^="file_"] a[href$=".XLSX"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_xlsx.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".doc"]::before,
div[class^="detail_"] a[href$=".DOC"]::before,
div[class^="file_"] a[href$=".doc"]::before,
div[class^="file_"] a[href$=".DOC"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_doc.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".docx"]::before,
div[class^="detail_"] a[href$=".DOCX"]::before,
div[class^="file_"] a[href$=".docx"]::before,
div[class^="file_"] a[href$=".DOCX"]::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_docx.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

/* preタグ */
div[class^="detail_"] pre {
	white-space: pre-wrap;
	word-break: break-word;
	font-family: monospace, sans-serif;
}

/* アンカーリンク */
div[class^="detail_"] a:not([href]) {
	display: inline-block;
	text-decoration: none !important;
	max-width: 100%;
}

div[class^="detail_"] a:not([href]):empty {
	display: block;
}

div[class^="detail_"] a:not([href]):hover {
	color: inherit;
}

/* ワープロライクのフロート対応 */
div[class^="detail_"]::before,
div[class^="detail_"]::after {
	content: "";
	display: table;
}

div[class^="detail_"]::after {
	clear: both;
}

div[class^="detail_"] {
	zoom: 1;
}

#main_body hr.cf {
	border: none;
	margin: 20px 0px 0px;
}

#main_body hr.cf + h2,
#main_body hr.cf + h3,
#main_body hr.cf + h4,
#main_body hr.cf + h5,
#main_body hr.cf + h6 {
	margin-top: 0px;
}

/* プレビュー編集モード調整用 */
.preview_body .detail_free ul,
.preview_body .detail_free ol {
	margin: 1em 0px !important;
	padding-left: 40px;
}

.status_bar div {
	font-size: 2rem !important;
}

.sticky #keep_page,
.sticky #osusume_banner {
	display: none;
}

/* 評価エリア */
#hyouka_area_box {
	clear: both;
	background: #f6f6f6;
	margin: 30px 0px 0px;
	padding: 20px 30px;
}

#hyouka_area_box h2,
#main_body #hyouka_area_box h2 {
	margin: 0px 0px 10px;
	padding: 0px;
	background: none;
	border: none;
	font-size: 1.6rem;
}

#main_body #hyouka_area_box hr.cf {
	margin: 0px;
}

.hyouka_box_detail {
	border-bottom: 1px solid #dddddd;
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 1.4rem;
}

.hyouka_box_detail:last-child {
	border-bottom: none;
	margin-bottom: 0px;
}

.hyouka_box_detail fieldset {
	border: none;
	margin: 0px;
	padding: 0px;
}

.hyouka_box_detail fieldset legend {
	margin: 0px 0px 5px;
	padding: 0px;
	width: 100%;
}

.hyouka_box_detail span {
	display: inline-block;
	vertical-align: top;
	margin: 0px 4em 0px 0px;
}

.hyouka_box_detail span input {
	margin: 3px 4px 5px 5px;
	vertical-align: middle;
}

#hyouka_area_submit {
	margin-top: 10px;
	text-align: center;
}

#hyouka_area_submit input {
	display: inline-block;
	border: none;
	background: #fff;
	margin: 0px;
	padding: 5px 0px;
	font-size: 1.4rem;
	text-align: center;
	width: 260px;
	max-width: 90%;
}

/* お問い合わせ先 */
#section_footer {
	display: none;
}

/* PDF・WMPリンク */
.pdf_download,
.wmplayer_download {
	clear: both;
	margin: 30px 0px 0px;
	width: 100%;
	display: table;
}

.pdf_download .pdf_img,
.wmplayer_download .wmplayer_img {
	display: table-cell;
	vertical-align: top;
	width: 158px;
	margin: 0px;
	padding: 0px;
}

.pdf_download .pdf_img img,
.wmplayer_download .wmplayer_img img {
	width: 100%;
	height: auto;
}

.tenpu_txt {
	display: table-cell;
	vertical-align: top;
	margin: 0px;
	padding: 3px 0px 0px 10px;
	font-size: 1.3rem;
	line-height: 1.4;
}

/* parts-site.css */
/* 自由編集項目 */
.free_box p {
	margin: 0px 0px 10px;
}

.free_box p:last-child {
	margin-bottom: 0px;
}

.free_box img {
	max-width: 100%;
	height: auto !important;
}

/* サイドメニュー */
.subsite_menu {
	margin: 0 0 2rem;
}

div#subsite_menu_wrap {
	background-color: #f6f6f6;
	padding: 2rem;
	border-radius: 20px;
	margin-bottom: 3rem;
}

.subsite_menu:last-child {
	margin-bottom: 0px;
}

.subsite_menu_ttl label {
	color: #fff;
	text-decoration: none;
	background-color: #413422;
	background-image: url(/img/furusato/white_bottom_arrow.png);
	background-repeat: no-repeat;
	background-size: 13px 8px;
	background-position: center right 10px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	margin: 0px;
	padding: 2rem 1.5rem;
	border-radius: 10px;
	width: 100%;
	display: block;
	box-sizing: border-box;
}

.subsite_menu_ttl.acc_open label {
	background-image: url(/img/furusato/white_top_arrow.png);
}

.subsite_menu_list ul {
	margin: 0;
	padding: 1rem;
	list-style: none;
}

.subsite_menu_list ul li {
	margin-bottom: 10px;
}

.subsite_menu_list ul li:last-child {
	margin-bottom: 0px;
}

.subsite_menu_list ul li span a {
	font-size: 1.4rem;
	color: #333333;
	text-decoration: none;
}

.subsite_menu_list div.link_ichiran {
	margin: 0px;
	padding: 0px 20px 20px;
	text-align: center;
}

.subsite_menu_list div.link_ichiran a {
	display: block;
	background: #fff;
	padding: 8px 10px;
}

/* Slick Slider */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: flex;
	/* column-gap: 20px; */
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: "";
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	/*   height: 100%; */
	min-height: 1px;
	margin: 0;
}

[dir="rtl"] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

/* スライドショー */
#top_photo {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.mishima_k_img {
	position: absolute;
	top: calc(50% + 50px);
	left: 18%;
	transform: translate(0, -50%);
	background-image: url(/img/furusato/slide_img.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 32vw;
	max-width: 602px;
	min-width: 150px;
	height: 15vw;
	max-height: 280px;
	min-height: 70px;
	z-index: 3;
}

#top_photo_list2 {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: flex;
	justify-content: center;
}

#top_photo_list2 p {
	display: flex;
	vertical-align: top;
	margin: 0px;
}

#top_photo_list2 p a {
	display: block;
	color: inherit;
	text-decoration: none;
}

#top_photo_list2 p img {
	width: 100% !important;
	height: auto !important;
}

#top_photo_list2 p span.photo_caption {
	display: block;
	background: #333;
	color: #fff;
	padding: 5px 20px;
}

#top_photo_list2 p span.photo_caption:empty {
	padding: 0px;
}

#top_photo_list2 p span.photo_caption span {
	color: inherit !important;
}

/* スライド表示調整 */
.site_index #mp_control_box {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	/*  */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.site_index #mp_control_box button {
	pointer-events: all;
}

.site_index #mp_control_box button[id^="mp_control_"] {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 3px 0px 0px;
	padding: 0px;
	width: 24px;
	height: 24px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	border: 2px solid #fff;
	color: #fff;
	background-color: #9c529c;
	background-repeat: no-repeat;
	background-size: 8px auto;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
}

.site_index #mp_control_box button#mp_control_prev {
	position: absolute;
	left: 15px;
	width: 72px;
	height: 72px;
	margin: 0;
	border: none;
	background-size: contain;
	border-radius: 0;
	background-position: left top;
	background-color: transparent;
	cursor: pointer;
	background-image: url(/img/furusato/slide_left_arrow.png);
	background-repeat: no-repeat;
}

.site_index #mp_control_box button#mp_control_next {
	position: absolute;
	right: 15px;
	width: 72px;
	height: 72px;
	margin: 0;
	border: none;
	background-size: cover;
	border-radius: 0;
	background-position: left top;
	background-color: transparent;
	cursor: pointer;
	background-image: url(/img/furusato/slide_right_arrow.png);
	background-repeat: no-repeat;
}

/* スライドナビゲーションボタン */
.site_index ul.slick-dots {
	display: inline-block;
	vertical-align: middle;
	margin: 0px;
	padding: 0px;
	list-style: none;
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
}

.site_index ul.slick-dots li {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 15px;
	padding: 2px;
}

.site_index ul.slick-dots li button {
	display: block;
	margin: 0px;
	padding: 0px;
	width: 20px;
	height: 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	text-indent: -9999em;
	text-align: left;
	overflow: hidden;
	border: 3px solid #fff;
	background: transparent;
	color: #333;
	pointer-events: all;
	cursor: pointer;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
}

.site_index ul.slick-dots li.slick-active button {
	background: #fff;
	color: #fff;
}

/* ページトップ */
#top_scroll {
	position: relative;
	z-index: 100;
}

#page-top1 {
	display: block;
	position: fixed;
	z-index: 9999;
	bottom: -250px;
	right: 20px;
	width: 75px;
	height: 75px;
	padding: 0;
	color: #222;
	text-align: center;
	text-decoration: none;
	transition: 1s;
	-webkit-transition: 1s;
}

#page-top1 img {
	width: 100%;
	height: auto !important;
}

/* スマートフォン用 */
#sp_page_index_link_wrap {
	display: none;
}

#spm_wrap {
	display: none;
}

.sp_button {
	display: none;
}

/* 下層ページ関連 */
.site #container {
	background: #f7f7f7;
}

.honBun {
	overflow: hidden;
}

.honBunBg {
	padding-bottom: 100px;
}

.search .honBun {
	padding-top: 30px;
}

.gglmap iframe,
.gglmap object,
.gglmap embed {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

div.site_list_2 div.info_list ul {
	display: flex;
	flex-flow: column;
	padding: 0;
	list-style-type: none;
	margin: 0;
}

div.site_list_2 div.info_list ul li {
	padding: 2.5rem 4rem 2.5rem 2rem;
	transition: all 0.3s;
	border-bottom: 1px dashed #707070;
}

div.site_list_2 #main_body div.info_list ul li::before {
	content: none;
}

div.site_list_2 div.info_list ul li:hover {
	filter: brightness(0.9);
}

div.site_list_2 div.info_list ul li:after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translatey(-50%);
	right: 1rem;
	background-image: url(/img/furusato/list_right_arrow.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 14px;
	height: 24px;
	transition: 0.5s;
}

div.site_list_2 div.info_list ul li:hover::after {
	right: 0;
	transition: 0.5s;
}

div.site_list_2 div.info_list ul li a {
	display: block;
	text-decoration: none;
	color: #333333;
	font-weight: 600;
	font-size: 2rem;
}

div.site_list1 div.info_list.info_list_date ul {
	padding: 0;
}

div.site_list1 div.info_list.info_list_date ul li {
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 2rem;
	border-bottom: dashed 1px #707070;
	padding: 5rem 0;
}

div.site_list1 #main_body div.info_list.info_list_date ul li::before {
	content: none;
}

div.site_list1 div.info_list.info_list_date ul li:first-child {
	padding-top: 0;
}

div.site_list1 div.info_list.info_list_date ul li span.article_title {
	position: relative;
}

@media (max-width: 768px) {
	div.site_list1 div.info_list.info_list_date ul li span.article_title:after {
		width: 16px;
		height: 16px;
	}
}

/* スマホ */
@media (max-width: 640px) {
	/* テーブル切り替え */
	#main_body .sp_table_wrap {
		overflow: auto;
	}

	#main_body div.sp_large_table {
		width: 1000px;
		overflow: visible;
	}

	.sp_button {
		display: block;
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px;
		border: 1px solid #dcdcdc;
		border-radius: 5px;
		background: -moz-linear-gradient(center top, #f9f9f9 5%, #e9e9e9 100%);
		background: -ms-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9');
		background: -webkit-gradient(
			linear,
			left top,
			left bottom,
			color-stop(5%, #f9f9f9),
			color-stop(100%, #e9e9e9)
		);
		background-color: #f9f9f9;
		color: #000000;
		text-shadow: 1px 1px 0px #ffffff;
		-webkit-box-shadow: inset 1px 1px 0px 0px #ffffff;
		box-shadow: inset 1px 1px 0px 0px #ffffff;
		text-decoration: none;
		text-align: center;
	}

	.sp_button:hover {
		background: -moz-linear-gradient(center top, #e9e9e9 5%, #f9f9f9 100%);
		background: -ms-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9e9e9', endColorstr='#f9f9f9');
		background: -webkit-gradient(
			linear,
			left top,
			left bottom,
			color-stop(5%, #e9e9e9),
			color-stop(100%, #f9f9f9)
		);
		background-color: #e9e9e9;
	}

	.sp_button:active {
		position: relative;
		top: 1px;
	}

	.gsc-result .gs-title {
		height: auto !important;
	}

	/* ページ内目次 */
	#sp_page_index_link {
		margin: 0;
	}

	#sp_page_index_link_wrap {
		display: block;
		width: auto;
		margin: 10px 3%;
	}

	#sp_page_index_link_toggle {
		width: 100%;
		height: auto;
		margin: 0px;
		padding: 10px;
		border: 2px solid #3e3324;
		color: #3e3324;
		font-weight: 600;
		background: url(/img/sp/acc_open.png) no-repeat right 10px top 50% #fff;
		background-size: 15px 15px;
		border-radius: 5px;
		text-align: center;
	}

	#sp_page_index_link_toggle.open {
		background-image: url(/img/sp/acc_close.png);
	}

	#sp_page_index_link_toggle:focus {
		outline: none;
	}

	ul#sp_page_index_link {
		padding: 0px;
		list-style: none;
		background-color: #fff;
		border-radius: 0 0 8px 8px;
	}

	ul#sp_page_index_link li {
		border-bottom: 1px solid #ccc;
	}

	ul#sp_page_index_link li:last-child {
		border: none;
	}

	ul#sp_page_index_link li a {
		display: block;
		background: url(/img/sp/arrow_r.png) no-repeat right 5px center;
		background-size: 8px auto;
		padding: 10px 10px 10px 3px;
		text-decoration: none;
		color: #000;
	}

	ul#sp_page_index_link li a.sp_headtype_h2 {
		padding: 1em;
		line-height: 1.2;
		font-weight: bold;
		padding-right: 2rem;
	}

	ul#sp_page_index_link li a.sp_headtype_h3 {
		padding-left: 20px;
		line-height: 1.2;
		background-color: ghostwhite;
		padding-right: 2rem;
	}

	ul#sp_page_index_link li a.sp_headtype_h4 {
		padding-left: 30px;
		line-height: 1.2;
		padding-right: 2rem;
	}

	ul#sp_page_index_link li a.sp_headtype_h5 {
		padding-left: 40px;
		line-height: 1.2;
		background-color: ghostwhite;
		padding-right: 2rem;
	}

	ul#sp_page_index_link li a.sp_headtype_h6 {
		padding-left: 50px;
		line-height: 1.2;
		padding-right: 2rem;
	}

	/* サイドメニュー */

	.subsite_menu_list ul {
		padding: 0px;
	}

	.subsite_menu_list ul li {
		display: block;
		margin: 0px;
		padding: 10px;
		border: none;
		border-bottom: 1px solid #cccccc;
	}

	.subsite_menu_list ul li:last-child {
		border-bottom: none;
	}

	.subsite_menu_list ul li:before {
		display: none;
	}

	.subsite_menu_list ul li a {
		display: block;
		background: url(/img/sp/arrow_r.png) no-repeat right center;
		background-size: 8px auto;
		padding-right: 12px;
		text-decoration: none;
	}

	/* レスポンシブアコーディオン用 */
	.acc_title_wrap {
		position: relative;
	}

	.acc_title {
		position: relative;
	}

	h2.section_information_ttl.acc_title > label {
		padding: 20px 10px 20px 0px;
	}

	/* 追記2022年11月16日 */
	/* iframeの最大サイズ */
	#main_body iframe {
		max-width: 100%;
	}

	/* iframeレスポンシブ対応 */
	#main_body div.detail_movie {
		position: relative;
		padding-top: 30px;
		padding-bottom: 56.25%;
		height: 0px;
		overflow: hidden;
	}

	#main_body div.detail_movie iframe {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
	}
}

.acc_title + input[id*="acc_ttl_label"] + * {
	display: none;
}

.acc_title + input[id*="acc_ttl_label"]:checked + * {
	display: block;
}

.no_acc_title label[for*="acc_ttl_label"] {
	background: none;
}

/* facebook埋め込み */
.fb_iframe_widget {
	width: 100% !important;
}

.fb_iframe_widget span {
	display: inline-block !important;
}

.fb_iframe_widget iframe[style] {
	width: 100% !important;
}

/* 20240826　本田追加 */
/* ヘッダ */
#header {
	display: flex;
	background: url(/img/furusato/header_bg.png) repeat-x;
	height: 100px;
	align-items: center;
	padding-left: 6rem;
	padding-right: 15rem;
	justify-content: space-between;
	position: fixed;
	top: 0;
	z-index: 10;
	box-sizing: border-box;
	box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.2);
	width: 100%;
}

.headLogo h1 {
	margin: 0;
	text-align: center;
}

.header_inner img {
	max-width: 480px;
	vertical-align: middle;
}

header .headLogo {
	margin-bottom: 8rem;
}

/* スライド */
#top_photo2,
#top_photo3 {
	position: relative;
}

/* ふるさと運動とは */
.about_box {
	background-color: #f1ece3;
	padding: 10rem 2rem 19rem;
}

.container {
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
}

.white_bg {
	background-color: #fff;
	background-image: url(/img/furusato/washi_bg.png);
	border-radius: 20px;
	padding: 6rem 8rem;
}

.site_index h2 {
	text-align: center;
	margin-top: 0;
	margin-bottom: 6rem;
	color: #285260;
	font-size: 4rem;
	display: flex;
	align-items: center;
}

.site_index h2::before,
.site_index h2::after {
	content: "";
	flex-grow: 1;
	height: 20px;
	background: url(/img/furusato/top_h2_line.png) repeat;
	display: block;
}

.site_index h2::before {
	margin-right: 6rem;
}

.site_index h2::after {
	margin-left: 6rem;
}

.site_index .about_top span {
	height: 100%;
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: 4rem;
}

.site_index .about_top span::before,
.site_index .about_top span::after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background-color: #413422;
	display: block;
}

.site_index .about_top span::before {
	margin-right: 2rem;
	max-width: 60px;
}

.site_index .about_top span::after {
	margin-left: 2rem;
}

.site_index h3 {
	font-size: 2.6rem;
	color: #413422;
	padding: 1rem 4.5rem;
	border: 1px solid #413422;
	display: inline-block;
	margin-top: 0;
	position: relative;
	background-color: #fff;
	margin-bottom: 0;
}

.site_index h3::before {
	content: "";
	width: 5px;
	height: calc(100% + 1px);
	border-top: 1px solid #413422;
	border-right: 1px solid #413422;
	position: absolute;
	top: 4px;
	right: -6px;
}

.site_index h3::after {
	content: "";
	width: calc(100% + 1px);
	height: 5px;
	border-bottom: 1px solid #413422;
	border-left: 1px solid #413422;
	position: absolute;
	bottom: -6px;
	left: 4px;
}

.about_top {
	margin-bottom: 10rem;
}

.about_flex {
	display: flex;
	gap: 10rem;
	justify-content: end;
	margin-bottom: 8rem;
	align-items: flex-start;
}

.about_flex:last-of-type {
	margin-bottom: 0;
}

.about_flex > div {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	align-items: end;
}

.about_flex p {
	margin-top: 6rem;
	font-size: 2rem;
	margin-bottom: 0;
	line-height: 2;
}

.about_top .white_bg > span:nth-of-type(2)::before {
	max-width: none;
}

.about_top .white_bg > span:nth-of-type(2)::after {
	max-width: 60px;
}

.about_top a {
	background-color: #285260;
	color: #fff;
	padding: 1.8rem 7.5rem;
	font-size: 1.8rem;
	text-decoration: none;
	position: relative;
	display: inline-block;
}

.about_top a::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 10px;
	left: 10px;
	border-right: 1px solid #ccb166;
	border-bottom: 1px solid #ccb166;
	transition: 0.5s;
}

.about_top a:hover::before {
	top: 0;
	left: 0;
	transition: 0.5s;
}

.about_top a::after {
	content: "";
	width: 21px;
	height: 14px;
	background: url(/img/furusato/white_arrow.png) no-repeat;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.5s;
}

.about_top a:hover::after {
	right: 10px;
	transition: 0.5s;
}

.about_bottom {
	display: flex;
	justify-content: center;
	gap: 12rem;
	align-items: center;
	background: url(/img/furusato/movie_bg.png) no-repeat right 4rem bottom;
	padding-bottom: 4rem;
	position: relative;
}

.about_bottom::after {
	content: "";
	width: 155px;
	height: 159px;
	background: url(/img/furusato/movie_img3.png) no-repeat;
	background-size: contain;
	position: absolute;
	right: -40px;
	top: -80px;
}

.about_bottom_right {
	max-width: 360px;
	display: flex;
	flex-direction: column;
	gap: 5rem;
	margin-top: 5rem;
}

.about_bottom_left {
	position: relative;
}

.about_bottom_left::after {
	content: "";
	width: 100%;
	height: 100%;
	background: url(/img/furusato/movie_img1.png) no-repeat;
	background-size: contain;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	padding: 1rem 5.5rem;
	z-index: 0;
}

.about_bottom_left::before {
	content: "";
	width: 500px;
	height: 234px;
	background: url(/img/furusato/movie_img2.png) no-repeat;
	background-size: contain;
	position: absolute;
	left: -210px;
	bottom: -180px;
	z-index: 0;
}

.about_bottom_left iframe {
	position: relative;
	z-index: 1;
	border-radius: 10px;
}

.about_bottom_right h4 {
	color: #413422;
	font-size: 2.2rem;
	margin: 0;
}

.about_bottom_right p {
	margin: 0;
	font-size: 1.8rem;
	line-height: 2;
}

.about_bottom a {
	background-color: #413422;
	color: #fff;
	padding: 1.8rem 0;
	font-size: 1.8rem;
	text-decoration: none;
	position: relative;
	display: inline-block;
	max-width: 260px;
	text-align: center;
}

.about_bottom a::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 10px;
	left: 10px;
	border-right: 1px solid #ccb166;
	border-bottom: 1px solid #ccb166;
	transition: 0.5s;
}

.about_bottom a:hover::before {
	top: 0;
	left: 0;
	transition: 0.5s;
}

.about_bottom a::after {
	content: "";
	width: 21px;
	height: 14px;
	background: url(/img/furusato/white_arrow.png) no-repeat;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.5s;
}

.about_bottom a:hover::after {
	right: 10px;
	transition: 0.5s;
}

/*プロジェクト */
.project_box {
	padding: 6rem 2rem;
	background: url(/img/furusato/header_bg.png) repeat;
}

.project_box .white_bg {
	padding: 6rem 4rem;
	margin-bottom: 6rem;
}

.furusatonouzei_box {
	display: flex;
	align-items: center;
	justify-content: center;
}

.furusatonouzei_box img {
	border-radius: 20px;
	border: 2px solid #fff;
	box-shadow: 0 10px 10px #00000020;
}

.project_flex {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
	justify-content: center;
}

.project_flex a {
	display: block;
	width: 400px;
	height: 250px;
	position: relative;
	transition: 0.5s;
	border-radius: 20px;
	position: relative;
	transition: 0.5s;
	background-size: contain;
}

.project_flex a:nth-child(1) {
	background-image: url(/img/furusato/project_img1.png);
	background-repeat: no-repeat;
}

.project_flex a:nth-child(2) {
	background-image: url(/img/furusato/project_img2.png);
	background-repeat: no-repeat;
}

.project_flex a:nth-child(3) {
	background-image: url(/img/furusato/project_img3.png);
	background-repeat: no-repeat;
}

.project_flex a:nth-child(4) {
	background-image: url(/img/furusato/project_img4.png);
	background-repeat: no-repeat;
}

.project_flex a::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: transparent;
	transition: 0.5s;
	border-radius: 30px;
}

.project_flex a:hover::after {
	background-color: rgba(0, 0, 0, 0.3);
}

.project_flex a span {
	font-size: 4.2rem;
	font-weight: 600;
	color: #fff;
	position: absolute;
	bottom: 7px;
	left: 20px;
	z-index: 1;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
}

/* 50年を振り返る */
#top_photo3 {
	width: 100%;
	max-width: 680px;
}

#top_photo3::after {
	content: "";
	width: calc(100% - 4rem);
	height: calc(100% - 4rem);
	border: 2px solid #ccb166;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 10px;
	pointer-events: none;
}

#top_photo3 .slick-list {
	border-radius: 10px;
}

.lookback_box {
	padding: 10rem 2rem 14rem;
	background-color: #f1ece3;
}

.lookback_flex {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10rem;
}

.lookback_bnr {
	display: flex;
	flex-direction: column;
	gap: 4rem;
}

#sidebar1 .lookback_bnr {
	gap: 2rem;
}

/* スライド表示調整 */
.site_index #top_photo3 #mp_control_box2 {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	/*  */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.site_index #top_photo3 #mp_control_box2 button {
	pointer-events: all;
}

.site_index #top_photo3 #mp_control_box2 button[id^="mp_control_"] {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 3px 0px 0px;
	padding: 0px;
	width: 24px;
	height: 24px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	border: 2px solid #fff;
	color: #fff;
	background-color: #9c529c;
	background-repeat: no-repeat;
	background-size: 8px auto;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
}

.site_index #top_photo3 #mp_control_box2 button#mp_control_prev2 {
	position: absolute;
	left: -23px;
	width: 46px;
	height: 46px;
	margin: 0;
	border: none;
	background-size: contain;
	border-radius: 0;
	background-position: left top;
	background-color: transparent;
	cursor: pointer;
	background-image: url(/img/furusato/sub_slide_left_arrow.png);
	background-repeat: no-repeat;
	z-index: 1;
}

.site_index #top_photo3 #mp_control_box2 button#mp_control_next2 {
	position: absolute;
	right: -24px;
	width: 46px;
	height: 46px;
	margin: 0;
	border: none;
	background-size: cover;
	border-radius: 0;
	background-position: left top;
	background-color: transparent;
	cursor: pointer;
	background-image: url(/img/furusato/sub_slide_right_arrow.png);
	background-repeat: no-repeat;
	z-index: 1;
}

/* スライドナビゲーションボタン */
.site_index #top_photo3 ul.slick-dots {
	display: inline-block;
	vertical-align: middle;
	margin: 0px;
	padding: 0px;
	list-style: none;
	position: absolute;
	bottom: -43px;
	left: 0;
	transform: none;
}

.site_index #top_photo3 ul.slick-dots li {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 15px;
	padding: 2px;
}

.site_index #top_photo3 ul.slick-dots li button {
	display: block;
	margin: 0px;
	padding: 0px;
	width: 20px;
	height: 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	text-indent: -9999em;
	text-align: left;
	overflow: hidden;
	border: 3px solid #413422;
	background: transparent;
	color: #333;
	pointer-events: all;
	cursor: pointer;
	box-shadow: none;
}

.site_index #top_photo3 ul.slick-dots li.slick-active button {
	background: #413422;
	color: #fff;
}

a img {
	transition: 0.5s;
}

a:hover img {
	opacity: 0.7;
	transition: 0.5s;
}

/* お知らせ */
.oshirase_box {
	padding: 8rem 2rem;
	background: url(/img/furusato/news_bg.png) repeat #fff;
}

.oshirase_flex {
	display: flex;
	justify-content: space-between;
	gap: 7rem;
}

.oshirase_left {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.oshirase_right {
	max-width: 500px;
	width: 100%;
	border-radius: 10px;
}

.oshirase_right iframe {
	border-radius: 10px;
}

.oFwrap {
	height: 350px;
	overflow-y: scroll;
	background: #fff;
	border-radius: 10px;
	width: 100%;
}

.oFwrap ul {
	margin: 6rem 0;
	padding: 0 4rem;
	list-style: none;
}

.oFwrap ul li {
	display: flex;
	margin-bottom: 3rem;
}

.oFwrap ul li:last-child {
	margin-bottom: 0;
}

div.site_index .article_date {
	font-size: 1.8rem;
	margin-right: 4rem;
	min-width: 16rem;
	display: block;
	margin-bottom: 1rem;
}

.article_date {
	font-size: 1.4rem;
	margin-right: 4rem;
	min-width: 16rem;
	display: block;
	margin-bottom: 1rem;
}

div.site_index .article_title a {
	color: #000000;
	font-size: 1.8rem;
}

.article_title a {
	color: #0d59b7;
	font-size: 2rem;
}

.oFwrap::-webkit-scrollbar {
	width: 14px;
}

.oFwrap::-webkit-scrollbar-track {
	background-color: #bac3bc;
	border-radius: 10px;
}

.oFwrap::-webkit-scrollbar-thumb {
	background-color: #6b7e70;
	border-radius: 10px;
}

.oshirase_left > a {
	background-color: #1b3923;
	color: #fff;
	padding: 1.8rem 7.5rem;
	font-size: 1.8rem;
	text-decoration: none;
	position: relative;
	display: inline-block;
}

.oshirase_left > a::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 10px;
	left: 10px;
	border-right: 1px solid #ccb166;
	border-bottom: 1px solid #ccb166;
	transition: 0.5s;
}

.oshirase_left > a:hover::before {
	top: 0;
	left: 0;
	transition: 0.5s;
}

.oshirase_left > a::after {
	content: "";
	width: 21px;
	height: 14px;
	background: url(/img/furusato/white_arrow.png) no-repeat;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.5s;
}

.oshirase_left > a:hover::after {
	right: 10px;
	transition: 0.5s;
}

/* フッター */
.footer_box {
	background: url(/img/furusato/footer_bg.png) repeat,
		linear-gradient(
			90deg,
			rgba(65, 52, 34, 1) 0%,
			rgba(65, 52, 34, 1) 67%,
			rgba(65, 52, 34, 0.57) 100%
		),
		url(/img/furusato/footer_right_bg.png) no-repeat right bottom;
	padding: 5rem 2rem 9rem;
	position: relative;
}

.footer_flex {
	display: flex;
	flex-direction: column;
	gap: 6rem;
}

.footer_flex_top {
	color: #fff;
	font-size: 3rem;
	text-align: center;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
		"Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-weight: 600;
}

.footer_flex_bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer_flex_bottom_left {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.footer_flex_bottom_left p {
	color: #fff;
	font-size: 2rem;
	margin: 0;
}

.footer_flex_bottom_right {
	display: flex;
	gap: 6rem;
}

.footer_flex_bottom_right > a {
	background-color: #285260;
	color: #fff;
	padding: 1.8rem 7.5rem;
	font-size: 1.8rem;
	text-decoration: none;
	position: relative;
	display: inline-block;
}

.footer_flex_bottom_right > a::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 10px;
	left: 10px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transition: 0.5s;
}

.footer_flex_bottom_right > a:hover::before {
	top: 0;
	left: 0;
	transition: 0.5s;
}

.footer_flex_bottom_right > a::after {
	content: "";
	width: 21px;
	height: 14px;
	background: url(/img/furusato/white_arrow.png) no-repeat;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.5s;
}

.footer_flex_bottom_right > a:hover::after {
	right: 10px;
	transition: 0.5s;
}

.footer_flex_bottom_right > a:last-child {
	background-color: #b79303;
}

.copyRight {
	color: #fff;
	text-align: center;
	font-size: 1.4rem;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

#main_flex {
	max-width: 1406px;
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	gap: 5rem;
	margin: 0 auto;
	padding: 0 2rem;
	box-sizing: border-box;
}

.link_print {
	margin-right: 2rem;
}

#main {
	width: 100%;
}

#main_flex #main {
	width: calc(100% - 300px);
	background-color: #fff;
	padding: 4rem;
	border-radius: 20px;
}

#sidebar1 {
	width: 100%;
	max-width: 300px;
	background-color: #fff;
	padding: 2rem;
	box-sizing: border-box;
	border-radius: 20px;
}

#content_footer {
	display: none;
}

.content_header_wrap {
	max-width: 1366px;
	width: 100%;
	margin: 0 auto;
	padding: 0 2rem;
	box-sizing: border-box;
}

.article_img {
	display: table-cell;
	vertical-align: top;
	width: 130px;
	padding-right: 20px;
}

.list_pack {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.article_txt {
	display: table-cell;
	vertical-align: middle;
}

div.site_list1 .list_pack .article_img span {
	height: 130px;
	background: url(/img/furusato/noimage.png) no-repeat center center;
	background-size: contain;
	display: block;
	border-radius: 10px;
}

div.site_list1 .list_pack .article_img span:has(img) {
	background: none;
}

div.site_list1 .list_pack .article_img span img {
	object-fit: contain;
}

@media screen and (max-width: 1280px) {
	#top_photo_list2 p {
		width: 100vw;
	}
}

@media screen and (max-width: 1270px) {
	.about_bottom {
		flex-direction: column;
		gap: 3rem;
	}

	.about_bottom::after {
		top: auto;
		bottom: 40px;
	}

	.about_box {
		padding: 5rem 2rem 5rem;
	}

	.about_bottom {
		background: url(/img/furusato/movie_bg.png) no-repeat center bottom;
	}

	.lookback_flex {
		flex-direction: column;
		gap: 6rem;
	}

	.oshirase_flex {
		flex-direction: column;
		align-items: center;
	}

	.oshirase_left {
		gap: 3rem;
	}

	#main_header {
		height: 300px;
	}

	#main_header h1 {
		font-size: 2.6rem;
	}

	#pankuzu_wrap {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 1200px) {
	#pankuzu_wrap > div {
		margin: 0px 3% 10px;
	}
}

@media screen and (max-width: 1024px) {
	#top_photo2 {
		padding-top: 10rem;
		background-color: #413422;
	}

	.site_index #mp_control_box {
		top: 50px;
	}

	.site_index ul.slick-dots {
		bottom: 60px;
	}

	.mishima_k_img {
		left: 100px;
	}

	.about_flex {
		flex-direction: column;
		align-items: center;
		gap: 4rem;
		margin-bottom: 4rem;
	}

	.about_flex p {
		margin-top: 0;
	}

	.about_bottom_left iframe {
		width: 500px;
		height: 291px;
	}

	.white_bg {
		padding: 2rem;
	}

	.site_index .about_top span {
		margin-bottom: 2rem;
	}

	.project_box .white_bg {
		padding: 2rem;
		margin-bottom: 2rem;
	}

	.site_index h2 {
		margin-bottom: 2rem;
	}

	.site_index h2::before {
		margin-right: 2rem;
	}

	.site_index h2::after {
		margin-left: 2rem;
	}

	.project_flex {
		gap: 4rem;
	}

	/*   #top_photo3 .slick-slide img {
    width: 100% !important;
    height: auto !important;
  }
 */
	.lookback_box {
		padding: 5rem 2rem;
	}

	.oshirase_box {
		padding: 5rem 2rem;
	}

	.footer_box {
		padding: 3rem 2rem 7rem;
	}

	.footer_flex {
		gap: 2rem;
	}

	.footer_flex_bottom {
		flex-direction: column;
	}

	.footer_flex_bottom_left p {
		font-size: 1.8rem;
	}

	.footer_flex_bottom {
		flex-direction: column;
		gap: 2rem;
	}

	#main_flex {
		flex-direction: column;
		gap: 3rem;
	}

	#main_flex #main,
	#main_flex #sidebar1 {
		width: 100%;
		box-sizing: border-box;
		padding: 2rem;
		max-width: none;
	}

	.lookback_bnr {
		flex-direction: row;
		align-items: center;
	}

	.lookback_bnr a:first-child img {
		padding-bottom: 0.5rem;
	}

	div:not(.site_index) #container #mymainback {
		padding-bottom: 4rem;
	}

	.about_flex:last-of-type {
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 768px) {
	#main_body div.detail_free {
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 670px) {
	#main_header {
		padding: 1em 1em;
	}

	#main_header h1 {
		font-size: 2rem;
		font-weight: bold;
	}
}

@media screen and (max-width: 650px) {
	.site_index h2 {
		font-size: 2.5rem;
	}

	.site_index h3 {
		font-size: 2.2rem;
		padding: 1rem 2rem;
	}

	.about_bottom::after {
		content: none;
	}

	.about_bottom_left iframe {
		width: 300px;
		height: 188px;
	}

	.project_flex {
		gap: 2rem;
	}

	.project_flex a {
		width: 270px;
		height: 170px;
	}

	.project_flex a span {
		font-size: 2.2rem;
	}

	.project_box {
		padding: 2rem;
	}

	/*   #top_photo_list3 p {
    width: 100%;
  } */

	.lookback_flex {
		padding: 0 2rem;
		gap: 4rem;
	}

	.oshirase_flex {
		gap: 5rem;
	}

	.oFwrap ul li {
		flex-direction: column;
	}

	.oFwrap ul {
		padding: 0 2rem;
		margin: 2rem 0;
	}

	.footer_box {
		background: url(/img/furusato/footer_bg.png) repeat,
			linear-gradient(
				90deg,
				rgba(65, 52, 34, 1) 0%,
				rgba(65, 52, 34, 1) 67%,
				rgba(65, 52, 34, 0.57) 100%
			),
			url(/img/furusato/footer_right_bg.png) no-repeat right bottom/cover;
	}

	.footer_flex_bottom_right {
		flex-direction: column;
		gap: 2rem;
		align-items: center;
		max-width: 280px;
		width: 100%;
	}

	.footer_flex_bottom_right > a {
		padding: 1.8rem 0;
		width: 100%;
		text-align: center;
	}

	#page-top1 {
		right: 10px;
		width: 45px;
		height: 45px;
	}

	.footer_flex_top {
		font-size: 2.5rem;
	}

	.about_flex p {
		font-size: 1.6rem;
	}

	#main_header {
		height: 200px;
	}

	#main_header h1 {
		font-size: 2rem;
	}

	.lookback_bnr {
		flex-direction: column;
	}

	div.site_list_2 div.info_list ul li {
		padding: 1.5rem 2.5rem 1.5rem 1rem;
	}

	div.site_list_2 div.info_list ul li a {
		font-size: 1.8rem;
	}

	.list_pack {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 2rem;
	}

	div.site_list1 div.info_list.info_list_date ul li {
		padding: 2rem 0;
	}

	.about_top {
		margin-bottom: 4rem;
	}

	#pankuzu_wrap > div {
		display: none;
	}
}

@media screen and (max-width: 560px) {
	#top_photo2 {
		padding-top: 8rem;
	}

	.site_index #mp_control_box button#mp_control_prev,
	.site_index #mp_control_box button#mp_control_next {
		width: 36px;
		height: 36px;
	}

	.mishima_k_img {
		left: 60px;
	}

	.site_index #top_photo3 #mp_control_box2 button#mp_control_prev2 {
		left: -17px;
		width: 30px;
		height: 30px;
	}

	.site_index #top_photo3 #mp_control_box2 button#mp_control_next2 {
		right: -17px;
		width: 30px;
		height: 30px;
	}

	.lookback_bnr {
		gap: 2rem;
	}

	.oshirase_left > a {
		padding: 1.8rem 5.5rem;
	}

	.about_bottom_right {
		gap: 3rem;
	}

	#main_header h1 {
		top: calc(50% - -40px);
		font-size: 1.8rem;
	}

	span.link_print {
		display: block;
		margin: 0;
	}

	.about_top a {
		padding: 1.8rem 0rem;
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}

/** モーダルウィンドウここから **/
.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99999;
}

.modal__bg {
	background: rgba(0, 0, 0, 0.6);
	height: 100vh;
	position: absolute;
	width: 100%;
}

.modal__content {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 900px;
	height: auto;
	max-width: calc(100% - 1.5em);
	max-height: 95vh;
	background-color: #fff;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
}

.popContent {
	position: relative;
	padding: 2em;
	max-height: 75vh;
	overflow-x: inherit;
	overflow-y: auto;
	background-color: #f1ece3;
}

.modal__content .cf {
	display: none;
}

#main_body .modal__content h2 {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	margin-top: 0;
	margin-bottom: 2rem;
}

#main_body .modal__content h3 {
	padding: 1.2rem 1rem 1.2rem 3.5rem;
}

.modal__content .popContent .popupImg {
	text-align: center;
	padding: 1em 0;
}

.modal__content .popContent .popupImg img {
	border-radius: 10px;
	max-width: 100%;
}

.modal__content .popContent p.popupTxt {
	margin: 1em auto 2em;
	text-align: left;
	max-width: 100%;
}

.js-modal-close {
}

.popContent .js-modal-close {
	display: block;
	width: 4em;
	margin-left: auto;
	color: #285260;
	font-weight: 700;
	text-align: center;
	cursor: pointer;
}

p map area.js-modal-open {
	cursor: pointer;
}

@media screen and (max-width: 560px) {
	.popContent {
		padding: 1em;
	}

	.modal__content .popContent .popupImg {
		text-align: center;
		padding: 0;
	}
}

/** モーダルウィンドウここまで **/

.gMenu > li > a > label {
	pointer-events: none;
}

.about_bottom_right .external_link_text {
	display: none;
}

.detail_html iframe {
	margin-bottom: 5rem;
}

#top_photo_list3 > p {
	margin: 0px;
}

#top_photo_list3 img {
	border-radius: 10px;
}

/* ==========================================================================
   20251125追記
   ========================================================================== */
/* --------------------------------------------------------------------------
   サイドバー一時的に非表示
   -------------------------------------------------------------------------- */
#sidebar1 div.subsite_menu:nth-of-type(5) {
	display: none;
}
/* --------------------------------------------------------------------------
   大メニュー「思い出アルバム」
   -------------------------------------------------------------------------- */
/* メニューリスト */
body.site_list_2_special_layout div.site_list_2 #main_body div.info_list ul {
	flex-flow: wrap;
	gap: 2em;
	justify-content: space-between;
}

body.site_list_2_special_layout div.site_list_2 #main_body div.info_list ul li {
	width: calc(50% - 2em);
	padding: 0;
	border-bottom: none;
	font-size: 1.5em;
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(0.5em, 0.5em);
	transition: 0.3s;
	width: 100%;
	height: 100%;
	border: 1px solid #403321;
	background-color: #403321;
	background-image: none;
	box-sizing: border-box;
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li::after {
	top: calc(50% - 12px / 2);
	right: 1em;
	transform: none;
	transition: 0.3s;
	border-right: 3px solid #413422;
	border-bottom: 3px solid #413422;
	width: 12px;
	height: 12px;
	transform: rotate(-45deg);
	background-image: none;
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li
	a {
	position: relative;
	z-index: 0;
	transform: translate(0, 0);
	transition: 0.3s;
	display: block;
	padding: 0.75em 1.35em;
	color: #403321;
	font-size: 1em;
	border: 1px solid #d4bf69;
	background-color: #ffffffe6;
	box-sizing: border-box;
}

body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li:hover {
	filter: none;
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li:hover::before {
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li:hover::after {
	transform: translate(0.5em, 0.5em) rotate(-45deg);
}
body.site_list_2_special_layout
	div.site_list_2
	#main_body
	div.info_list
	ul
	li:hover
	a {
	transform: translate(0.5em, 0.5em);
}

/* --------------------------------------------------------------------------
   記事ページ（大メニュー：思い出アルバム）
   -------------------------------------------------------------------------- */
/* 思い出アルバムのページは画像のみ表示し、画像を横並びとする。 */
.omoide-album #main_body div.detail_free {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	gap: 0 1em;
}
.omoide-album #main_body div.detail_free p {
	width: auto;
}
div[class^="detail_"]::before,
div[class^="detail_"]::after {
	display: none;
}

/* モーダルウィンドウデザイン修正 */
#colorbox #cboxWrapper,
#colorbox #cboxTitle,
#colorbox #cboxContent {
	background: #413422;
}
#colorbox #cboxMiddleLeft,
#colorbox #cboxMiddleRight {
	width: 50px;
}
#colorbox #cboxPrevious,
#colorbox #cboxNext,
#colorbox #cboxClose {
	clip-path: circle(42%);
}
#colorbox #cboxTitle,
#colorbox #cboxCurrent {
	color: #fff;
}
#colorbox #cboxMiddleLeft,
#colorbox #cboxMiddleRight {
	background-image: linear-gradient(white 50%, transparent 50%);
	background-size: 20px 40px;
	background-repeat: repeat-y;
	background-position: top center;
}
#cboxOverlay {
	opacity: 0.6 !important;
}

/* --------------------------------------------------------------------------
   1200px以下ここから
   -------------------------------------------------------------------------- */
@media all and (max-width: 1200px) {
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul {
		gap: 2em 1em;
	}

	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li {
		width: calc(50% - 1em);
	}
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li::after {
		right: 0.5em;
	}
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li
		a {
		padding: 0.75em 0.75em;
		font-size: 0.9em;
	}
}
/* --------------------------------------------------------------------------
   1200px以下ここまで
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   1024px以下ここから
   -------------------------------------------------------------------------- */
@media all and (max-width: 1024px) {
	body.site_list_2_special_layout div.site_list_2 #main_flex #main {
		padding: 4em 3em;
	}

	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul {
		gap: 2em 1em;
	}
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li {
		width: calc(50% - 1em);
	}
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li::after {
		right: 0.5em;
	}
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li
		a {
		padding: 0.75em 0.75em;
		font-size: 0.9em;
	}
}
/* --------------------------------------------------------------------------
   1024px以下ここまで
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   767px以下ここから
   -------------------------------------------------------------------------- */
@media all and (max-width: 767px) {
	body.site_list_2_special_layout
		div.site_list_2
		#main_body
		div.info_list
		ul
		li {
		width: 100%;
	}
}
/* --------------------------------------------------------------------------
   767px以下ここまで
   -------------------------------------------------------------------------- */