@charset "utf-8";

/* --------------
 reset
-------------- */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

ol,
ul {
  list-style: none;
}

caption {
  text-align: left;
  display: block;
}

img {
  max-width: 100% !important;
  height: auto;
  vertical-align: bottom;
}

iframe {
  max-width: 100% !important;
  border: 0;
}

button {
  border: none;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}


/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}


/* ---------- align */
.alc {
  text-align: center !important;
}

.alr {
  text-align: right !important;
}

.all {
  text-align: left !important;
}

.alt {
  vertical-align: top !important;
}

.alb {
  text-align: bottom !important;
}

/* ---------- 全ページ共通 */

html {
  /* font-size: 62.5%; */
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  min-width: 1300px;
}

.pc_only {
  display: block;
}

.sp_only {
  display: none;
}

.wrapper {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 30px;
  position: relative;
}

.inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
}

/* ヘッダー */
/* グローバルナビゲーション */

#header {
  padding: 3rem 0;
  background-color: #fff;
}

/* 支援機能 */
.skip {
  background: #fff;
  font-size: 100%;
  padding: 1rem 0;
  left: 0;
  position: absolute;
  text-align: center;
  top: calc(-1.6rem - 40px);
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  width: 100%;
  z-index: 100;
  opacity: 0;
}

.skip:active,
.skip:focus {
  display: block;
  font-size: 100%;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 1;
}

input[type="submit"] {
  cursor: pointer;
}

/* 多言語翻訳 */
/* .header_support_lang {
  position: relative;
}
#language-select-wrapper {
  width:120px;
  position:absolute;
  text-align: center;
  bottom: 0px;
  left: 0px;
  border-radius: 4px;
  border: #333 1px solid;
  background-color: #333;
} */
.header_support_lang {
  position: relative;
  width: 122px;
  z-index: 100;
}

/* #language-select-wrapper {
  width: 120px;
  position: absolute;
  text-align: center;
  top: -16px;
  left: 0px;
  border-radius: 4px;
  border: #333 1px solid;
  background-color: #333;
}
   */

.language-select {
  cursor: pointer;  
}

.header_support_btn_txt button.language-select-btn {
  color: #fff;
  text-decoration: none;
}

.disaster_top_link {
  font-weight: 700;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

/*PC ヘッダー検索窓*/
.header_support_search {
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: relative;
  width: 34.5rem;
}

table.gsc-search-box td.gsc-input {
  font-size: 1.8rem;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 0.4rem !important;
  background-color: #fff;
  border-radius: 6px 0 0 6px;
  border: solid 2px #008250;
}

.gsc-input-box {
  border: none !important;
}

button.gsc-search-button-v2 {
  height: auto;
  width: 7rem;
  padding: 1.6rem 0;
  border-radius: 0 6px 6px 0;
  border: solid 2px #008250;
  background-color: #008250;
  font-size: 1.8rem;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.18em;
  margin-left: 0;
  cursor: pointer;
  position: relative;
}

button.gsc-search-button-v2:hover {
  border-radius: 0 6px 6px 0;
  border: solid 2px #008250;
  background-color: #007145;
  font-size: 1.8rem;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.18em;
  margin-left: 0;
}

.gsc-search-button-v2 svg {
  display: none;
}

.gsst_a .gscb_a {
  color: #008250 !important;
}

.gsst_a .gscb_a:hover {
  color: #007145 !important;
}

.header_support_list {
  display: flex;
  font-size: 1.6rem;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3.6rem;
  flex-wrap: wrap;
  row-gap: 2.5rem;
}

.header_support_list a {
  color: #333;
}

.header_support_list a:hover {
  text-decoration: none;
}

.header_support_honbun {
  padding-right: 2rem;
  background-image: url(../images/arrow-honbun.svg);
  background-repeat: no-repeat;
  background-position: right 0 top 0.6rem;
  background-size: 1.4rem;
}

.header_support_btn_txt button {
  background-color: unset;
  text-decoration: underline;
  cursor: pointer;
  color: #333;
  letter-spacing: 0.1em;
}

.header_support_btn_txt button:hover {
  text-decoration: none;
}

.header_support_howto {
  padding-left: 2.3rem;
  background-image: url(../images/icon-question.svg);
  background-repeat: no-repeat;
  background-position: left 0 center;
  background-size: 2rem;
}

.header_support_size,
.header_support_size_btn,
.header_support_color,
.header_support_color_btn {
  display: flex;
  align-items: center;
}

.header_support_size_btn,
.header_support_color_btn {
  height: fit-content;
  margin-left: 1rem;
}

.header_support_size_btn>li>button {
  border-top: #333 1px solid;
  border-right: #333 1px solid;
  border-bottom: #333 1px solid;
  border-left: #333 1px solid;
  padding: 5px 12px;
  background-color: #fff;
  border-radius: 8px 0 0 8px;
  cursor: pointer;
  font-weight: 500;
  color: #333;
}

.header_support_size_btn>li:last-child>button {
  border-radius: 0 8px 8px 0;
  border-left: none;
}

.header_support_color_btn>li>button {
  border-top: #333 1px solid;
  border-right: #333 1px solid;
  border-bottom: #333 1px solid;
  border-left: #333 1px solid;
  padding: 5px 12px;
  background-color: #fff;
  border-radius: 8px 0 0 8px;
  cursor: pointer;
}

.header_support_color_btn>li:nth-child(2)>button {
  border-radius: 0;
  border-left: none;
}

.header_support_color_btn>li:last-child>button {
  border-radius: 0 8px 8px 0;
  border-left: none;
}

.header_support_color_btn .colorWht {
  background-color: #fff;
  font-weight: 500;
  color: #333 !important;
}

.header_support_color_btn .colorBlk {
  background-color: #000;
  color: #fff;
  font-weight: 500;
}

.header_support_color_btn .colorBlu {
  background-color: #0000FF;
  color: #fff;
  font-weight: 500;
}

.header_gnav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.header_gnav .header_gnav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1050px;
}

.header_gnav_list>li {
  padding: 9px 0;
  width: calc(100% / 5);
  position: relative;
}

.header_gnav_list>li::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 2px;
  background-color: #008250;
  border-radius: 2px;
}

.header_gnav_list>li:first-child:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 2px;
  background-color: #008250;
  border-radius: 2px;
}

.header_gnav_list a {
  padding: 9px 0;
  width: fit-content;
  color: #333;
  text-decoration: none;
  vertical-align: baseline;
  letter-spacing: 0.05em;
  font-size: 1.8rem;
}

.header_gnav_list>li a:hover {
  border-bottom: dashed 2px #008250;
}

.gnav_linkBox {
  text-align: center;
}

.header_logo {
  position: absolute;
  margin: 0;
  bottom: 0;
}

.header_logo_link,
.footer_logo_link {
  display: block;
  width: 20.7rem;
  height: 4.8rem;
  background-image: url(../images/header-logo.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left top;
  text-indent: -999.9rem;
  overflow: hidden;
}


.header_logo .disaster_top_link {
  font-size: 1.6rem;
}

.header_logo .disaster_top_link:hover {
  text-decoration: none;
}



/* フッター */

.footer {
  background-color: #f9f8f1;
  position: relative;
  border-top: 1px dashed #C7BFAF;
}

#govTop .footer_ilust {
  background-color: #fff;
}

.footer_cont {
  display: flex;
  justify-content: space-between;
  padding: 40px 0;
}

.footer_town_info .footer_logo {
  width: 20rem;
  height: auto;
  margin-bottom: 24px;
}

.footer_town_info .footer_address {
  line-height: 1.8;
}

.footer_link .footer_link_txt {
  display: flex;
  margin-bottom: 40px;
}

.footer_link .footer_link_txt li {
  border-left: #008250 1px solid;
  padding: 2px 30px;

}

.footer_link .footer_link_txt li:last-child {
  border-right: #008250 1px solid;
}

.footer_link .footer_link_txt a {
  color: #008250;
}

.footer_link .footer_link_txt a:hover {
  text-decoration: none;
}

.footer_link_contact {
  margin-bottom: 16px;
  text-align: end;
}

.footer_link_contactBtn {
  /* background-image: url(../images/icon-mail.svg);
  background-repeat: no-repeat;
  background-position: top 26px left 70px; */
  padding: 24px 0;
  width: 440px;
  border-radius: 8px;
  border: solid 2px #008250;
  background-color: #fff;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #008250;
  text-decoration: none;
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
}

.footer_link_contactBtn_txt {
  margin-left: 20px;
}

.footer_link_facility {
  display: flex;
  column-gap: 2rem;
  justify-content: end;
}

.footer_link_facilityBtn {
  padding: 16px 0;
  width: 210px;
  border-radius: 8px;
  border: solid 2px #008250;
  background-color: #fff;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #008250;
  box-sizing: border-box;
  display: inline-block;
  text-decoration: none;
  text-align: center;
}

.footer_link_contactBtn:hover,
.footer_link_facilityBtn:hover {
  background-color: #F8FFF8;
  text-decoration: underline;
}


.footer_copy {
  text-align: center;
  background-color: #008250;
  padding: 10px 0;
  color: #fff;
}

/* ページトップボタン */
.pagetop {
  position: fixed;
  bottom: 80px;
  right: 40px;
  width: 80px;
  height: 80px;
  z-index: 99;
}


/* 行政トップ */

/* キービジュアル */

.kv_cont {
  overflow: hidden;
  padding: 50px 0 70px;
  background-image: url(../images/bg-kv.png);
  background-size: contain;
  background-repeat: repeat;
  /* margin-bottom: 60px; */
}

#kv {
  max-width: 1250px;
  margin: 0 auto;
  position: relative;
}

#kv .slick-slide {
  padding: 0;
  margin: 0 25px;
}

.kv_imgs {
  position: relative;
  z-index: 50;
}

.kv_img img {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

#kv .slick-list {
  overflow: visible;
}

#kv .kv_imgs .slick-arrow {
  font-size: 0;
  height: 50px;
  width: 50px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 70;
  cursor: pointer;
}

#kv .kv_imgs .slick-arrow.slide_prev {
  background: url(../images/arrow-kv-prev.svg) no-repeat center;
  left: 20px;
}

#kv .kv_imgs .slick-arrow.slide_next {
  background: url(../images/arrow-kv-next.svg) no-repeat center;
  right: 20px;
}

/* .kv_catch {
  position: absolute;
  top: 2.6%;
  left: 14.8333%;
  z-index: 90;
  width: 11.75%;
  height: auto;
} */
/* .kv_logo {
  position: absolute;
  z-index: 60;
  top: 0;
  left: 25px;
  mask-image: url(../images/kv-logo.svg);
  mask-repeat: no-repeat;
  mask-position: top -110px left -80px;
  mask-size: 100%;
  -webkit-mask-image: url(../images/kv-logo.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: top -110px left -80px;
  -webkit-mask-size: 100%;
} */
.slider-control {
  align-items: center;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  left: 50%;
  /* padding-top: 15px; */
  position: absolute;
  transform: translateX(-50%);
  width: 100%;
}

#kv .slider-control {
  bottom: -60px;
}

#bnr .slider-control {
  bottom: -80px;
}

#kv .slider-control .slide-dots_stop,
#bnr .slider-control .slide-dots_stop {
  margin: 0 0 0 15px;
}

#kv .slider-control .slide-dots_stop .js-slider-btn,
#bnr .slider-control .slide-dots_stop .js-slider-btn {
  cursor: pointer;
  display: block;
  position: relative;
  padding: 6px 14px 6px 30px;
  border-radius: 6px;
  background-color: #008250;
  color: #fff;
  font-weight: 500;
  background-image: url(../images/icon-kv-stop.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 14px;
}

#kv .slider-control .slide-dots_stop .js-slider-btn.-stop,
#bnr .slider-control .slide-dots_stop .js-slider-btn.-stop {
  background-image: url(../images/icon-kv-stop.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 14px;
}

#kv .slider-control .slide-dots_stop .js-slider-btn.-play,
#bnr .slider-control .slide-dots_stop .js-slider-btn.-play {
  background-image: url(../images/icon-kv-start.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 14px;
}

#kv .slide-dots,
#bnr .slide-dots {
  padding: 0;
  text-align: center;
  z-index: 70;
}

#kv .slide-dots li,
#bnr .slide-dots li {
  display: inline-block;
  margin: 0 10px;
}

#kv .slide-dots li button,
#bnr .slide-dots li button {
  position: relative;
  text-indent: -9999px;
  width: 14px;
  height: 14px;
  background: none;
  cursor: pointer;
}

#kv .slide-dots li button:before,
#bnr .slide-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  content: "";
  background-color: #fff;
  border: #008250 1px solid;
  border-radius: 100vh;
}

#kv .slide-dots li.slick-active button::before,
#bnr .slide-dots li.slick-active button::before {
  background-color: #008250;
}


/* バナー */
.bnr_cont {
  padding-top: 60px;
  margin-bottom: 60px;
  padding-bottom: 60px;
  background-color: #e9f2ed;
}

.bnr_cont:has(.slider-control) {
  padding-top: 60px;
  margin-bottom: 60px;
  padding-bottom: 80px;
  /* background-color: #FAF8F4; */
}

#bnr {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

#bnr .slick-slide {
  padding: 0;
  margin: 0 18px;
}

#bnr .slick-list {
  max-width: 1040px;
  margin: 0 auto;
}

.bnr_imgs {
  max-width: 1200px;
  margin: 0 auto;
}

.bnr_img {
  width: 320px;
  height: auto;
  vertical-align: bottom;
}

.bnr_img img {
  width: 100%;
  height: 100%;
}

#bnr .bnr_imgs .slick-arrow {
  font-size: 0;
  height: 100%;
  width: 44px;
  background-color: #008250;
  position: absolute;
  top: 0;
  z-index: 70;
  cursor: pointer;
}

#bnr .bnr_imgs .slick-arrow.slide_prev {
  top: 0;
  left: 0;
  border-radius: 8px 0 0 8px;
  background-image: url(../images/arrow-bnr-prev.svg);
  background-repeat: no-repeat;
  background-position: top 50% center;
}

#bnr .bnr_imgs .slick-arrow.slide_next {
  top: 0;
  right: 0;
  border-radius: 0 8px 8px 0;
  background-image: url(../images/arrow-bnr-next.svg);
  background-repeat: no-repeat;
  background-position: top 50% center;
}


/* 重要なお知らせ */
#news_imp {
  margin-bottom: 60px;
}

.news_imp_wrap {
  padding: 6px;
  box-sizing: border-box;
  border-radius: 8px;
  background-color: #9acfbb;
}

.news_imp_cont {
  padding: 24px 34px;
  box-sizing: border-box;
  border-radius: 4px;
  background-color: #fff;
}

.news_imp_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.news_imp_h2 {
  font-size: 2.8rem;
  font-weight: 500;
  color: #008250;
  padding-left: 42px;
  background-image: url(../images/icon-attention-maru-green.svg);
  background-repeat: no-repeat;
  background-size: 32px;
  background-position: top 50% left 0;
}

.news_imp_none {
  padding: 1rem 0;
}

/* .news_imp_none > p {
  text-align: center;
} */
.rss_btn {
  display: inline-block;
  padding: 6px 15px 6px 30px;
  border-radius: 6px;
  background-color: #008250;
  text-decoration: none;
  color: #fff;
  background-image: url(../images/icon-rss.svg);
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: top 50% left 12px;
}

