@charset "UTF-8";
/*ベースフォント設定*/
/*Font Awesome5---------------------------------------------*/

/*共通------------------------------------------*/
.clear {
  clear: both;
}

.pd10 {
  padding: 10px;
}

.fl_r {
  float: right;
}

.fl_l {
  float: left;
}

.tx_ac {
  text-align: center;
}

.tx_ar {
  text-align: right;
}

.tx_al {
  text-align: left;
}

ul.img2 > li, ul.img3 > li, ul.img4 > li {
  float: left;
  margin: auto;
  background: none !important;
  padding: 5px !important;
  text-align: center;
  overflow: hidden;
  _zoom: 1;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media all and (max-width: 560px ) {
  ul.img2 > li, ul.img3 > li, ul.img4 > li { /*SP*/
    width: 100% !important;
  }
}

ul.img2 > li {
  width: 50%;
}

ul.img3 > li {
  width: 33.3%;
}

ul.img4 > li {
  width: 25%;
}

.free > dt {
  float: left;
  margin-right: 15px;
}

.free2 > dt {
  float: right;
  margin-left: 15px;
}

.free > dd, .free2 > dd {
  overflow: hidden;
  _zoom: 1;
}
@media all and (max-width: 560px ) {
  .free, .free2 { /*SP*/ }
  .free > dt, .free2 > dt {
    float: none;
    margin-right: 0;
    margin-left: 0;
    text-align: center;
  }
}

.panel_box {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
}
.panel_box > div > * {
  width: 100%;
}
.panel_box.box2 > div {
  width: 50%;
}
.panel_box.box3 > div {
  width: 33.3%;
}
.panel_box.box4 > div {
  width: 25%;
}
@media all and (max-width: 560px ) {
  .panel_box { /*SP*/ }
  .panel_box.box2 div, .panel_box.box3 div, .panel_box.box4 div {
    width: 100%;
  }
}

.notice {
  color: red;
}

.pd_box {
  padding: 1em;
}

main {
  /*リンクアイコン----------------------*/
}
main a:not(:has(img))[target=_blank]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f35d";
  color: #9c9c9c;
  margin-left: 5px;
}
main a:not(:has(img))[href*=".pdf"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f1c1";
  color: #ff0000;
  margin-left: 5px;
}
main a:not(:has(img))[href*=".doc"]:after, main a:not(:has(img))[href*=".docx"]:after, main a:not(:has(img))[href*=".rtf"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f1c2";
  color: #007eff;
  margin-left: 5px;
}
main a:not(:has(img))[href*=".xls"]:after, main a:not(:has(img))[href*=".xlsx"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f1c3";
  color: #55ad00;
  margin-left: 5px;
}
main a:not(:has(img))[href*=".zip"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f1c6";
  color: #9c9c9c;
  margin-left: 5px;
}

.fn14 {
  font-size: 87.5% !important;
}

.fn24 {
  font-size: 150% !important;
}

.fn32 {
  font-size: 200% !important;
}

.fn36 {
  font-size: 225% !important;
}

.martop0 {
  margin-top: 0rem !important;
}

.martop1 {
  margin-top: 1rem !important;
}

.martop2 {
  margin-top: 2rem !important;
}

.martop3 {
  margin-top: 3rem !important;
}

.martop6 {
  margin-top: 6rem !important;
}

.martop-1 {
  margin-top: -1rem !important;
}

.martop-2 {
  margin-top: -2rem !important;
}

.martop-3 {
  margin-top: -3rem !important;
}

.marbottom0 {
  margin-bottom: 0 !important;
}

.marbottom1 {
  margin-bottom: 1rem !important;
}

.marbottom2 {
  margin-bottom: 2rem !important;
}

.marbottom3 {
  margin-bottom: 3rem !important;
}

.marbottom-1 {
  margin-bottom: -1rem !important;
}

.marbottom-2 {
  margin-bottom: -2rem !important;
}

.marbottom-3 {
  margin-bottom: -3rem !important;
}

.lh125 {
  line-height: 1.25;
}

.lh15 {
  line-height: 1.5;
}

.lh175 {
  line-height: 1.75;
}

.lh2 {
  line-height: 2;
}

.w100 {
  width: 100%;
}

.w75 {
  width: 75%;
}

.w50 {
  width: 50%;
}

.w33 {
  width: 33.3%;
}

.w25 {
  width: 25%;
}

