@charset "UTF-8";
/* ---------------------------------------------------------------------------
  ★WISYWIGセット
--------------------------------------------------------------------------- */
.wisywig_Area {
  margin-top: 10px;
}
.wisywig_Area a {
  color: #0051ab;
  text-decoration: underline;
  position: relative;
  display: inline-block;
}
.wisywig_Area a[target],
.wisywig_Area a[href$=".docx"],
.wisywig_Area a[href$=".doc"],
.wisywig_Area a[href$=".xls"],
.wisywig_Area a[href$=".ppt"],
.wisywig_Area a[href$=".pptm"],
.wisywig_Area a[href$=".csv"],
.wisywig_Area a[href$=".pdf"] {
  margin-right: 1.8em;
}
.wisywig_Area a[target]:after,
.wisywig_Area a[href$=".docx"]:after,
.wisywig_Area a[href$=".doc"]:after,
.wisywig_Area a[href$=".xls"]:after,
.wisywig_Area a[href$=".ppt"]:after,
.wisywig_Area a[href$=".pptm"]:after,
.wisywig_Area a[href$=".csv"]:after,
.wisywig_Area a[href$=".pdf"]:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -1.2em;
  bottom: 3px;
  background: url(../img/ex_link_b.svg) no-repeat center/100%;
  width: 1em;
  height: 1.1em;
  transition: 0.3s;
}
.wisywig_Area a[href$=".pdf"]:after {
  background: url(../img/pdf_link.svg) no-repeat center/100%;
}
.wisywig_Area a:hover,
.wisywig_Area a:hover::after {
  opacity: 0.6;
}
.wisywig_Area b {
  font-weight: 600;
}
.wisywig_Area i {
  font-style: italic;
}
.wisywig_Area u {
  text-decoration: underline;
}
.wisywig_Area strike {
  text-decoration: line-through;
}
.wisywig_Area ul,
.wisywig_Area ol {
  margin-top: 10px;
}
.wisywig_Area ul li,
.wisywig_Area ol li {
  position: relative;
  margin-bottom: 10px;
  margin-left: 1.2em;
}
.wisywig_Area ul li a,
.wisywig_Area ol li a {
  color: #0051ab;
  text-decoration: underline;
}
.wisywig_Area ul li a:hover,
.wisywig_Area ol li a:hover {
  opacity: 0.6;
}
.wisywig_Area ul li ul,
.wisywig_Area ol li ol {
  margin-top: 10px;
}
.wisywig_Area ul li:before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  background: #0051ab;
  border-radius: 50%;
  top: 0.7em;
  left: -14px;
}
.wisywig_Area ol li {
  list-style-type: decimal; /* 数字 (デフォルト) */
}
.wisywig_Area sup {
  font-size: 70%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}
.wisywig_Area sub {
  font-size: 70%;
  vertical-align: bottom;
  position: relative;
  bottom: -0.1em;
}

@media screen and (max-width: 767px) {
  .wisywig_Area {
    margin-top: 2%;
  }
}
/* ---------------------------------------------------------------------------
  ★見出しセット
--------------------------------------------------------------------------- */
.h2Tit {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 140%;
  padding-bottom: 5px;
  border-bottom: 1px solid #a3a6b1;
  margin-top: 70px;
}

.h3Tit_br {
  border-radius: 15px;
  background: rgb(185, 211, 241);
  padding: 2px;
  padding-left: 1em;
  padding-right: 1em;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 140%;
  color: #0051ab;
  margin-top: 70px;
}

.h4Tit {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 140%;
  margin-top: 50px;
  color: #003167;
}

@media screen and (max-width: 767px) {
  .h2Tit {
    font-size: clamp(1.6rem, 5.4vw, 3.2rem) !important;
    margin-top: 10%;
  }
  .h3Tit_br {
    font-size: clamp(1.2rem, 5vw, 2.8rem) !important;
    margin-top: 8%;
    border-radius: 12px;
  }
  .h4Tit {
    font-size: clamp(1.2rem, 4.8vw, 2.6rem) !important;
    margin-top: 6%;
  }
}
/* ---------------------------------------------------------------------------
  ★本文セット
--------------------------------------------------------------------------- */
.text_img_set01,
.text_img_set02,
.text_img_set03,
.text_img_set04,
.text_img_set05 {
  margin-bottom: 60px;
}

.text_img_set01::after,
.text_img_set02::after,
.text_img_set03::after,
.text_img_set04::after,
.text_img_set05::after {
  content: "";
  display: block;
  clear: both;
}

.text_img_set01:has(.img_Area) .txt_Area ul,
.text_img_set01:has(.img_Area) .txt_Area ol,
.text_img_set02:has(.img_Area) .txt_Area ul,
.text_img_set02:has(.img_Area) .txt_Area ol,
.text_img_set03:has(.img_Area) .txt_Area ul,
.text_img_set03:has(.img_Area) .txt_Area ol,
.text_img_set04:has(.img_Area) .txt_Area ul,
.text_img_set04:has(.img_Area) .txt_Area ol {
  margin-left: 0;
}
.text_img_set01:has(.img_Area) .txt_Area ul li,
.text_img_set01:has(.img_Area) .txt_Area ol li,
.text_img_set02:has(.img_Area) .txt_Area ul li,
.text_img_set02:has(.img_Area) .txt_Area ol li,
.text_img_set03:has(.img_Area) .txt_Area ul li,
.text_img_set03:has(.img_Area) .txt_Area ol li,
.text_img_set04:has(.img_Area) .txt_Area ul li,
.text_img_set04:has(.img_Area) .txt_Area ol li {
  display: flex;
  flex-direction: column;
}
.text_img_set01:has(.img_Area) .txt_Area ul li a,
.text_img_set01:has(.img_Area) .txt_Area ol li a,
.text_img_set02:has(.img_Area) .txt_Area ul li a,
.text_img_set02:has(.img_Area) .txt_Area ol li a,
.text_img_set03:has(.img_Area) .txt_Area ul li a,
.text_img_set03:has(.img_Area) .txt_Area ol li a,
.text_img_set04:has(.img_Area) .txt_Area ul li a,
.text_img_set04:has(.img_Area) .txt_Area ol li a {
  max-width: -moz-max-content;
  max-width: max-content;
}
.text_img_set01:has(.img_Area) .txt_Area ul ul li,
.text_img_set01:has(.img_Area) .txt_Area ol ol li,
.text_img_set02:has(.img_Area) .txt_Area ul ul li,
.text_img_set02:has(.img_Area) .txt_Area ol ol li,
.text_img_set03:has(.img_Area) .txt_Area ul ul li,
.text_img_set03:has(.img_Area) .txt_Area ol ol li,
.text_img_set04:has(.img_Area) .txt_Area ul ul li,
.text_img_set04:has(.img_Area) .txt_Area ol ol li {
  margin-left: 0;
}
.text_img_set01:has(.img_Area) .txt_Area ul li,
.text_img_set02:has(.img_Area) .txt_Area ul li,
.text_img_set03:has(.img_Area) .txt_Area ul li,
.text_img_set04:has(.img_Area) .txt_Area ul li {
  padding-left: 1em;
}
.text_img_set01:has(.img_Area) .txt_Area ul li:before,
.text_img_set02:has(.img_Area) .txt_Area ul li:before,
.text_img_set03:has(.img_Area) .txt_Area ul li:before,
.text_img_set04:has(.img_Area) .txt_Area ul li:before {
  left: 0.2em;
}
.text_img_set01:has(.img_Area) .txt_Area ol,
.text_img_set02:has(.img_Area) .txt_Area ol,
.text_img_set03:has(.img_Area) .txt_Area ol,
.text_img_set04:has(.img_Area) .txt_Area ol {
  list-style: none;
  counter-reset: list-counter;
}
.text_img_set01:has(.img_Area) .txt_Area ol li,
.text_img_set02:has(.img_Area) .txt_Area ol li,
.text_img_set03:has(.img_Area) .txt_Area ol li,
.text_img_set04:has(.img_Area) .txt_Area ol li {
  counter-increment: list-counter;
  position: relative;
  padding-left: 1.5em; /* 数字のスペース */
  margin-left: 0;
}
.text_img_set01:has(.img_Area) .txt_Area ol li::before,
.text_img_set02:has(.img_Area) .txt_Area ol li::before,
.text_img_set03:has(.img_Area) .txt_Area ol li::before,
.text_img_set04:has(.img_Area) .txt_Area ol li::before {
  content: counter(list-counter) ". ";
  position: absolute;
  left: 0;
  top: 0;
}
.text_img_set01:has(.img_Area) .txt_Area ol ol,
.text_img_set02:has(.img_Area) .txt_Area ol ol,
.text_img_set03:has(.img_Area) .txt_Area ol ol,
.text_img_set04:has(.img_Area) .txt_Area ol ol {
  counter-reset: list-counter;
}