.list_link {
  background-image: url(../images/arrow-list_link.svg);
  background-repeat: no-repeat;
  background-size: 6px 12px;
  background-position: top 55% right 0;
  padding-right: 15px;
}

.list_link:hover {
  text-decoration: none;
}

#news_imp .rss_btn {
  margin: 0 20px 0 0;
}

.news_imp_li {
  font-weight: 500;
  border-top: 1px dashed #777;
}

.news_imp_li a {
  padding: 15px 0;
  display: inline-flex;
  width: 100%;
  text-decoration: none;
}

.news_imp_li .news_imp_date {
  color: #333;
  text-decoration: none;
  display: inline-block;
  width: 16.97154%;
}

.news_imp_li_a .news_imp_ttlBox {
  width: calc(100% - 16.97154%);

}

.news_imp_li .news_imp_ttl {
  display: inline;
  text-decoration: underline;
  /* width: calc(100% - 16.97154%); */
}

.news_imp_li a:hover .news_imp_ttl {
  text-decoration: none;
}

/* いざという時に */
#emgcy {
  margin-bottom: 60px;
}

.emgcy_cont {
  display: flex;
}

.emgcy_h2_box {
  width: 18.333%;
  padding: 28px 20px 28px 15px;
  border-radius: 8px 0 0 8px;
  background-color: #008250;
}

.emgcy_h2 {
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  background-image: url(../images/icon-attention-sankaku-white.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 20px;
  background-size: 20px 18px;
  padding-left: 50px;
}

.emgcy_ul {
  display: flex;
  width: calc(100% - 18.333%);
}

.emgcy_li {
  border-top: solid 2px #008250;
  border-right: solid 2px #008250;
  border-bottom: solid 2px #008250;
  background-color: #fff;
  width: calc(100% / 4);
}

.emgcy_li:last-child {
  border-radius: 0 8px 8px 0;
}

.emgcy_li:hover {
  background-color: #F8FFF8;
}

.emgcy_li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  box-sizing: border-box;
  text-decoration: none;
  font-size: 1.8rem;
  font-weight: 500;
  color: #333;
  background-repeat: no-repeat;
}

.emgcy_li a:hover {
  text-decoration: underline;
}

.emgcy_li.mail a {
  background-image: url(../images/icon-mail-emargency.svg);
  background-position: top 50% left 50px;
  padding-right: 30px;
  padding-left: 90px;
}

.emgcy_li.info a {
  background-image: url(../images/icon-megahon.svg);
  background-position: top 50% left 20px;
  padding-right: 20px;
  padding-left: 66px;
}

.emgcy_li.medical a {
  background-image: url(../images/icon-kyukyusya.svg);
  background-position: top 50% left 25px;
  padding-right: 10px;
  padding-left: 75px;
}

.emgcy_li.safety a {
  background-image: url(../images/icon-patolamp.svg);
  background-position: top 42% left 25px;
  padding-right: 10px;
  padding-left: 70px;
}


#search {
  background-image: url(../images/bg-search.jpg);
  background-size: cover;
  padding: 80px 0;
}

.inner_in {
  max-width: 990px;
  margin: 0 auto;
}

.serach_key_cal {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}

.serach_key_cal .search_h2 {
  position: relative;
  font-size: 2.8rem;
  font-weight: 600;
  color: #008250;
  text-align: center;
}

.search_key .search_h2 {
  margin-bottom: 57px;
  padding-top: 45px;
  background-image: url(../images/icon-mushimegane.svg);
  background-repeat: no-repeat;
  background-size: 35px;
  background-position: top 0 right 50%;
}

.search_cal .search_h2 {
  margin-bottom: 20px;
  padding-top: 45px;
  background-image: url(../images/icon-calender.svg);
  background-repeat: no-repeat;
  background-size: 40px;
  background-position: top 10px right 50%;

}

.serach_key_cal .search_h2::after {
  content: "";
  position: absolute;
  width: 4rem;
  height: 4px;
  border-radius: 2px;
  background-color: #008250;
  top: 75%;
}

.search_key .search_h2::after {
  right: 50px;
}

.search_cal .search_h2::after {
  right: 35px;
}

.serach_key_cal .search_h2::before {
  content: "";
  position: absolute;
  width: 4rem;
  height: 4px;
  border-radius: 2px;
  background-color: #008250;
  top: 75%;
}

.search_key .search_h2::before {
  left: 50px;
}

.search_cal .search_h2::before {
  left: 35px;
}

.search_key {
  width: 45.656565%;
}


.header_support_search {
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: relative;
  width: 34.5rem;
}

#search .gnav_search {
  width: 100%;
  margin-bottom: 30px;
}

#search table.gsc-search-box {
  height: 5rem;
  margin-bottom: 3rem;
}

#search table.gsc-search-box td.gsc-input {
  width: calc(100% - 26.99115%);
  border-radius: 8px 0 0 8px;
  height: 100%;
}

#search button.gsc-search-button-v2 {
  height: 100%;
  width: 12rem;
  font-size: 2rem;
  border-radius: 0 8px 8px 0;
}

.search_key_freq {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 10px;
}

.search_key .freq_ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 3rem;
}

.freq_li a {
  text-decoration: none;
  padding: 5px 10px;
  border-radius: 6px;
  border: solid 2px #008250;
  background-color: #008250;
  color: #fff;
  display: inline-block;
}

.freq_li a:hover {
  text-decoration: none;
  background-color: #007145;
}

.search_btns {
  display: flex;
  justify-content: space-between;
  column-gap: 1.2rem;
}

.search_btn {
  width: 100%;
}

.search_btn a {
  display: inline-block;
  box-sizing: border-box;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  border-radius: 8px;
  border: solid 2px #008250;
  background-color: #fff;
  padding: 26px 20px;
  width: 100%;
}

.search_btn a:hover {
  text-decoration: underline;
  background-color: #F8FFF8;
}

.search_btn a.search_btn_soshiki {
  background-image: url(../images/icon-soshiki.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 20px;
  padding-left: 72px;
}

.search_btn a.search_btn_faq {
  background-image: url(../images/icon-faq.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 20px;
  padding-left: 80px;
}



.search_cal {
  width: 48.282828%;
}

.fc a {
  display: inline-block;
  height: 100%;
  width: 100%;
}

.fc a:hover {
  text-decoration: none;
}

.fc-prev-button::after,
.fc-next-button::before {
  content: attr(title);
}

.fc .fc-toolbar.fc-header-toolbar {
  margin-bottom: 0.6rem;
}

.fc.fc-toolbar-title {
  font-family: 'Roboto', sans-serif;
  font-size: 2rem;
  text-align: center;
  font-weight: 500;
}

.fc .fc-button {
  background: none;
  color: #1a0dab;
  text-decoration: underline;
  cursor: pointer;
  border: unset;
  padding: 0;
  font-size: 1.6rem;
}

.fc .fc-button:hover {
  color: #1a0dab;
  text-decoration: none;
  box-shadow: unset;
  background-color: unset;
}

.fc .fc-button:active {
  box-shadow: unset;
}

.fc .fc-button-primary:not(:disabled).fc-button-active,
.fc .fc-button-primary:not(:disabled):active {
  background-color: unset;
  border-color: unset;
  border: none;
  color: #1a0dab;
}

.fc .fc-button-primary:not(:disabled).fc-button-active:focus,
.fc .fc-button-primary:not(:disabled):active:focus {
  box-shadow: unset;
  border: none;
}

.fc .fc-button-primary:focus {
  box-shadow: unset;
}

.fc .fc-button:focus {
  box-shadow: unset;
}

.fc .fc-button:focus-visible {
  outline: auto;
}

.cal_btn:hover {
  text-decoration: none;
}

.fc-icon-chevron-left::before {
  padding-left: 17px;
  left: 0;
  background-image: url(../images/arrow-cal-prev.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 0;
  content: "";
}

.fc-icon-chevron-right::before {
  padding-right: 17px;
  right: 0;
  background-image: url(../images/arrow-cal-next.svg);
  background-repeat: no-repeat;
  background-position: top 50% right 0;
  content: "";
}

.fc-theme-standard .fc-scrollgrid {
  border: solid 2px #008250;
  background-color: #fff;
  border-collapse: collapse;
  /* margin-bottom: 16px; */
  width: 100%;
}

th.fc-col-header-cell,
.fc-scrollgrid-sync-table tr td {
  width: calc(100% / 7);
  text-align: center;
  border-right: #008250 2px solid;
  border-bottom: #008250 2px solid;
}

.fc-scrollgrid-sync-table tr th:last-child,
.fc-scrollgrid-sync-table td:last-child {
  border-right: none;
}

.fc-scrollgrid-sync-table tr:last-child th,
.fc-scrollgrid-sync-table tr:last-child td {
  border-bottom: none;
}

th.fc-col-header-cell {
  height: fit-content;
  padding: 0.6rem;
  background-color: #e4f5c7;
  font-weight: 500;
}

.fc-scrollgrid-sync-table tr td {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  box-sizing: border-box;
}

.fc .fc-daygrid-day-number {
  padding: 1.4rem 0;

}

.fc .fc-daygrid-day-top {
  display: flex;
  justify-content: center;
}

.search_cal .cal_event_link {
  text-align: right;
  margin-top: 1.6rem;
}

.search_cal .list_link {
  font-size: 1.8rem;
  font-weight: 500;
  background-size: 7px 14px;
}


.search_life_event .search_h2 {
  text-align: center;
  font-size: 2.8rem;
  font-weight: 500;
  background-size: 7px 14px;
  margin-bottom: 57px;
  padding-top: 35px;
  background-image: url(../images/icon-home.svg);
  background-repeat: no-repeat;
  background-size: 35px;
  background-position: top 0 right 50%;
}

.life_event_ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 20px;
}

.life_event_ul .life_event_li {
  width: calc(100% / 5.4);
}

.life_event_ul .life_event_li .life_event_link {
  display: inline-flex;
  flex-direction: column;
  text-decoration: none;
  width: 100%;
  padding: 15px 10px;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 8px;
  border: solid 2px #8ed19e;
  background-color: #fff;
  background-repeat: no-repeat;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  color: #333;
}

.life_event_ul .life_event_li .life_event_link .life_event_icon {
  width: 72.65%;
  height: auto;
  margin: 0 auto 6px;
}

.life_event_ul .life_event_li .life_event_link:hover {
  border: solid 2px #008250;
}



/* トップお知らせ */

#news_all {
  padding: 60px 0;
}

.news_h2_box .news_h2 {
  text-align: center;
  font-size: 2.8rem;
  font-weight: 500;
  background-size: 7px 14px;
  margin-bottom: 20px;
  padding-top: 45px;
  background-image: url(../images/icon-bell.svg);
  background-repeat: no-repeat;
  background-size: 35px;
  background-position: top 0 right 50%;
}

.news_cont {
  width: 100%;
}

.news_tab {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.news_tab .news_tab_li {
  width: calc(100% / 2.005);
}

.news_tab_btn {
  width: 100%;
  padding: 10px 0;
  cursor: pointer;
  display: inline-block;
  border-radius: 8px 8px 0 0;
  border: solid 2px #008250;
  background-color: #008250;
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.125em;
}

.news_tab_btn:hover {
  background-color: #F8FFF8;
  color: #008250;
}

.news_tab_btn.open {
  color: #008250;
  background-color: #fff;
}

.news_panel {
  display: none;
}

.news_panel.open {
  display: block;
}

.news_post_list {
  margin-bottom: 20px;
  list-style: none;
}

.post_list_li {
  border-bottom: #777 1px dashed;
}

.post_list_li a {
  display: inline-block;
  padding: 20px 0;
  text-decoration: none;
  width: 100%;
  height: 100%;
}

.post_date_catBox {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.page_cont .page_info .post_date_catBox {
  flex-wrap: wrap;
  width: 55%;
  margin-bottom: 10px;
}

.page_cont ul.post_cat_ul {
  margin-bottom: 0;
  padding-left: 0;
}

.page_cont .page_info ul.post_cat_ul {
  margin-top: 1rem;
}

.post_cat_ul .post_cat {
  padding: 4px 0;
  margin-bottom: 4px;
  font-size: 1.2rem;
  width: 9rem;
  border-radius: 15px;
  font-weight: 500;
  color: #333;
  display: inline-block;
  text-align: center;
}

.page_info .post_cat_ul .post_cat {
  margin-bottom: 4px;
}

.post_cat_ul .post_cat_news {
  background-color: #d4f1ba;
}

.post_cat_ul .post_cat_kosodate-joho {
  background-color: #ffe5e5;
}

.post_cat_ul .post_cat_iju-teiju-joho {
  background-color: #d2e5f2;
}

.post_cat_ul .post_cat_koreisha-joho {
  background-color: #ead9f3;
}

.post_cat_ul .post_cat_nyusatsu {
  background-color: #F9F4AB;
}

.post_cat_ul .post_cat_boshu {
  background-color: #EFEFEF;
}

.page_cont .post_date {
  margin-right: 1.5rem;
}

.page_share_print {
  width: auto;
}

#page .page_share_print {
  width: 45%;
}

.post_list_li a .post_date {
  font-family: 'Roboto', sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  margin-right: 1.6rem;
  letter-spacing: 0.1em;
  color: #333;
}

.page_date .post_date {
  font-family: 'Roboto', sans-serif;
  font-size: 1.6rem;
  margin-right: 1.6rem;
  letter-spacing: 0.1em;
  color: #333;
}

/* .post_list_li a .post_cat {
  padding: 5px 0;
  border-radius: 15px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #333;
  width: 11rem;
  display: inline-block;
  text-align: center;
} */
.post_cat {
  font-family: "Noto Sans JP", sans-serif;
}

.post_list_li a .post_ttl {
  font-weight: 500;
  text-decoration: underline;
}

.post_list_li a:hover .post_ttl {
  text-decoration: none;
}

.post_list_li a:hover {
  background-color: #F8FFF8;
}

/* .post_list_li a .post_new {
  font-family: 'Roboto', sans-serif;
  font-weight: 600;
  color: #e64700;
  margin-left: 20px;
} */
a .post_new {
  font-family: 'Roboto', sans-serif;
  font-weight: 600;
  color: #DF0505;
  margin-left: 20px;
}

.post_none {
  padding: 5rem 0;
}

.news_list_link {
  text-align: right;
}

.news_list_link .rss_btn {
  padding: 4px 10px 4px 30px;
  margin-right: 0.5rem;
}

#disaster .rss_btn {
  padding: 6px 12px 6px 30px;
  margin-right: 20px;
}

.news_list_link .list_link {
  font-weight: 500;
}


/* ピックアップ情報 */

#pickup {
  padding: 80px 0;
  background-image: url(../images/bg-pickup.jpg);
  background-color: rgba(255, 255, 255, 0.6);
  background-blend-mode: lighten;
  background-size: cover;
}

.pickup_h2_box {
  width: 516px;
  margin: 0 auto 60px;
  padding-top: 20px;
  position: relative;
}

.pickup_h2_box::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon-pickup.svg);
  background-position: center;
  background-repeat: no-repeat;
  width: 120px;
  height: 40px;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.pickup_h2 {
  padding: 14px 0;
  width: 100%;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  color: #003964;
  border: solid 2px #003964;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 8px;
}