@media all and (min-width: 981px ) {
  .pc_none {
    display: none !important;
  }
}

@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  .sp_none {
    display: none !important;
  }
}

/*--------------------------------------*/
/* WPビジュアルエディター用--------------------- */
/*--------------------------------------*/
img.size-auto, img.size-full,
img.size-large, img.size-medium,
.attachment img, .widget-container img {
  max-width: 100%;
  height: auto;
}

.alignleft, img.alignleft {
  display: inline;
  float: left;
  margin-right: 24px;
  margin-top: 4px;
}

.alignright, img.alignright {
  display: inline;
  float: right;
  margin-left: 24px;
  margin-top: 4px;
}

.aligncenter, img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignleft, img.alignright,
img.aligncenter {
  margin-bottom: 12px;
}

.wp-caption {
  background: #f1f1f1;
  line-height: 18px;
  margin-bottom: 20px;
  max-width: 632px !important;
  padding: 4px;
  text-align: center;
}

.wp-caption img {
  margin: 5px 5px 0;
  max-width: 622px;
  /* caption width - 10px */
}

.wp-caption p.wp-caption-text {
  color: #777;
  font-size: 12px;
  margin: 5px;
}

.wp-smiley {
  margin: 0;
}

.gallery {
  margin: 0 auto 18px;
}

.gallery .gallery-item {
  float: left;
  margin-top: 0;
  text-align: center;
  width: 33%;
}

.gallery-columns-2 .gallery-item {
  width: 50%;
}

.gallery-columns-4 .gallery-item {
  width: 25%;
}

.gallery img {
  border: 2px solid #cfcfcf;
}

.gallery-columns-2 .attachment-medium {
  max-width: 92%;
  height: auto;
}

.gallery-columns-4 .attachment-thumbnail {
  max-width: 84%;
  height: auto;
}

.gallery .gallery-caption {
  color: #777;
  font-size: 12px;
  margin: 0 0 12px;
}

.gallery dl {
  margin: 0;
}

.gallery img {
  border: 10px solid #f1f1f1;
}

.gallery br + br {
  display: none;
}

#content .attachment img {
  /* single attachment images should be centered */
  display: block;
  margin: 0 auto;
}

/*=============================================================================*/
/*ページ内コンテンツ===============================================================*/
/*=============================================================================*/
body {
  margin-top: 122px;
}

.phead_important {
  display: -ms-grid;
  display: grid;
  grid-auto-columns: 1fr;
  -ms-grid-columns: 200px 0 1fr;
  grid-template-columns: 200px 1fr;
  gap: 0;
}
.phead_important h3 {
  background: #D44747;
  padding: 1em;
  font-weight: 900;
  text-align: center;
  color: #fff;
}
.phead_important ul li {
  height: 100%;
}
.phead_important ul li a {
  display: block;
  height: 100%;
  border: 2px solid #D44747;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 1rem;
  padding: 1rem;
}
.phead_important ul li a .date {
  font-size: 87.5%;
  color: #777;
  margin: 0;
}
.phead_important ul li a .p_title {
  font-size: 87.5%;
  font-weight: 900;
  margin: 0;
}
.phead_important ul li a .p_title:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f105";
  margin-left: 0.5rem;
}

#top_hed {
  padding: 1rem 2rem 0;
}
@media all and (max-width: 560px ) {
  #top_hed {
    padding: 0 0 0 1rem;
  }
}
#top_hed h1 {
  max-width: 250px;
}
#top_hed #g_nav {
  gap: 2rem;
}
#top_hed #g_nav ul {
  font-size: clamp(14px, 0.841vw, 16px);
}
#top_hed #g_nav #ham_open {
  width: 60px;
  height: 60px;
}
#top_hed #g_nav #ham_open img {
  width: 18px;
  height: auto;
}
#top_hed #g_nav #ham_open span {
  font-size: 10px;
}

