@charset "utf-8";
:root {
  --color-headline_citizen: #09a4b3;
  --color-headline_fudo: #00af84;
  --color-headline_gyosei: #ef826e;
  --color-headline_about: #6fba2c;
  --color-headline_relative: #eeaa1e;
  --color-bg_citizen: #cee3ea;
  --color-bg_fudo: #d5e9d7;
  --color-bg_gyosei: #fce3db;
  --color-bg_about: #e1eece;
  --color-bg_relative: #fcebcd;
}
.top_section .outer_container {
  position: relative;
  height: 100%;
  overflow: visible;
}
#gyosei {
  background: var(--color-bg_gyosei);
}
#gyosei .headline_top__inner {
  padding-bottom: 15.74074074074074vw;
}
#gyosei .headline_top__inner__ribon {
  background: url("../images/ribon_gyosei.svg") no-repeat top center;
}
#gyosei .headline_top__inner hr {
  background: var(--color-headline_gyosei);
}
#gyosei .headline_top__inner p {
  color: var(--color-headline_gyosei);
}
#gyosei .container {
  padding: 3.055555555555555vw 0 4.444444444444445vw;
}
#gyosei .container .midashi_special {
  font-size: 1.851851851851852vw;
  line-height: 1.3em;
  text-align: center;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.388888888888889vw;
  display: block;
}
#gyosei .container .midashi_special .inner {
  background-color: var(--color-headline_gyosei);
  width: 100%;
}
#gyosei .container .midashi_special::before {
  border-color: var(--color-headline_gyosei);
}
#gyosei .container .midashi_special::after {
  border-color: var(--color-headline_gyosei);
}
#gyosei .container .midashi_special br {
  display: none;
}
#gyosei .container .midashi_special.single {
  margin-bottom: 2.685185185185185vw;
}
#gyosei .container .desc {
  font-size: 1.342592592592593vw;
  line-height: 1.6em;
  text-align: center;
  margin-bottom: 2.685185185185185vw;
  letter-spacing: 0.02em;
}
#gyosei .container .report_wrap {
  display: flex;
  flex-wrap: wrap;
  background: #fff;
  padding: 3.888888888888889vw 4.25925925925926vw 2.12962962962963vw;
  position: relative;
  justify-content: space-between;
  margin-bottom: 2.962962962962963vw;
}
#gyosei .container .report_wrap__new {
  position: absolute;
  width: 4.618518518518519vw;
  height: auto;
  top: -1.138731481481481vw;
  right: 0;
  left: 0;
  margin: auto;
}
#gyosei .container .report_wrap .post_item {
  width: 28.61111111111111vw;
}
#gyosei .container .report_wrap .post_item .post_thumbnail {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: block;
  position: relative;
  margin-bottom: 1.388888888888889vw;
}
#gyosei .container .report_wrap .post_item .post_thumbnail:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 64.7457%;
}
#gyosei .container .report_wrap .post_item a {
  display: block;
  color: #564d23;
}
#gyosei .container .report_wrap .post_item a h4 {
  font-size: 1.388888888888889vw;
  line-height: 1.4666em;
}
#gyosei .container .report_wrap .post_item .post_time {
  font-size: 1.018518518518519vw;
  line-height: 1em;
  margin-top: 0.925925925925926vw;
}
#gyosei .container .report_wrap + .btn_wrap {
  text-align: center;
  line-height: 0;
  margin-bottom: 3.703703703703703vw;
}
#gyosei .container .report_wrap + .btn_wrap a {
  display: inline-flex;
  line-height: 1em;
  font-size: 1.186564814814815vw;
  color: #564d23;
  padding: 0.925925925925926vw 1.111111111111111vw;
  border-top: 0.092592592592593vw solid #564d23;
  border-bottom: 0.092592592592593vw solid #564d23;
  background: #fff;
  align-items: center;
}
#gyosei .container .report_wrap + .btn_wrap a img {
  height: 1.186564814814815vw;
  width: auto;
  margin-left: 0.740740740740741vw;
}
#gyosei .container .archive_wrap {
  display: flex;
  width: fit-content;
  margin: 0 auto;
  font-size: 1.163074074074074vw;
  line-height: 1em;
  gap: 1em;
}
#gyosei .container .archive_wrap h4 {
  font-size: 1.163074074074074vw;
  line-height: 1em;
  display: inline-flex;
  align-items: center;
}
#gyosei .container .archive_wrap h4::before {
  content: "●";
  font-size: 0.715740740740741vw;
  line-height: 0;
  padding-top: 0.092592592592593vw;
}
#gyosei .container .archive_wrap a {
  color: #564d23;
}
#gyosei .container .archive_wrap a:last-child {
  display: inline-flex;
  align-items: center;
}
#gyosei .container .archive_wrap a:last-child::before {
  content: "●";
  font-size: 0.715740740740741vw;
  line-height: 0;
  padding-top: 0.092592592592593vw;
}
@media screen and (max-width: 599px) {
  #gyosei .headline_top {
    background-color: var(--color-headline_gyosei);
  }
  #gyosei .headline_top__inner {
    padding-bottom: 8vw;
  }
  #gyosei .headline_top__inner__ribon {
    background: url("../images/headline_ribon_sp.svg") no-repeat top center;
  }
  #gyosei .headline_top__inner__ribon span {
    color: var(--color-headline_gyosei);
  }
  #gyosei .headline_top__inner p {
    color: #fff;
  }
  #gyosei .container {
    padding: 8vw 4vw;
  }
  #gyosei .container .midashi_special {
    font-size: unset;
    width: 100%;
    margin-bottom: 4vw;
  }
  #gyosei .container .midashi_special .inner {
    line-height: 1.3em;
  }
  #gyosei .container .midashi_special br {
    display: inline;
  }
  #gyosei .container .midashi_special.single {
    margin-bottom: 8vw;
  }
  #gyosei .container .desc {
    font-size: 4vw;
    text-align: left;
    margin-bottom: 8vw;
  }
  #gyosei .container .desc br {
    display: none;
  }
  #gyosei .container .report_wrap {
    padding: 13.333333333333334vw 4vw 8vw;
    margin-bottom: 8vw;
    row-gap: 8vw;
  }
  #gyosei .container .report_wrap__new {
    width: 13.333333333333334vw;
    top: -3.279546666666666vw;
  }
  #gyosei .container .report_wrap .post_item {
    width: 100%;
  }
  #gyosei .container .report_wrap .post_item .post_thumbnail {
    margin-bottom: 4vw;
  }
  #gyosei .container .report_wrap .post_item a h4 {
    font-size: 4vw;
  }
  #gyosei .container .report_wrap .post_item .post_time {
    font-size: 2.933333333333333vw;
    margin-top: 2.666666666666667vw;
  }
  #gyosei .container .report_wrap + .btn_wrap {
    margin-bottom: 10.666666666666668vw;
  }
  #gyosei .container .report_wrap + .btn_wrap a {
    font-size: 3.417306666666667vw;
    padding: 2.666666666666667vw 3.2vw;
    border-top: 0.266666666666667vw solid #564d23;
    border-bottom: 0.266666666666667vw solid #564d23;
  }
  #gyosei .container .report_wrap + .btn_wrap a img {
    height: 3.417306666666667vw;
    margin-left: 2.133333333333333vw;
  }
  #gyosei .container .archive_wrap {
    font-size: 3.349653333333333vw;
    flex-direction: column;
    align-items: flex-start;
  }
  #gyosei .container .archive_wrap h4 {
    font-size: 4vw;
    margin-bottom: 1.333333333333333vw;
  }
  #gyosei .container .archive_wrap h4::before {
    display: none;
  }
  #gyosei .container .archive_wrap a:last-child {
    padding-left: 0.666666666666667vw;
  }
  #gyosei .container .archive_wrap a:last-child::before {
    font-size: 2.061333333333333vw;
    padding-top: 0.266666666666667vw;
    margin-right: 0.666666666666667vw;
  }
}
.gyosei_container .column_report_title {
  line-height: 0;
  text-align: center;
  padding: 4.166666666666666vw 0;
}
.gyosei_container .column_report_title img {
  width: 68.98148148148148vw;
}
.gyosei_container .column_report_title img.sp {
  display: none;
}
@media (max-width: 599px) {
  .gyosei_container .column_report_title {
    padding: 12vw 0;
  }
  .gyosei_container .column_report_title img {
    width: 100%;
  }
  .gyosei_container .column_report_title img.pc {
    display: none;
  }
  .gyosei_container .column_report_title img.sp {
    display: inline;
    width: 80vw;
  }
}
.post_item {
  padding: 5.74074074074074vw;
  margin-bottom: 9.25925925925926vw;
  background-color: #fff;
  overflow: hidden;
}
.post_item .post_headline {
  font-size: 1.851851851851852vw;
  line-height: 1.3em;
  padding: 1.851851851851852vw 0 1.851851851851852vw 8.333333333333332vw;
  margin-bottom: 1.481481481481482vw;
  color: #564d23;
  position: relative;
  border-top: 0.185185185185185vw solid #e18744;
  border-bottom: 0.092592592592593vw solid #e18744;
}
.post_item .post_headline time {
  position: absolute;
  right: 0.462962962962963vw;
  bottom: 0.462962962962963vw;
  font-size: 1.388888888888889vw;
  line-height: 1em;
  letter-spacing: 0.15em;
}
.post_item .post_ribon {
  width: 5.555555555555555vw;
  height: 4.907407407407407vw;
  background-repeat: no-repeat;
  background-position: top right;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("../images/column_ribon_archive.svg");
}
.post_item .post_ribon span {
  color: #fff;
  font-size: 1.851851851851852vw;
  font-weight: bold;
  line-height: 1em;
  padding-bottom: 0.462962962962963vw;
}
.post_item .post_meta_wrap {
  margin-bottom: 5.833333333333333vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.post_item .post_meta_wrap .post_cat {
  font-size: 1.481481481481482vw;
  font-family: "FOT-UD角ゴC80 Pro DB", "A-OTF UD新ゴコンデ80 Pr6";
  line-height: 1em;
  font-weight: normal;
  letter-spacing: 0.2em;
}
.post_item .post_meta_wrap .post_author {
  font-size: 1.296296296296296vw;
  font-weight: bold;
  line-height: 1em;
}
.post_item .post_meta_wrap .post_author span {
  font-size: 1.296296296296296vw;
}
.post_item .post_meta_wrap .post_author span:before {
  content: "（";
}
.post_item .post_meta_wrap .post_author span:after {
  content: "）";
}
.post_item .post_thumbnail {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: block;
  position: relative;
  margin-bottom: 5.185185185185185vw;
}
.post_item .post_thumbnail:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 64.7457%;
}
.post_item .post_thumbnail .win_lt {
  position: absolute;
  top: -0.648148148148148vw;
  left: -0.648148148148148vw;
  width: 4.907407407407407vw;
}
.post_item .post_thumbnail .win_rb {
  position: absolute;
  bottom: -0.648148148148148vw;
  right: -0.648148148148148vw;
  width: 4.907407407407407vw;
}
.post_item .post_content {
  font-size: 1.481481481481482vw;
  line-height: 2em;
  font-weight: normal;
}
.post_item .post_content a.more-link {
  display: block;
  font-size: 1.481481481481482vw;
  line-height: 1em;
  border: 0.092592592592593vw solid #564d23;
  padding: 0.740740740740741vw 1.851851851851852vw;
  border-radius: 1.388888888888889vw;
  position: relative;
  color: #564d23;
  width: 13.88888888888889vw;
  margin: 3.24074074074074vw auto 0;
  font-family: "FOT-筑紫A丸ゴシック Std D", '筑紫A丸ゴシック', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  transition: all 0.3s linear;
  opacity: 1;
  text-decoration: none;
  cursor: pointer;
  font-weight: bold;
}
.post_item .post_content a.more-link:after {
  content: "";
  display: inline-block;
  width: 0.833333333333333vw;
  height: 1.296296296296296vw;
  background: url("../images/arrow_br.svg") no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.851851851851852vw;
  margin: auto;
}
.post_item .post_content a.more-link:hover {
  opacity: 0.7;
}
.post_item .post_meta_wrap .post_cat {
  color: #e18744;
}
@media (max-width: 599px) {
  .post_item {
    padding: 8vw 4vw;
    margin-bottom: 13.333333333333334vw;
  }
  .post_item .post_headline {
    font-size: 4.8vw;
    padding: 1.866666666666667vw 0 5.333333333333334vw 10.666666666666668vw;
    margin-bottom: 4.266666666666667vw;
    color: #564d23;
    position: relative;
  }
  .post_item .post_headline time {
    font-size: 3.2vw;
  }
  .post_item .post_ribon {
    width: 8.799999999999999vw;
    height: 8vw;
  }
  .post_item .post_ribon span {
    font-size: 3.733333333333334vw;
    padding-bottom: 1.333333333333333vw;
  }
  .post_item .post_meta_wrap {
    margin-bottom: 10.666666666666668vw;
  }
  .post_item .post_meta_wrap .post_cat {
    font-size: 3.466666666666666vw;
    margin-bottom: 2.666666666666667vw;
    letter-spacing: 0.1em;
  }
  .post_item .post_meta_wrap .post_author {
    font-size: 3.466666666666666vw;
  }
  .post_item .post_meta_wrap .post_author span {
    font-size: 2.933333333333333vw;
    display: block;
    margin-top: 0.8vw;
  }
  .post_item .post_thumbnail {
    margin-bottom: 10.666666666666668vw;
  }
  .post_item .post_thumbnail .win_lt {
    top: -1.066666666666667vw;
    left: -1.066666666666667vw;
    width: 7.466666666666668vw;
  }
  .post_item .post_thumbnail .win_rb {
    bottom: -1.066666666666667vw;
    right: -1.066666666666667vw;
    width: 7.466666666666668vw;
  }
  .post_item .post_content {
    font-size: 3.733333333333334vw;
    line-height: 1.7em;
  }
  .post_item .post_content a.more-link {
    font-size: 4.266666666666667vw;
    padding: 2.133333333333333vw 5.333333333333334vw;
    border-radius: 4vw;
    width: 40vw;
    margin: 5.333333333333334vw auto 2.666666666666667vw;
  }
  .post_item .post_content a.more-link:after {
    width: 2.4vw;
    height: 3.733333333333334vw;
    right: 5.333333333333334vw;
    margin: auto;
  }
}