.pickup_btns {
  display: flex;
  justify-content: space-between;
  row-gap: 30px;
  margin-bottom: 76px;
}

.pickup_btns_box {
  width: 45.8333%;
}

.pickup_btn a {
  display: inline-flex;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 8px;
  text-decoration: none;
  font-size: 2.2rem;
  font-weight: 500;
  color: #333;
  background-image: url(../images/pickup-logo.svg);
  background-repeat: no-repeat;
}

.pickup_btn a:hover {
  text-decoration: underline;
}

.pickup_btn a.pickup_btn_chouchou {
  background-position: bottom -30px right -20px;
  height: 150px;
}

.pickup_btn a.pickup_btn_about {
  background-position: bottom -10px right -10px;
  background-size: 52px;
  height: 120px;
}

.pickup_btn a.pickup_btn_kouhou {
  background-position: bottom -30px right -35px;
  background-size: 216px;
  height: 300px;
}

.pickup_btn .pickup_btn_img {
  border-radius: 8px 0 0 8px;
  width: 40%;
  height: 100%;
  object-fit: cover;
  vertical-align: bottom;
}

.pickup_btn .pickup_btn_txt {
  display: inline-block;
  box-sizing: border-box;
  width: 60%;
  text-align: center;
}

.pickup_btn_top {
  margin-bottom: 27px;
}

.pickup_btns .pickup_btn_botm {
  display: flex;
  justify-content: space-between;
}

.pickup_btn_botm .pickup_btn {
  width: 47.2727%;
}

.pickup_btn_botm .pickup_btn a {
  font-size: 1.8rem;
}

.pickup_sns {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 8px;
  padding: 30px 10% 40px;
  width: 100%;
  box-sizing: border-box;
}

.pickup_h3 {
  text-align: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 34px;
}

.pickup_h3_sub {
  position: relative;
  font-weight: 500;
  width: fit-content;
  margin: 0 auto;
  padding: 0 20px;
}

.pickup_h3_sub::before {
  position: absolute;
  content: "";
  background-image: url(../images/deco-h3-sns-left.svg);
  background-repeat: no-repeat;
  background-size: 14px 20px;
  width: 14px;
  height: 20px;
  left: 0;
  top: 4px;
}

.pickup_h3_sub::after {
  position: absolute;
  content: "";
  background-image: url(../images/deco-h3-sns-right.svg);
  background-repeat: no-repeat;
  background-size: 14px 20px;
  width: 14px;
  height: 20px;
  right: 0;
  top: 4px;
}

.pickup_h3_ttl {
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 3rem;
  font-weight: 700;
}

.sns_btns_box {
  margin: 0 auto;
}

.sns_btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 2rem;
  row-gap: 2.5rem;
}

.sns_btn a {
  display: inline-block;
  border: #333 2px solid;
  border-radius: 8px;
}

.sns_btn a:hover {
  border: #bbbbbb 2px solid;
}


/* 広告バナー */
#ad {
  padding: 6rem 0 7rem;
}

.ad_h2 {
  font-size: 2.8rem;
  font-weight: 500;
  position: relative;
  width: fit-content;
  margin: 0 auto 4rem;
  padding-left: 9rem;
  padding-right: 9rem;
}

.ad_h2::before {
  position: absolute;
  content: "";
  width: 70px;
  height: 4px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 2px;
  background-color: #333;
}

.ad_h2::after {
  position: absolute;
  content: "";
  width: 70px;
  height: 4px;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border-radius: 2px;
  background-color: #333;
}

.ad_list {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}



/* ===================================
  行政　下層ページ
=================================== */


/* --------------------
  イベントカレンダー
-------------------- */

.calendar-event.fc-direction-ltr {
  position: relative;
  padding-top: 4.8rem;
}

.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button,
.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button {
  display: block;
  width: max-content;
  color: #0000EE !important;
  text-decoration: underline;
  letter-spacing: 0.1em;
  background: none !important;
  padding: 0 0 0 2.7rem;
  position: absolute;
  top: 0;
  right: 0;
}

.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button:hover,
.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button:hover {
  text-decoration: none;
}

.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button::before,
.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button::before {
  position: absolute;
  content: "";
  background: url(../images/icon-calendar.svg) no-repeat left center;
  display: inline-block;
  height: 2.2rem;
  width: 2.2rem;
  left: 0;
  margin-right: 0.7rem;
  vertical-align: sub;
}

.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button.fc-button-active,
.calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button.fc-button-active {
  display: none;
}

.calendar-event.fc .fc-button.fc-dayGridMonth-button,
.calendar-event.fc .fc-button.fc-listMonth-button {
  background-color: unset !important;
  color: #333 !important;

}

.fc-dayGridMonth-button::before,
.fc-listMonth-button::before {
  position: absolute;
  content: "";
  background: url(../images/icon-calendar.svg) no-repeat left center;
  display: inline-block;
  height: 2.2rem;
  width: 2.2rem;
  left: 0;
  margin-right: 0.7rem;
  vertical-align: sub;
}

.calendar-event.fc .fc-button-group {
  display: inline-flex;
  position: unset;
  vertical-align: middle;
  column-gap: 1rem;
}

.calendar-event.fc .fc-button {
  background-color: #008250 !important;
  text-decoration: none;
  color: #fff !important;
  padding: 0.8rem;
}

.calendar-event.fc .fc-button:active {
  background-color: #008250 !important;
  color: #fff;
}

.calendar-event.fc .fc-button:hover {
  background-color: #007145 !important;
}

.calendar-event .fc-icon-chevron-right::before {
  background-image: url(../images/arrow-next-white.svg);
}

.calendar-event .fc-icon-chevron-left::before {
  background-image: url(../images/arrow-prev-white.svg);
}

.calendar-event.fc .fc-button {
  border-radius: 0.25em;
}

.fc-direction-ltr .fc-button-group>.fc-button:not(:last-child) {
  border-bottom-right-radius: 0.25em;
  border-top-right-radius: 0.25em;
}

.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child) {
  border-bottom-left-radius: 0.25em;
  border-top-left-radius: 0.25em;
}

.calendar-event.fc .fc-button.fc-today-button {
  padding: 0 1.8rem;
}

.calendar-event.fc .fc-button.fc-today-button:disabled {
  background-color: #007145 !important;
}



/* リスト形式 */
.calendar-event.fc .fc-list-sticky .fc-list-day>* {
  position: relative;
}

.fc-list-table {
  line-height: 1.5;
  color: #333;
  letter-spacing: 0.1em;
}

.fc .fc-list-table thead {
  left: -10000px;
  position: absolute;
}

.fc table.fc-list-table {
  width: 100%;
  margin-bottom: 0;
}

.fc .fc-list-table th {
  border: 1px solid #b1b1b1;
}

/* .fc .fc-list-table td {
  border: none;
} */
.fc-theme-standard .fc-list {
  border: 1px solid #b1b1b1;
}

.fc .fc-list-day-cushion {
  background: #E8F5E6;
  padding: 0.8rem 1.9rem;
  display: flex;
  text-align: start;
}

.fc-direction-ltr .fc-list-day-text,
.fc-direction-rtl .fc-list-day-side-text {
  width: 25%;
}

.fc h2.fc-toolbar-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  text-align: center;
  font-weight: 500;
  background-color: unset;
}

.fc-list-day-side-text {
  display: inline;
  margin-left: 1.5rem;
}

.fc-list-event-time {
  display: none;
}

td.fc-list-event-graphic {
  border-bottom: solid 1px #b1b1b1;
}

td.fc-list-event-title {
  border-bottom: 1px solid #b1b1b1;
}

td.fc-list-event-title:hover {
  border-top: 1px solid #b1b1b1;
}

.fc .fc-list-event-title a[href*="https"],
.fc .fc-list-event-title a[href*="http"] {
  text-decoration: underline;
}

.fc .fc-list-event-title:hover a[href*="https"],
.fc .fc-list-event-title:hover a[href*="http"] {
  text-decoration: none;
}

.fc .fc-list-event:hover td {
  z-index: -1 !important;
}

/* 表形式 */

.calendar-event.fc .fc-daygrid-day-top {
  display: flex;
  justify-content: end;
  margin-right: 1rem;
}

.calendar-event.fc .fc-daygrid-day-number {
  padding: 1rem 0;
  text-align: end;
}

.calendar-event.fc .fc-daygrid-event-harness {
  width: 100%;
  text-align: start;
  margin: 0 0.1rem 0.2rem;
}

.calendar-event.fc .fc-h-event .fc-event-title-container {
  overflow: hidden;
}

.calendar-event.fc .fc-h-event .fc-event-title {
  display: inline;
  overflow: visible;
  color: #333;
}

.calendar-event.fc a.fc-event.fc-event-start.fc-event-end.fc-event-past.fc-daygrid-event.fc-daygrid-block-event.fc-h-event {
  width: 100%;
  border-radius: 0.25em;
}

/* .calendar-event.fc a.fc-event.fc-event-start.fc-event-end.fc-event-past.fc-daygrid-event.fc-daygrid-block-event.fc-h-event:hover .fc-event-title  {
  text-decoration: underline;
} */
.fc-direction-ltr .fc-daygrid-event.fc-event-end,
.fc-direction-rtl .fc-daygrid-event.fc-event-start {
  margin-right: 0;
}

.fc-direction-ltr .fc-daygrid-event.fc-event-start,
.fc-direction-rtl .fc-daygrid-event.fc-event-end {
  margin-left: 0;
}

.calendar-event.fc .fc-dayGridMonth-view .fc-daygrid-body-natural .fc-daygrid-day-events {
  margin-bottom: 1em;
  margin-top: 0;
  overflow: hidden;
}

.calendar-event.fc .fc-daygrid-body-natural .fc-daygrid-day-events {
  margin-bottom: 1em;
  margin-top: 1em;
}

a.fc-event.fc-event-start.fc-event-end.fc-event-future.fc-daygrid-event.fc-daygrid-block-event.fc-h-event,
a.fc-event.fc-event-start.fc-event-end.fc-event-today.fc-daygrid-event.fc-daygrid-block-event.fc-h-event {
  width: 100%;
}

a.fc-event.fc-event-start.fc-event-end.fc-event-future.fc-daygrid-event.fc-daygrid-block-event.fc-h-event[href*="https"],
a.fc-event.fc-event-start.fc-event-end.fc-event-today.fc-daygrid-event.fc-daygrid-block-event.fc-h-event[href*="http"] {
  text-decoration: underline;
}

a.fc-event.fc-event-start.fc-event-end.fc-event-future.fc-daygrid-event.fc-daygrid-block-event.fc-h-event[href*="https"]:hover,
a.fc-event.fc-event-start.fc-event-end.fc-event-today.fc-daygrid-event.fc-daygrid-block-event.fc-h-event[href*="http"]:hover {
  text-decoration: none;
}

/* 1日分 */
.calendar-event.fc .fc-daygrid-body-natural .fc-daygrid-day-events {
  margin-bottom: 1em;
  margin-top: 1em;
}

.calendar-event.fc .fc-daygrid-event-harness a[href*="https"],
.calendar-event.fc .fc-daygrid-event-harness a[href*="http"] {
  text-decoration: underline;
}

.calendar-event.fc .fc-daygrid-event-harness:hover a[href*="https"],
.calendar-event.fc .fc-daygrid-event-harness:hover a[href*="http"] {
  text-decoration: none;
}

/* --------------------
  サイト内検索結果
-------------------- */

.gs-result .gs-title *,
.gsc-cursor-page,
.gs-spelling a {
  color: #1a0dab !important;
}

.gs-result .gs-title *:hover {
  text-decoration: underline !important;
}

.gs-promotion .gs-visibleUrl,
.gs-webResult .gs-visibleUrl {
  color: #008250 !important;
}

.gsc-control-cse {
  padding: 1em 0 !important;
}

.gsc-orderby-label {
  color: #333 !important;
}

.gsc-selected-option-container {
  color: #333 !important;
}

.gsc-result-info {
  color: #333 !important;
}

/* --------------------
  パンくずリスト
-------------------- */
.breadcrumb {
  background-color: #FAF8F4;
  border-bottom: #C7BFAF 1px dashed;
  padding: 1.4rem 0;
}

.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.4rem;
}

.breadcrumb ol li p {
  background-color: #008250;
  padding: 0.6rem 1.7rem;
  border-radius: 6px;
  color: #fff;
  margin-right: 2rem;
  width: fit-content;
}

.breadcrumb ol li {
  font-weight: 500;
  position: relative;
  padding-right: 2.6rem;
  padding-left: 1rem;
}

.breadcrumb ol li:first-child {
  padding-left: 0;
  padding-right: 0;
}

.breadcrumb ol li:last-child {
  padding-right: 0;
}

.breadcrumb ol li::after {
  content: "＞";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  color: #008250;
  font-weight: 700;
}

.breadcrumb ol li:last-child:after,
.breadcrumb ol li:first-child:after {
  content: "";
}

.breadcrumb ol li a {
  color: #333;
}

.breadcrumb ol li a:hover {
  text-decoration: none;
}


/* --------------------
  コンテンツ - サイドメニュー
-------------------- */

.cont_aside {
  display: flex;
  justify-content: space-between;
  padding-top: 8rem;
  padding-bottom: 10rem;
}

.page_cont {
  width: 71.666%;
  box-sizing: border-box;
}

.page_aside {
  width: 23.333%;
}

/* --------------------
  フリーエリア
-------------------- */
.free_area {
  margin-bottom: 7rem;
}

/* --------------------
  コンテンツ
-------------------- */

.page_free {
  margin-bottom: 4rem;
}

.page_free a:hover {
  text-decoration: none;
}

.page_free p,
.free_area p {
  margin-bottom: 1em;
}

.page_free p:empty,
.free_area p:empty {
  margin-bottom: 0;
}

.page_cont ul.news_post_list {
  margin-bottom: 2rem;
  list-style: none;
  padding-left: 0;
}

.page_cont ul.news_post_list a {
  text-decoration: none;
}

/* --------------------
  見出し
-------------------- */
.page_cont h2,
.page_cont h3,
.page_cont h4,
.page_cont h5,
.page_cont h6 {
  margin-bottom: 2rem;
  margin-top: 4rem;
}

.page_cont h2+h3,
.page_cont h3+h4,
.page_cont h4+h5,
.page_cont h5+h6,
.page_cont h2+h2,
.page_cont h3+h3,
.page_cont h4+h4,
.page_cont h5+h5,
.page_cont h6+h6 {
  margin-top: 2rem;
}

.page_cont h1 {
  font-size: 3.2rem;
  font-weight: 700;
  position: relative;
  padding-bottom: 1rem;
  padding-left: 1.2rem;
  margin-bottom: 1.4rem;
}

.page_cont h1::after {
  content: "";
  position: absolute;
  height: 6px;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: #008250;
  border-radius: 3px;
}

.page_cont h2 {
  padding: 1rem;
  border-radius: 8px;
  background-color: #e8f5e6;
  font-size: 2.4rem;
  font-weight: 700;
}

.page_cont h3 {
  font-size: 2.2rem;
  font-weight: 700;
  padding-left: 1.2rem;
  position: relative;
}

.page_cont h3::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 100%;
  border-radius: 3px;
  background-color: #008250;
  left: 0;
  top: 0;
}

.page_cont h4 {
  font-size: 2rem;
  font-weight: 700;
  border-top: #008250 dashed 1px;
  border-bottom: #008250 dashed 1px;
  padding: 1rem;
}