#post_head figure {
  width: 100%;
  height: 350px;
  background: #f8f8f8;
  margin: 0;
}
@media all and (max-width: 560px ) {
  #post_head figure {
    height: 250px;
  }
}
#post_head figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media all and (max-width: 560px ) {
  #post_head figure img {
    -o-object-position: 30% center;
       object-position: 30% center;
  }
}
#post_head .breadcrumbs {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: end;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 0 0.5em;
  font-size: 87.5%;
  font-weight: 700;
  color: #777;
  margin: 0.5rem 24px 0;
}
#post_head h1 {
  max-width: 1328px;
  padding: 0 24px;
  font-size: 350%;
  text-align: center;
  margin: 3rem auto 6rem;
  font-weight: 900;
}
@media all and (max-width: 560px ) {
  #post_head h1 {
    margin: 3rem auto 4rem;
  }
}
#post_head .date {
  text-align: center;
  margin: 0.5em 24px;
  ont-size: 87.5%;
  font-weight: 700;
  color: #777;
}
#post_head.single {
  margin-bottom: 6rem;
  max-width: 1028px;
  padding: 0 24px;
  margin: 0 auto 6rem;
}
#post_head.single .breadcrumbs {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 1px solid #ccc;
  padding-bottom: 3rem;
  margin: 0.5em 0;
}
#post_head.single h1 {
  margin: 4rem auto 2rem;
  max-width: 1028px;
  font-size: 250%;
}
#post_head.member .member_head {
  position: relative;
}
#post_head.member .member_head figure {
  width: 100%;
  height: 472px;
  margin: 0;
}
#post_head.member .member_head figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: unset;
     object-position: unset;
}
#post_head.member .member_head > div {
  position: absolute;
  top: 7.36vw;
  left: 9.67%;
  max-width: 55%;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  #post_head.member .member_head > div {
    max-width: unset;
  }
}
#post_head.member .member_head > div > small {
  font-size: 237.5%;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.06em;
}
#post_head.member .member_head > div h1 {
  margin: 0;
  text-align: left;
  max-width: unset;
  font-size: 362.5%;
  padding: 0;
  letter-spacing: 0.06em;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 0 0.42em;
}
#post_head.member .member_head > div h1 span {
  display: inline-block;
}
#post_head.member .breadcrumbs {
  margin-bottom: 6.75rem;
}