.caption {
  font-weight: 600;
  margin-top: 5px;
  color: #818285;
  font-size: 95%;
  line-height: 140%;
  margin-bottom: 10px;
}

.text_img_set01 .txt {
  margin-top: 10px;
}

.text_img_set01 .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
}

.text_img_set01 > div:nth-child(odd) {
  width: 41%;
  margin-right: 30px;
  float: left;
}

.text_img_set01 img {
  border-radius: 6px;
  width: auto;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.text_img_set01:has(.img_Area) .txt_Area {
  width: auto;
  margin-top: 30px;
}

.text_img_set01:not(:has(.img_Area)) .txt_Area {
  margin-right: 0;
  width: 100%;
  margin-top: 20px;
}

.text_img_set02 .txt {
  margin-top: 10px;
}

.text_img_set02 .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
}

.text_img_set02 > div:nth-child(odd) {
  width: 41%;
  margin-left: 30px;
  float: right;
}

.text_img_set02 img {
  border-radius: 6px;
  width: auto;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.text_img_set02:has(.img_Area) .txt_Area {
  width: auto;
  margin-top: 30px;
}

.text_img_set02:not(:has(.img_Area)) .txt_Area {
  margin-left: 0;
  width: 100%;
  margin-top: 20px;
}

.text_img_set03 > div:nth-child(odd) {
  width: 41%;
  margin-right: 30px;
  float: left;
}

.text_img_set03 img {
  border-radius: 6px;
  width: auto;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.text_img_set03:has(.img_Area) .txt_Area {
  width: auto;
  margin-top: 30px;
}

.text_img_set03:not(:has(.img_Area)) .txt_Area {
  margin-right: 0;
  width: 100%;
  margin-top: 20px;
}

.text_img_set03:not(:has(.img_Area)) .wisywig_Area {
  margin-top: 0;
}

.text_img_set04 > div:nth-child(odd) {
  width: 41%;
  margin-left: 30px;
  float: right;
}

.text_img_set04 img {
  border-radius: 6px;
  width: auto;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.text_img_set04:has(.img_Area) .txt_Area {
  width: auto;
  margin-top: 30px;
}

.text_img_set04:not(:has(.img_Area)) .txt_Area {
  margin-left: 0;
  width: 100%;
  margin-top: 20px;
}

.text_img_set04:not(:has(.img_Area)) .wisywig_Area {
  margin-top: 0;
}

.text_img_set05 {
  margin-top: 30px;
}

.text_img_set05 .txt {
  margin-top: 10px;
  text-align: center;
  margin-bottom: 15px;
}

.text_img_set05 .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
  text-align: center;
}

.text_img_set05 img {
  border-radius: 6px;
  max-width: 500px;
  width: auto;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .text_img_set01,
  .text_img_set02,
  .text_img_set03,
  .text_img_set04 {
    margin-bottom: 6%;
  }
  .text_img_set01:has(.img_Area) .txt_Area,
  .text_img_set02:has(.img_Area) .txt_Area,
  .text_img_set03:has(.img_Area) .txt_Area,
  .text_img_set04:has(.img_Area) .txt_Area,
  .text_img_set05:has(.img_Area) .txt_Area {
    margin-top: 3%;
  }
  .text_img_set01:not(:has(.img_Area)) .txt_Area,
  .text_img_set02:not(:has(.img_Area)) .txt_Area,
  .text_img_set03:not(:has(.img_Area)) .txt_Area,
  .text_img_set04:not(:has(.img_Area)) .txt_Area {
    margin-top: 2%;
  }
  .text_img_set01 .tit,
  .text_img_set02 .tit,
  .text_img_set03 .tit,
  .text_img_set04 .tit,
  .text_img_set05 .tit {
    font-size: clamp(1.2rem, 4.3vw, 2.1rem) !important;
  }
  .caption {
    font-size: clamp(1rem, 3.6vw, 1.4rem) !important;
    margin-bottom: 5px;
  }
  .text_img_set01 > div {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 2%;
  }
  .text_img_set01 .txt {
    margin-top: 5px;
  }
  .text_img_set02 > div {
    width: 100% !important;
    margin-left: 0 !important;
    margin-bottom: 2%;
  }
  .text_img_set02 {
    flex-direction: column-reverse;
  }
  .text_img_set02 .txt {
    margin-top: 5px;
  }
  .text_img_set03 > div {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 2%;
  }
  .text_img_set03 .txt {
    margin-top: 5px;
  }
  .text_img_set04 > div {
    width: 100% !important;
    margin-left: 0 !important;
    margin-bottom: 2%;
  }
  .text_img_set04 {
    flex-direction: column-reverse;
  }
  .text_img_set04 .txt {
    margin-top: 5px;
  }
  .text_img_set05 {
    width: 100%;
    max-width: 100%;
  }
  .text_img_set05 .txt {
    margin-top: 5px;
    margin-bottom: 2%;
  }
  .text_img_set05 img {
    width: 100%;
  }
}
/* ---------------------------------------------------------------------------
  ★ボタンセット
--------------------------------------------------------------------------- */
.btn_set01,
.btn_set02,
.btn_set03,
.btn_set04,
.btn_set05,
.btn_set06 {
  margin-top: 30px;
  margin-bottom: 60px;
}

.btn a {
  color: #fff;
  letter-spacing: 0.16em;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
  background: #0051ab;
  border: 1px solid #0051ab;
  border-radius: 6px;
  padding: 6px 40px;
  position: relative;
  min-width: 149px;
  z-index: 0;
  font-weight: 700;
  display: inline-block;
  text-align: center;
  overflow: hidden;
}

.btn a::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease 0.3s;
}

.btn a::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0.45em;
  background: url(../img/arrow_w.svg) no-repeat center/100%;
  width: 0.8em;
  height: 0.8em;
  top: 50%;
  transform: translateY(-50%);
}

