/* 共通 */

.front-page__title-ja {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
  font-size: 40px;
  line-height: 1;
}
.front-page__title-en {
  font-size: 24px;
  margin-bottom: 0 !important;
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  color: var(--green);
}
.front-page__title-en.title-en-white{
  color: #fff;
}
.front-page__title {
  margin-bottom: 40px;
}
.section-page__button a {
  padding: 24px 70px !important;
}

@media screen and (max-width: 992px) {
  .front-page__title-ja {
    font-size: 5vw;
  }
  .front-page__title-en {
    font-size: 2vw;
  }
  .front-page__title {
    margin-bottom: 5vw;
  }
  .section-page__button a {
    padding: 3vw 6vw !important;
}
}
@media screen and (max-width: 768px) {
  .front-page__title-ja {
    font-size: 7vw;
  }
  .front-page__title-en {
    font-size: 4vw;
  }
  .front-page__title {
    margin-bottom: 6vw;
  }
}
/* メインビジュアル */
.section-top__mv {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  min-height: clamp(600px, 70vw, 1000px);
  overflow: hidden;
}
.section-top__mv-img {
  position: absolute;
  inset: 0;
}

.section-top__mv-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.section-top__mv-item01 {
  position: absolute;
  top: 40%;
  left: 17%;
  width: 20%;
  max-width: 380px;
  height: auto;
  transform: translate(-50%, -50%);
}
.section-top__mv-item02 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 28%;
  max-width: 460px;
  height: auto;
  transform: translate(-50%, -50%);
}
.section-top__mv-item03 {
  position: absolute;
  top: 65%;
  right: 0%;
  width: 20%;
  max-width: 400px;
  height: auto;
  transform: translate(-50%, -50%);
}
.section-top__mv-text {
  position: absolute;
  bottom: 5%;
  left: 8%;
  z-index: 2;
}
.section-top__mv-text p {
  font-size: clamp(48px, 6vw, 90px);
  line-height: 0.8;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
}
.section-top__mv-text p span {
  font-size: clamp(24px, 3vw, 34px);
}
@media screen and (max-width: 992px) {
  .section-top__mv-item01 {
    width: 23%;
  }
  .section-top__mv-item02 {
    width: 30%;
  }
  .section-top__mv-item03 {
    width: 23%;
    right: -6%;
  }
}
@media screen and (max-width: 768px) {
  .section-top__mv-text {
    left: 3%;
    bottom: 2%;
  }
  .section-top__mv-item01 {
    width: 33%;
    top: 25%;
    left: 16%;
    max-width: 170px;
  }
  .section-top__mv-item02 {
    width: 40%;
    max-width: 230px;
  }
  .section-top__mv-item03 {
    width: 28%;
    right: -13%;
    top: 78%;
    max-width: 190px;
  }
}

/* お知らせ */
.section-info__detail-button {
  margin-top: 30px !important;
}