main {
  max-width: 1328px;
  margin: 0 auto;
  padding: 0 24px;
  letter-spacing: 0.05em;
  line-height: 2;
  font-size: 112.5%;
  overflow: hidden;
}
main.single {
  max-width: 1028px;
}
main a {
  position: relative;
}
main a:before {
  content: "";
  width: 100%;
  height: 2px;
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, #ccc), color-stop(50%, #018F4B)) right/200% 100% no-repeat;
  background: linear-gradient(right, #ccc 50%, #018F4B 50%) right/200% 100% no-repeat;
  position: absolute;
  bottom: -4px;
  right: 0;
  -webkit-transition: background-position 0.3s;
  transition: background-position 0.3s;
}
main a:hover:before, main a:focus:before {
  background-position: left;
}
main a:has(img):before {
  content: none;
}
main .ank_list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 0.75em;
  margin: 2rem 0;
  padding: 1.5em 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
main .ank_list li a {
  display: inline-block;
  padding: 12px 14px;
  border-radius: 4px;
  background: #eee;
  line-height: 1;
}
main .ank_list li a:before {
  content: none;
}
main .ank_list li a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f358";
  margin-left: 4px;
  color: #dd7373;
}
main h2 {
  font-size: 300%;
  line-height: 1.25;
  font-weight: 900;
  margin: 8rem 0 2rem;
  border-left: 0.5em solid #018F4B;
  padding-left: 0.5em;
}
main h3 {
  font-size: 200%;
  line-height: 1.25;
  background: #018F4B;
  background: -webkit-gradient(linear, left top, right top, from(#018F4B), to(#3CB273));
  background: linear-gradient(to right, #018F4B, #3CB273);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=quote($statCol), endColorstr=quote($endCol),GradientType=1 );
  padding: 0.625em 1em 0.625em 1.75em;
  font-weight: normal;
  color: #fff;
  position: relative;
  margin: 3rem 0 2rem;
}
main h3:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f105";
  position: absolute;
  top: 0.625em;
  left: 1em;
  color: #333;
}
main h4 {
  font-size: 150%;
  line-height: 1.25;
  margin: 2rem 0 1rem;
  position: relative;
  padding-bottom: 0.5rem;
  overflow: hidden;
}
main h4:before {
  content: "";
  width: 100%;
  height: 3px;
  background: #018F4B;
  position: absolute;
  bottom: 0;
}
main h4:after {
  content: "";
  width: 100%;
  height: 3px;
  background: #ccc;
  position: absolute;
  bottom: 0;
}
main h5 {
  font-size: 125%;
  margin: 1rem 0;
  border-left: 0.5em solid #018F4B;
  line-height: 1.25;
  padding-left: 0.5em;
}
main h6 {
  font-size: 112.5%;
  margin: 1rem 0;
}
main ul:not([class]),
main ul.wp-block-list,
main ul.inr_list,
main ul.ul_flex {
  margin: 1rem 0;
}
main ul:not([class]) > li,
main ul.wp-block-list > li,
main ul.inr_list > li,
main ul.ul_flex > li {
  padding-left: 1.25rem;
  position: relative;
}
main ul:not([class]) > li:before,
main ul.wp-block-list > li:before,
main ul.inr_list > li:before,
main ul.ul_flex > li:before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
  border: 3px solid #606CD2;
  display: block;
  position: absolute;
  top: 0.52em;
  left: 0;
}
main ul:not([class]) > li:nth-last-of-type(n+2),
main ul.wp-block-list > li:nth-last-of-type(n+2),
main ul.inr_list > li:nth-last-of-type(n+2),
main ul.ul_flex > li:nth-last-of-type(n+2) {
  margin-bottom: 0.5em;
}
main ul:not([class]) > li > ol:not([class]),
main ul.wp-block-list > li > ol:not([class]),
main ul.inr_list > li > ol:not([class]),
main ul.ul_flex > li > ol:not([class]) {
  margin: 0;
}
main ul:not([class]) > li > ul:not([class]),
main ul.wp-block-list > li > ul:not([class]),
main ul.inr_list > li > ul:not([class]),
main ul.ul_flex > li > ul:not([class]) {
  margin: 0;
}
main ul:not([class]) > li > ul:not([class]) li:before,
main ul.wp-block-list > li > ul:not([class]) li:before,
main ul.inr_list > li > ul:not([class]) li:before,
main ul.ul_flex > li > ul:not([class]) li:before {
  content: "—";
  width: 1em;
  height: auto;
  border: unset;
  color: #606CD2;
  font-weight: bold;
  top: 0;
}
main ul.sitemap_main_menu {
  display: -ms-grid;
  display: grid;
  grid-auto-columns: 1fr;
  -ms-grid-columns: 1fr 8px 1fr 8px 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  margin: 2rem 0;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main ul.sitemap_main_menu {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
main ul.sitemap_main_menu li {
  padding: 0;
}
main ul.sitemap_main_menu li:nth-last-of-type(n+2) {
  margin-bottom: 0;
}
main ul.sitemap_main_menu li:before {
  content: none;
}
main ul.sitemap_main_menu li a {
  display: block;
  height: 100%;
  border: 1px solid #ccc;
  padding: 1em;
  padding-right: 3em;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  position: relative;
}
main ul.sitemap_main_menu li a:before {
  content: none;
}
main ul.sitemap_main_menu li a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f105";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 1em;
  color: #333;
}
main ul.sitemap_sub_menu {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 1.5rem;
  margin: 2rem 0;
}
main ul.sitemap_sub_menu li {
  padding-left: 1em;
}
main ul.sitemap_sub_menu li:nth-last-of-type(n+2) {
  margin-bottom: 0;
}
main ul.sitemap_sub_menu li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f105";
  border: none;
  border-radius: unset;
  width: unset;
  height: unset;
  top: 0;
}
main ol:not([class]) {
  margin: 1rem 0;
  counter-reset: numlist;
}
main ol:not([class]) > li {
  padding-left: 2em;
  position: relative;
}
main ol:not([class]) > li:nth-last-of-type(n+2) {
  margin-bottom: 0.5rem;
}
main ol:not([class]) > li:nth-of-type(n+10):before {
  content: counter(numlist);
}
main ol:not([class]) > li:nth-of-type(-n+9):before {
  content: "0" counter(numlist);
}
main ol:not([class]) > li:before {
  counter-increment: numlist;
  position: absolute;
  left: 0;
  color: #606CD2;
  font-weight: bold;
}
main ol:not([class]) > li > ol:not([class]),
main ol:not([class]) > li > ul:not([class]) {
  margin: 0;
}
main table {
  margin: 2rem 0;
  border: 1px solid #888;
  width: 100%;
}
main table th, main table td {
  padding: 1rem;
  vertical-align: top;
}
main table th > *:first-child, main table td > *:first-child {
  margin-top: 0;
}
main table th > *:last-child, main table td > *:last-child {
  margin-bottom: 0;
}
main table tbody th {
  background: #888;
  color: #fff;
  text-align: left;
}
main table tbody th:nth-last-of-type(n+2) {
  border-right: 1px solid #fff;
}
main table tbody td:nth-last-of-type(n+2) {
  border-right: 1px solid #ccc;
}
main table tbody tr:nth-last-of-type(n+2) th {
  border-bottom: 1px solid #fff;
}
main table tbody tr:nth-last-of-type(n+2) td {
  border-bottom: 1px solid #ccc;
}
main table thead th {
  background: #888;
  color: #fff;
  text-align: center;
  border-bottom: #fff;
  border-bottom: 1px solid #fff;
  padding: 0.5rem 1rem;
}
main table thead th:nth-last-of-type(n+2) {
  border-right: 1px solid #fff;
}
main table thead + tbody th {
  background: #f3f3f3;
  color: #333;
  border-color: #ccc;
}
main table thead + tbody th:nth-last-of-type(n+2) {
  border-right: 1px solid #ccc;
}
main table thead + tbody tr:nth-last-of-type(n+2) th {
  border-bottom: 1px solid #ccc;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .sctbl {
    overflow-x: scroll;
  }
  main .sctbl::-webkit-scrollbar {
    height: 5px;
  }
  main .sctbl::-webkit-scrollbar-track {
    background-color: none;
  }
  main .sctbl::-webkit-scrollbar-thumb {
    background-color: #e5e5e5;
    border-radius: 3px;
  }
  main .sctbl table {
    width: 980px;
  }
}
main .note {
  margin: 2rem 0;
  padding: 3rem;
  background: #f3f3f3;
  position: relative;
  z-index: 0;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .note {
    padding: 2rem;
  }
}
main .note > *:first-child {
  margin-top: 0;
}
main .note > *:last-child {
  margin-bottom: 0;
}
main .box {
  margin: 2rem 0;
  padding: 2.5rem;
  position: relative;
  border: 10px solid #eee;
  z-index: 0;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .box {
    padding: 1.5rem;
  }
}
main .box > *:first-child {
  margin-top: 0;
}
main .box > *:last-child {
  margin-bottom: 0;
}
main .btn {
  margin: 2rem 0;
}
main .btn a {
  display: inline-block;
  font-size: 125%;
  font-weight: 900;
  padding: 1.5em 3em 1.5em 1.5em;
  background: #018F4B;
  color: #fff;
  position: relative;
  line-height: 1.25;
  margin-top: 8px;
}
main .btn a:has(+ a) {
  margin-right: 8px;
}
main .btn a:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0a9";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 1.5em;
  line-height: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: unset;
  background: unset;
  height: unset;
  bottom: unset;
}
main .btn a:hover:before, main .btn a:focus:before {
  right: 1em;
}
main .btn a.border {
  background: #fff;
  border: 3px solid #018F4B;
  padding-top: 1.35em;
  padding-bottom: 1.35em;
  color: #018F4B;
}
main .btn a.red {
  background: #d7003a;
}
main .btn a.border.red {
  background: #fff;
  border: 3px solid #d7003a;
  color: #d7003a;
}
main .btn a.blue {
  background: #00a5d7;
}
main .btn a.border.blue {
  background: #fff;
  border: 3px solid #00a5d7;
  color: #00a5d7;
}
main .wp-block-buttons a:before {
  content: none;
}
main .post_list {
  border-bottom: 1px solid #ccc;
  margin: 1rem 0;
}
main .post_list li {
  border-top: 1px solid #ccc;
  display: -ms-grid;
  display: grid;
  grid-auto-columns: 1fr;
  -ms-grid-columns: 7em 16px 1fr;
  grid-template-columns: 7em 1fr;
  gap: 16px;
  padding: 1.5em 0;
}
main .post_list li .date {
  margin: 0;
  line-height: 1.5;
}
main .post_list li h3 {
  font-size: 100%;
  background: unset;
  color: #333;
  padding: 0;
  margin: 0;
  line-height: 1.5;
}
main .post_list li h3:before {
  content: none;
}
main .post_list li h3:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f105";
  margin-left: 0.5em;
  color: #aaa;
}
main .post_list li h3 a:before {
  content: none;
}
main .member_list {
  display: -ms-grid;
  display: grid;
  grid-auto-columns: 1fr;
  -ms-grid-columns: 1fr 24px 1fr 24px 1fr 24px 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 40px 24px;
  margin: 1rem 0;
}
@media all and (min-width: 981px ), all and (max-width: 980px ) and (min-width: 561px ) {
  main .member_list.datanum-1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    max-width: 302px;
  }
  main .member_list.datanum-2 {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    max-width: 628px;
  }
  main .member_list.datanum-3 {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 954px;
  }
}
@media all and (max-width: 980px ) and (min-width: 561px ) {
  main .member_list {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media all and (max-width: 560px ) {
  main .member_list {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  main .member_list.datanum-1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    max-width: 302px;
  }
}
main .member_list li a {
  padding-bottom: 24px;
  border-bottom: 2px solid #018F4B;
  display: block;
  height: 100%;
  position: relative;
}
main .member_list li a:before {
  content: none;
}
main .member_list li a figure {
  width: 100%;
  aspect-ratio: 548/685;
  margin: 0 0 1rem;
}
main .member_list li a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .member_list li a .group {
  min-height: 40px;
}
main .member_list li a .group span {
  display: block;
  line-height: 1.25;
}
main .member_list li a .group span.area {
  font-size: 87.5%;
  padding: 8px;
  background: #eee;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 8px;
}
main .member_list li a h4 {
  font-size: 175%;
  font-weight: 900;
  line-height: 1.25;
  padding: 0;
  margin: 0;
  background: none;
  color: #333;
  letter-spacing: 0.1em;
}
main .member_list li a h4:before, main .member_list li a h4:after {
  content: none;
}
main .member_list li a .furigana {
  font-weight: bold;
  margin: 0 0 1rem;
  font-size: 87.5%;
  letter-spacing: 0.1em;
  color: #aaa;
}
main .member_list li a .mem_list_btn {
  font-size: 12px;
  color: #aaa;
  position: absolute;
  bottom: 4px;
  left: 0;
}
main .officer_list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 0 24px;
}
main .officer_list > div:has(#former-sangiin) .datanum-1 {
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  max-width: 628px;
}
@media all and (min-width: 981px ) {
  main .officer_list > div:has(.datanum-1) {
    width: calc(25% - 18px);
  }
  main .officer_list > div:has(.datanum-2), main .officer_list > div:has(#former-sangiin) {
    width: calc(50% - 36px);
  }
  main .officer_list > div:has(.datanum-3) {
    width: calc(75% - 54px);
  }
}
@media all and (max-width: 980px ) and (min-width: 561px ) {
  main .officer_list > div:has(.datanum-1) {
    width: calc(33.3% - 16px);
  }
  main .officer_list > div:has(.datanum-2), main .officer_list > div:has(#former-sangiin) {
    width: calc(66.6% - 32px);
  }
}
@media all and (max-width: 560px ) {
  main .officer_list > div:has(.datanum-1) {
    width: calc(50% - 12px);
  }
  main .officer_list > div:has(#former-sangiin) {
    width: 100%;
  }
}
main .officer_list > div h3 {
  font-size: clamp(22px, 2.15vw, 30px);
  padding-left: 1.25em;
}
main .officer_list > div h3:before {
  left: 0.5em;
}
main.member:not(:has(h2#shuugiin)) .ank_list a[href="#shuugiin"] {
  display: none;
}
main.member:not(:has(h2#sangiin)) .ank_list a[href="#sangiin"] {
  display: none;
}
main.member:not(:has(h2#kagoshima-shuugiin)) .ank_list a[href="#kagoshima-shuugiin"] {
  display: none;
}
main.member:not(:has(h2#former-shuugiin)) .ank_list a[href="#former-shuugiin"] {
  display: none;
}
main.member:not(:has(h2#former-sangiin)) .ank_list a[href="#former-sangiin"] {
  display: none;
}
main.member:not(:has(h2#kengikai)) .ank_list a[href="#kengikai"] {
  display: none;
}
main.member:not(:has(h2#shigikai)) .ank_list a[href="#shigikai"] {
  display: none;
}
@media all and (min-width: 981px ), all and (max-width: 980px ) and (min-width: 561px ) {
  main.member .member_list.datanum-1 {
    max-width: 344px;
  }
  main.member .member_list.datanum-2 {
    max-width: 712px;
  }
  main.member .member_list.datanum-3 {
    max-width: 1080px;
  }
}
main .wp-pagenavi {
  margin: 3rem 0 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  border: 1px solid #ccc;
  border-radius: 8px;
  overflow-y: hidden;
}
main .wp-pagenavi > *:nth-of-type(n+2) {
  border-left: 1px solid #ccc;
}
main .wp-pagenavi span, main .wp-pagenavi a {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-align-self: stretch;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
      align-self: stretch;
  height: 100%;
  -ms-flex-grow: 1;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: center;
  display: inline-block;
  padding: 0.5rem 1%;
  background: #fff;
  border: none;
  margin: 0;
  display: block;
  height: 100%;
}
main .wp-pagenavi span:after, main .wp-pagenavi span:before, main .wp-pagenavi a:after, main .wp-pagenavi a:before {
  content: none !important;
}
main .wp-pagenavi span svg.lucide, main .wp-pagenavi a svg.lucide {
  width: 1.25em;
  height: 1.25em;
  vertical-align: middle;
}
main .wp-pagenavi span.current {
  background: #539D39;
  color: #fff;
  border: none;
}
main .wp-pagenavi a:hover {
  background: #539D39;
  color: #fff;
}
main .member_search {
  margin: 2rem 0;
  position: relative;
}
main .member_search.map {
  margin: 285px auto 370px;
  max-width: 1324px;
  background: rgba(255, 255, 255, 0.5);
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  padding: 76px 7.4% 98px;
  border-radius: 6px;
  border: 1px solid #D9D9D9;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .member_search.map {
    padding: 12.8vw 4.2% 40px;
    margin: 108px 22px 138px;
  }
}
@media all and (max-width: 560px ) {
  main .member_search.map {
    padding: 64px 16px 40px;
    margin: 19.29vw 16px 24.643vw;
  }
}
main .member_search.map:before {
  content: "";
  width: 64.35%;
  aspect-ratio: 852/842;
  background: url("../img/search_map.png") center/contain no-repeat;
}
@media all and (min-width: 981px ) {
  main .member_search.map:before {
    position: absolute;
    z-index: -1;
    top: -90%;
    right: 12.84%;
  }
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .member_search.map:before {
    width: unset;
    height: 114.714%;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%) scale(1);
            transform: translateX(-50%) scale(1);
    -webkit-transform: translateX(-40%);
            transform: translateX(-40%);
    top: -14.71%;
    z-index: -1;
  }
}
main .member_search #feas-searchform-0 {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 2.5%;
}
main .member_search #feas-searchform-0 dl {
  width: 40%;
  position: relative;
  padding-top: 2.5em;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .member_search #feas-searchform-0 dl {
    width: 100%;
  }
  main .member_search #feas-searchform-0 dl + dl {
    margin-top: 3.5rem;
  }
}
@media all and (max-width: 560px ) {
  main .member_search #feas-searchform-0 dl + dl {
    margin-top: 3.5rem;
  }
}
main .member_search #feas-searchform-0 dl dt {
  font-size: 125%;
  font-weight: 900;
  position: absolute;
  top: 0;
}
main .member_search #feas-searchform-0 dl dd select {
  font-size: 125%;
  padding: 1.1em;
  width: 100%;
  border: none;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"/></svg>') center right 0.9em/0.8em no-repeat, #EAEAEA;
  border-radius: 6px;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
  position: relative;
  z-index: 0;
}
main .member_search #feas-searchform-0 input[type=submit] {
  width: 15%;
  text-align: left;
  font-size: 125%;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="white"><path d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6 .1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg>') center right 1em/1em no-repeat, #018F4B;
  color: #fff;
  padding: 0 1.4em;
  border-radius: 6px;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main .member_search #feas-searchform-0 input[type=submit] {
    width: 168px;
    margin: 2rem auto 0;
    padding: 22px 1.4em;
  }
}