.btn a:hover {
  opacity: 1;
  color: #0051ab;
}

.btn a:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.btn_set02 .btn_center {
  text-align: center;
}

.btn_set03 .btn_right {
  text-align: right;
}

.btn_set04 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.btn_set04 > div {
  width: 48%;
  margin-bottom: 1%;
}

.btn_set04 > div a {
  width: 100%;
}

.btn_set05 {
  display: flex;
  gap: 3.5%;
  flex-wrap: wrap;
}

.btn_set05 > div {
  width: 31%;
  margin-bottom: 1%;
}

.btn_set05 > div a {
  width: 100%;
}

.btn_set06 {
  display: flex;
  gap: 2.65%;
  flex-wrap: wrap;
}

.btn_set06 > div {
  width: 23%;
  margin-bottom: 1%;
}

.btn_set06 > div a {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .btn_set01,
  .btn_set02,
  .btn_set03,
  .btn_set04,
  .btn_set05,
  .btn_set06 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .btn a {
    padding: 6px 20px;
  }
  .btn_set05 > div {
    width: 48%;
  }
  .btn_set06 > div {
    width: 48%;
  }
}
/* ---------------------------------------------------------------------------
  ★新着情報等セット
--------------------------------------------------------------------------- */
.bg_b {
  background: #d5e4f4;
}

.news_set {
  border-radius: 10px;
  border: 1px solid #dedfea;
  background: #fff;
  padding: 39px 36px 33px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  font-weight: 500;
  margin-top: 30px;
  margin-bottom: 60px;
}

.news_set .h2Tit_bb {
  border-bottom: 1px solid #a3a6b1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.news_set .h_h2Tit {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 140%;
}

.news_set .h_subh2Tit {
  font-family: "Zen Kaku Gothic New";
  color: #afadb7;
  font-size: 1.8rem;
  line-height: 140%;
  padding-bottom: 5px;
}

.news_set .btn_02 a {
  display: inline-block;
  padding-left: 1.7em;
  background: url(../img/arrow_b.svg) no-repeat left top 0.4em/1.2em;
  color: #120f26;
  font-weight: 700;
  font-size: 1.8rem;
}

.news_set .btn_02 a:hover {
  opacity: 0.6;
}

.news_set .o_02 > li {
  padding: 19px 2px;
}

.news_set .o_02 .head {
  display: flex;
}

.news_set .o_02 .day {
  color: #9693ac;
  font-size: 1.4rem;
  font-weight: 700;
  margin-right: 10px;
}

.news_set .o_02 .tit {
  color: #33313d;
  line-height: 140%;
  margin-top: 5px;
}

.news_set .tagList {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}

.news_set .o_02 .tag {
  display: inline-block;
  text-align: center;
  background: #0051ab;
  border-radius: 12px;
  padding: 4px 14px;
  font-size: 1.4rem;
  font-weight: 700;
  color: #fff;
  line-height: 120%;
}

.news_set .o_02 .tag.new {
  background: none;
  color: #d41c1c;
  border: 1px solid #d41c1c;
}

.news_set .grey {
  letter-spacing: -0.08em;
  margin-left: 2px;
}

.news_set a[target] .tit span:after,
.news_set a[href$=".docx"] .tit span:after,
.news_set a[href$=".doc"] .tit span:after,
.news_set a[href$=".xls"] .tit span:after,
.news_set a[href$=".ppt"] .tit span:after,
.news_set a[href$=".pptm"] .tit span:after,
.news_set a[href$=".csv"] .tit span:after,
.news_set a[href$=".pdf"] .tit span:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -1.2em;
  bottom: 3px;
  background: url(../img/ex_link_b02.svg) no-repeat center/100%;
  width: 1em;
  height: 1.1em;
  transition: 0.3s;
}
.news_set a[href$=".pdf"] .tit span:after {
  background: url(../img/pdf_link.svg) no-repeat center/100%;
}
.news_set a .tit span {
  position: relative;
}