.page_cont h5 {
  font-size: 2rem;
  font-weight: 700;
  padding: 0 1rem;
  color: #008250;
}

.page_cont h6 {
  font-size: 2rem;
  font-weight: 700;
  padding: 0 1rem 0.4rem;
  width: fit-content;
  position: relative;
}

.page_cont h6::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 0.2rem;
  border-radius: 100vh;
  background-color: #FBBA07;
  bottom: 0;
  left: 0;
}


/* --------------------
  テーブル
-------------------- */

/* .page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container) tr:nth-of-type(1) th {
  border-top: none;
} */
.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) tr:nth-of-type(2+n) th {
  border-left: none;
}

/* .page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container) th:nth-child(1) {
  border-left: none;
} */

.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) th {
  border: 1px solid #707070;
  font-weight: 700;
  padding: 1rem 1.6rem;
  background-color: #efefef;
}

.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) td {
  padding: 1rem;
  background: #fff;
  border: 1px solid #707070;
}

.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) {
  display: block;
  width: auto !important;
  height: auto !important;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 1em;
  border: none;
}

.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table).scroll {
  overflow-x: auto;
}

.page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) tbody {
  display: table;
  width: auto;
  border-collapse: collapse;
  border-spacing: 0;
  outline: 0;
  /* border-top: #333 1px solid; */
  /* border-left: #333 1px solid; */
  /* border: solid 1px #707070; */
}


/* --------------------
  リスト
-------------------- */

.page_cont ul {
  list-style: disc inside;
  margin-bottom: 2rem;
  padding-left: 1.5rem;
}

.page_cont ul>li>ul {
  list-style: circle inside;
}

.page_cont ol {
  list-style: decimal inside;
  margin-bottom: 2rem;
  padding-left: 1.5rem;
}

.page_cont ol.ranking_ol {
  padding-left: 0;
}

/* --------------------
  関連するリンク
-------------------- */
.relation_link {
  margin-bottom: 6rem;
}

.relation_link_h2_box {
  position: relative;
  padding-left: 1.6rem;
  box-sizing: border-box;
}

.page_cont .relation_link_h2 {
  padding: 1rem 3.6rem;
  border-radius: 8px;
  background-color: #fbeba1;
  font-size: 2rem;
  position: relative;
  box-sizing: border-box;
  margin-bottom: 2rem;
}

.page_cont .relation_link_h2::after {
  position: absolute;
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  background-color: #fff;
  border-radius: 100vh;
  top: 50%;
  transform: translateY(-50%);
  left: 1rem;
  z-index: 50;
}

.page_cont .relation_link_h2_box::before {
  position: absolute;
  content: "";
  background-image: url(../images/deco-relation-link.svg);
  background-position: top 50% left 0;
  background-repeat: no-repeat;
  width: 4rem;
  height: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: 60;
}

.page_cont ul.relation_link_list {
  list-style: none;
}

.page_cont ul.relation_link_list li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 1rem;
}

.page_cont ul.relation_link_list li:last-child {
  margin-bottom: none;
}

.page_cont ul.relation_link_list li::before {
  content: "";
  position: absolute;
  background-image: url(../images/arrow-relation-link.svg);
  background-repeat: no-repeat;
  width: 1.2rem;
  height: 1.6rem;
  top: 1.2rem;
  transform: translateY(-50%);
  left: 0;
}

.page_cont ul.relation_link_list li a:hover {
  text-decoration: none;
}


/* --------------------
  このページに関するお問い合わせ
-------------------- */

.page_contact {
  padding: 3rem;
  border-radius: 8px;
  border: solid 4px #008250;
}

.page_contact .page_contact_h2 {
  margin-top: 0;
  font-size: 2.2rem;
  font-weight: 700;
  padding-bottom: 1.4rem;
  padding-top: 0;
  border-bottom: 1px dashed #008250;
  background-color: #fff;
  border-radius: 0;
}

.page_contact dl dt {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0.7rem;
  margin-top: 2.4rem;
}

.page_contact dl dt:first-child {
  margin-top: 0;
}

.page_contact dl dd ul {
  margin-bottom: 1rem;
  list-style: none;
  padding: 0;
}

.page_contact dl dd .contact_link {
  display: inline-block;
}

.page_contact dl dd .contact_link:hover {
  text-decoration: none;
}

.page_contact dl dd .contact_link img {
  width: 2.2rem;
  height: 1.7rem;
  padding-right: 0.6rem;
  vertical-align: bottom;
}

/* --------------------
  日付 - SNSシェア - 印刷
-------------------- */
.page_info:has(.page_date) {
  justify-content: space-between;
}

.page_info {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}

.page_date {
  font-family: 'Roboto', sans-serif;
}

.page_date>ul:has(.post_cat) {
  margin-top: 1rem;
}

.page_cont ul.page_share_print_list {
  display: flex;
  align-items: center;
  line-height: 0;
  column-gap: 1rem;
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

.page_print_btn a {
  color: #333;
  display: inline-block;
  padding-left: 2.5rem;
  width: 100%;
  background-image: url(../images/icon-ptinter.svg);
  background-repeat: no-repeat;
  background-size: 1.8rem;
  position: relative;
}

.page_print_btn a::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon-ptinter.svg);
  background-repeat: no-repeat;
  width: 2rem;
  height: 1.8rem;
  top: 45%;
  transform: translateY(-45%);
  left: 0;
}

#pageChild .tagBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  margin-top: 1rem;
  row-gap: 0.5rem;
}

#pageChild .tagBox a.post_tag {
  display: inline;
  font-size: 1.2rem;
  font-weight: 500;
  width: auto;
  padding: 4px 15px;
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
  letter-spacing: 0em;
  border: solid 2px #26466d;
  background-color: #ffffff;
  border-radius: calc(1.2rem + 4px);
  margin-right: 10px;
  text-decoration: none;
}

#pageChild .tagBox a.post_tag:hover {
  background-color: #F2F8FF;
}



/* --------------------
  サイドメニュー
-------------------- */

.page_aside_h2 {
  color: #fff;
  background-color: #008250;
  font-size: 2rem;
  font-weight: 700;
  padding: 1.6rem 0;
  text-align: center;
  border-radius: 10px 10px 0 0;
}

.page_aside_list {
  margin-bottom: 2.2rem;
}

.page_aside_list li {
  border-bottom: #707070 dashed 1px;
}

.page_aside_list li a {
  /* padding: 1.6rem 1rem; */
  display: inline-block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  position: relative;
}

.page_aside_list li a::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background-image: url(../images/arrow-aside.svg);
  background-repeat: no-repeat;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}

.page_aside_list li a:hover {
  background-color: #FEFBE2;
  text-decoration: underline;
}

.page_aside_bnr li {
  margin-bottom: 1.2rem;
}

.page_aside_bnr li:last-child {
  margin-bottom: 0;
}

.page_aside_bnr a {
  display: inline-block;
  width: 100%;
  height: 100%;
}




/* --------------------
  新着情報一覧（下層）
-------------------- */
#page #container .post_list_li:first-child {
  border-top: #777 1px dashed;
}

/* --------------------
  ページネーション
-------------------- */

.pagination {
  margin-top: 4rem;
}

.page_cont .pagination ul {
  padding-left: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  column-gap: 0.8rem;
}

.page_cont .pagination ul li a {
  display: inline-block;
  border-radius: 8px;
  border: solid 1px #8ed19e;
  background-color: #fff;
  color: #333;
  text-decoration: none;
  position: relative;
  font-weight: 500;
}

.page_cont .pagination ul li a:hover {
  background-color: #e0f3e5;
}

.page_cont .pagination ul li.pagination_num a {
  padding: 1.2rem 1.8rem;
}

.page_cont .pagination ul li.pagination_num a.current {
  background-color: #e0f3e5;
}

.page_cont .pagination ul li.pagination_prev a {
  padding: 1.2rem 1.8rem 1.2rem 3.4rem;
  background-image: url(../images/arrow-pagination-prev.svg);
  background-repeat: no-repeat;
  background-position: left 1.6rem top 50%;
  background-size: 0.8rem 1rem;
}

.page_cont .pagination ul li.pagination_next a {
  padding: 1.2rem 3.4rem 1.2rem 1.8rem;
  background-image: url(../images/arrow-pagination-next.svg);
  background-repeat: no-repeat;
  background-position: right 1.6rem top 50%;
  background-size: 0.8rem 1rem;
}

/* --------------------
  目次メニュー
-------------------- */

.page_cont ul.page_index_list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  list-style: none;
  padding-left: 0;
}

.page_index_list li {
  /* padding: 20px; */
  border-radius: 8px;
  border: solid 4px #bbdcb4;
  background-color: #f2f6e8;
  width: 27rem;
  /* height: 19rem; */
  box-sizing: border-box;
}

.page_index_list li a {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #333;
  padding: 2rem;
  box-sizing: border-box;
}

.page_index_list li a:not(:has(p)) {
  justify-content: center;
}

.page_index_list li a .page_index_span {
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  font-weight: 700;
  color: #333;
  box-sizing: border-box;
  width: 100%;
  position: relative;
  text-decoration: underline;
  padding-right: 1.8rem;
}

.page_index_list li a .page_index_span::after {
  content: "";
  position: absolute;
  background-image: url(../images/arrow-index.svg);
  background-repeat: no-repeat;
  width: 1.8rem;
  height: 1.8rem;
  right: 0;
  /* top: 15%; */
}

.page_index_list li a:hover span {
  text-decoration: none;
}

.page_index_list li a p {
  padding-top: 1rem;
  margin-top: 1rem;
  border-top: #008250 dotted 1px;
}

ul.page_index_border {
  padding-left: 0;
  margin-top: 3.6rem;
}

.page_index_border li {
  border-top: #707070 dashed 1px;
  padding: 1rem 1.5rem;
}

.page_index_border li:last-child {
  border-bottom: #707070 dashed 1px;
}

.page_index_border li a {
  box-sizing: border-box;
}

.page_index_border li a:hover {
  text-decoration: none;
}


/* --------------------
  組織からさがす
-------------------- */
.soshiki_index li {
  position: relative;
  padding-right: 20rem;
}

.soshiki_index li .soshiki_page_date {
  position: absolute;
  width: 17.2rem;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  padding-right: 15px;
}



/* ===================================
  子育て情報
=================================== */
#childcare {
  background-color: #FFEFEF;
}

/* --------------------
  キービジュアル
-------------------- */

#childcare .kv_cont {
  overflow: hidden;
  padding: 0 0 60px;
  background-image: none;
  margin-bottom: 0;
}

#childcare .kv_img img {
  aspect-ratio: 16 / 7;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

#childcare_kv .slider-control {
  align-items: center;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100%;
  bottom: -40px;
}

#childcare_kv .slider-control .slide-dots_stop,
#childcare_topics .slider-control .slide-dots_stop {
  margin: 0 0 0 15px;
}

#childcare_kv .slider-control .slide-dots_stop .js-slider-btn,
#childcare_topics .slider-control .slide-dots_stop .js-slider-btn {
  cursor: pointer;
  display: block;
  position: relative;
  padding: 2px 10px 2px 22px;
  border-radius: 3px;
  background-color: #fff;
  color: #26466D;
  border: solid 1px #26466D;
  font-family: 'Kiwi Maru', sans-serif;
  font-weight: 500;
  background-image: url(../images/icon-kv-stop-childcare.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 10px;
}

#childcare_kv .slider-control .slide-dots_stop .js-slider-btn.-stop,
#childcare_topics .slider-control .slide-dots_stop .js-slider-btn.-stop {
  background-image: url(../images/icon-kv-stop-childcare.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 10px;
}

#childcare_kv .slider-control .slide-dots_stop .js-slider-btn.-play,
#childcare_topics .slider-control .slide-dots_stop .js-slider-btn.-play {
  background-image: url(../images/icon-kv-start-childcare.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 10px;
}

#childcare_kv .slide-dots,
#childcare_topics .slide-dots {
  padding: 0;
  text-align: center;
  z-index: 70;
  height: 1.2rem;
}

#childcare_kv .slide-dots li,
#childcare_topics .slide-dots li {
  display: inline-block;
  margin: 0 1rem;
}

#childcare_kv .slide-dots li button,
#childcare_topics .slide-dots li button {
  position: relative;
  text-indent: -9999px;
  width: 100%;
  height: 100%;
  background: none;
  cursor: pointer;
}

#childcare_kv .slide-dots li button:before,
#childcare_topics .slide-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1rem;
  height: 1rem;
  content: "";
  background-color: #fff;
  border: #26466D 1px solid;
  border-radius: 100vh;
}

#childcare_kv .slide-dots li.slick-active button::before,
#childcare_topics .slide-dots li.slick-active button::before {
  background-color: #26466D;
}


/* --------------------
  子育てトピックス
-------------------- */

#childcare .topics_slide {
  margin-bottom: 7rem;
}

#childcare_topics .slick-slide {
  width: 35.2rem;
  margin-right: 4.5rem;
}

#childcare_topics .slick-track {
  display: flex;
  justify-content: center;
  width: 100% !important;
}

#childcare_topics .slick-track.slideFew {
  transform: none !important;
}

#childcare_topics .topics_thum {
  width: 100%;
  height: 100%;
}

#childcare_topics .topics_thum a {
  display: inline-block;
  text-decoration: none;
  color: #26466d;
  font-size: 1.8rem;
  font-family: 'Kiwi Maru', sans-serif;
  font-weight: 500;
  margin-bottom: 1rem;
  width: 100%;
  word-break: break-all;
}

/* #childcare_topics .topics_thum a:hover {
  text-decoration: underline;
} */
#childcare_topics .topics_thum a:hover .text {
  text-decoration: underline;
}

#childcare_topics .topics_thum a .text {
  width: 100%;
}

#childcare_topics .topics_thum .tagBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
}

#childcare_topics .topics_thum .tagBox a.post_tag {
  display: inline;
  font-size: 1.2rem;
  width: auto;
  padding: 4px 15px;
  font-family: 'Zen Maru Gothic', sans-serif;
  letter-spacing: 0em;
  border: solid 2px #26466d;
  background-color: #ffffff;
  border-radius: calc(1.2rem + 4px);
  margin-right: 10px;
}

#childcare_topics .topics_thum .tagBox a.post_tag:hover {
  background-color: #F2F8FF;
}

#childcare_topics .topics_thum .imgBox {
  width: 35.6rem;
  height: 35.8rem;
  margin-bottom: 1.2rem;
  position: relative;
  z-index: 70;
  overflow: hidden;
  mask-image: url(../images/childcare-mask-topics.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 35.6rem;
  -webkit-mask-image: url(../images/childcare-mask-topics.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: top 0 left 0;
  -webkit-mask-size: 35.6rem;
}

#childcare_topics .topics_thum .imgBox .thum-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  mask-image: url(../images/childcare-mask-topics.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  -webkit-mask-image: url(../images/childcare-mask-topics.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: top 3px left 2px;
  -webkit-mask-size: 100%;
  z-index: 120;
  vertical-align: middle;
  position: relative;
  transition: 1s all;
  transform: scale(1, 1);
}

#childcare_topics .topics_thum a:hover .imgBox .thum-img {
  transform: scale(1.1, 1.1);
  /* transition:1s all; */
}