/* メッセージ */
.section-container.section-message {
  background-color: var(--white-green);
}
.front-page__title.title-text-center {
  text-align: center;
}
.section-message__main-title {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
  color: var(--green);
  font-size: 50px;
  text-align: center;
  margin-bottom: 0 !important;
  line-height: 1.2 !important;
}
.section-message__sub-title {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
  font-size: 28px;
  text-align: center;
  margin-bottom: 0 !important;
}
.section-message__text-wrapper {
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.section-message__text-wrapper p {
  line-height: 2;
}
.section-message__title-wrapper {
  margin-bottom: 30px !important;
}
.section-message__3shinka-contents-wrapper {
  justify-content: space-between !important;
  padding-top: 80px;
}
.section-message__3shinka-title {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
  font-size: clamp(24px, 4vw, 36px);
  color: var(--green);
  line-height: 1 !important;
}
.section-message__3shinka-title span {
  font-size: 24px;
}
.section-message__3shinka-contents-number {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
  font-size: 22px;
  color: var(--green);
  margin-bottom: 10px !important;
  line-height: 1 !important;
}
.section-message__3shinka-contents-title {
  font-size: clamp(20px, 3vw, 24px);
  font-weight: 600;
  font-feature-settings: "palt" 1;
  line-height: 1.6 !important;
}
.section-message__3shinka-contents-title span {
  font-size: clamp(26px, 4vw, 30px);
  color: var(--green);
}
.section-message__3shinka-contents-column {
  margin-bottom: 40px !important;
}
.section-message__3shinka-contents-column:nth-of-type(3) {
  margin-bottom: 0px !important;
}
@media screen and (max-width: 992px) {
  .section-message__title-wrapper {
    margin-bottom: 3vw !important;
  }
  .section-message__main-title {
    font-size: 4.5vw;
  }
  .section-message__sub-title {
    font-size: 3vw;
  }
  .section-message__3shinka-contents-wrapper {
    padding-top: 7vw;
  }
  .section-message__3shinka-title {
    font-size: 3.2vw;
  }
  .section-message__3shinka-title span {
    font-size: 2.2vw;
  }
  .section-message__3shinka-contents-number {
    font-size: 2.4vw;
  }
  .section-message__3shinka-contents-title {
    font-size: 2.2vw;
  }
  .section-message__3shinka-contents-title span {
    font-size: 3vw;
  }
  .section-message__3shinka-contents-column {
    margin-bottom: 4vw !important;
  }
  .section-message__3shinka-title-column {
    flex-basis: 26% !important;
  }
}
@media screen and (max-width: 768px) {
  .section-message__3shinka-contents-wrapper {
    gap: 10vw;
  }
  .section-message__main-title {
    font-size: 6.5vw;
    line-height: 1.8 !important;
  }
  .section-message__sub-title {
    font-size: 4.3vw;
    line-height: 1.4 !important;
  }
  .section-message__title-wrapper {
    margin-bottom: 6vw !important;
  }
  .section-message__text-wrapper p {
    line-height: 1.7;
    margin-bottom: 4vw !important;
  }
  .section-message__3shinka-title {
    font-size: 7.2vw;
  }
  .section-message__3shinka-title span {
    font-size: 5.6vw;
  }
  .section-message__3shinka-contents-number {
    font-size: 6vw;
  }
  .section-message__3shinka-contents-title {
    font-size: 6vw;
  }
  .section-message__3shinka-contents-title span {
    font-size: 8vw;
  }
  .section-message__3shinka-contents-column {
    margin-bottom: 15.5vw !important;
  }
}
/* ビジョン */
.section-vision__contents-wrapper {
  list-style: none !important;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  margin: 70px auto !important;
  padding: 0;
}
.section-vision__contents-wrapper li {
  /* width: calc((100% - 60px) / 3); */
  flex: 0 0 calc((100% - 60px) / 3);
  position: relative;
}
.section-vision__contents-wrapper a {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  width: 100%;
  aspect-ratio: 500 / 563;
  position: relative;
  top: 0;
  display: block;
  align-items: center;
  justify-content: center;
}
.section-vision__contents-wrapper li:nth-child(1) a {
  background-image: url("/wp-content/uploads/2026/03/vision-item01.webp");
}
.section-vision__contents-wrapper li:nth-child(2) a {
  background-image: url("/wp-content/uploads/2026/03/vision-item02.webp");
}
.section-vision__contents-wrapper li:nth-child(3) a {
  background-image: url("/wp-content/uploads/2026/03/vision-item03.webp");
}
.section-vision__contents-wrapper li:nth-child(4) a {
  background-image: url("/wp-content/uploads/2026/03/vision-item04.webp");
}
.section-vision__contents-wrapper li:nth-child(5) a {
  background-image: url("/wp-content/uploads/2026/03/vision-item05.webp");
}

.section-vision__contents-wrapper a::before {
  content: "";
  display: block;
  width: 50px;
  aspect-ratio: 1;
  background-image: url("/wp-content/uploads/2026/03/arrow-button-white.svg");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  bottom: 6%;
  right: 15%;
  position: absolute;
  z-index: 2;
}
.section-vision__contents-wrapper li a::after{
  content:"";
  position:absolute;
  inset:0;
  background:url("/wp-content/uploads/2026/03/vision-green-bg.svg") center / cover no-repeat;
  opacity:0;
  transition:0.3s;
  pointer-events:none;
  z-index: 1;
}

.section-vision__contents-wrapper li a:hover::after{
  opacity:1;
}
.section-vision__contents-title-wrapper,
.section-vision__contents-text{
  position: relative;
  z-index:3;
}
.section-vision__contents-title-wrapper {
  display: flex;
  align-items: center;
  position: absolute;
  top: 5%;
  left: 11%;
  justify-content: flex-start;
  gap: 15px;
}
.section-vision__contents-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding: 0 50px;
}
.section-vision__contents-title-number p {
  margin: 0 !important;
  display: flex;
  width: 60px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #fff;
  color: var(--green);
  text-align: center;
  font-size: 28px;
  font-weight: 600;
  align-items: center;
  justify-content: center;
}
.section-vision__contents-title-text p {
  margin-bottom: 0 !important;
  color: #fff;
  font-weight: 600;
  font-size: clamp(18px, 1.2vw, 20px);
}
.section-vision__contents-text p {
  color: #fff;
  font-weight: 600;
  text-align: center;
  font-size: clamp(20px, 1.2vw, 24px);
}