@media screen and (max-width: 767px) {
  .news_set {
    width: 100%;
    max-width: 100%;
    padding: 6%;
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .news_set .h_h2Tit {
    font-size: clamp(1.2rem, 4.6vw, 2.4rem) !important;
  }
  .news_set .h_subh2Tit,
  .news_set .btn_02 a {
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
  .news_set .o_02 .day {
    font-size: clamp(1rem, 3.6vw, 1.4rem) !important;
  }
  .news_set .o_02 .tag {
    font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
    padding: 4px 14px 5px;
  }
  .news_set .o_02 > li {
    padding: 3% 2px;
  }
  .news_set .o_02 .head {
    flex-wrap: wrap;
  }
  .news_set .o_02 .tagList {
    width: 100%;
    margin-top: 5px;
  }
}
/* ---------------------------------------------------------------------------
  ★クリッカブルセット
--------------------------------------------------------------------------- */
.clickable_set {
  position: relative;
  margin-top: 30px;
  margin-bottom: 60px;
}

.clickable_set img {
  width: 100%;
  max-width: 700px;
  margin: auto;
  border-radius: 6px;
}

.clickable_set .js_modalWrap {
  opacity: 0;
  z-index: -1;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.clickable_set .js_modalBtnCont {
  display: flex;
  cursor: pointer;
  width: 22px;
  height: 22px;
  background: #0051ab;
  font-size: 1.2rem;
  font-weight: bold;
  border: 2px solid #fff;
  color: #fff;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  line-height: 1;
  top: 0;
  left: 0;
  padding-bottom: 1px;
  transition: opacity 0.3s;
}

.clickable_set .js_modalWrap.active {
  animation: modalOpen 0.3s ease forwards;
}

.clickable_set .js_modalWrap.active2 {
  animation: modalClose 0.3s ease forwards;
}

.clickable_set .js_modalBG {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}

.clickable_set .js_modalContInner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  max-width: 790px;
  width: 90%;
  display: block;
  border-radius: 10px;
  border: 1px solid #dedfea;
  background: #fff;
  padding: 2% 4%;
  max-height: 800px;
  z-index: 99999;
}

.clickable_set .js_modalCont {
  max-height: 724px;
  overflow-y: scroll;
}

.clickable_set .js_modalContInner .titArea {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.clickable_set .js_modalContInner .titArea .tit_num {
  display: flex;
  width: 40px;
  height: 40px;
  background: #0051ab;
  font-weight: bold;
  border: 2px solid #fff;
  color: #fff;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  line-height: 1;
  top: 0;
  left: 0;
  padding-bottom: 1px;
  transition: opacity 0.3s;
  font-size: 2rem;
  margin-right: 10px;
}

.clickable_set .js_modalContInner .titArea .tit_text {
  font-size: 2rem;
  font-weight: 700;
  line-height: 120%;
}

.clickable_set .js_modalContInner .txt {
  margin-top: 10px;
  margin-bottom: 10px;
}

.clickable_set .js_modalClose {
  display: block;
  position: absolute;
  top: 10.5px;
  right: 10.5px;
  width: 40px;
  height: 40px;
  overflow: hidden;
  cursor: pointer;
  z-index: 888;
  background: #120f26;
  border-radius: 50%;
}

.clickable_set .js_modalClose::before,
.clickable_set .js_modalClose::after {
  content: "";
  background-color: #fff;
  position: absolute;
  top: 12px;
  right: 18px;
  width: 3px;
  height: 16px;
  z-index: 889;
}

.clickable_set .js_modalClose::before {
  transform: rotate(45deg);
}

.clickable_set .js_modalClose::after {
  transform: rotate(-45deg);
}

.clickable_set .js_modalBtnCont {
  font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
}

.clickable_set .js_modalBtnWrap {
  position: absolute;
}

@keyframes modalOpen {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    z-index: 1000;
  }
}
@keyframes modalClose {
  0% {
    opacity: 1;
    z-index: 1000;
  }
  100% {
    opacity: 0;
  }
}
@media screen and (max-width: 767px) {
  .clickable_set {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .clickable_set .js_modalCont,
  .clickable_set .js_modalContInner {
    max-height: 90vh;
  }
  .clickable_set .js_modalContInner .titArea .tit_text,
  .clickable_set .js_modalContInner .titArea .tit_num {
    font-size: clamp(1.2rem, 4.2vw, 2rem) !important;
  }
  .clickable_set .js_modalClose {
    width: 28px;
    height: 28px;
  }
  .clickable_set .js_modalClose::before,
  .clickable_set .js_modalClose::after {
    top: 7px;
    right: 13px;
    width: 2px;
    height: 13px;
  }
  .clickable_set .js_modalContInner,
  .clickable_set .js_modalCont {
    max-height: 50vh;
  }
  .clickable_set .js_modalContInner .titArea .tit_num {
    width: 30px;
    height: 30px;
  }
}
/* ---------------------------------------------------------------------------
  ★バナーリスト
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★アンカーリンク
--------------------------------------------------------------------------- */
.btn_link_y01 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 4%;
  margin-top: 30px;
  margin-bottom: 60px;
}

.btn_link_y01 .btn_02 a {
  display: inline-block;
  padding-left: 1.7em;
  background: url(../img/arrow_b.svg) no-repeat left top 0.4em/1.2em;
  color: #120f26;
  font-weight: 700;
  font-size: 1.8rem;
}

.btn_link_y01 .btn_02 a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 767px) {
  .btn_link_y01 {
    gap: 5px 12%;
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .btn_link_y01 .btn_02 a {
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
}
/* ---------------------------------------------------------------------------
  ★リストセット
--------------------------------------------------------------------------- */
.list_set01,
.list_set02,
.list_set04 {
  margin-top: 30px;
  margin-bottom: 60px;
}
.list_set01 a,
.list_set02 a,
.list_set04 a {
  color: #0051ab;
  text-decoration: underline;
  position: relative;
}
.list_set01 a[target]:after,
.list_set01 a[href$=".docx"]:after,
.list_set01 a[href$=".doc"]:after,
.list_set01 a[href$=".xls"]:after,
.list_set01 a[href$=".ppt"]:after,
.list_set01 a[href$=".pptm"]:after,
.list_set01 a[href$=".csv"]:after,
.list_set01 a[href$=".pdf"]:after,
.list_set02 a[target]:after,
.list_set02 a[href$=".docx"]:after,
.list_set02 a[href$=".doc"]:after,
.list_set02 a[href$=".xls"]:after,
.list_set02 a[href$=".ppt"]:after,
.list_set02 a[href$=".pptm"]:after,
.list_set02 a[href$=".csv"]:after,
.list_set02 a[href$=".pdf"]:after,
.list_set04 a[target]:after,
.list_set04 a[href$=".docx"]:after,
.list_set04 a[href$=".doc"]:after,
.list_set04 a[href$=".xls"]:after,
.list_set04 a[href$=".ppt"]:after,
.list_set04 a[href$=".pptm"]:after,
.list_set04 a[href$=".csv"]:after,
.list_set04 a[href$=".pdf"]:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -1.2em;
  bottom: 3px;
  background: url(../img/ex_link_b.svg) no-repeat center/100%;
  width: 1em;
  height: 1.1em;
  transition: 0.3s;
}
.list_set01 a[href$=".pdf"]:after,
.list_set02 a[href$=".pdf"]:after,
.list_set04 a[href$=".pdf"]:after {
  background: url(../img/pdf_link.svg) no-repeat center/100%;
}
.list_set01 a:hover,
.list_set01 a:hover::after,
.list_set02 a:hover,
.list_set02 a:hover::after,
.list_set04 a:hover,
.list_set04 a:hover::after {
  opacity: 0.6;
}
.list_set01 b,
.list_set02 b,
.list_set04 b {
  font-weight: 600;
}
.list_set01 i,
.list_set02 i,
.list_set04 i {
  font-style: italic;
}
.list_set01 u,
.list_set02 u,
.list_set04 u {
  text-decoration: underline;
}
.list_set01 strike,
.list_set02 strike,
.list_set04 strike {
  text-decoration: line-through;
}

.list_set01 li {
  position: relative;
  margin-left: 20px;
  margin-bottom: 10px;
}

.list_set01 li a {
  color: #0051ab;
  text-decoration: underline;
}

.list_set01 li a:hover {
  opacity: 0.6;
}

.list_set01 li > ul {
  padding-left: 1em;
  margin-top: 10px;
}

.list_set01 li:before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  background: #0051ab;
  border-radius: 50%;
  top: 0.7em;
  left: -14px;
}

.list_set02 {
  list-style: none;
  counter-reset: number;
}

.list_set02 li {
  position: relative;
  padding-left: 30px;
  margin-left: 0 !important;
  margin-bottom: 0 !important;
}

.list_set02 li ol {
  counter-reset: sub-counter !important;
}

.list_set02 li ol li {
  counter-increment: sub-counter !important;
}

.list_set02 li ol li::before {
  content: "（" counter(sub-counter) "）" !important;
  position: absolute;
  left: -8px !important;
}

.list_set02 li a {
  color: #0051ab;
  text-decoration: underline;
}

.list_set02 li a:hover {
  opacity: 0.6;
}

.list_set02 > li::before {
  counter-increment: number;
  content: "（" counter(number) "）" !important;
  position: absolute;
  left: -8px !important;
  top: 0 !important;
  border-radius: 0 !important;
  width: auto !important;
  height: auto !important;
  background: none !important;
}

.list_set04 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 5%;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .list_set01,
  .list_set02,
  .list_set04 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .list_set04 {
    gap: 5px 12%;
  }
}
/* ---------------------------------------------------------------------------
  ★注意書きセット
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★パンくずリスト
--------------------------------------------------------------------------- */
ul.pankuzu {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
  color: #666570;
  letter-spacing: 0.1em;
  position: relative;
  line-height: 100%;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 80px;
}