/* #childcare_topics .topics_thum .imgBox .mask-img {
  position: absolute;
  content: "";
  z-index: 80;
  width: 35.4rem;
  height: 35.8rem;
  top: 0;
  left: 0;
  vertical-align: middle;
} */
#childcare_topics .slick-dotted.slick-slider {
  margin-bottom: 10.5rem;
}

#childcare_topics .slider-control {
  align-items: center;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100%;
  bottom: -60px;
}

#childcare_topics .post_date {
  font-size: 1.4rem;
}

.btnBox_like {
  text-align: end;
}

.btn_like {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  display: inline-flex;
  align-items: center;
}

.btn_like svg {
  margin-right: 5px;
}

.btn_like_count {
  font-size: 1.8rem;
  color: #26466D;
  font-weight: 700;
  font-family: 'Quicksand', sans-serif;
}

.btnBox_childcare {
  text-align: center;
}

#childcare_topics .btnBox_childcare {
  margin-top: 10.5rem;
}

.btn_childcare {
  box-sizing: border-box;
  width: 39rem;
  text-align: center;
  padding: 20px 0;
  border-radius: 20px;
  border: solid 2px #26466d;
  background-color: #fff;
  font-family: 'Kiwi Maru', sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  color: #26466d;
  display: inline-block;
  text-decoration: none;
}

.btn_childcare:hover {
  background-color: #F2F8FF;
}


/* --------------------
  目的別～年齢別
-------------------- */

.childcare_top_h2 {
  font-family: 'Kiwi Maru', sans-serif;
  font-size: 2.8rem;
  font-weight: 500;
  color: #26466d;
  padding-left: 6.2rem;
  margin-bottom: 3rem;
}

.childcare_mokuteki {
  margin-bottom: 5.6rem;
}

.childcare_mokuteki .childcare_top_h2 {
  background-image: url(../images/childcare-icon-mokuteki.svg);
  background-repeat: no-repeat;
  background-size: 5rem;
}

.childcare_age .childcare_top_h2 {
  background-image: url(../images/childcare-icon-age.svg);
  background-repeat: no-repeat;
  background-size: 5rem;
}

.childcare_top_btns_lsit {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.childcare_top_btn {
  width: calc((100% - 3rem) / 3);
  height: 12rem;
}

.childcare_top_btn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  border: solid 2px #26466d;
  background-color: #fff;
  font-family: 'Kiwi Maru', sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  color: #26466d;
  text-decoration: none;
  box-sizing: border-box;
}

.childcare_top_btn a:hover {
  background-color: #F2F8FF;
}

.childcare_mokuteki .childcare_top_btn a {
  justify-content: center;
  column-gap: 2rem;
}

.childcare_age .childcare_top_btn a {
  justify-content: start;
  padding-left: 4.5rem;
  column-gap: 2rem;
}

.childcare_age .childcare_top_btn a.maternity {
  column-gap: 4.8rem;
}

.childcare_age .childcare_top_btn a.newborn {
  column-gap: 6rem;
}

.childcare_age {
  margin-bottom: 10rem;
}

/* --------------------
  子育て情報　お知らせ
-------------------- */
.childcare_news .childcare_top_h2 {
  background-image: url(../images/childcare-icon-news.svg);
  background-repeat: no-repeat;
  background-size: 3.8rem 5.2rem;
  padding: 1rem 0 0 6rem;
  margin-bottom: 2.4rem;
}

.childcare_news {
  margin-bottom: 8rem;
}

.childcare_news .news_post_list {
  padding: 2.8rem;
  border-radius: 20px;
  border: solid 4px #fb9d9d;
  background-color: #fff;
  box-sizing: border-box;
}

.childcare_news .news_post_list li a {
  background-color: inherit;
  font-family: 'Kiwi Maru', sans-serif;
  color: #26466D;
}

.childcare_news .news_post_list li:first-child a {
  padding-top: 0;
}

.childcare_news .news_post_list li:last-child {
  border-bottom: none;
}

.childcare_news .news_post_list li:last-child a {
  padding-bottom: 0;
}

.childcare_news .news_post_list li a:hover {
  background-color: inherit;
}

.childcare_news .news_post_list li a .post_date {
  font-family: 'Kiwi Maru', sans-serif;
  color: #26466D;
  font-weight: 500;
}

.childcare_news .rss_btn {
  background-color: #26466D;
}

.childcare_news .post_list_li a .post_cat.post_cat_kosodate-joho {
  font-family: 'Kiwi Maru';
  font-size: 1.4rem;
  font-weight: 500;
  color: #26466d;
  padding: 2px 0;
}

.childcare_news .post_list_li a .post_new,
.childcare_topics_a .post_new {
  font-family: 'Kiwi Maru', sans-serif;
  font-weight: 500;
  color: #ec0000;
  display: inline-block;
  width: fit-content;
}

.childcare_news .list_link {
  background-image: url(../images/arrow-link-childcare.svg);
  background-repeat: no-repeat;
  background-size: 6px 12px;
  background-position: top 55% right 0;
  padding-right: 15px;
}


/* --------------------
  リンク集
-------------------- */

.childcare_link {
  background-color: #fff;
  padding: 5rem 0;
}

.childcare_link .childcare_top_h2 {
  background-image: url(../images/childcare-icon-link.svg);
  background-repeat: no-repeat;
  background-size: 3.8rem 5.2rem;
  padding: 1rem 0 0 6rem;
}

.childcare_link_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 5rem;
  row-gap: 2rem;
}

/* .childcare_link_list li:has(.bnr_shimanepref) {
  height: fit-content;
} */
.childcare_link_list li {
  width: 33rem;
  height: fit-content;
}

.childcare_link_list li a {
  display: inline-block;
  width: 100%;
  height: fit-content;
}

.childcare_link_list li a img {
  width: 100%;
  height: auto;
}


/* --------------------
  子育て情報　トピックス記事一覧
-------------------- */
#pageChild #childcare_topics {
  padding-top: 7.4rem;
  padding-bottom: 10rem;
}

#pageChild.childTopics #container {
  background-color: #fef8f8;
  background-image: url(../images/childcare-bg-topics-L.svg), url(../images/childcare-bg-topics-R.svg);
  background-position: left 5rem top 220px, right 5rem top 220px;
  background-size: 12%;
  background-repeat: no-repeat;
}

#pageChild #childcare_topics .topics_thum {
  width: 29.666%;
  /* width: fit-content; */
  height: 100%;
}

#pageChild #childcare_topics .childcare_topics_thums {
  display: flex;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  column-gap: 6.6rem;
  row-gap: 4rem;
}

#pageChild .article_index_h2 {
  font-family: 'Kiwi Maru', sans-serif;
  font-size: 3.2rem;
  font-weight: 500;
  color: #26466d;
  padding-left: 9.4rem;
  background-image: url(../images/childcare-icon-topics-h2.svg);
  background-repeat: no-repeat;
  background-position: left 0 top 0;
  margin-bottom: 4rem;
  padding-bottom: 0.5rem;
}

.pagination {
  margin-top: 10rem;
}

#pageChild .pagination ul {
  padding-left: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  column-gap: 0.8rem;
}

#pageChild .pagination ul li a {
  display: inline-block;
  border-radius: 8px;
  border: solid 1px #26466d;
  background-color: #fff;
  text-decoration: none;
  position: relative;
  font-weight: 500;
  color: #26466D;
}

#pageChild .pagination ul li a:hover {
  background-color: #FFEEEE;
}

#pageChild .pagination ul li.pagination_num a {
  padding: 1.2rem 1.8rem;
  font-family: 'Quicksand', sans-serif;
}

#pageChild .pagination ul li.pagination_num a.current {
  background-color: #FFEEEE;
}

#pageChild .pagination ul li.pagination_prev a {
  padding: 1.2rem 1.8rem 1.2rem 3.4rem;
  background-image: url(../images/childcare-arrow-pagination-prev.svg);
  background-repeat: no-repeat;
  background-position: left 1.6rem top 50%;
  background-size: 0.8rem 1rem;
  font-family: 'Kiwi Maru', sans-serif;
  font-weight: 500;
}

#pageChild .pagination ul li.pagination_next a {
  padding: 1.2rem 3.4rem 1.2rem 1.8rem;
  background-image: url(../images/childcare-arrow-pagination-next.svg);
  background-repeat: no-repeat;
  background-position: right 1.6rem top 50%;
  background-size: 0.8rem 1rem;
  font-family: 'Kiwi Maru', sans-serif;
  font-weight: 500;
}

/* --------------------
  子育て情報　トピックス記事
-------------------- */
#pageChild #container {
  background-color: #fef8f8;
  position: relative;
}

#pageChild.childArticle #container {
  background-color: #fef8f8;
  background-image: url(../images/childcare-bg-L.svg), url(../images/childcare-bg-R.svg);
  background-position: left 5rem top 500px, right 5rem top 350px;
  background-size: 9%;
  background-repeat: no-repeat;
  padding-top: 7.4rem;
  padding-bottom: 10rem;
  position: relative;
}

#pageChild.childArticle #container::before {
  content: "";
  position: absolute;
  background-image: url(../images/childcare-bg-gaL.svg);
  background-repeat: no-repeat;
  background-size: contain;
  /* width: 30rem; */
  width: 16%;
  /* height: 21rem; */
  height: 60rem;
  top: 0;
  left: 0;
}

#pageChild.childArticle #container::after {
  content: "";
  position: absolute;
  background-image: url(../images/childcare-bg-gaR.svg);
  background-repeat: no-repeat;
  background-size: contain;
  /* width: 30rem; */
  width: 16%;
  height: 60rem;
  top: 0;
  right: 0;
}

#pageChild .page_cont {
  width: 100%;
  padding: 5rem 3rem;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 3rem;
  margin-bottom: 5rem;
}

#pageChild .page_cont h1,
.childcareTop .page_cont h1 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
}

#pageChild .page_cont h1::after,
.childcareTop .page_cont h1::after {
  background-color: #26466d;
}

#pageChild .page_cont h2,
.childcareTop .page_cont h2 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
  background-color: #ffe2d9;
}

#pageChild .page_cont h3,
.childcareTop .page_cont h3 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
}

#pageChild .page_cont h3::before,
.childcareTop .page_cont h3::before {
  background-color: #26466d;
}

#pageChild .page_cont h4,
.childcareTop .page_cont h4 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
  border-top: #26466d dashed 1px;
  border-bottom: #26466d dashed 1px;
}

#pageChild .page_cont h5,
.childcareTop .page_cont h5 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
}

#pageChild .page_cont h6,
.childcareTop .page_cont h6 {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
}

#pageChild .page_cont h6::after,
.childcareTop .page_cont h6::after {
  background-color: #fcc0ad;
}


#pageChild .page_index_list li {
  border: solid 4px #fb9d9d;
  background-color: #fef8f8;
  width: 31.9%;
}

#pageChild .page_index_list li a .page_index_span::after {
  background-image: url(../images/childcare-arrow-index.svg);
}

#pageChild .page_index_list li span {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #26466d;
}

#pageChild .page_index_list li a p {
  border-top: #26466d dotted 1px;
}

/* --------------------
  このページに関するお問い合わせ
-------------------- */

#pageChild .page_contact {
  padding: 30px;
  border-radius: 8px;
  border: solid 4px #fb9d9d;
  width: 70%;
  margin: 0 auto;
}

#pageChild .page_contact .page_contact_h2 {
  border-bottom: 1px dashed #26466d;
  background-color: #fff;
  border-radius: 0;
  padding-bottom: 0.8rem;
}

#pageChild .page_contact dl dt,
#pageChild .page_contact dl dd {
  font-family: 'Zen Maru Gothic', sans-serif;
}



/* ===================================
  緊急時トップページ（簡易版）
=================================== */

#disaster .page_cont {
  width: 100%;
}

.disaster_ttl {
  text-align: center;
  padding: 1.2rem 0;
  background-color: #d91c1c;
  color: #fff;
  font-size: 3.2rem;
  font-weight: 500;
}

.disaster_disc {
  text-align: center;
  font-size: 1.8rem;
  margin: 5rem 0 4.5rem;
}

/* --------------------
  防災・災害情報
-------------------- */

.news_disaster_wrap {
  width: 100%;
  border-radius: 8px;
  background-color: #fcaaaa;
  padding: 0.6rem;
  margin-bottom: 4rem;
  box-sizing: border-box;
}

.news_disaster_cont {
  padding: 3rem 4rem 0 3rem;
  border-radius: 8px;
  background-color: #fff;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.news_disaster_head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
}

.news_disaster_h2 {
  background-image: url(../images/icon-attention-disaster.svg);
  background-repeat: no-repeat;
  background-position: top 50% left 0;
  padding-left: 4.2rem;
  font-size: 2.8rem;
  font-weight: 500;
  color: #d91c1c;
}

.news_disaster_head .rss_btn {
  background-color: #d91c1c;
  padding: 4px 15px 4px 30px;
  margin-right: 1rem;
}

.news_disasiter_li {
  border-top: #777 dashed 1px;
}

.news_disasiter_li a {
  display: inline-flex;
  padding: 1.5rem 0;
  text-decoration: none;
  font-weight: 500;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.news_disaster_date {
  display: inline-block;
  color: #333;
  width: 22%;
}

.news_disaster_ttl {
  display: inline-block;
  text-decoration: underline;
  width: calc(100% - 22%);
}

.news_disasiter_li a:hover .news_disaster_ttl {
  text-decoration: none;
}

/* 災害情報　見出し */

#disaster h1 {
  margin-bottom: 3rem;
}

#disaster h1::after {
  background-color: #252c47;
}

#disaster .page_cont h2 {
  background-color: #E7E7E7;
  margin-bottom: 3rem;
}

#disaster .list_link {
  background-image: url(../images/arrow-disaster.svg);
}

/* 防災メール */
.disaster_mail {
  margin-bottom: 5rem;
}

.page_cont ul.disaster_mail_list {
  list-style: none;
  padding-left: 0;
}

.disaster_mail_li {
  margin-bottom: 2.2rem;
}

.disaster_mail_li:last-child {
  margin-bottom: 3rem;
}

.disaster_mail_btn {
  cursor: pointer;
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0;
  appearance: none;
  padding: 1.5rem 2rem;
  border-radius: 8px;
  background-color: #252c47;
  display: inline-flex;
  flex-direction: column;
  width: 100%;
}

.disaster_mail_date {
  color: #fff;
  font-weight: 500;
  font-size: 1.6rem;
  margin-bottom: 1.2rem;
  text-align: start;
}

.disaster_mail_ttl {
  color: #fff;
  font-weight: 500;
  font-size: 2.2rem;
  text-align: start;
}

.disaster_mail_btn::before,
.disaster_mail_btn::after {
  position: absolute;
  content: '';
  width: 25px;
  height: 2px;
  background-color: #fff;
}

.disaster_mail_btn::before {
  top: 48%;
  right: 15px;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}

.disaster_mail_btn::after {
  top: 48%;
  right: 15px;
  transform: translate(-50%, -50%) rotate(-90deg);
  transition: 0.3s;
}

.disaster_mail_btn.active::after {
  transform: translate(-50%, -50%) rotate(0);
  transition: 0.3s;
}

.disaster_mail_child {
  padding: 2rem 0 1.6rem 1.5rem;
}

#disaster .page_cont .rss_btn {
  background-color: #252c47;
}