.section-vision__contents-br{
  display: none;
}
@media screen and (max-width: 992px) {
  .section-vision__contents-wrapper {
    margin: 7vw auto !important;
    gap: 3vw;
  }
  
  .section-vision__contents-wrapper li {
    flex: 0 0 calc((100% - 3vw) / 2);
  }
  .section-vision__contents-wrapper a::before {
    width: 3.4vw;
  }
  .section-vision__contents-title-wrapper {
    gap: 1.5vw;
  }
  .section-vision__contents-title-number p {
    width: 4.4vw;
    font-size: 2.4vw;
  }
  .section-vision__contents-title-text p{
    font-size: 2.2vw;
  }
  .section-vision__contents-text{
    padding: 0 3.2vw;

  }
  .section-vision__contents-text p{
    font-size: 3vw;
    font-feature-settings: "palt" 1;
  }
  .section-vision__contents-br{
  display: block;
}
}
@media screen and (max-width: 768px) {
  .section-vision__contents-wrapper{
    margin: 8vw auto !important;
  }
  .section-vision__contents-wrapper a::before{
    width: 7.4vw;
  }
  .section-vision__contents-title-wrapper{
    flex-direction: column;
    transform: translate(-50%, -50%);
    top: 5%;
    left: 54%;
    width: 100%;
  }
  
  .section-vision__contents-title-number p{
    width: 8vw;
    font-size: 4.4vw;
    background: var(--green);
    color: #fff;
  }
  .section-vision__contents-title-text{
    width: 100%;
    text-align: center;
    padding: 0 3vw;
  }
  .section-vision__contents-title-text p{
    font-size: clamp(12px, 3vw, 18px);
  }
  .section-vision__contents-text p{
    font-size: clamp(14px, 3vw, 24px);
  }
}

/* 継続中の政策課題 */
.section-policy__contents-column{
  justify-content: space-between !important;
  margin: 70px auto !important;
}
.section-container.section-policy{
  background-color: var(--white-yellow);
}
.front-page__policy-subtitle{
  font-size: 24px;
  font-weight: 600;
  margin-top: -10px !important;
}
@media screen and (max-width: 992px) {
  .section-policy__contents-column{
    margin: 7vw auto !important;
  }
  .front-page__policy-subtitle{
  font-size: clamp(20px, 3vw, 24px);
  font-weight: 600;
}
}
@media screen and (max-width: 768px) {
  .section-policy__contents-column{
    flex-direction: column-reverse;
    margin: 8vw auto !important;
  }
}

/* 市民連合について */
.section-container.section-about{
  /* background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  width: 100vw !important;
  background-image: url("/wp-content/uploads/2026/03/about-bg.webp");
  margin-left: calc(50% - 50vw); */
  background-color: var(--white-green);
}
/* .section-container.section-about::after{
  content: "";
  display: block;
  width: 300px;
  aspect-ratio: 1;
  background-image: url("/wp-content/uploads/2026/03/about-osanai.webp");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  bottom: 6%;
  right: 15%;
  position: absolute;
} */
/* .front-page__title-ja.section-about__title-ja{
  color: #fff;
} */
 .front-page__title-ja.section-about__title-ja{
  font-size: clamp(28px, 2vw, 40px);
 }
.section-about__contents-column{
  justify-content: space-between;
}
.section-about__title-text{
 font-size: clamp(20px, 2vw, 24px);
 font-weight: 600;
 color: var(--green);

}
.section-about__detail-text{
  line-height: 2;
}
.section-about__katsudo-title-text{
  font-weight: 600;
  color: var(--green);
  font-size: clamp(18px, 2vw, 20px);
}
.section-about__katsudo-contents-wrapper{
  padding: 20px 30px;
  background-color: #fff;
  border-radius: 16px;
  margin-top: 40px !important;
}
.section-about__katsudo-contents-wrapper p{
  line-height: 2;
}
.section-about__address-wrapper{
  justify-content: space-between !important;
  margin-top: 80px !important;
}
.section-about__address-text{
}
.section-about__osanai-request{
  margin-bottom: 40px;
}
.section-about__sns-button-under{
  margin-top: 20px !important;
}
.section-about__sns-title{
 font-size: clamp(20px, 2vw, 24px);
 font-weight: 600;
}
.section-about__osanai-wrapper{
  margin-top: 80px !important;
}
.section-about__text-br{
  display: none;
}

@media screen and (max-width: 992px) {
  .section-about__text-br{
  display: block;
}

.front-page__title-ja.section-about__title-ja{
  font-size: 5vw;
}
.section-about__contents-column{
  flex-wrap: wrap !important;
  flex-direction: column;
}
.section-about__title-text{
  font-size: 2.6vw;
}
.section-about__katsudo-title-text{
  font-size: 2.2vw;
}
.section-about__osanai-image{
  flex-basis: 40% !important;
}
.section-about__osanai-contents{
  flex-basis: 50% !important;
}
.section-about__sns-title{
  font-size: 2vw;
}
.section-about__sns-button-under{
  margin-top: 2vw !important;
}
.section-about__katsudo-contents-wrapper{
  padding: 2vw 3vw;
    margin-top: 5vw !important;
}
}
@media screen and (max-width: 768px){
.front-page__title-ja.section-about__title-ja{
  font-size: 7vw;
}
.section-about__title-text{
  font-size: 5vw;

}
.section-about__katsudo-contents-wrapper{
  margin-top: 8vw !important;
  padding: 4vw 6vw;
}
.section-about__katsudo-title-text{
  font-size: 5.2vw;
}
.section-about__sns-title{
  font-size: 4.8vw;
}
.section-about__sns-button-under{
  margin-top: 5vw !important;
}
}