@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 .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, .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;
}