.disaster_mail .news_disaster_link {
  text-align: end;
}


/* 災害情報　お知らせ */

.disaster_news {
  margin-bottom: 4rem;
}

.disaster_news .post_list_li {
  border-bottom: #777 1px solid;
}

.disaster_news .post_list_li a {
  background-color: unset;
  padding: 1rem 0;
}

.disaster_news .post_list_li a:hover {
  background-color: unset;
}

#disaster .disaster_news h2 {
  background-color: #E7E7E7;
  margin-bottom: 2rem;
}


/* 災害情報関連リンク */
.disaster_links {
  margin-bottom: 10rem;
}

.page_cont ul.disaster_link_national {
  list-style: none;
  padding-left: 0;
  margin-bottom: 4rem;
}

.disaster_link_national li {
  margin-bottom: 1rem;
}

.disaster_link_national li:last-child {
  margin-bottom: 0;
}

.page_cont ul.disaster_link_national a:hover {
  text-decoration: none;
}

.disaster_link_town {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2rem;
  row-gap: 3rem;
  justify-content: space-between;
}

.link_town {
  width: calc((100% - 4rem) / 3);
}

#disaster .link_town_h3 {
  border-radius: 8px;
  background-color: #252c47;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  padding: 1.5rem 0;
  text-align: center;
  margin-bottom: 2.5rem;
}

#disaster h3.link_town_h3::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-radius: 0;
  background-color: unset;
}

.page_cont ul.links_town_list {
  list-style: none;
  padding-left: 0;
}

.links_town_list li {
  margin-bottom: 1rem;
}

.links_town_list li:last-child {
  margin-bottom: 0;
}

.target_blank {
  background-image: url(../images/icon-blank.svg);
  background-repeat: no-repeat;
  background-position: right 0 top 50%;
  padding-right: 1.8rem;
}

.links_town_list li a:hover {
  text-decoration: none;
}


/* 404ページ */

.p_error {
  margin-top: 6rem;
  text-align: center;
}

.btnBox:has(.btn-yellow) {
  margin-top: 6rem;
  text-align: center;
}

.btn-yellow {
  background-color: #FBEBA1;
  padding: 1.5rem;
  min-width: 25rem;
  border-radius: 8px;
  display: inline-block;
  text-align: center;
  color: #333;
  font-weight: 500;
  text-decoration: none;
}

.btn-yellow:hover {
  background-color: #FBE687;
}

/* 緊急時トップページ　ヘッダー */

/* 多言語翻訳ボタン */
/* #disaster .header_support_btn_txt.header_support_lang button {
  text-decoration: none;
  font-weight: 500;
  background-color: #333;
  color: #fff;
} */
#disaster .header_support_lang {
  /* position: relative; */
  width: 122px;
  /* z-index: 100; */
}

#disaster #language-select-wrapper {
  width: 122px;
  height: auto;
}

#disaster .top_link_ordinaryBox {
  text-align: end;
  margin-bottom: 2rem;
}

#disaster .top_link_ordinary {
  font-size: 2.2rem;
  font-weight: 500;
  display: inline-block;
}

#disaster .header_support_list {
  font-size: 1.6rem;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: end;
  margin-bottom: 0;
  flex-wrap: wrap;
  row-gap: 1rem;
  flex-direction: column;
}

#disaster #___gcse_0 {
  width: 34.5rem;
}

#disaster .header_logo {
  top: 7rem;
}

#disaster .header_support_list {
  display: flex;
  margin-bottom: 1.4rem;
  flex-direction: row;
  justify-content: end;
  column-gap: 2rem;
  align-items: center;
}

#disaster .header_support_search {
  display: flex;
  justify-content: end;
  width: 100%;
}

/* 緊急時トップページ　フッター */

#disaster #footer {
  background-color: unset;
  border-top: #000 1px solid;
}

#disaster .footer_cont {
  display: flex;
  justify-content: space-between;
}

#disaster .footer_address {
  line-height: 2;
}

#disaster .footer_copy {
  color: #333;
  background-color: unset;
}



/* 文字拡大ボタン押した時 */

/* ヘッダー */
body.font_large .header_support_list {
  column-gap: 1.8rem;
  justify-content: flex-end;
}

body.font_large .header_gnav .header_gnav_list {
  width: 100%;
}

body.font_large .header_logo {
  bottom: 8rem;
}

body.font_large .serach_key_cal .search_h2::before,
body.font_large .serach_key_cal .search_h2::after {
  width: 0;
  height: 0;
}

/* 重要なお知らせ */
body.font_large .news_imp_li_a {
  display: inline-flex;
  flex-direction: column;
}

body.font_large .news_imp_li_a>span {
  width: 100%;
  margin-bottom: 1rem;
}

body.font_large .news_imp_li_a>span:last-child {
  margin-bottom: 0;
}





/* --------------------
  ご意見・お問い合わせ
-------------------- */
.form_table {
  margin-bottom: 50px;
}

.form_table_tr {
  border-top: 1px dashed #707070;
  width: 100%;
  display: flex;
}

.form_table_tr:last-child {
  border-bottom: 1px dashed #707070;
}

.form_table_th {
  font-weight: 700;
  padding: 2rem 1.2rem;
  background-color: #efefef;
  width: 40%;
  text-align: start;
  box-sizing: border-box;
}

.form_hissu,
.form_ninni {
  display: inline-block;
  color: #fff;
  font-weight: 700;
  padding: 2px 9px;
  border-radius: 4px;
  font-size: 1.2rem;
}

.form_hissu {
  background-color: #DF0505;
}

.form_ninni {
  background-color: #333;
}

.form_table_td {
  padding: 1rem;
  background: #fff;
  width: 60%;
  padding: 2rem 0 2rem 2rem;
}

.form_input {
  height: 45px;
  width: 100%;
  border-radius: 8px;
  border: 1px solid #707070;
  padding: 5px;
  box-sizing: border-box;
}

.form_table_td>p {
  margin-bottom: 0;
}

.form_table fieldset {
  padding: 0;
  border: none;
}

.form_select {
  height: 45px;
  border-radius: 8px;
  border: 1px solid #707070;
  background-color: #fff;
  padding: 5px;
  box-sizing: border-box;
}

.label_input_box {
  margin-bottom: 1.6rem;
}

.label_input_box:last-child {
  margin-bottom: 0;
}

.form_table {
  display: block;
  width: 100% !important;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 1em;
  border: none;
}

.form_table_body {
  display: block;
  width: 100%;
}

.form_table_td textarea.form_input {
  width: 100% !important;
  height: auto;
}

.privacy-check label input {
  visibility: hidden;
  position: absolute;
  z-index: -1;
}

.privacy-check label span.checkbox {
  display: inline-block;
  margin-right: 20px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background-color: #f6f6f6;
  border: solid 1px #999;
  position: relative;
  vertical-align: middle;
}

.form_table_td_privacy {
  display: inline-block;
  margin-top: 1rem;
}

/* .form_input_error {
  font-weight: 500;
  color: #E64700;
} */
.form-control-feedback {
  font-weight: 500;
  color: #DF0505;
}

.form_btnBox {
  margin-top: 50px;
  display: flex;
  justify-content: center;
  column-gap: 2rem;
}

.form_btn {
  cursor: pointer;
  width: 25rem;
  padding: 1.5rem 0;
  border-radius: 8px;
  background-color: #FBEBA1;
  font-weight: 500;
}

.form_btn:hover {
  background-color: #FDE57B;
}


/* ノートパソコン */
@media screen and (max-width: 1600px) {

  /* .header_logo {
    top: 17rem;
  } */
  /* .header_support_list li:last-child {
    margin-left: auto;
    margin-right: 0;
  } */

  .header_support_list {
    justify-content: flex-end;
    flex-direction: row;
    column-gap: 5.5rem !important;
    width: 100%;
  }
  .disaster_top .header_support_list {
    justify-content: flex-end;
    flex-direction: row;
    column-gap: 1rem !important;
    width: 100%;
  }
  /* .header_support_list {
    justify-content: flex-end;
    flex-direction: row;
    column-gap: 1.5rem;
    width: 100%;
  } */
  .header_gnav .header_gnav_list {
    width: fit-content;
    justify-content: flex-end;
  }

  .header_gnav_list>li {
    width: 180px;
  }
  body.font_large .header_logo {
    bottom: 0;
  }
  body.font_large .header_support_list {
    justify-content: flex-end;
    column-gap: 1.5rem;
    width: 100%;
  }

  body.font_large .header_support_list li:last-child {
    margin-left: 0;
    margin-right: 0;
  }


  #disaster .header_support_list li:last-child {
    margin-left: 0;
    margin-right: 0;
  }
}

/* @media screen and (max-width: 1440px) {
  .header_support_list li:last-child {
    margin-left: auto;
    margin-right: 0;
  }
  .header_support_list {
    justify-content: flex-end;
    flex-direction: row-reverse;
    column-gap: 2.5rem;
    width: 100%;
  }
  body.font_large .header_support_list {
    justify-content: flex-end;
    column-gap: 1.5rem;
    width: 100%;
  }
  body.font_large .header_support_list li:last-child {
    margin-left: 0;
    margin-right: 0;
  }
  .header_logo {
    top: 12rem;
  }
  #disaster .header_support_list li:last-child {
    margin-left: 0;
    margin-right: 0;
  }
} */


@media screen and (max-width:1024px) {
  #childcare_topics .slick-slide {
    width: 25.4rem;
    margin-right: 4.5rem;
  }
}