ul.pankuzu a {
  margin-right: 13px;
  position: relative;
  display: inline-block;
  padding-right: 16px;
  vertical-align: middle;
  text-decoration: none;
  color: #0051ab;
  line-height: 1.8;
}

ul.pankuzu a:hover {
  opacity: 0.6;
}

ul.pankuzu a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

ul.pankuzu a::before,
ul.pankuzu a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

ul.pankuzu a::before {
  right: 3px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #666570;
  border-right: 1px solid #666570;
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  ul.pankuzu {
    font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
    margin-bottom: 8%;
  }
}
/* ---------------------------------------------------------------------------
  ★沿革・歴史等
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★表組
--------------------------------------------------------------------------- */
.wisywig_Area table {
  width: 100%;
  word-break: break-all;
  word-wrap: break-all;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
}
.wisywig_Area table tr {
  border-top: none;
  border-left: none;
  border-right: none;
}
.wisywig_Area table tr th {
  border-right: 2px solid #fff;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: #d5e4f4;
  padding: 23px 15px;
  font-weight: 600;
  letter-spacing: 0.1em;
}
.wisywig_Area table tr td {
  border: 2px solid #f4f3f6;
  padding: 23px 21px;
}
.wisywig_Area table tr:first-child:has(th) {
  border-top: 2px solid #d5e4f4;
}
.wisywig_Area table tr:has(th) th:first-child {
  border-left: 2px solid #d5e4f4;
}
.wisywig_Area table tr:has(th) th:last-child {
  border-right: 2px solid #d5e4f4;
}

.table_set {
  margin-top: 30px;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .table_set {
    margin-top: 0;
    margin-bottom: 0;
  }
  .wisywig_Area.c_table {
    margin-top: 3%;
    margin-bottom: 6%;
    width: 100%;
  }
  .wisywig_Area.c_table.x_scroll {
    overflow-x: scroll;
  }
  .wisywig_Area.c_table.x_scroll table {
    width: 100%;
    min-width: 800px;
    border-collapse: collapse;
  }
  .wisywig_Area.c_table table tr th {
    white-space: wrap;
  }
  .wisywig_Area.c_table table tr th,
  .wisywig_Area.c_table table tr td {
    padding: 12px 13px !important;
    word-break: break-all !important;
  }
}
/* ---------------------------------------------------------------------------
  ★出水速報
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★サイドバー
--------------------------------------------------------------------------- */
.sidebar_set {
  width: 18em;
  border-radius: 6px;
  border: 1px solid #a3a6b1;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}

.sidebar_set .sidebar_cont {
  overflow: hidden;
}

.sidebar_set .page_tit span {
  font-size: 1.8rem;
  font-weight: 700;
  padding: 6%;
  color: #fff;
  border-radius: 6px 6px 0 0;
  background: #0051ab;
  display: inline-block;
  width: 100%;
}

.sidebar_set .tagSort a {
  position: relative;
  padding: 6% 2em 6% 6%;
  color: #120f26;
  display: inline-block;
  width: 100%;
}

.sidebar_set .tagSort a::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: 1.05em;
  background: url(../img/arrow.svg) no-repeat center/100%;
  width: 0.8em;
  height: 0.8em;
  top: 50%;
  transform: translateY(-50%);
}

.sidebar_set .tagSort a.current {
  background: rgb(185, 211, 241);
  font-weight: 700;
}

.sidebar_set .tagSort li:first-child a {
  border-top: 1px solid #a3a6b1;
}

.sidebar_set .tagSort a:hover,
.sidebar_set .page_tit a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 767px) {
  .sidebar_set {
    width: 100%;
  }
  .sidebar_set .tagSort a {
    padding: 4% 2.5em 4% 4%;
  }
  .sidebar_set .page_tit span {
    padding: 4%;
  }
  .sidebar_set .page_tit {
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
}
/* ---------------------------------------------------------------------------
  ★動画セット
--------------------------------------------------------------------------- */
.movie_set01,
.movie_set02,
.movie_set03 {
  margin-top: 30px;
  margin-bottom: 60px;
}

.movie_set01::after,
.movie_set02::after {
  content: "";
  display: block;
  clear: both;
}

.movie_set01 > div video {
  width: 100%;
}
.movie_set01 > div .youtube_movie {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66%;
}
.movie_set01 > div .youtube_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie_set01 > div .txt {
  margin-top: 10px;
}
.movie_set01 > div .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
}

.movie_set01 > div:nth-child(odd) {
  width: 41%;
  margin-right: 30px;
  float: left;
}

.movie_set02 > div video {
  width: 100%;
}
.movie_set02 > div .youtube_movie {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66%;
}
.movie_set02 > div .youtube_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie_set02 > div .txt {
  margin-top: 10px;
}
.movie_set02 > div .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
}

.movie_set02 > div:nth-child(odd) {
  width: 41%;
  margin-left: 30px;
  float: right;
}

.movie_set03 .videoArea {
  max-width: 100%;
  margin: 0 auto 10px;
}
.movie_set03 video {
  width: 100%;
}
.movie_set03 .youtube_movie {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66%;
}
.movie_set03 .youtube_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie_set03 .txt {
  margin-top: 10px;
}
.movie_set03 .tit {
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 140%;
}