main.member {
  max-width: 1496px;
}
main.member .mem_profile {
  margin-bottom: 5.5rem;
}
@media all and (min-width: 981px ) {
  main.member .mem_profile {
    display: -ms-grid;
    display: grid;
    grid-auto-columns: 1fr;
    -ms-grid-columns: 548px 5% 1fr;
    grid-template-columns: 548px 1fr;
    gap: 5%;
  }
}
@media all and (max-width: 1144px) {
  main.member .mem_profile {
    -ms-grid-columns: 55% 40%;
    grid-template-columns: 55% 40%;
  }
}
main.member .mem_profile > figure {
  margin: 0;
}
main.member .mem_profile > figure img {
  width: 100%;
  height: auto;
}
@media all and (max-width: 980px ) and (min-width: 561px ), all and (max-width: 560px ) {
  main.member .mem_profile .mem_profile_cnt {
    margin-top: 3rem;
  }
}
main.member .mem_profile .mem_profile_cnt .pro_parliament {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: end;
  -webkit-box-align: end;
          align-items: flex-end;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 1rem;
}
main.member .mem_profile .mem_profile_cnt .pro_parliament .pro_parliament_list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: 8px;
}
main.member .mem_profile .mem_profile_cnt .pro_parliament .pro_parliament_list li a {
  font-size: 125%;
  font-weight: bold;
  line-height: 1;
  padding: 0.75em 1.166em;
  border-radius: 1.25em;
  display: inline-block;
  background: #D9D9D9;
  letter-spacing: 0.06em;
}
main.member .mem_profile .mem_profile_cnt .pro_parliament .pro_parliament_list li a:before {
  content: none;
}
main.member .mem_profile .mem_profile_cnt .pro_parliament small {
  display: inline-block;
  font-size: clamp(32px, 3.21vw, 48px);
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
  color: #aaa;
}
main.member .mem_profile .mem_profile_cnt h2 {
  font-size: clamp(56px, 6.42vw, 96px);
  padding: 0;
  margin: 1rem 0 0;
  border: none;
  line-height: 1.5;
  font-weight: 900;
}
main.member .mem_profile .mem_profile_cnt > small {
  text-transform: uppercase;
  font-size: clamp(24px, 2.55vw, 28px);
  line-height: 1;
  letter-spacing: 0.1em;
  color: #aaa;
  font-weight: 900;
}
main.member .mem_profile .mem_profile_cnt .pro_sns {
  margin-top: 1.66em;
  font-size: 125%;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li + li {
  margin-top: 0.75em;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a {
  padding: 0.75em 2.41em;
  background: #F9F9F9;
  border: 1px solid #B7B7B7;
  border-radius: 8px;
  display: block;
  line-height: 1.5;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a:before {
  width: 0.9166em;
  height: 0.9166em;
  background: none;
  display: inline-block;
  margin-right: 0.66em;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  bottom: unset;
  left: 0.833em;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f35a";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0.833em;
  color: #333;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.homepage:before {
  background: url("../img/icon_hp.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.instagram:before {
  background: url("../img/icon_instagram.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.facebook:before {
  background: url("../img/icon_facebook.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.youtube:before {
  background: url("../img/icon_youtube.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.x:before {
  background: url("../img/icon_x.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.tiktok:before {
  background: url("../img/icon_tiktok.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.m_note:before {
  background: url("../img/icon_note.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.line:before {
  background: url("../img/icon_line.svg") center/contain no-repeat;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.m_parliament {
  border: 6px solid #ff5c5c;
}
main.member .mem_profile .mem_profile_cnt .pro_sns li a.m_parliament:before {
  background: url("../img/icon_parliament.svg") center/contain no-repeat;
}
@media all and (min-width: 981px ) {
  main.member .mem_biography:has(figure) {
    display: -ms-grid;
    display: grid;
    grid-auto-columns: 1fr;
    -ms-grid-columns: 470px 6.216% 1fr;
    grid-template-columns: 470px 1fr;
    gap: 6.216%;
  }
}
main.member .mem_biography figure img {
  width: 100%;
  height: auto;
}
main.member .mem_address iframe {
  width: 100%;
}

#search_list li {
  padding: 24px;
  border: 1px solid #ccc;
  border-radius: 8px;
}
#search_list li:before {
  content: none;
}
#search_list li:nth-of-type(n+2) {
  margin-top: 32px;
}
#search_list li h3 {
  padding: 0;
  margin: 0;
  background: none;
  font-family: "Roboto", "Noto Sans JP", Verdana, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  color: #0b57d0;
  font-weight: normal;
  font-size: 125%;
  border: none;
}
#search_list li h3:before {
  content: none;
}
#search_list li h3 a:before {
  content: none;
}
#search_list li .des {
  font-size: 87.5%;
  color: #777;
  margin: 0.5rem 0 0;
}