@media screen and (max-width:1024px) {

  body {
    min-width: auto;
  }


  .pc_only {
    display: none;
  }

  .sp_only {
    display: block;
  }

  #header {
    position: relative;
    padding: 0;
    height: 8.5rem;
  }

  #header.is-open {
    background-color: #faf8f4;
  }

  .wrapper {
    max-width: 100%;
    padding: 0 15px;
  }
  #header.is-open .wrapper {
    position: unset;
  }
  .inner {
    max-width: 100%;
    padding: 0 30px;
  }

  .inner_in {
    max-width: 100%;
  }

  /* ヘッダー */
  /* グローバルナビゲーション */

  #header #gnav {
    display: none;
  }

  #header.is-open {
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    overflow-y: auto;
  }

  #header.is-open #gnav {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 19.5rem;
    position: relative;
  }

  #disaster #header.is-open .inner {
    padding: 0 1.5rem;
  }

  #disaster #header.is-open .header_support_search {
    top: -8rem;
  }

  /*SP_メニュー開閉ボタン*/
  .hamburger {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 110;
  }

  .hamburger.is-active {
    display: block;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 110;
  }

  .hamburger_btn {
    width: 5.5rem;
    height: 5.5rem;
    padding: 0 0.4rem 0.5rem;
    border-radius: 5px;
    border: solid 1px #008250;
    background-color: #fff;
    position: relative;
    transition: .5s;
  }

  .hamburger_btn::after {
    font-size: 1.2rem;
    display: block;
    position: absolute;
    text-align: center;
    left: 0.2rem;
    top: 3.4rem;
    content: "メニュー";
    font-size: 1.2rem;
    font-weight: 500;
    color: #333;
  }

  /*SP_メニュー開閉ボタン　アニメーション*/
  .hamburger_line,
  .hamburger_line::before,
  .hamburger_line::after {
    position: absolute;
    display: block;
    width: 3rem;
    height: 2px;
    background-color: #008250;
    left: calc(50% - 1.5rem);
    transition: .25s;
  }

  .hamburger_line {
    top: 2rem;
  }

  .hamburger_line::before {
    content: "";
    top: -0.8rem;
  }

  .hamburger_line::after {
    content: "";
    top: 0.8rem;
  }

  .hamburger.is-active .hamburger_line {
    background-color: transparent;
    top: 2.8rem;
  }

  .hamburger.is-active .hamburger_line::before,
  .hamburger.is-active .hamburger_line::after {
    top: -1rem;
  }

  .hamburger.is-active .hamburger_line::before {
    transform: rotate(45deg);
  }

  .hamburger.is-active .hamburger_line::after {
    transform: rotate(-45deg);
  }



  /* 支援機能 */
  /*PC ヘッダー検索窓*/
  .header_support_search {
    position: absolute;
    top: -8rem;
    width: 100%;
  }

  .gnav_search {
    width: 100%;
  }

  .gnav_search_input {
    box-sizing: border-box;
    width: calc(100% - 8.5rem);
    padding: 1rem 1.5rem;
  }

  .gnav_search_submit {
    width: 8.5rem;
    padding: 1rem;
  }

  .gnav_search_reset {
    display: block;
    width: 4.2rem;
    height: 3rem;
    border: none;
    background-color: transparent;
    position: absolute;
    left: calc(100% - (1.6rem * 2.5) - 2rem - 4.2rem - 1rem);
    font-size: 1.8rem;
    background-image: url(../images/search_reset.svg);
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    line-height: 1;
  }

  .search_reset {
    opacity: 0;
    transition: .5s;
  }

  .search_reset.is-input {
    opacity: 1;
  }

  .header_support_list {
    flex-direction: column;
    align-items: start;
    row-gap: 3.5rem;
    margin-bottom: 16rem;
  }
  .disaster_top .header_support_list {
    flex-direction: column;
  }
  .header_gnav {
    flex-direction: column;
  }

  .header_gnav .header_gnav_list {
    flex-direction: column;
    width: 100%;
    margin-bottom: 5rem;
  }

  .header_gnav_list>li {
    padding: 0;
    width: 100%;
    text-align: start;
    border-top: #707070 dotted 2px;
  }

  .header_gnav_list>li:last-child {
    border-bottom: #707070 dotted 2px;
  }

  .header_gnav_list>li::after {
    right: 10px;
    top: 41%;
    height: 1rem;
    width: 1rem;
    background-image: url(../images/arrow-ham.svg);
    background-repeat: no-repeat;
    background-color: unset;
    border-radius: 0;
  }

  .header_gnav_list>li:first-child:before {
    display: none;
  }

  .header_gnav_list a {
    font-weight: 500;
    font-size: 2rem;
    padding: 2rem 1rem;
    text-align: start;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
  }

  .header_gnav_list>li a:hover {
    border-bottom: none;
  }

  .gnav_linkBox {
    text-align: start;
  }

  /* 多言語翻訳 */
  #language-select-wrapper {
    position: relative;
    top: 0;
    left: 0;
  }

  .header_logo {
    position: absolute;
    top: 2.5rem !important;
    left: 1.5rem;
    z-index: 110;
  }

  .header_logo_link {
    width: 14rem;
    height: auto;
  }



  /* フッター */

  #footer .inner {
    max-width: 100%;
    padding: 0 1.5rem;
  }

  #govTop .footer_ilust {
    height: 516px;
  }

  #govTop .footer_ilust img {
    height: 100%;
    object-fit: cover;
    object-position: -350px -0;
  }

  .footer_cont {
    padding: 50px 0;
    flex-direction: column;
  }

  .footer_town_info {
    text-align: center;
    margin-bottom: 36px;
  }

  .footer_town_info .footer_logo {
    width: 18rem;
    margin: 0 auto 1.5rem;
  }

  .footer_town_info .footer_logo_link {
    width: 18rem;
    margin-bottom: 15px;
  }

  .footer_town_info .footer_address {
    line-height: 1.8;
  }

  .footer_link {
    display: flex;
    flex-direction: column-reverse;
  }

  .footer_link .footer_link_txt {
    margin-bottom: 0;
    flex-direction: column;
  }

  .footer_link .footer_link_txt li {
    border-left: none;
    padding: 0;
    text-align: center;
    margin-bottom: 15px;
  }

  .footer_link .footer_link_txt li:last-child {
    border-right: none;
  }

  .footer_link .footer_link_txt a {
    color: #008250;
  }

  .footer_link_btn {
    margin-bottom: 30px;
  }

  .footer_link_contact {
    margin-bottom: 16px;
  }

  .footer_link_contactBtn {
    background-position: top 26px left 36px;
    background-size: 30px;
    padding: 23px 0;
    width: 100%;
    font-size: 2rem;
  }

  .footer_link_facilityBtn {
    font-size: 1.8rem;
    width: calc((100% / 2) - 7px);
    padding: 16px 0;
  }

  .footer_link_contactBtn:hover,
  .footer_link_facilityBtn:hover {
    background-color: #F8FFF8;
    text-decoration: underline;
  }

  .footer_copy {
    text-align: center;
    background-color: #008250;
    padding: 10px 0;
    color: #fff;
  }

  .pagetop {
    bottom: 62px;
    right: 15px;
  }

  /* キービジュアル */
  .kv_cont {
    padding: 30px 0 10px;
    background-size: cover;
    /* margin-bottom: 16px; */
  }

  #kv .slick-slide {
    margin: 8px;
  }

  #kv .kv_imgs .slick-arrow.slide_next {
    background-size: contain;
    right: 14px;
  }

  #kv .kv_imgs .slick-arrow.slide_prev {
    background-size: contain;
    left: 14px;
  }

  #kv .kv_imgs .slick-arrow {
    height: 30px;
    width: 30px;
    top: 50%;
    transform: translateY(-50%);
  }

  #kv .slide-dots li button:before,
  #bnr .slide-dots li button:before {
    width: 10px;
    height: 10px;
  }

  #kv .slide-dots li,
  #bnr .slide-dots li {
    margin: 0 5px;
    height: 14px;
    width: 14px;
  }

  #kv .slide-dots,
  #bnr .slide-dots {
    height: 14px;
  }

  #kv .slider-control .slide-dots_stop .js-slider-btn,
  #bnr .slider-control .slide-dots_stop .js-slider-btn {
    font-size: 1.4rem;
    padding: 4px 8px 4px 22px;
    background-position: top 50% left 10px;
  }

  .slider-control {
    align-items: center;
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100%;
  }

  #kv .slider-control {
    bottom: -25px;
  }


  /* キービジュアル下バナーエリア */
  #bnr {
    max-width: 100%;
    padding: 0;
  }

  .bnr_cont {
    padding-top: 40px;
    margin-bottom: 60px;
    padding-bottom: 40px;
    /* background-color: #e9f2ed; */
  }

  .bnr_cont:has(.slider-control) {
    padding-top: 40px;
    margin-bottom: 60px;
    padding-bottom: 50px;
    /* background-color: #FAF8F4; */
  }

  /* .bnr_cont {
  margin-bottom: 92px;
} */
  #bnr .bnr_imgs .slick-arrow {
    width: 20px;
  }

  #bnr .bnr_imgs .slick-arrow.slide_next {
    background-size: 7px 14px;
    right: 50px;
  }

  #bnr .bnr_imgs .slick-arrow.slide_prev {
    background-size: 7px 14px;
    left: 50px;
  }

  #bnr .slick-list {
    max-width: 100%;
  }

  #bnr .slick-slide {
    margin: 0 20px;
  }

  #bnr .slider-control {
    bottom: -40px;
  }

  /* 重要なお知らせ */
  #news_imp {
    margin-bottom: 50px;
  }

  #news_imp .rss_btn {
    margin: 0 10px 0 0;
  }

  .rss_btn {
    padding: 4px 6px 4px 28px;
    font-size: 12px;
    background-size: 10px;
  }

  .news_imp_head {
    margin-bottom: 25px;
    flex-direction: column;
  }

  .news_imp_h2 {
    font-size: 2.4rem;
    padding-left: 35px;
    background-size: 25px;
    margin-bottom: 10px;
  }

  .news_imp_cont {
    padding: 22px 15px 15px;
    border-radius: 6px;
  }

  .news_imp_none {
    padding: 0 1rem 3rem;
  }

  /* .news_imp_li {
  padding: 10px 0;
} */
  .news_imp_li a {
    display: inline-flex;
    flex-direction: column;
    text-decoration: none;
  }

  .news_imp_li .news_imp_date {
    width: 100%;
    margin-bottom: 5px;
  }

  /* .news_imp_li .news_imp_ttl {
  width: 100%;
} */
  .news_imp_li_a .news_imp_ttlBox {
    width: 100%;
  }

  /* いざという時に */
  #emgcy {
    margin-bottom: 50px;
  }

  .emgcy_cont {
    flex-direction: column;
  }

  .emgcy_h2_box {
    width: 100%;
    box-sizing: border-box;
    padding: 16px;
    border-radius: 8px 8px 0 0;
  }

  .emgcy_h2 {
    font-size: 1.8rem;
    background-position: top 50% left 0;
    background-size: 20px 18px;
    padding-left: 30px;
  }

  .emgcy_ul {
    flex-direction: column;
    width: 100%;
  }

  .emgcy_li {
    width: 100%;
    box-sizing: border-box;
    border-top: none;
    border-right: solid 2px #008250;
    border-bottom: solid 2px #008250;
    border-left: solid 2px #008250;
  }

  .emgcy_li:last-child {
    border-radius: 0 0 8px 8px;
  }

  .emgcy_li a {
    padding: 16px;
    font-size: 1.6rem;
  }

  .emgcy_li.mail a {
    background-position: top 50% left 16px;
    background-size: 28px;
    padding-right: 16px;
    padding-left: 66px;
  }

  .emgcy_li.info a {
    background-position: top 50% left 16px;
    background-size: 28px;
    padding-right: 16px;
    padding-left: 66px;
  }

  .emgcy_li.medical a {
    background-position: top 50% left 16px;
    background-size: 30px;
    padding-right: 16px;
    padding-left: 66px;
  }

  .emgcy_li.safety a {
    background-position: top 44% left 16px;
    background-size: 30px;
    padding-right: 16px;
    padding-left: 66px;
  }


  /* キーワード検索　イベントカレンダー */
  #search {
    padding: 36px 0 50px;
  }

  .serach_key_cal {
    margin-bottom: 50px;
    flex-direction: column;
  }

  .search_key {
    width: 100%;
    margin-bottom: 55px;
  }

  .search_cal {
    width: 100%;
  }

  .search_key .search_h2 {
    margin-bottom: 25px;
    padding-top: 30px;
    background-size: 25px;
    font-size: 2.4rem;
  }

  .search_key .search_h2::before {
    width: 60px;
    left: 0;
  }

  .search_key .search_h2::after {
    width: 60px;
    right: 0;
  }

  #search button.gsc-search-button-v2 {
    height: 100%;
    width: 84px;
    font-size: 2rem;
    border-radius: 0 8px 8px 0;
  }

  #search .gnav_search {
    margin-bottom: 17px;
  }

  #search .gsc-input {
    width: calc(100% - 84px);
    height: 37px;
    border-radius: 8px 0 0 8px;
  }

  #search .gnav_search_submit {
    width: 84px;
    height: 37px;
    font-size: 1.8rem;
    border-radius: 0 8px 8px 0;
    padding: 0;
  }

  .search_key .freq_ul {
    margin-bottom: 34px;
  }

  .search_key_freq {
    font-size: 1.6rem;
  }

  .search_btns {
    row-gap: 15px;
    flex-direction: column;
  }

  .search_btn a {
    padding: 20px 20px;
  }

  /* イベントカレンダー */
  .search_cal .search_h2 {
    margin-bottom: 24px;
    padding-top: 35px;
    background-size: 30px;
    font-size: 2.4rem;
  }

  .search_cal .search_h2::before {
    left: 0;
  }

  .search_cal .search_h2::after {
    right: 0;
  }

  .cal_head {
    margin-bottom: 24px;
  }

  .cal_h3 {
    font-weight: 500;
  }

  .calendar tr td {
    height: 40px;
  }

  .search_cal .list_link {
    font-size: 1.6rem;
    background-size: 8px 16px;
  }


  /* 生活の場面からさがす */
  .search_life_event .search_h2 {
    font-size: 2.4rem;
    margin-bottom: 30px;
    padding-top: 30px;
    background-size: 30px;
  }

  .life_event_ul {
    column-gap: 15px;
  }

  .life_event_ul .life_event_li {
    width: calc(100% / 2.12);
  }

  .life_event_ul .life_event_li .life_event_link {
    padding: 1.5rem 0.6rem;
    font-size: 1.6rem;
    letter-spacing: 0;
  }


  /* お知らせ */
  .news_h2_box .news_h2 {
    font-size: 2.4rem;
    padding-top: 3.2rem;
    background-size: 2.5rem;
  }

  /* .news_tab .news_tab_li {
  width: calc(100% / 3.015);
} */
  .news_tab_btn {
    padding: 0.8rem 0;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }

  .post_list_li a {
    padding: 1.7rem 0;
  }

  .post_list_li:first-child a {
    padding: 2.4rem 0 1.7rem;
  }

  /* .news_post_list .post_date_catBox {
  flex-direction: flex;
  align-items: start;
} */
  .news_post_list .post_date_catBox:has(.post_cat:nth-last-child(n+2)) {
    flex-direction: column;
    align-items: start;
    row-gap: 0.5rem;
  }

  /* ピックアップ情報 */
  #pickup {
    padding: 5rem 0;
  }

  .pickup_h2_box {
    width: 100%;
    margin-bottom: 3rem;
  }

  .pickup_h2 {
    font-size: 2.2rem;
  }

  .pickup_h2_box::before {
    background-size: contain;
    width: 10.8rem;
    height: 3.1rem;
    top: 0.4rem;
  }

  .pickup_btns {
    flex-direction: column;
    margin-bottom: 2.2rem;
    row-gap: 0;
  }

  .pickup_btns_box {
    width: 100%;
  }

  .pickup_btns .pickup_btn_botm {
    flex-direction: column;
  }

  .pickup_btn_botm .pickup_btn {
    width: 100%;
  }

  .pickup_btn {
    margin-bottom: 2.6rem;
  }

  .pickup_btn a {
    font-size: 1.8rem;
  }

  .pickup_btn a.pickup_btn_chouchou {
    background-position: bottom -10px right -10px;
    background-size: 72px;
    height: 90px;
  }

  .pickup_btn a.pickup_btn_kouhou {
    background-position: bottom -10px right -10px;
    background-size: 72px;
    height: 150px;
    margin-bottom: 0;
  }

  .pickup_btn .pickup_btn_txt {
    text-align: start;
    padding-left: 20px;
  }

  .pickup_btn_top {
    margin-bottom: 26px;
  }

  .pickup_btn a.pickup_btn_about {
    background-position: bottom -10px right -10px;
    background-size: 72px;
    height: 90px;
  }

  .pickup_h3_sub {
    padding: 0 22px;
    font-size: 1.4rem;
  }

  .pickup_h3_sub::before {
    top: 0;
  }

  .pickup_h3_sub::after {
    top: 0;
  }

  .pickup_h3_ttl {
    font-size: 2.8rem;
  }

  .sns_btns {
    row-gap: 20px;
  }

  .sns_btn,
  .sns_btn a,
  .sns_btn a img {
    width: 100%;
    box-sizing: border-box;
  }

  /* 広告バナー */
  .ad_h2 {
    font-size: 2.4rem;
    margin: 0 auto 35px;
  }


  /* ===================================
  行政　下層ページ
=================================== */

  /* イベントカレンダー */
  .calendar-event.fc-direction-ltr {
    padding-top: 0;
  }

  /* リスト形式 */

  .fc-direction-ltr .fc-list-day-text,
  .fc-direction-rtl .fc-list-day-side-text {
    width: 100%;
  }

  .fc-list-day-side-text {
    margin-left: 0;
  }

  /* 表形式 */
  .calendar-event.fc .fc-daygrid-event-harness .fc-event-title {
    font-size: .75em;
  }

  .calendar-event.fc .fc-toolbar.fc-header-toolbar {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 35px;
    position: relative;
  }

  .calendar-event.fc .fc-button-primary {
    font-size: .875em;
    padding: 4px 0;
    width: 80px;
  }

  /* .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(1) {
  bottom: 0;
  left: 0;
  position: absolute;
} */
  .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(1) .fc-button-group>.fc-button:last-child {
    position: absolute;
    bottom: 0;
    left: 0;
  }

  .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(1) .fc-button-group>.fc-button:not(:last-child) {
    width: max-content;
    position: absolute;
    right: 0;
    bottom: 0;
    margin: 0 0 0 auto;
  }

  .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(2) {
    width: 100%;
  }

  .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(3) {
    bottom: 0;
    position: absolute;
    right: 0;
  }

  .calendar-event.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child) {
    margin-left: 5px;
  }

  .calendar-event.fc .fc-toolbar-title {
    text-align: center;
  }

  .calendar-event.fc .fc-daygrid-day-number {
    padding: 0.4rem 0;
    font-size: .875em;
    /* font-family: "Noto Sans JP",sans-serif; */
    letter-spacing: 1;
  }

  .calendar-event.fc .fc-daygrid-day-top {
    justify-content: center;
    margin: 0;
  }

  .calendar-event.fc .fc-scrollgrid-sync-table tr td {
    font-weight: 400;
  }

  .calendar-event.fc .fc-button-group {
    column-gap: 0;
  }

  .calendar-event.fc .fc-button.fc-today-button {
    padding: 0 1rem;
  }

  .calendar-event.fc .fc-col-header-cell-cushion {
    font-size: .875em;
  }

  .calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button,
  .calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button {
    display: block;
    width: max-content;
    color: #0000EE !important;
    text-decoration: underline;
    letter-spacing: 0.1em;
    background: none !important;
    padding: 0 0 0 2.7rem;
    position: absolute;
    top: -80px;
    left: 0;
  }

  /* --------------------
  パンくずリスト
-------------------- */
  .breadcrumb {
    padding: 10px 0;
  }

  .breadcrumb ol li p {
    background-color: #008250;
    padding: 4px 8px;
    margin-right: 10px;
  }

  .breadcrumb ol li {
    font-size: 1.4rem;
  }


  /* --------------------
  コンテンツ - サイドメニュー
-------------------- */

  .cont_aside {
    padding-top: 5rem;
    padding-bottom: 8rem;
    flex-direction: column;
  }

  .page_cont {
    width: 100%;
    margin-bottom: 80px;
  }

  .page_aside {
    width: 100%;
  }



  /* --------------------
  見出し
-------------------- */

  .page_cont h1 {
    font-size: 2.8rem;
    padding-bottom: 8px;
    padding-left: 10px;
  }

  .page_cont h2 {
    margin-bottom: 1.5rem;
  }

  .page_cont h3 {
    margin-bottom: 1.5rem;
  }

  /* --------------------
  リスト
-------------------- */
  .page_cont ul {
    padding-left: 0;
  }

  .page_cont ol {
    padding-left: 0;
  }

  /* --------------------
  テーブル
-------------------- */
  .page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table).scroll {
    overflow-x: auto;
  }

  .page_cont table:not(.calendar-event table, .gsc-above-wrapper-area-container, .form_table) tbody {
    width: max-content;
  }

  /* --------------------
  関連するリンク
-------------------- */
  .relation_link {
    margin-bottom: 5rem;
  }

  .relation_link_h2_box {
    padding-left: 0;
    box-sizing: border-box;
  }

  .page_cont .relation_link_h2 {
    padding: 10px 36px;
    border-radius: 8px;
    background-color: #fbeba1;
    font-size: 2rem;
    position: relative;
    box-sizing: border-box;
  }

  .page_cont .relation_link_h2::after {
    position: absolute;
    content: "";
    width: 1.4rem;
    height: 1.4rem;
    background-color: #fff;
    border-radius: 100vh;
    top: 50%;
    transform: translateY(-50%);
    left: 1rem;
    z-index: 50;
  }

  .page_cont .relation_link_h2_box::before {
    position: absolute;
    content: "";
    background-image: url(../images/deco-relation-link.svg);
    background-position: top 50% left 0;
    background-repeat: no-repeat;
    width: 4rem;
    height: 14rem;
    top: 50%;
    transform: translateY(-50%);
    left: -1.4rem;
    z-index: 60;
  }

  .page_cont ul.relation_link_list {
    list-style: none;
  }

  .page_cont ul.relation_link_list li {
    position: relative;
    padding-left: 2rem;
    margin-bottom: 1rem;
  }

  .page_cont ul.relation_link_list li:last-child {
    margin-bottom: none;
  }

  .page_cont ul.relation_link_list li::before {
    content: "";
    position: absolute;
    background-image: url(../images/arrow-relation-link.svg);
    background-repeat: no-repeat;
    width: 1.2rem;
    height: 1.6rem;
    top: 1.2rem;
    transform: translateY(-50%);
    left: 0;
  }

  .page_cont ul.relation_link_list li a:hover {
    text-decoration: none;
  }


  /* --------------------
  このページに関するお問い合わせ
-------------------- */

  .page_contact {
    padding: 2rem 1.4rem 3rem;
    border-radius: 8px;
    border: solid 4px #008250;
  }

  .page_contact .page_contact_h2 {
    font-size: 1.8rem;
    font-weight: 700;
    padding-bottom: 1.4rem;
    padding-top: 0;
    border-bottom: 1px dashed #008250;
    background-color: #fff;
    border-radius: 0;
    letter-spacing: 0;
    padding: 0 0 0.8rem;
    margin-bottom: 2rem;
    text-align: center;
  }

  .page_contact dl dt {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 0.7rem;
  }

  .page_contact dl dd ul {
    margin-bottom: 1.5rem;
    list-style: none;
    padding: 0;
  }

  .page_contact dl dd .contact_link {
    display: inline-block;
    padding-left: 0;
  }

  .page_contact dl dd .contact_link img {
    display: inline-block;
    width: 2.6rem;
  }

  /* --------------------
  新着情報一覧（下層）
-------------------- */
  #page #container .post_list_li:first-child a {
    padding: 17px 0;
  }

  /* --------------------
  ページネーション
-------------------- */

  .pagination {
    margin-top: 5rem;
  }

  .page_cont .pagination ul,
  #pageChild .pagination ul {
    flex-wrap: wrap;
    row-gap: 0.8rem;
  }

  .page_cont .pagination ul li.pagination_prev a,
  .page_cont .pagination ul li.pagination_next a,
  #pageChild .pagination ul li.pagination_prev a,
  #pageChild .pagination ul li.pagination_next a {
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0.8rem 1rem;
    font-size: 0;
    padding: 2.4rem 2rem;
  }


  /* --------------------
  日付 - SNSシェア - 印刷
-------------------- */

  .page_info {
    margin-bottom: 30px;
    flex-direction: column;
    row-gap: 1rem;
  }

  .page_cont .page_info .post_date_catBox {
    flex-direction: unset;
    width: 100%;
  }

  /* .page_cont .page_info .post_date_catBox {
  width: 100%;
} */
  #page .page_share_print {
    width: 100%;
  }

  .post_cat_ul {
    margin-bottom: 0;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  #pageChild .tagBox {
    margin-top: 0;
  }

  /* --------------------
  サイドメニュー
-------------------- */

  .page_aside_list {
    margin-bottom: 37px;
  }

  /* --------------------
  コンテンツ
-------------------- */

  .page_free {
    margin-bottom: 40px;
  }

  .page_free p {
    margin-bottom: 1em;
  }

  /* --------------------
  目次メニュー
-------------------- */

  .page_index_list {
    row-gap: 20px;
  }

  .page_index_list li {
    width: 100%;
  }

  .page_index_list li a {
    width: 100%;
  }

  #pageChild .page_index_list li {
    width: 100%;
  }

  #pageChild .page_index_list li span {
    color: #26466d;
  }

  /* --------------------
  組織からさがす
-------------------- */
  .soshiki_index li {
    padding-right: 0;
  }

  .soshiki_index li .soshiki_page_date {
    position: relative;
    display: inline-block;
    width: 100%;
    transform: unset;
    -webkit-transform: unset;
    padding-right: 0;
    margin-top: 5px;
  }

  /* ===================================
  子育て情報　トップ
=================================== */

  #childcare #header {
    background-color: #fff;
  }

  #childcare #header.is-open {
    background-color: #faf8f4;
  }

  /* --------------------
  キービジュアル
-------------------- */

  #childcare .kv_cont {
    padding: 0 0 60px;
    background-image: none;
    margin-bottom: 0;
  }

  #childcare .kv_img img {
    aspect-ratio: 25 / 34;
    width: 100%;
    /* height: 58vh; */
    object-fit: cover;
    border-radius: 0;
  }


  #pageChild.childTopics #container {
    background-image: none;
    background-position: left 5rem top 220px, right 5rem top 220px;
    background-size: 12%;
    background-repeat: no-repeat;
  }

  #childcare_topics .topics_thum a {
    font-size: 1.6rem;
  }

  #childcare_topics .slick-slide {
    width: 25.4rem;
    margin-right: 4.5rem;
  }

  #childcare_topics .slick-track.slideFew .slick-slide:last-child {
    /* width: 25.4rem; */
    margin-right: 0;
  }

  #childcare_topics .topics_thum .imgBox {
    mask-image: unset;
    -webkit-mask-image: unset;
  }

  #childcare_topics .topics_thum .imgBox {
    width: 25.4rem;
    height: 26.8rem;
    margin-bottom: 0.8rem;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
  }

  #childcare #childcare_topics .topics_thum .imgBox .thum-img {
    width: 25rem;
    height: 26.4rem;
    mask-size: 24.8rem;
    -webkit-mask-size: 24.8rem;
  }

  #childcare_topics .topics_thum .imgBox .mask-img {
    width: 25.4rem;
    height: 26.8rem;
    top: -6px;
    left: 1px;
  }

  .btnBox_childcare {
    padding: 0 30px;
  }

  .btn_childcare {
    width: 100%;
    padding: 12px 0;
    font-size: 2rem;
  }

  .childcare_top_btn a {
    flex-direction: column;
    font-size: 1.6rem;
    row-gap: 1.5rem;
    text-align: center;
  }

  .childcare_top_btn a img {
    width: 10rem;
  }

  .childcare_top_btn a.maternity img,
  .childcare_top_btn a.newborn img {
    width: 5.6rem;
  }

  .childcare_top_btn {
    width: calc((100% - 1.5rem) / 2);
    height: 17rem;
  }

  .childcare_mokuteki .childcare_top_btn a {
    column-gap: 0;
  }

  .childcare_age .childcare_top_btn a {
    padding-left: 0;
    column-gap: 0;
    justify-content: center;
  }



  /* --------------------
  子育て情報　トピックス記事一覧
-------------------- */
  #pageChild #container {
    padding-top: 3rem;
    background-image: unset;
    overflow: hidden;
  }

  #pageChild .page_cont {
    padding: 3rem 1.5rem;
  }

  /* #pageChild #container::after {
  width: 10rem;
  height: 8rem;
  top: -9px;
  transform: rotate(-10deg);
}
#pageChild #container::before {
  width: 11rem;
  height: 8rem;
  top: -8px;
  transform: rotate(9deg);
} */

  #pageChild #childcare_topics {
    padding-top: 2rem;
  }

  #pageChild .article_index_h2 {
    font-size: 2.4rem;
    padding-left: 5.8rem;
    background-position: left 0 top 50%;
    margin-bottom: 3rem;
    padding-bottom: 0rem;
    background-size: 4.7rem;
  }

  #pageChild #childcare_topics .childcare_topics_thums {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 3.2rem;
    column-gap: 0;
  }

  #pageChild #childcare_topics .topics_thum {
    width: calc((100% - 1.5rem) / 2);
  }

  #pageChild #childcare_topics .topics_thum a {
    width: 100%;
  }

  #pageChild #childcare_topics .topics_thum .imgBox {
    width: 15.8rem;
    width: 100%;
    height: 100%;
    margin-bottom: 1.1rem;
    /* width: 35.6rem; */
    /* height: 35.8rem; */
    margin-bottom: 1.2rem;
    position: relative;
    z-index: 70;
    overflow: hidden;
    mask-image: unset;
    -webkit-mask-image: unset;
  }

  #pageChild #childcare_topics .topics_thum .imgBox .thum-img {
    /* top: 50%; */
    /* left: 50%; */
    /* transform: translate(-49%, 0); */
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    mask-size: 96.8%;
    mask-position: center;
    -webkit-mask-size: 96.8%;
    /* -webkit-mask-position: top 50% left 50%; */
  }

  #pageChild #childcare_topics .topics_thum .imgBox .mask-img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    /* object-fit: contain; */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  /* --------------------
  子育て情報　お知らせ