@media screen and (max-width: 767px) {
  .movie_set01 > div,
  .movie_set02 > div,
  .movie_set03 > div {
    width: 100% !important;
    margin-bottom: 2% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .movie_set01,
  .movie_set02,
  .movie_set03 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .movie_set01 .txt,
  .movie_set02 .txt,
  .movie_set03 .txt {
    margin-top: 5px !important;
  }
  .movie_set01 .tit,
  .movie_set02 .tit,
  .movie_set03 .tit {
    font-size: clamp(1.2rem, 4.3vw, 2.1rem) !important;
  }
  .movie_set03 .tit {
    margin-top: 2% !important;
  }
}
/* ---------------------------------------------------------------------------
  ★ギャラリーセット
--------------------------------------------------------------------------- */
.img_set01,
.img_set02,
.img_set03,
.img_set04 {
  margin-top: 30px;
  margin-bottom: 60px;
}
.img_set01 .caption,
.img_set02 .caption,
.img_set03 .caption,
.img_set04 .caption {
  color: #33313d;
}
.img_set01 .tit,
.img_set02 .tit,
.img_set03 .tit,
.img_set04 .tit {
  font-weight: 700;
  line-height: 140%;
  margin-bottom: 10px;
}
.img_set01 a,
.img_set02 a,
.img_set03 a,
.img_set04 a {
  color: #120f26;
}

.img_set01 .tit {
  font-size: 2.2rem;
  text-align: center;
}

.img_set01 .caption {
  text-align: center;
}

.img_set01 > li {
  margin: auto;
  margin-bottom: 25px;
  width: 100%;
}

.img_set01 img {
  border-radius: 6px;
  width: auto;
  height: auto;
  margin: auto;
}

.img_set02 {
  display: flex;
  gap: 25px 4%;
  flex-wrap: wrap;
}

.img_set02 .tit {
  font-size: 2.2rem;
}

.img_set02 > li {
  width: 48%;
}

.img_set02 img {
  border-radius: 6px;
  max-height: 432px;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.img_set03 {
  display: flex;
  gap: 25px 3.5%;
  flex-wrap: wrap;
}

.img_set03 .tit {
  font-size: 2.1rem;
}

.img_set03 > li {
  width: 31%;
}

.img_set03 img {
  border-radius: 6px;
  max-height: 279px;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

.img_set04 {
  display: flex;
  gap: 25px 2.6%;
  flex-wrap: wrap;
}

.img_set04 .tit {
  font-size: 2rem;
}

.img_set04 > li {
  width: 23%;
}

.img_set04 img {
  border-radius: 6px;
  max-height: 207px;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .img_set01,
  .img_set02,
  .img_set03,
  .img_set04 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .img_set01 .tit {
    font-size: clamp(1.2rem, 4.3vw, 2.1rem) !important;
    margin-bottom: 5px;
    text-align: left;
  }
  .img_set01 .caption {
    text-align: left;
  }
  .img_set01 > li {
    margin-bottom: 10px;
    width: 100%;
  }
  .img_set01 > li img {
    max-height: 100%;
  }
  .img_set02,
  .img_set03,
  .img_set04 {
    gap: 10px 3.5%;
  }
  .img_set02 .tit,
  .img_set03 .tit,
  .img_set04 .tit {
    font-size: clamp(1.2rem, 4.2vw, 2rem) !important;
    margin-bottom: 5px;
  }
  .img_set02 > li,
  .img_set03 > li,
  .img_set04 > li {
    width: 48.2%;
  }
  .img_set02 > li img,
  .img_set03 > li img,
  .img_set04 > li img {
    height: auto;
  }
}
/* ---------------------------------------------------------------------------
  ★先頭へ戻るテキストリンク
--------------------------------------------------------------------------- */
.btn_03 a {
  display: inline-block;
  padding-right: 1.7em;
  background: url(../img/arrow_b_t.svg) no-repeat right top 0.4em/1.2em;
  color: #120f26;
  font-weight: 500;
}

.btn_03 a:hover {
  opacity: 0.6;
}

/* ---------------------------------------------------------------------------
  ★入札・契約情報セット
--------------------------------------------------------------------------- */
.c_table_05 {
  margin-top: 30px;
  margin-bottom: 60px;
}

.c_table_05 table {
  table-layout: fixed;
}

.c_table_05 table tr th {
  background: #d5e4f4;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  padding: 23px 15px;
  word-break: break-all;
  font-weight: 600;
  vertical-align: top;
  letter-spacing: 0.1em;
}

.c_table_05 table tr td {
  border-bottom: 2px solid #f4f3f6;
  padding: 23px 21px;
  word-break: break-all;
  border-right: 2px solid #f4f3f6;
  border-top: 2px solid #f4f3f6;
  vertical-align: top;
}

.c_table_05 table tr th:last-child {
  border-right: none;
}

.c_table_05 table tr td:first-child {
  border-left: 2px solid #f4f3f6;
}

.bid_cont_info01 .c_table_05 table tr th:nth-of-type(3) {
  width: 13em;
}

.bid_cont_info02 .c_table_05 table tr th:nth-of-type(1),
.bid_cont_info02 .c_table_05 table tr th:nth-of-type(3) {
  width: 11em;
}

.bid_cont_info03 .c_table_05 table tr th:nth-of-type(2),
.bid_cont_info03 .c_table_05 table tr th:nth-of-type(4) {
  width: 11em;
}

.bid_cont_info04 .c_table_05 table tr th:nth-of-type(2) {
  width: 11em;
}

@media screen and (max-width: 767px) {
  .c_table_05 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .c_table_05.x_scroll {
    overflow-x: scroll;
  }
  .c_table_05.x_scroll table {
    width: 100%;
    min-width: 800px;
    border-collapse: collapse;
  }
  .c_table_05 table tr th,
  .c_table_05 table tr td {
    padding: 12px 13px !important;
    word-break: break-all !important;
  }
}
/* ---------------------------------------------------------------------------
  ★お問い合わせフォーム
--------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
  ★サムネイルボタンリンクセット
--------------------------------------------------------------------------- */
.imgLink01,
.imgLink02,
.imgLink03 {
  margin-bottom: 60px;
  margin-top: 30px;
}
.imgLink01 > li a,
.imgLink02 > li a,
.imgLink03 > li a {
  overflow: hidden;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
  display: flex;
  height: 100%;
}
.imgLink01 > li a > div.rela,
.imgLink02 > li a > div.rela,
.imgLink03 > li a > div.rela {
  display: grid;
  place-items: center;
  height: 100%; /* 必要なら指定 */
}
.imgLink01 .caption,
.imgLink02 .caption,
.imgLink03 .caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #818285;
  color: #fff;
  padding: 5px 10px;
  margin: 0;
  font-size: 89%;
  width: 100%;
}
.imgLink01 img,
.imgLink02 img,
.imgLink03 img {
  margin: auto;
}

.imgLink05 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 60px;
  align-items: stretch;
  gap: 15px;
}
.imgLink05 > li {
  width: 49%;
  border-radius: 10px;
}
.imgLink05 > li a {
  background: #f4f3f6;
  border-radius: 10px;
  border: 1px solid #dedfea;
  display: inline-block;
  width: 100%;
  letter-spacing: 0.05em;
  display: flex;
  height: 100%;
  align-items: center;
  font-size: 1.8rem;
  overflow: hidden;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}
.imgLink05 > li a > div {
  width: 25em;
  height: 100%;
  display: grid;
  place-items: center;
  height: 100%; /* 必要なら指定 */
}
.imgLink05 > li a > div img {
  margin: auto;
}
.imgLink05 > li a > div .caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #818285;
  color: #fff;
  padding: 5px 10px;
  margin: 0;
  font-size: 89%;
  width: 100%;
}
.imgLink05 > li a > p {
  width: calc(100% - 27em);
  padding: 10px;
}
.imgLink05 > li a .btn_02 {
  width: 100%;
  background: url(../img/arrow_b.svg) no-repeat right 1em center/1.3em;
  color: #120f26;
  font-weight: 700;
  padding: 12px 2.8em 12px 24px;
}
.imgLink05 > li a:hover {
  background: #d5e4f4;
  box-shadow: none;
}