-------------------- */
  .childcare_news .news_post_list {
    padding: 2.8rem 1.5rem;
  }

  /* --------------------
  子育て情報　トピックス記事
-------------------- */
  #pageChild.childArticle #container {
    background-image: unset;
    padding-top: 3rem;
    padding-bottom: 0;
  }

  #pageChild.childArticle #container::before {
    width: 8.8rem;
    height: 20rem;
  }

  #pageChild.childArticle #container::after {
    width: 8.8rem;
    height: 20rem;
  }

  #pageChild.childArticle .inner {
    padding: 0 1.5rem;
  }

  #pageChild .page_cont {
    padding: 3rem 1.5rem;
    border-radius: 2rem;
  }

  #pageChild .page_date {
    display: flex;
    flex-direction: column;
  }

  /* --------------------
  このページに関するお問い合わせ
-------------------- */

  #pageChild .page_contact {
    padding: 2rem 1.5rem;
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
  }




  /* ===================================
  緊急時トップページ（簡易版）
=================================== */
  #disaster .header_logo {
    top: 3.2rem;
  }

  #disaster .top_link_ordinaryBox {
    text-align: center;
    margin-bottom: 2rem;
  }

  #disaster .header_support_list {
    justify-content: center;
    row-gap: 2rem;
    flex-direction: column;
  }

  .disaster_ttl {
    padding: 1rem 0;
    font-size: 2rem;
  }

  .disaster_disc {
    font-size: 1.6rem;
    margin: 3rem 0 3rem;
  }

  .news_disaster_head {
    margin-bottom: 2rem;
    flex-direction: column;
    align-items: center;
    row-gap: 1rem;
  }

  .news_disaster_cont {
    padding: 2rem 1.5rem 0 1.5rem;
  }

  .news_disaster_h2 {
    font-size: 2.4rem;
  }

  #disaster .disaster_news h2 {
    margin-bottom: 0rem;
  }

  #disaster .rss_btn {
    padding: 4px 10px 4px 26px;
    margin-right: 0.8rem;
  }

  .news_disasiter_li a {
    flex-direction: column;
  }

  .news_disaster_date {
    width: 100%;
  }

  .news_disaster_ttl {
    width: 100%;
  }

  .disaster_mail_ttl {
    font-size: 2rem;
  }

  .disaster_mail_child {
    padding: 2rem 0.5rem 1.6rem 0.5rem;
  }

  .disaster_mail_btn {
    padding: 1.5rem;
  }

  .disaster_mail_btn::before,
  .disaster_mail_btn::after {
    width: 20px;
  }

  .disaster_mail_btn::before {
    top: 50%;
    right: 5px;
    transform: translate(-50%, -50%);
    transition: 0.3s;
  }

  .disaster_mail_btn::after {
    top: 50%;
    right: 5px;
    transform: translate(-50%, -50%) rotate(-90deg);
    transition: 0.3s;
  }

  .disaster_link_town {
    row-gap: 1.5rem;
    flex-direction: column;
  }

  .link_town {
    width: 100%;
  }

  #disaster .link_town_h3 {
    padding: 1rem 0;
    margin-bottom: 1.5rem;
  }

  #disaster .footer_cont {
    padding: 3rem 0 8rem;
    align-items: center;
    row-gap: 2rem;
  }

  #disaster .footer_address {
    line-height: 1.5;
    text-align: center;
  }

  #disaster .footer_logo {
    width: 18rem;
  }

  #disaster .header_support_search {
    display: flex;
    justify-content: center;
    width: 100%;
  }

  /* 文字拡大ボタン押した時 */

  /* ヘッダー */
  body.font_large .header_support_list {
    column-gap: 1.8rem;
    justify-content: flex-end;
  }

  body.font_large .header_gnav .header_gnav_list {
    width: 100%;
  }

  body.font_large .header_logo {
    top: 1rem;
  }

  body.font_large .header_support_search {
    top: -8rem;
  }

  body.font_large .news_disaster_h2 {
    background-image: unset;
    padding-left: 0;
  }

  body.font_large .news_imp_h2 {
    padding-left: 0;
    background-image: unset;
  }

  body.font_large .post_date_catBox {
    flex-direction: column;
    align-items: start;
  }

  body.font_large .ad_h2::before,
  body.font_large .ad_h2::after {
    width: 0;
    height: 0;
  }

  body.font_large .ad_h2 {
    padding-left: 0;
    padding-right: 0;
  }

  body.font_large .footer_link_contact img {
    display: none;
  }

  body.font_large .footer_link_contactBtn_txt {
    margin-left: 0;
  }

  /* イベントカレンダー　下層ページ */

  body.font_large .calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-listMonth-button::before,
  .calendar-event.fc-direction-ltr .fc-button-group>.fc-button.fc-dayGridMonth-button::before {
    display: none;
  }

  body.font_large .calendar-event.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-of-type(1) .fc-button-group>.fc-button:not(:last-child) {
    width: 100%;
    height: fit-content;
    top: -2.5rem;
    padding-left: 0;
  }

  body.font_large .calendar-event.fc .fc-toolbar-title {
    margin-bottom: 3rem;
  }


  body.font_large .fc .fc-list-day-cushion {
    flex-direction: column;
  }



  /* --------------------
  ご意見・お問い合わせ
-------------------- */
  .form_table_tr {
    display: flex;
    flex-direction: column;
  }

  .form_table_th {
    border-bottom: 1px dashed #707070;
    padding: 1.2rem 0.6rem;
    width: 100%;
  }

  .form_table_td {
    width: 100%;
    padding: 2rem 0;
  }

  .form_btnBox {
    flex-direction: column;
    row-gap: 1.5rem;
  }

  .form_btn {
    width: 100%;
  }



}