@media screen and (max-width: 767px) {
  .imgLink05 {
    width: 100%;
    gap: 15px 2%;
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .imgLink05 > li {
    width: 48%;
  }
  .imgLink05 > li a {
    flex-direction: column;
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
  .imgLink05 > li a > * {
    width: 100% !important;
  }
  .imgLink05 > li a > div.rela {
    display: grid;
    place-items: center;
    height: 100%; /* 必要なら指定 */
  }
  .imgLink05 .btn_02 {
    background: url(../img/arrow_b.svg) no-repeat right 4px center/1.1em !important;
    padding: 8px 1.7em 8px 8px !important;
  }
  .imgLink05 .caption {
    font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
  }
}
.imgLink01 {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 4%;
  margin-top: 30px;
}
.imgLink01 > li {
  width: 48%;
  border-radius: 10px;
}
.imgLink01 > li a {
  background: #f4f3f6;
  border-radius: 10px;
  border: 1px solid #dedfea;
  width: 100%;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}
.imgLink01 > li .btn_02 {
  width: 100%;
  background: url(../img/arrow_b.svg) no-repeat right 1em center/1.1em;
  color: #120f26;
  font-weight: 700;
  padding: 12px 2.5em 12px 1em;
}
.imgLink01 > li a:hover {
  background: #d5e4f4;
  box-shadow: none;
}

.imgLink02 {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 2%;
  margin-top: 30px;
}
.imgLink02 > li {
  width: 32%;
  border-radius: 10px;
}
.imgLink02 > li a {
  background: #f4f3f6;
  border-radius: 10px;
  border: 1px solid #dedfea;
  width: 100%;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}
.imgLink02 > li .btn_02 {
  width: 100%;
  background: url(../img/arrow_b.svg) no-repeat right 1em center/1.1em;
  color: #120f26;
  font-weight: 700;
  padding: 12px 2.5em 12px 1em;
}
.imgLink02 > li a:hover {
  background: #d5e4f4;
  box-shadow: none;
}

.imgLink03 {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 2%;
  margin-top: 30px;
}
.imgLink03 > li {
  width: 23.5%;
  border-radius: 10px;
}
.imgLink03 > li a {
  background: #f4f3f6;
  border-radius: 10px;
  border: 1px solid #dedfea;
  width: 100%;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}
.imgLink03 > li .btn_02 {
  width: 100%;
  background: url(../img/arrow_b.svg) no-repeat right 1em center/1.1em;
  color: #120f26;
  font-weight: 700;
  padding: 12px 2.5em 12px 1em;
}
.imgLink03 > li a:hover {
  background: #d5e4f4;
  box-shadow: none;
}

@media screen and (max-width: 767px) {
  .imgLink01,
  .imgLink02,
  .imgLink03 {
    margin-top: 3%;
    margin-bottom: 6%;
  }
  .imgLink01 > li,
  .imgLink02 > li,
  .imgLink03 > li {
    width: 48%;
  }
  .imgLink01 > li a,
  .imgLink02 > li a,
  .imgLink03 > li a {
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
  .imgLink01 > li a > div.rela,
  .imgLink02 > li a > div.rela,
  .imgLink03 > li a > div.rela {
    display: grid;
    place-items: center;
    height: 100%; /* 必要なら指定 */
  }
  .imgLink01 > li a .btn_02,
  .imgLink02 > li a .btn_02,
  .imgLink03 > li a .btn_02 {
    background: url(../img/arrow_b.svg) no-repeat right 4px center/1.1em;
    padding: 8px 1.7em 8px 8px;
  }
  .imgLink01 > li a .caption,
  .imgLink02 > li a .caption,
  .imgLink03 > li a .caption {
    font-size: clamp(0.8rem, 3.4vw, 1.2rem) !important;
  }
}
/* ---------------------------------------------------------------------------
  ★サイドバーあり
--------------------------------------------------------------------------- */
#widthSidebar {
  display: flex;
  justify-content: space-between;
  position: relative;
  align-items: flex-start;
}
#widthSidebar #contentArea {
  width: calc(100% - 21em);
  margin-top: 0 !important;
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  #widthSidebar {
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  #widthSidebar > * {
    width: 100% !important;
  }
  #widthSidebar #contentArea {
    margin-bottom: 6%;
    margin-right: auto;
  }
}
/* ---------------------------------------------------------------------------
  ★06_door.php 扉ページ
--------------------------------------------------------------------------- */
.imgLink04 {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 2%;
  margin-top: 30px;
  margin-bottom: 60px;
}
.imgLink04 > li {
  width: 48%;
  border-radius: 10px;
}
.imgLink04 > li a {
  background: #f4f3f6;
  border-radius: 10px;
  border: 1px solid #dedfea;
  display: inline-block;
  width: 100%;
  letter-spacing: 0.05em;
  display: flex;
  padding: 12px 0 12px 12px;
  align-items: center;
  font-size: 1.8rem;
  box-shadow: 0px 3px 3px 0px rgba(17, 16, 26, 0.25);
}
.imgLink04 > li .btn_02 {
  width: 100%;
  background: url(../img/arrow_b.svg) no-repeat right 1em center/1.3em;
  color: #120f26;
  font-weight: 700;
  padding: 12px 2.8em 12px 24px;
}
.imgLink04 > li a:hover {
  background: #d5e4f4;
  box-shadow: none;
}

@media screen and (max-width: 767px) {
  .imgLink04 {
    margin-top: 3% !important;
    margin-bottom: 6% !important;
  }
  .imgLink04 > li {
    width: 100% !important;
  }
  .imgLink04 > li a {
    padding: 2% 0 2% 2% !important;
    font-size: clamp(1rem, 4vw, 1.8rem) !important;
  }
  .imgLink04 > li a img {
    width: 5em !important;
    margin-right: 0 !important;
  }
  .imgLink04 > li a .btn_02 {
    background: url(../img/arrow_b.svg) no-repeat right 1em center/1.1em !important;
    padding: 1% 2.4em 1% 10px !important;
  }
}
/* ---------------------------------------------------------------------------
  ★微調整
--------------------------------------------------------------------------- */
#contentArea {
  margin-top: 80px;
  margin-bottom: 100px;
}
#contentArea > *:first-child .h2Tit,
#contentArea > *:first-child .h3Tit_br,
#contentArea > *:first-child .h4Tit {
  margin-top: 0;
}
#contentArea .h2Tit:empty,
#contentArea .h3Tit_br:empty,
#contentArea .h4Tit:empty {
  display: none;
}

#newsArea {
  margin-top: 80px;
  margin-bottom: 100px;
}
#newsArea .h2Tit:empty,
#newsArea .h3Tit_br:empty,
#newsArea .h4Tit:empty {
  display: none;
}

@media screen and (max-width: 767px) {
  #contentArea,
  #newsArea {
    margin-top: 8%;
    margin-bottom: 10%;
  }
}
/* ---------------------------------------------------------------------------
  ★02_03_新着情報
--------------------------------------------------------------------------- */
.main_inpages {
  background: #d5e4f4;
  padding-top: 35px;
  padding-bottom: 30px;
}

.archive-news01,
.single-news01 {
  border-bottom: 3px solid #fff;
}
.archive-news01 .sidebar,
.single-news01 .sidebar {
  width: 11em;
}
.archive-news01 .sidebar .tagSort a,
.single-news01 .sidebar .tagSort a {
  position: relative;
  border-bottom: 1px solid #a3a6b1;
  padding: 8% 8% 8% 2em;
  color: #120f26;
  display: inline-block;
  width: 100%;
}
.archive-news01 .sidebar .tagSort a::before,
.archive-news01 .sidebar .tagSort a::after,
.single-news01 .sidebar .tagSort a::before,
.single-news01 .sidebar .tagSort a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.archive-news01 .sidebar .tagSort a::before,
.single-news01 .sidebar .tagSort a::before {
  left: 1em;
  width: 4px;
  height: 4px;
  border-top: 1px solid #120f26;
  border-right: 1px solid #120f26;
  transform: rotate(45deg);
}
.archive-news01 .sidebar .tagSort a.current,
.single-news01 .sidebar .tagSort a.current {
  color: #0051ab;
}
.archive-news01 .sidebar .tagSort a.current::before,
.single-news01 .sidebar .tagSort a.current::before {
  border-top: 1px solid #0051ab;
  border-right: 1px solid #0051ab;
}
.archive-news01 .sidebar .tagSort li:first-child a,
.single-news01 .sidebar .tagSort li:first-child a {
  border-top: 1px solid #a3a6b1;
}
.archive-news01 .newsArea,
.single-news01 .newsArea {
  width: calc(100% - 14em);
}
.archive-news01 .newsArea .o_02 > li,
.single-news01 .newsArea .o_02 > li {
  padding: 22px 5px;
  border-bottom: 2px solid #f4f3f6;
}
.archive-news01 .newsArea .o_02 .head,
.single-news01 .newsArea .o_02 .head {
  display: flex;
}
.archive-news01 .newsArea .o_02 .day,
.single-news01 .newsArea .o_02 .day {
  color: #9693ac;
}
.archive-news01 .newsArea .o_02 .tit,
.single-news01 .newsArea .o_02 .tit {
  color: #33313d;
}
.archive-news01 .newsArea a[target] span:after,
.archive-news01 .newsArea a[href$=".docx"] span:after,
.archive-news01 .newsArea a[href$=".doc"] span:after,
.archive-news01 .newsArea a[href$=".xls"] span:after,
.archive-news01 .newsArea a[href$=".ppt"] span:after,
.archive-news01 .newsArea a[href$=".pptm"] span:after,
.archive-news01 .newsArea a[href$=".csv"] span:after,
.archive-news01 .newsArea a[href$=".pdf"] span:after,
.single-news01 .newsArea a[target] span:after,
.single-news01 .newsArea a[href$=".docx"] span:after,
.single-news01 .newsArea a[href$=".doc"] span:after,
.single-news01 .newsArea a[href$=".xls"] span:after,
.single-news01 .newsArea a[href$=".ppt"] span:after,
.single-news01 .newsArea a[href$=".pptm"] span:after,
.single-news01 .newsArea a[href$=".csv"] span:after,
.single-news01 .newsArea a[href$=".pdf"] span:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -1.2em;
  bottom: 3px;
  background: url(../img/ex_link_b02.svg) no-repeat center/100%;
  width: 1em;
  height: 1.1em;
  transition: 0.3s;
}
.archive-news01 .newsArea a[href$=".pdf"] span:after,
.single-news01 .newsArea a[href$=".pdf"] span:after {
  background: url(../img/pdf_link.svg) no-repeat center/100%;
}
.archive-news01 .newsArea a span,
.single-news01 .newsArea a span {
  position: relative;
}
.archive-news01 .textArea .h2Tit:empty,
.archive-news01 .textArea .h3Tit_br:empty,
.archive-news01 .textArea .h4Tit:empty,
.single-news01 .textArea .h2Tit:empty,
.single-news01 .textArea .h3Tit_br:empty,
.single-news01 .textArea .h4Tit:empty {
  display: none;
}
.archive-news01 .s_news_pager,
.single-news01 .s_news_pager {
  gap: 4%;
}
.archive-news01 .s_news_pager .btn03 a,
.single-news01 .s_news_pager .btn03 a {
  font-weight: 500;
  box-shadow: none;
}
.archive-news01 .s_news_pager .back a::after,
.single-news01 .s_news_pager .back a::after {
  display: none;
}
.archive-news01 .s_news_pager .back a,
.single-news01 .s_news_pager .back a {
  min-width: 189px;
}
.archive-news01 .s_news_pager .prev a::after,
.single-news01 .s_news_pager .prev a::after {
  right: 0;
  left: 0.45em;
  background: url(../img/arrow_w.svg) no-repeat center/100%;
  transform: rotate(180deg);
  top: 36%;
}

@media screen and (max-width: 767px) {
  .main_inpages {
    padding-top: 3.5%;
    padding-bottom: 3%;
  }
  .h3Tit_br {
    border-radius: 12px;
  }
  .archive-news01 .newsArea,
  .single-news01 .newsArea,
  .archive-news01 .sidebar,
  .single-news01 .sidebar {
    width: 100%;
  }
  .archive-news01 .sidebar,
  .single-news01 .sidebar {
    margin-top: 12%;
  }
  .archive-news01 > .flex,
  .single-news01 > .flex {
    flex-wrap: wrap;
  }
  .archive-news01 .newsArea .o_02 > li,
  .single-news01 .newsArea .o_02 > li {
    padding: 2% 5px 3%;
  }
  .archive-news01 .sidebar .tagSort a,
  .single-news01 .sidebar .tagSort a {
    padding: 4% 8% 4% 2em;
  }
  .archive-news01 .newsArea .o_02 .head,
  .single-news01 .newsArea .o_02 .head {
    align-items: center;
  }
  .archive-news01 .newsArea .o_02 .tag,
  .single-news01 .newsArea .o_02 .tag {
    padding: 4px 14px 4px;
    margin-left: 10px;
  }
  .single-news01 .newsArea .o_02 .tag {
    margin-left: 5px;
  }
  .n_subTit {
    margin-top: 10%;
    margin-bottom: 2%;
  }
  /* 一覧ページページャー */
  .s_news_pager {
    flex-wrap: wrap;
  }
  .s_news_pager .btn03.back {
    order: -1;
  }
} /*# sourceMappingURL=parts.css.map */
