@charset "utf-8";
/* CSS Document */

/*
Theme Name:ボランティアの会ひまわりグループ　ホームページ

Description:ボランティアの会ひまわりグループ様専用テーマ

Author:有限会社きららナビデザインワークス
*/

/* 共通設定 */
body {
  width: 100%;
  box-sizing: border-box;
  color: #333;
  font-size: 18px;
  line-height: 2;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 600;
}
main {
  position: relative;
}
h1 {
  margin: 0;
}
ul,
ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
dl {
  margin: 0;
}
a {
  text-decoration: none;
  color: #333;
}
figure {
  margin: 0;
}
button {
  padding: 0;
  border: none;
}
.break-sp {
  display: none;
}

@media screen and (max-width: 1280px) {
  body {
    font-size: 17px;
  }
}

@media screen and (max-width: 1024px) {
  body {
    min-width: 768px;
    overflow-x: scroll;
  }
}

@media screen and (max-width: 500px) {
  body {
    min-width: 360px;
    overflow-x: scroll;
    font-size: 16px;
  }
  .noBreak_sp {
    display: none;
  }
  .break-sp {
    display: block;
  }
}

/* header */
header {
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 180px;
  box-sizing: border-box;
}
.head_wrap-sp {
  display: none;
}
.head_wrap-pc {
  display: flex;
  gap: 30px;
}
.head_logo {
  width: 360px;
  height: auto;
}
.head_logo_img {
  width: 100%;
  height: 100%;
}
.head_logo_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top left;
}
.head_container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: calc(100% - 360px);
}
.head_menu {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 250px);
  max-width: 800px;
  height: 100px;
  margin: 0 auto;
  background: #fff9d7;
  border: 2px solid #b3ae97;
  border-radius: 63px;
  overflow: hidden;
  box-sizing: border-box;
}
.head_menu_list {
  display: flex;
  gap: 1.5rem;
}
.head_menu_listItem a {
  display: flex;
  align-items: center;
  font-weight: 700;
  transition: all 0.3s;
}
.head_menu_listItem a:hover {
  color: #67613a;
}
.head_menu_listIcon {
  display: inline-block;
  width: 28px;
  height: 28px;
  margin-right: 8px;
}
.head_menu_listIcon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.head_contact {
  width: 250px;
  height: 80px;
  margin: 0 30px;
  background: #1c6335;
  border-radius: 60px;
  overflow: hidden;
}
.head_contact a {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #fff;
  transition: all 0.3s;
}
.head_contact a:hover {
  background: #144525;
}
.head_contact_text {
  margin-left: 2rem;
}
.head_contact_icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 62px;
  height: 62px;
  background: #fff;
  border-radius: 50%;
}
.head_contact_icon i {
  color: #1c6335;
  font-size: 20px;
  transition: all 0.3s;
}
.head_contact a:hover .head_contact_icon i {
  color: #144525;
  transform: scale(1.3);
}

@media screen and (max-width: 1480px) {
  .head_wrap-pc {
    width: 100%;
    height: 150px;
    gap: 30px;
  }
  .head_logo {
    width: 300px;
    height: auto;
  }
  .head_container {
    width: calc(100% - 300px);
  }
  .head_menu {
    max-width: 720px;
    height: 85px;
    font-size: 17px;
  }
  .head_contact {
    width: 220px;
    margin: 0 15px;
    font-size: 17px;
  }
}

@media screen and (max-width: 1280px) {
  .head_wrap-pc {
    justify-content: space-between;
    gap: 0;
    height: 120px;
  }
  .head_logo {
    width: 260px;
  }
  .head_container {
    width: calc(100% - 280px);
  }
  .head_menu {
    max-width: 630px;
    min-width: 540px;
    height: 75px;
    font-size: 1.25vw;
  }
  .head_menu_list {
    gap: 1rem;
  }
  .head_menu_listIcon {
    width: 20px;
    height: 20px;
  }
  .head_contact {
    width: 200px;
    min-width: 200px;
    height: 75px;
  }
  .head_contact_icon {
    width: 55px;
    height: 55px;
  }
  .head_contact_text {
    font-size: 16px;
  }
}

@media screen and (max-width: 1024px) {
  .head_wrap-pc {
    display: none;
  }
  .head_wrap-sp {
    display: block;
    position: relative;
    width: 100vw;
  }
  .head_logo {
    display: flex;
    justify-content: center;
    width: 324px;
    height: auto;
    margin: 0 auto;
  }
  .head_contact-pc {
    position: absolute;
    top: 20px;
    left: 0;
    width: 120px;
    height: 120px;
  }
  .head_contact_text {
    margin: 0 auto;
    color: #22b355;
    font-size: 12px;
    text-align: center;
  }
  .head_contact_icon {
    width: 90px;
    height: 70px;
    margin: 0 auto;
    background: none;
  }
  .head_contact_icon i {
    color: #22b355;
    font-size: 60px;
  }

  /*　ハンバーガーメニュー　設定 */
  .hamburger-overlay {
    position: absolute;
    z-index: 3001;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background: #fffceb;
    border: 3px solid #b3ae97;
    box-sizing: border-box;
    border-radius: 50%;
    cursor: pointer;
  }
  .hamburger-overlay__line {
    position: absolute;
    left: 21px;
    width: 32px;
    height: 3px;
    background-color: #b3ae97;
    border-radius: 10px;
    transition: all 0.6s;
  }
  .hamburger-overlay__line:nth-of-type(1) {
    top: 23px;
  }
  .hamburger-overlay__line:nth-of-type(2) {
    top: 35px;
  }
  .hamburger-overlay__line:nth-of-type(3) {
    top: 47px;
  }
  .hamburger-overlay.active .hamburger-overlay__line {
    background-color: #b3ae97;
  }
  .hamburger-overlay.active .hamburger-overlay__line:nth-of-type(1) {
    transform: translateY(14px) rotate(-45deg);
  }
  .hamburger-overlay.active .hamburger-overlay__line:nth-of-type(2) {
    opacity: 0;
  }
  .hamburger-overlay.active .hamburger-overlay__line:nth-of-type(3) {
    transform: translateY(-9px) rotate(45deg);
  }
  .nav-overlay {
    position: fixed;
    z-index: 3001;
    top: 0;
    right: 0;
    width: 67%;
    height: 100vh;
    padding: 5rem 3rem 0 3rem;
    box-sizing: border-box;
    background-color: #67613a;
    visibility: hidden;
    opacity: 0;
    transition: all 0.6s;
  }
  .nav-overlay.active {
    visibility: visible;
    opacity: 1;
    overflow: auto;
    position: absolute;
    z-index: 3000;
  }
  .nav-overlay_titleBox {
    display: flex;
    align-items: center;
  }
  .nav-overlay_titleImg {
    width: 75px;
  }
  .nav-overlay_titleImg img {
    width: 100%;
    height: auto;
  }
  .nav-overlay_title {
    padding-left: 1rem;
    font-size: 2rem;
    color: #fff;
    font-family: "Roboto", "Noto Sans JP", sans-serif;
  }
  .nav-overlay__content {
    width: 100%;
    box-sizing: border-box;
  }
  .nav-overlay__list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nav-overlay__item {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s;
    background-image: url("footer_contact_line_sp.png");
    background-repeat: repeat-x;
    background-position: bottom;
    border-bottom: 0.5px solid #fff;
  }
  .nav-overlay.active .nav-overlay__item {
    opacity: 1;
    transform: translateY(0);
  }
  .nav-overlay.active .nav-overlay__item:nth-child(1) {
    transition-delay: 0.1s;
  }
  .nav-overlay.active .nav-overlay__item:nth-child(2) {
    transition-delay: 0.2s;
  }
  .nav-overlay.active .nav-overlay__item:nth-child(3) {
    transition-delay: 0.3s;
  }
  .nav-overlay.active .nav-overlay__item:nth-child(4) {
    transition-delay: 0.4s;
  }
  .nav-overlay__link {
    display: inline-block;
    padding: 20px;
    color: #fff;
    text-decoration: none;
    transition: color 0.3s;
  }
  .nav-overlay__item {
    width: 100%;
  }
  .nav-overlay__item a {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .overlay_list_outer {
    display: block;
    padding-bottom: 20px;
  }
  .overlay_list {
    display: flex;
    flex-wrap: wrap;
    margin-left: 1rem;
    padding: 0.5rem 1.5rem;
    border: 1px solid #d9ced1;
    box-sizing: border-box;
  }
  .overlay_listItem {
    position: relative;
  }
  .overlay_listItem a {
    padding: 15px 20px;
  }
  .overlay_listItem a::before {
    position: absolute;
    top: 1.6rem;
    left: 0;
    content: "";
    width: 0.8rem;
    height: 3px;
    margin-right: 0.5rem;
    background: #fff;
    border-radius: 5px;
  }
}

@media screen and (max-width: 500px) {
  header {
    height: 75px;
  }
  .head_logo {
    width: 202px;
    height: auto;
  }
  .head_contact-pc {
    top: 10px;
    left: 5px;
    width: 75px;
    height: 75px;
  }
  .head_contact_icon {
    width: auto;
    height: 40px;
  }
  .head_contact_icon i {
    font-size: 40px;
  }
  .hamburger-overlay {
    width: 60px;
    height: 60px;
    top: 10px;
    right: 10px;
  }
  .hamburger-overlay__line {
    width: 28px;
    left: 14px;
  }
  .hamburger-overlay__line:nth-of-type(1) {
    top: 16px;
  }
  .hamburger-overlay__line:nth-of-type(2) {
    top: 27px;
  }
  .hamburger-overlay__line:nth-of-type(3) {
    top: 38px;
  }
  .nav-overlay {
    width: 100%;
    padding: 1rem 2rem 2rem 2rem;
  }
  .hamburger-overlay.active .hamburger-overlay__line:nth-of-type(1) {
    transform: translateY(10px) rotate(-45deg);
  }
  .hamburger-overlay.active .hamburger-overlay__line:nth-of-type(3) {
    transform: translateY(-12px) rotate(45deg);
  }
  .overlay_list {
    display: block;
  }
}

/* footer */
.top_foot {
  background: #effff9;
}
.foot_wrap {
  padding: 5% 0;
  box-sizing: border-box;
  background: url(images/footer_backimg.jpg);
  border-radius: 100px 100px 0 0;
  color: #fff;
  text-align: center;
}
.foot_wrap p {
  margin: 0;
}
.foot_name_text {
  font-size: 36px;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
}
.foot_menu {
  padding: 2.5% 0;
  box-sizing: border-box;
}
.foot_menu_list {
  display: flex;
  justify-content: center;
  gap: 2%;
}
.foot_menu_listItem a {
  color: #fff;
  transition: all 0.3s;
}
.foot_menu_listItem a:hover {
  color: #e5f9da;
}
.foot_menu_list i {
  display: none;
}
.foot_minsai {
  margin-top: 1%;
}
.foot_minsai_text a {
  color: #fff;
  font-size: 20px;
  transition: all 0.3s;
}
.foot_minsai_text a:hover {
  color: #e5f9da;
}
.foot_minsai_text-small {
  margin-right: 12px;
  font-size: 0.9rem;
}
.foot_minsai_link {
  margin-left: 8px;
}
.foot_copy {
  padding: 10px 0;
  box-sizing: border-box;
  background: #ffe139;
  text-align: center;
}
.foot_copy_text {
  margin: 0;
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .foot_name_text {
    font-size: 30px;
  }
}

@media screen and (max-width: 1024px) {
  .foot_name_text {
    font-size: 26px;
  }
}

@media screen and (max-width: 500px) {
  .foot_wrap {
    padding: 15% 0 10% 0;
    border-radius: 30px 30px 0 0;
  }
  .foot_name_text {
    font-size: 20px;
  }
  .foot_menu {
    width: 86%;
    margin: 0 auto;
    padding: 10% 0 15% 0;
  }
  .foot_menu_list {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.5rem;
  }
  .foot_menu_listItem {
    border-bottom: 1px dashed #fff;
    font-size: 15px;
  }
  .foot_menu_list i {
    display: inline-block;
    margin-left: 15px;
  }
  .foot_minsai_text a {
    font-size: 18px;
  }
}

/* TOPに戻るボタン */
#page_top {
  width: 70px;
  height: 70px;
  position: fixed;
  z-index: 900;
  right: 5px;
  bottom: 0;
  background: #e26647;
  border-radius: 50%;
  transition: background-color 0.5s ease;
}
#page_top a {
  position: relative;
  display: block;
  width: 70px;
  height: 70px;
  text-decoration: none;
}
#page_top a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f102";
  font-size: 20px;
  color: #fff;
  position: absolute;
  width: 20px;
  height: 20px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after {
  content: "PAGE TOP";
  font-size: 10px;
  color: #fff;
  position: absolute;
  top: 36px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top:hover {
  background: #4d8ed1;
}

/* ボタンの共通設定 */
.common_btn {
  width: 250px;
  height: 80px;
  border-radius: 60px;
  box-sizing: border-box;
  overflow: hidden;
}
.common_btn-white {
  background: #fff;
}
.common_btn-yellow {
  background: #ffe139;
}
.common_btn-lightGreen {
  background: #32b25e;
}
.common_btn-lightGreen-sp {
  display: none;
}
.common_btn-orange {
  background: #f37a49;
}
.common_btn-contact {
  margin: 80px auto 0 auto;
}
.common_btn a {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 10px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
  padding: 0 0 0 10px;
  transition: all 0.5s;
}
.common_btn-contact a {
  justify-content: center;
}
.common_btn-yellow a {
  justify-content: space-around;
}
.common_btn-white a:hover {
  background: #237d42;
}
.common_btn-yellow a:hover {
  background: #ffd439;
}
.common_btn-lightGreen a:hover {
  background: #237d42;
}
.common_btn-orange a:hover {
  background: #f25e35;
}
.common_btn_text {
  margin-left: 1.5rem;
  font-weight: 600;
}
.common_btn_text-green {
  color: #32b25e;
}
.common_btn-white a:hover .common_btn_text-green {
  color: #fff;
}
.common_btn_text-dGreen {
  color: #248044;
}
.common_btn_text-white {
  color: #fff;
}
.common_btn-contact a p {
  margin: 0 auto;
}
.common_btn_arrow {
  width: 62px;
  height: 62px;
  border-radius: 50%;
}
.common_btn_arrow-green {
  background: #32b25e;
}
.common_btn-white a:hover .common_btn_arrow-green {
  background: #fff;
}
.common_btn_arrow-white,
.common_btn_arrow-lightGreen,
.common_btn_arrow-dGreen {
  background: #fff;
}
.common_btn_arrow i {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 62px;
  transition: transform 0.5s ease;
}
.common_btn_arrow-green i {
  color: #fff;
}
.common_btn-white a:hover .common_btn_arrow-green i {
  color: #237d42;
  transform: translateX(2px);
}
.common_btn-yellow a:hover .common_btn_arrow-white i {
  transform: translateX(2px);
}
.common_btn_arrow-lightGreen i {
  color: #32b25e;
}
.common_btn-lightGreen a:hover .common_btn_arrow-lightGreen i {
  color: #237d42;
  transform: translateX(2px);
}
.common_btn_arrow-dGreen i {
  color: #248044;
}
.common_btn-yellow a:hover .common_btn_text-dGreen {
  color: #124022;
}
.common_btn-yellow a:hover .common_btn_arrow-dGreen i {
  color: #124022;
  transform: translateX(2px);
}
.common_btn_arrow-orange i {
  color: #f37a49;
}
.common_btn-orange a:hover .common_btn_arrow-orange i {
  color: #f25e35;
  transform: translateX(2px);
}

@media screen and (max-width: 1280px) {
  .common_btn {
    width: 200px;
    height: 65px;
  }
  .common_btn-yellow,
  .common_btn-lightGreen {
    width: 250px;
    height: 80px;
  }
  .common_btn_arrow {
    width: 50px;
    height: 50px;
  }
  .common_btn_arrow i {
    height: 50px;
  }
}

@media screen and (max-width: 1024px) {
  .common_btn-lightGreen {
    display: none;
  }
  .common_btn-lightGreen-sp {
    display: block;
    margin: 5% auto 0 auto;
  }
}

@media screen and (max-width: 500px) {
  .common_btn {
    width: 240px;
    height: 75px;
  }
  .common_btn-yellow {
    height: 75px;
    margin: 0 auto;
  }
}

/* -----TOPページ----- */
.top_common_wrap {
  width: 86%;
  max-width: 1480px;
  margin: 0 auto;
}
.top_common_title {
  margin: 0;
  font-size: 2.8vw;
}

@media screen and (max-width: 1024px) {
  .top_common_title {
    font-size: 3.2vw;
  }
}

@media screen and (max-width: 500px) {
  .top_common_title {
    font-size: 28px;
  }
}

/* ---HERO--- */
.top_hero {
  position: relative;
  margin-bottom: 15%;
  padding: 200px 0 5% 0;
  box-sizing: border-box;
  border-radius: 0 0 75px 75px;
  background-image: url(images/hero-backimg.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% 50%;
}
.top_hero_img-sp {
  display: none;
}
.top_hero_img {
  width: 90%;
  max-width: 1680px;
  height: auto;
  margin: 0 auto;
}
.top_hero_img img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.top_hero_catch {
  position: absolute;
  top: 180px;
  margin-left: 6%;
  padding-top: 3.5%;
  box-sizing: border-box;
  font-size: 3.8vw;
  font-weight: 700;
}
.top_hero_catchText {
  margin: 0;
  color: #17502b;
  line-height: 1.7;
}
.top_hero_catchText-red {
  color: #d51b1b;
}

@media screen and (max-width: 1280px) {
  .top_hero {
    padding: 200px 0 5% 0;
  }
  .top_hero_catch {
    top: 140px;
    font-size: 4.2vw;
  }
}

@media screen and (max-width: 1024px) {
  .top_hero {
    padding: 280px 0 5% 0;
    border-radius: 0 0 50px 50px;
    background-size: 100% 40%;
  }
  .top_hero_catch {
    margin-top: 5%;
    font-size: 5vw;
  }
  .top_hero_catchText {
    line-height: 1.8;
  }
}

@media screen and (max-width: 500px) {
  .top_hero {
    padding: 180px 0 150px 0;
    border-radius: 0 0 30px 30px;
  }
  .top_hero_img {
    display: none;
  }
  .top_hero_img-sp {
    display: block;
  }
  .top_hero_catch {
    margin-top: -20px;
    font-size: 7vw;
  }
}

/* ひまわりグループイメージソングのポップアップ */
.popup_song {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  cursor: pointer;
}
.popup_song_background {
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: #413909;
  opacity: 0.4;
}
.popup_song_box {
  --height: 80vh;
  --width: 80%;
  max-width: 1280px;
  z-index: 2000;
  position: fixed;
  left: 5%;
  top: 50%;
  transform: translateY(-50%);
  height: var(--height);
  width: var(--width);
  overflow: hidden;
  overflow-y: auto;
  background: #f9f2ca;
  box-sizing: border-box;
  border: 3px solid #d51b1b;
  border-radius: 5px;
  box-shadow: 0px 0px 16px -9px #777;
  background-image: url(images/song_backimg.png);
  background-repeat: no-repeat;
  background-position: 98% bottom;
  background-size: 15vw;
}
.popup_song_box > .popup_song_closeBtn {
  --size: 70px;
  position: absolute;
  top: 30px;
  right: 50px;
  height: var(--size);
  width: var(--size);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #413909;
  border: 2px solid #413909;
  box-sizing: border-box;
  border-radius: 50%;
  transition: all 0.3s;
}
.popup_song_box > .popup_song_closeBtn:hover {
  background: #67613a;
  color: white;
}
.popup_song_box > .popup_song_inner {
  padding: 50px 0;
  box-sizing: border-box;
}
.popup_song_box::-webkit-scrollbar {
  width: 15px;
  height: 15px;
}
.popup_song_box::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #57b389;
}
.popup_song_box::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #eee;
}
.popup_song_flag {
  display: none;
}
.popup_song_flag:not(:checked) + .popup_song_background {
  display: none;
}
.popup_song_flag:not(:checked) + * + .popup_song_box {
  display: none;
}

.popup_song_head {
  display: flex;
  justify-content: space-between;
  align-items: last baseline;
  width: 85%;
  margin: 0 auto;
  padding-bottom: 20px;
  box-sizing: border-box;
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% bottom;
}
.popup_song_titleBox {
  width: 40%;
}
.popup_song_subtitle {
  margin: 0;
}
.popup_song_title {
  margin: 0;
  color: #d51b1b;
  font-size: 42px;
  line-height: 1.4;
}
.popup_song_caption {
  width: 60%;
}
.popup_song_captionList {
  display: flex;
  flex-wrap: wrap;
}
.popup_song_listItem {
  width: 50%;
  white-space: nowrap;
}
.popup_song_lyricsContainer {
  display: flex;
  width: 85%;
  margin: 0 auto;
  padding-top: 40px;
  box-sizing: border-box;
}
.popup_song_lyricsBox {
  display: flex;
  gap: 30px;
  width: 50%;
}
.popup_song_lyricsNum {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  aspect-ratio: 1/1;
  border-radius: 5px;
  background: #2da055;
}
.lyrics_number {
  margin: 0;
  color: #fff;
  font-size: 32px;
  line-height: 0;
}
.lyrics_text {
  margin: 0;
  line-height: 2.2;
}

@media screen and (max-width: 1280px) {
  .popup_song_box {
    --height: 80vh;
    --width: 65%;
    max-width: none;
    height: var(--height);
    width: var(--width);
  }
  .popup_song_lyricsContainer {
    flex-direction: column;
    gap: 50px;
  }
  .popup_song_lyricsBox {
    width: 100%;
    gap: 20px;
  }
  .popup_song_captionList {
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  .popup_song_box {
    background-position: 98% bottom;
    background-size: 40%;
  }
  .popup_song_box > .popup_song_inner {
    padding: 80px 0;
  }
  .popup_song_box > .popup_song_closeBtn {
    top: 20px;
    right: 20px;
  }
  .popup_song_head {
    flex-direction: column;
    align-items: normal;
    gap: 1rem;
  }
  .popup_song_titleBox,
  .popup_song_caption {
    width: 80%;
  }
  .popup_song_subtitle {
    font-size: 14px;
  }
  .popup_song_title {
    font-size: 32px;
  }
  .popup_song_listItem {
    font-size: 16px;
  }
  .lyrics_text {
    font-size: 16px;
  }
}

@media screen and (max-width: 500px) {
  .popup_song_box {
    --height: 65vh;
    --width: 90%;
    max-width: none;
    height: var(--height);
    width: var(--width);
    top: 40%;
    background-image: none;
  }
  .popup_song_box > .popup_song_inner {
    padding: 10% 0 20% 0;
  }
  .popup_song_titleBox {
    width: 100%;
  }
  .popup_song_title {
    font-size: 28px;
  }
  .popup_song_caption {
    width: 100%;
  }
  .popup_song_box > .popup_song_closeBtn {
    --size: 50px;
    height: var(--size);
    width: var(--size);
  }

  .popup_song_lyricsNum {
    width: 35px;
    height: 35px;
  }
  .lyrics_number {
    font-size: 22px;
  }
  .popup_song_box::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
}

/* ひまわりグループイメージソングのボタン */
.himawarisong_btn {
  position: absolute;
  z-index: 2001;
  top: 200px;
  right: 0;
  width: 280px;
  color: #fff;
}
.himawarisong_btn.hide {
  display: none;
}
.himawarisong_btn_img {
  position: relative;
  z-index: 201;
  width: auto;
  height: 130px;
}
.himawarisong_btn_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.himawarisong_btn_inner {
  position: relative;
  z-index: 202;
  padding: 15px 0 15px 40px;
  background: #ffa727;
  border-radius: 78px 0 0 78px;
  overflow: hidden;
  border: 3px solid #553016;
  box-sizing: border-box;
  border-right: 0;
}
.himawarisong_btn_inner p {
  margin: 0;
  font-size: 15px;
}
.himawarisong_btn_subTitle {
  font-weight: 600;
}
.himawarisong_btn_title {
  display: flex;
  justify-content: space-around;
  align-items: center;
  line-height: 1.4;
}
.himawarisong_btn_titleText {
  font-size: 28px !important;
  font-weight: 700;
}
.himawarisong_btn_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #fff;
  border-radius: 50%;
  text-align: center;
}
.himawarisong_arrow-red {
  color: #d51b1b;
}
.himawarisong_btn_attention {
  font-size: 12px !important;
}
.himawarisong_btn_loop {
  position: absolute;
  z-index: 200;
  top: -50px;
  left: 0;
  right: 0;
  margin: 0 auto;
  box-sizing: border-box;
  width: 220px;
  height: 220px;
  animation: rotation 25s linear infinite;
}
.himawarisong_btn_loop img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@media screen and (max-width: 1280px) {
  .himawarisong_btn {
    top: 160px;
    width: 280px;
  }
  .himawarisong_btn_img {
    height: 110px;
  }
  .himawarisong_btn_subTitle {
    font-size: 15px;
  }
  .himawarisong_btn_attention {
    font-size: 13px;
  }
  .himawarisong_btn_arrow {
    width: 40px;
    height: 40px;
    font-size: 14px;
  }
  .himawarisong_btn_loop {
    width: 200px;
    height: 200px;
  }
}

@media screen and (max-width: 1024px) {
  .himawarisong_btn {
    top: 160px;
    width: 240px;
  }
  .himawarisong_btn_loop {
    top: -45px;
    width: 180px;
    height: 180px;
  }
  .himawarisong_btn_img {
    height: 90px;
  }
  .himawarisong_btn_subTitle {
    font-size: 12px !important;
  }
  .himawarisong_btn_titleText {
    font-size: 26px !important;
  }
  .himawarisong_btn_arrow {
    width: 30px;
    height: 30px;
  }
  .himawarisong_btn_attention {
    font-size: 11px !important;
  }
}

@media screen and (max-width: 500px) {
  .himawarisong_btn {
    top: auto;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 280px;
  }
  .himawarisong_btn_inner {
    padding: 10px 0;
    border: 3px solid #553016;
    border-radius: 60px;
  }
  .himawarisong_btn_subTitle,
  .himawarisong_btn_attention {
    text-align: center;
  }
  .himawarisong_btn_title {
    justify-content: center;
    gap: 20px;
    line-height: 1.6;
  }
}

/* ---ひまわり通信--- */
.top_newsWrap {
  margin-top: -4.7%;
  padding: 3% 0 2% 0;
  box-sizing: border-box;
  background-image: url(images/top_contact_head_backimg.png);
  background-repeat: no-repeat;
  background-position: top;
  background-size: contain;
}
.top_news {
  display: flex;
  justify-content: space-between;
  gap: 4%;
  width: 86%;
  max-width: 1480px;
  margin: 0 auto;
  padding: 160px 0 140px 0;
  box-sizing: border-box;
  overflow: hidden;
}
.top_news_titleBox {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 20%;
  width: 30%;
  max-width: 420px;
  height: 430px;
  background: #32b25e;
  border-radius: 30px;
  overflow: hidden;
}
.top_news_title {
  margin: 0;
  color: #fff;
  font-size: 40px;
  text-align: center;
}
.news_btn a {
  justify-content: flex-start;
}
.top_news_btn-sp {
  display: none;
}
.top_news_container {
  width: 70%;
}
.top_news_list {
  display: flex;
  justify-content: flex-start;
  gap: 3%;
  width: 100%;
}
.top_news_listItem {
  width: calc(100% / 3);
  max-width: 350px;
}
.top_news_img {
  width: auto;
  height: 245px;
  border-radius: 30px 30px 0 0;
  overflow: hidden;
}
.top_news_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.top_news_listItem a:hover .top_news_img img {
  transform: scale(1.1);
}
.top_news_inner {
  height: calc(430px - 245px);
  padding: 5% 10% 10% 10%;
  box-sizing: border-box;
  background: #fffceb;
  border-radius: 0 0 30px 30px;
  overflow: hidden;
}
.top_news_dateWrap {
  display: flex;
  justify-content: space-between;
  line-height: 1.5;
}
.top_news_date {
  margin: 0;
  color: #32b25e;
  font-size: 20px;
  font-weight: 800;
}
.top_news_cate {
  margin: 0;
}
.category-tag {
  width: 90px;
  margin: 0;
  padding: 5px 15px;
  box-sizing: border-box;
  border-radius: 25px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
}
/* スラッグが'news'のカテゴリー */
.cat-info {
  background-color: #ffc4d9;
}
/* スラッグが'report'のカテゴリー */
.cat-report {
  background-color: #a6ddda;
}
.top_news_textBox {
  margin-top: 10px;
}
.top_news_text {
  margin: 0;
  font-size: 18px;
  line-height: 1.8;
}
.top_news_btn {
  margin: 0 auto;
}

@media screen and (max-width: 1280px) {
  .top_news {
    gap: 2%;
    max-width: none;
  }
  .top_news_titleBox {
    width: 25%;
    height: 360px;
  }
  .top_news_title {
    font-size: 32px;
  }
  .top_news_container {
    width: 75%;
  }
  .top_news_listItem {
    height: 320px;
  }
  .top_news_img {
    height: 180px;
  }
  .top_news_inner {
    height: calc(360px - 180px);
  }
  .top_news_date {
    font-size: 18px;
  }
  .top_news_text {
    font-size: 17px;
  }
}

@media screen and (max-width: 1024px) {
  .top_news {
    display: block;
    width: 100%;
    max-width: none;
    margin: 7% 0;
    padding: 60px 0;
  }
  .top_news_titleBox {
    width: 100%;
    height: auto;
    max-width: none;
    background: none;
  }
  .top_news_title {
    color: #32b25e;
  }
  .top_news_btn {
    display: none;
  }
  .top_news_btn-sp {
    display: block;
    background: #32b25e;
  }
  .top_news_btn-sp p {
    color: #fff;
  }
  .top_news_btn-sp .common_btn_arrow {
    background: #fff;
  }
  .top_news_btn-sp i {
    color: #32b25e;
  }
  .top_news_container {
    width: 90%;
    margin: 50px auto;
  }
  .top_news_list {
    justify-content: center;
  }
  .top_news_listItem {
    max-width: 250px;
  }
  .top_news_img {
    border-radius: 20px 20px 0 0;
  }
  .top_news_inner {
    height: calc(320px - 180px);
    border-radius: 0 0 20px 20px;
  }
  .category-tag {
    width: 75px;
    font-size: 14px;
  }
}

@media screen and (max-width: 500px) {
  .top_newsWrap {
    padding: 3% 0 0 0;
  }
  .top_news {
    margin: 15% 0;
    border-radius: 30px;
  }
  .top_news_title {
    font-size: 28px;
  }
  .top_news_container {
    margin: 30px auto 50px auto;
  }
  .top_news_list {
    flex-direction: column;
    gap: 20px;
  }
  .top_news_listItem {
    width: 100%;
    height: 125px;
    max-width: none;
  }
  .top_news_listItem a {
    display: flex;
    width: 100%;
    height: 100%;
  }
  .top_news_img {
    width: 40%;
    height: auto;
    border-radius: 20px 0 0 20px;
  }
  .top_news_inner {
    width: 60%;
    height: auto;
    padding: 5%;
    border-radius: 0 20px 20px 0;
  }
  .top_news_date {
    font-size: 16px;
  }
  .top_news_text {
    line-height: 1.5;
  }
}

/* ---私たちについて--- */
.top_about {
  position: relative;
  padding: 8% 0;
  box-sizing: border-box;
  background-image: url(images/top_watashitachi_head_backimg.png);
  background-repeat: no-repeat;
  background-position: top;
  background-size: contain;
}
.top_about_titleText {
  text-align: center;
}
.top_about_titleText-red {
  color: #d51b1b;
  font-size: 3.8vw;
}
.top_about_img {
  width: 50%;
  max-width: 880px;
  height: auto;
  margin: 0 auto;
}
.top_about_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top_about_container {
  width: 55%;
  max-width: 990px;
  margin: -150px auto 0 auto;
}
.top_about_catchBox {
  color: #fff;
  font-size: 36px;
  line-height: 2.8;
}
.top_about_catch {
  padding: 15px 40px 15px 25px;
  box-sizing: border-box;
  background: #d51b1b;
  font-weight: 700;
}
.top_about_textBox {
  padding: 3% 0 8% 0;
}
.top_about_text {
  font-size: 22px;
  font-weight: 700;
  line-height: 2.4;
}
.top-about_ashirai-1 {
  position: absolute;
  top: 42%;
  left: 13%;
  width: 8%;
  height: auto;
}
.top-about_ashirai-1 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.top-about_ashirai-2 {
  position: absolute;
  top: 25%;
  right: 20%;
  width: 6%;
  height: auto;
}
.top-about_ashirai-2 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.top-about_ashirai-3 {
  position: absolute;
  top: 30%;
  right: 14%;
  width: 5%;
  height: auto;
}
.top-about_ashirai-3 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media screen and (max-width: 1280px) {
  .top_about_catchBox {
    font-size: 32px;
  }
  .top_about_text {
    font-size: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .top_about_titleText {
    font-size: 2.5vw;
  }
  .top_about_titleText-red {
    font-size: 5vw;
  }
  .top_about_img {
    width: 60%;
    min-width: 500px;
  }
  .top_about_container {
    width: 60%;
    min-width: 560px;
    margin: -120px auto 0 auto;
  }
  .top_about_catchBox {
    font-size: 28px;
  }
  .top_about_text {
    font-size: 18px;
  }
  .top-about_ashirai-1 {
    top: 37%;
    left: 10%;
  }
  .top-about_ashirai-2 {
    right: 13%;
  }
  .top-about_ashirai-3 {
    right: 10%;
  }
}

@media screen and (max-width: 500px) {
  .top_about {
    padding: 17% 0 20% 0;
    background-image: url(images/top_watashitachi_head_backimg-sp.png);
  }
  .top_about_titleText {
    font-size: 16px;
  }
  .top_about_titleText-red {
    font-size: 36px;
  }
  .top_about_img {
    width: 86%;
    min-width: 0;
  }
  .top-about_ashirai-1 {
    width: 12%;
    top: 35%;
    left: 5%;
  }
  .top-about_ashirai-2 {
    width: 10%;
    top: 22%;
    right: 8%;
  }
  .top-about_ashirai-3 {
    width: 8%;
    top: 26%;
    right: 5%;
  }
  .top_about_container {
    width: 80%;
    min-width: 0;
    margin: -60px auto 0 auto;
  }
  .top_about_catchBox {
    font-size: 19px;
  }
  .top_about_catch {
    padding: 10px;
    white-space: nowrap;
  }
  .top_about_text {
    font-size: 17px;
    line-height: 2;
  }
}

/* ---ひまわりグループ結成20周年動画--- */
.top_movie {
  padding: 8% 0 25% 0;
  box-sizing: border-box;
  background-image: url(images/top_movie_backimg.png);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: cover;
}
.top_movie_title {
  margin: 0;
  color: #d51b1b;
  font-size: 36px;
  font-weight: 700;
  text-align: center;
}
.top_movie_textBox {
  padding: 2% 0 2% 0;
  box-sizing: border-box;
}
.top_movie_text {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.top_movie_thumbnail {
  position: relative;
  z-index: 1;
  width: 800px;
  height: auto;
  margin: 0 auto;
  line-height: 0;
}
.top_movie_thumbnail::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 30px;
  background-color: #000;
  opacity: 0.2;
  transition: 0.3s ease;
  z-index: 2;
  pointer-events: none;
}
.top_movie_thumbnail:hover::before {
  opacity: 0;
}
.top_movie_thumbnail label {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 30px;
  line-height: 0;
}
.top_movie_thumbnail label img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.top_movie_thumbnail label:hover img {
  transform: scale(1.1);
}
.top_movie_playmark {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100px;
  height: 100px;
}
.top_movie_playmark img {
  width: 100%;
  height: 100%;
  transition: transform 0.6s ease;
}
.top_movie_thumbnail:hover .top_movie_playmark img {
  transform: scale(1.1);
}

@media screen and (max-width: 1280px) {
  .top_movie_title {
    font-size: 34px;
  }
  .top_movie_text {
    font-size: 18px;
  }
  .top_movie_thumbnail {
    width: 680px;
  }
}

@media screen and (max-width: 1024px) {
  .top_movie {
    padding: 8% 0 30% 0;
  }
  .top_movie_title {
    font-size: 28px;
  }
  .top_movie_textBox {
    padding: 2% 0 4% 0;
  }
  .top_movie_thumbnail {
    width: 65%;
    min-width: 560ox;
  }
}

@media screen and (max-width: 500px) {
  .top_movie {
    padding: 15% 0 37% 0;
    background-image: url(images/top_movie_backimg-sp.png);
  }
  .top_movie_title {
    font-size: 24px;
    line-height: 1.6;
  }
  .top_movie_textBox {
    width: 86%;
    margin: 0 auto;
    padding: 5% 0 8% 0;
  }
  .top_movie_text {
    text-align: left;
  }
  .top_movie_thumbnail::before {
    border-radius: 20px;
  }
  .top_movie_thumbnail {
    width: 75%;
  }
  .top_movie_thumbnail label {
    border-radius: 20px;
  }
  .top_movie_playmark {
    width: 65px;
    height: 65px;
  }
}

/* 動画のポップアップ */
.popup_movie {
  cursor: pointer;
}
.popup_movie_background {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: #000;
  opacity: 0.7;
}
.popup_movie_container {
  --height: auto;
  --width: 55%;
  min-width: 900px;
  position: fixed;
  z-index: 1001;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: var(--height);
  width: var(--width);
  box-sizing: border-box;
}
.popup_movie_container > .popup_movie_closeBtn {
  --size: 75px;
  position: absolute;
  top: -80px;
  right: -80px;
  height: var(--size);
  width: var(--size);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #32b25e;
  border: 2px solid #32b25e;
  box-sizing: border-box;
  border-radius: 5px;
  transition: all 0.5s;
}
.popup_movie_container > .popup_movie_closeBtn:hover {
  background-color: #32b25e;
}
.popup_movie_flag {
  display: none;
}
.popup_movie_flag:not(:checked) + .popup_movie_background {
  display: none;
}
.popup_movie_flag:not(:checked) + * + .popup_movie_container {
  display: none;
}
.popup_movie_box video {
  width: 100%;
  height: 100%;
}
.popup_movie_closeBtn i {
  color: #32b25e;
  font-size: 2vw;
  transition: all 0.5s;
}
.popup_movie_closeBtn:hover i {
  color: #fff;
}

@media screen and (max-width: 1280px) {
  .popup_movie_container {
    min-width: 720px;
  }
  .popup_movie_container > .popup_movie_closeBtn {
    --size: 60px;
    position: absolute;
    top: -65px;
    right: -65px;
    height: var(--size);
    width: var(--size);
  }
}
@media screen and (max-width: 500px) {
  .popup_movie_container {
    min-width: 0;
    --height: auto;
    --width: 70%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: var(--height);
    width: var(--width);
  }
  .popup_movie_container > .popup_movie_closeBtn {
    --size: 45px;
    top: -50px;
    right: -50px;
    height: var(--size);
    width: var(--size);
  }
  .popup_movie_closeBtn i {
    font-size: 24px;
  }
}

/* ---私たちの活動--- */
.top_activity {
  padding: 6% 0;
  box-sizing: border-box;
  background-image: url(images/shape-bluegreen.png);
  background-repeat: no-repeat;
  background-position: 3% top;
  background-size: 30%;
}
.top_activity_wrap {
  display: flex;
  justify-content: center;
}
.top_activity_img,
.top_activity_container {
  width: 50%;
}
.top_activity_img {
  max-width: 740px;
  border-radius: 50px;
  overflow: hidden;
}
.top_activity_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top_activity_container {
  padding: 0 0 0 5%;
  box-sizing: border-box;
}
.top_activity_title {
  color: #32b25e;
}
.top_activity_textBox {
  width: 80%;
  max-width: 500px;
  padding: 8% 0 12% 0;
  box-sizing: border-box;
}
.top_activity_text {
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .top_activity_img {
    width: 45%;
    max-height: 300px;
    border-radius: 30px;
  }
  .top_activity_textBox {
    width: 100%;
    padding: 5% 0;
  }
  .top_activity_container {
    width: 55%;
  }
}

@media screen and (max-width: 500px) {
  .top_activity {
    padding: 25% 0 20% 0;
    background-size: 70%;
    background-position: 3% 8%;
  }
  .top_activity_wrap {
    display: block;
  }
  .top_activity_img {
    width: 100%;
  }
  .top_activity_img img {
    border-radius: 20px;
  }
  .top_activity_container {
    width: 100%;
    padding: 0;
  }
  .top_activity_titleBox {
    padding: 5% 0 2% 0;
  }
  .top_activity_textBox {
    padding: 0 0 5% 0;
  }
}

/* ---支援について--- */
.top_support {
  padding: 13% 0 10% 0;
  background-image: url(images/top_shien_head_backimg.jpg);
  background-repeat: no-repeat;
  background-position: top;
  background-color: #45c470;
}
.top_support_container {
  display: flex;
  justify-content: space-between;
}
.top_support_box {
  width: 40%;
  padding: 0 10% 0 0;
}
.top_support_title {
  color: #fff;
}
.top_support_catchText {
  color: #fff;
  font-size: 32px;
}
.top_support_textBox {
  padding: 0 0 12% 0;
  box-sizing: border-box;
}
.top_support_text {
  margin: 0;
  color: #fff;
}
.top_support_img {
  width: 60%;
  height: auto;
}
.top_support_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.minsai_about {
  position: relative;
  display: inline-block;
  margin: 60px 0;
  padding: 5%;
  box-sizing: border-box;
  border-radius: 60px;
  background: #fff;
}
.minsai_about::before {
  content: "";
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  border: 15px solid transparent;
  border-bottom: 15px solid #fff;
}
.minsai_about_title {
  margin: 0;
  font-size: 32px;
}
.minsai_about_title {
  padding-bottom: 30px;
  background-image: url(images/top_minsai_line.png);
  background-repeat: no-repeat;
  background-position: left bottom;
}
.misai_about_title-green {
  color: #288e4b;
  font-size: 38px;
}
.minsai_about_inner {
  display: flex;
  justify-content: space-between;
}
.minsai_about_textBox {
  width: calc(100% - 405px);
  padding: 30px 12% 0 0;
  box-sizing: border-box;
}
.minsai_about_text {
  margin: 0;
}
.minsai_about_fukidashi {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.minsai_about_fukidashi::before {
  content: "";
  width: 60px;
  height: 2px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #333;
}
.minsai_about_fukidashi::after {
  content: "";
  width: 60px;
  height: 2px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #333;
}
.minsai_about_btnBox {
  width: 405px;
}
.minsai_about_btn {
  width: 405px;
  height: 130px;
  background: #288e4b;
  border-radius: 65px;
}
.minsai_about_btn-large {
  width: 460px;
}
.minsai_about_btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 65px;
  transition: all 0.5s;
}
.minsai_about_btn a:hover {
  background: #32b244;
  border-radius: 65px;
}
.minsai_about_btn i {
  color: #fff;
}
.minsai_about_btnText {
  margin: 0 7% 0 10px;
  color: #fff;
  font-size: 22px;
  line-height: 1.6;
}
.minsai_btn_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 72px;
  height: 72px;
  background: #fff;
  border-radius: 50%;
}
.minsai_btn_arrow i {
  color: #288e4b;
  transition: transform 0.5s ease;
}
.minsai_about_btn a:hover .minsai_btn_arrow i {
  color: #32b244;
  transform: translateX(2px);
}

@media screen and (max-width: 1280px) {
  .top_support_catchText {
    font-size: 26px;
  }

  .minsai_about_title {
    font-size: 26px;
  }
  .misai_about_title-green {
    font-size: 30px;
  }
  .minsai_about_textBox {
    padding: 30px 8% 0 0;
  }
  .minsai_about_btn {
    width: 320px;
    height: 110px;
  }
  .minsai_about_btnText {
    font-size: 18px;
  }
  .minsai_btn_arrow {
    width: 60px;
    height: 60px;
  }
}

@media screen and (max-width: 1024px) {
  .top_support_box {
    width: 45%;
    padding: 0 5% 0 0;
  }
  .top_support_catchText {
    font-size: 22px;
  }
  .top_support_img {
    width: 55%;
  }
  .minsai_about {
    border-radius: 30px;
  }
  .minsai_about_title {
    font-size: 22px;
  }
  .misai_about_title-green {
    font-size: 26px;
  }
  .minsai_about_inner {
    flex-direction: column;
    gap: 20px;
  }
  .minsai_about_textBox {
    width: 100%;
    padding: 20px 0 0 0;
  }
  .minsai_about_btnBox {
    margin: 0 auto;
  }
  .minsai_about_fukidashiText {
    line-height: 1.5;
  }
}

@media screen and (max-width: 500px) {
  .top_support {
    padding: 20% 0 15% 0;
    background-size: contain;
  }
  .top_support_container {
    display: block;
  }
  .top_support_box {
    width: 100%;
    padding: 0;
  }
  .top_support_catch {
    width: 90%;
  }
  .top_support_catchText {
    line-height: 1.6;
  }
  .top_support_img {
    width: 100%;
    margin-top: 50px;
  }
  .minsai_about {
    width: 100%;
    margin: 15px 0 60px 0;
    padding: 12% 7% 15% 7%;
    border-radius: 20px;
  }
  .minsai_about_title {
    background-size: contain;
    font-size: 20px;
    line-height: 1.6;
  }
  .misai_about_title-green {
    font-size: 24px;
  }
  .minsai_about_btnBox {
    width: 100%;
  }
  .minsai_about_fukidashiText {
    font-size: 12px;
    text-align: center;
    white-space: nowrap;
  }
  .minsai_about_btn {
    width: 280px;
    height: 80px;
  }
  .minsai_btn_arrow {
    width: 40px;
    height: 40px;
  }
}

/* ---お問合わせ--- */
.top_contact {
  padding: 5% 0 10% 0;
  box-sizing: border-box;
  background: #effff9;
}
.top_contact_icon {
  width: 160px;
  height: auto;
  margin: 0 auto;
}
.top_contact_icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.top_contact_title {
  margin: 0;
  padding: 1% 0 3% 0;
  color: #32b25e;
  text-align: center;
}
.top_contact_btn {
  width: 430px;
  height: 110px;
  margin: 0 auto;
  background: #fffceb;
  border: 3px solid #29908b;
  border-radius: 80px;
  overflow: hidden;
}
.top_contact_btn a {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 80px;
  transition: all 0.3s;
}
.top_contact_btn a:hover {
  background: #29908b;
}
.top_contact_btnText {
  font-size: 22px;
  transition: all 0.3s;
}
.top_contact_btn a:hover .top_contact_btnText {
  color: #fff;
}
.top_contact_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 72px;
  height: 72px;
  background: #42aaa4;
  border-radius: 50%;
  transition: all 0.3s;
}
.top_contact_btn a:hover .top_contact_arrow {
  background: #fff;
}
.top_contact_arrow i {
  color: #fff;
  transition: transform 0.5s ease;
}
.top_contact_btn a:hover .top_contact_arrow i {
  color: #29908b;
  transform: translateX(2px);
}

@media screen and (max-width: 1280px) {
  .top_contact_icon {
    width: 130px;
  }
  .top_contact_btn {
    width: 380px;
    height: 100px;
  }
}

@media screen and (max-width: 1024px) {
  .top_contact_title {
    font-size: 20px;
  }
}

@media screen and (max-width: 500px) {
  .top_contact {
    padding: 10% 0 35% 0;
  }
  .top_contact_icon {
    width: 100px;
  }
  .top_contact_title {
    width: 80%;
    margin: 0 auto;
    padding: 1% 0 5% 0;
    font-size: 19px;
    line-height: 1.6;
  }
  .top_contact_btn {
    width: 300px;
    height: 80px;
  }
  .top_contact_btnText {
    font-size: 18px;
  }
  .top_contact_arrow {
    width: 45px;
    height: 45px;
  }
}

/* -----コンテンツページ----- */

/* 共通設定：コンテンツ幅 */
.content_common_wide {
  width: 86%;
  max-width: 1380px;
  margin: 0 auto;
}

/* 共通設定：コンテンツ最下部のpadding */
.content_common_bottom {
  padding-bottom: 12%;
  box-sizing: border-box;
}

@media screen and (max-width: 500px) {
  .content_common_bottom {
    padding-bottom: 30%;
  }
}

/* 共通設定：mainの最下部padding */
.content_main {
  padding-bottom: 12%;
  box-sizing: border-box;
}
@media screen and (max-width: 500px) {
  .content_main {
    padding-bottom: 30%;
  }
}

/* 共通設定：hero */
.content_hero {
  width: 100%;
  height: 70vh;
  max-height: 630px;
  min-height: 500px;
  background-image: url(images/content_about_hero.jpg);
  background-repeat: no-repeat;
  background-position: 50% top;
}
.content_hero-activity {
  background-image: url(images/content_activityt_hero.jpg);
}
.content_hero-support {
  background-image: url(images/content_support_hero.jpg);
}
.content_hero-news {
  background-image: url(images/content_news_hero.jpg);
}
.content_hero-contact {
  background-image: url(images/content_contact_hero.jpg);
}
.content_head_box {
  position: relative;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / 0.5);
}
.content_head_box-clear {
  background: none;
}
.content_head_text {
  position: absolute;
  z-index: 101;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 2.5vw;
}
.content_head_text-green {
  color: #2da055;
}
.content_head_text-orange {
  color: #f26b35;
}

@media screen and (max-width: 1280px) {
  .content_head_text {
    font-size: 3vw;
  }
}

@media screen and (max-width: 1024px) {
  .content_head_text {
    font-size: 4.2vw;
  }
}

@media screen and (max-width: 500px) {
  .content_hero {
    height: 60vh;
    background-image: url(images/content_about_hero-sp.jpg);
    background-size: cover;
  }
  .content_hero-activity {
    background-image: url(images/content_activityt_hero-sp.jpg);
  }
  .content_hero-support {
    background-image: url(images/content_support_hero-sp.jpg);
  }
  .content_hero-news {
    background-image: url(images/content_news_hero.jpg);
  }
  .content_hero-contact {
    background-image: url(images/content_contact_hero.jpg);
  }
  .content_head_text {
    width: 100%;
    font-size: 30px;
    text-align: center;
  }
}

/* 共通設定：ジャンプボタン */
.content_menu {
  position: relative;
  z-index: 103;
  margin-top: -55px;
  padding: 10% 0 0 0;
  box-sizing: border-box;
  background-image: url(images/content_jumpbtn_backimg.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: cover;
}
.content_menu_container {
  max-width: 890px;
  margin: 0 auto;
}
.content_menu_list {
  display: flex;
  justify-content: center;
  gap: 5%;
}
.content_menu_listItem {
  width: 25%;
  min-width: 180px;
  padding-bottom: 10px;
  background-image: url(images/content_jumpbtn_line.png);
  background-repeat: no-repeat;
  background-position: left bottom;
}
.content_menu_listItem a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3%;
  color: #2da055;
  transition: all 0.3s;
}
.content_menu_listItem a:hover {
  color: #20703c;
}
.content_menu_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #2da055;
}
.content_menu_listItem a:hover .content_menu_arrow {
  background: #20703c;
}
.content_menu_arrow i {
  margin-top: 2px;
  color: #fff;
}

@media screen and (max-width: 1024px) {
  .content_menu_container {
    max-width: none;
    width: 86%;
  }
  .content_menu_list {
    gap: 3%;
  }
  .content_menu_listItem {
    max-width: 150px;
    font-size: 14px;
  }
}

@media screen and (max-width: 500px) {
  .content_menu {
    margin-top: -25px;
    padding: 20% 0 12% 0;
    background-image: linear-gradient(to bottom, transparent 12%, rgba(255, 252, 235, 1) 12%), url(images/content_jumpbtn_backimg-sp.png);
    background-size: contain;
  }
  .content_menu_list {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px;
  }
  .content_menu_listItem {
    width: 45%;
    min-width: 0;
    max-width: 160px;
  }
}

/* 共通設定：セクションタイトル(h3) */
.content_title {
  padding: 7% 0 3% 0;
  box-sizing: border-box;
}
.content_title_text {
  margin: 0;
  padding-top: 25px;
  box-sizing: border-box;
  background-image: url(images/content_title_ashirai.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  color: #32b25e;
  font-size: 2.4vw;
  text-align: center;
}
.content_title_text-left {
  background-position: left top;
  text-align: left;
}
.content_title_text-tate {
  margin: 0;
  padding-top: 50px;
  box-sizing: border-box;
  background-image: url(images/content_title_ashirai.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  color: #42aaa4;
  font-size: 2.4vw;
  text-align: left;
}
.content_title_subText {
  max-width: 990px;
  margin: 0 auto;
  padding: 30px 0 0 0;
  box-sizing: border-box;
  font-size: 20px;
  text-align: center;
}
.content_title_subText-left {
  max-width: none;
  text-align: left;
}

@media screen and (max-width: 1280px) {
  .content_title_text {
    font-size: 2.6vw;
  }
  .content_title_subText {
    font-size: 18px;
  }
}

@media screen and (max-width: 1024px) {
  .content_title_text,
  .content_title_text-tate {
    font-size: 3.4vw;
  }
  .content_title_text-tate {
    background-size: contain;
  }
  .content_title_subText {
    max-width: none;
    width: 86%;
    font-size: 17px;
  }
}

@media screen and (max-width: 500px) {
  .content_title_text,
  .content_title_text-tate {
    font-size: 26px;
  }
  .content_title_text {
    background-size: 15%;
  }
  .content_title_subText {
    padding: 15px 0 30px 0;
  }
}

/* 共通設定：セクション内コンテンツ */
.content_common_outer {
  padding: 7% 0 3% 0;
  box-sizing: border-box;
}
.content_common_frame {
  padding: 0 0 12% 0;
  box-sizing: border-box;
}
.content_inner_titleBox {
  padding: 35px 50px;
  box-sizing: border-box;
  border-radius: 50px;
  background: #32b25e;
}
.content_inner_title {
  margin: 0;
  color: #fff;
  font-size: 30px;
  line-height: 0;
}
.content_inner_textBox {
  padding: 3% 50px;
}
.content_inner_text {
  margin: 0;
  font-size: 20px;
}

@media screen and (max-width: 1280px) {
  .content_inner_title {
    font-size: 26px;
  }
  .content_inner_text {
    font-size: 18px;
  }
}

@media screen and (max-width: 1024px) {
  .content_inner_titleBox {
    padding: 25px 50px;
  }
  .content_inner_title {
    font-size: 22px;
  }
}

@media screen and (max-width: 500px) {
  .content_common_outer {
    padding: 15% 0;
  }
  .content_inner_titleBox {
    padding: 25px 30px;
  }
  .content_inner_textBox {
    padding: 8% 15px;
  }
  .content_common_frame {
    padding: 0 0 25% 0;
  }
}

/* ---コンテンツページ：私たちについて--- */

/* 代表者メッセージ */
.about_message {
  background: #fffceb;
}
.about_message_headWrap {
  position: relative;
  padding: 8% 0 20% 0;
  box-sizing: border-box;
  background-image: linear-gradient(to bottom, transparent 80%, rgba(255, 255, 255, 1) 80%), url(images/content_about_backimg.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: contain;
}
.about_message_headInner {
  position: relative;
}
.about_message_headInner::before {
  content: "";
  display: block;
  width: 80%;
  height: 2px;
  margin: 0 0 0 auto;
  background-image: url(images/content_about_line-red.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right top;
}
.about_message_headInner::after {
  content: "";
  display: block;
  width: 80%;
  height: 2px;
  margin: 0 0 0 auto;
  background-image: url(images/content_about_line-red.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right bottom;
}
.about_message_headText {
  width: 50%;
  margin: 0 0 0 auto;
  padding: 4.5% 0;
  box-sizing: border-box;
  color: #d51b1b;
  font-size: 1.6vw;
  text-align: center;
  line-height: 2.4;
}
.about_message_headImg {
  position: absolute;
  top: 10%;
  left: 12%;
  width: 40%;
  height: auto;
}
.about_message_headImg img {
  width: 100%;
  height: 100%;
}
.content_about_ashirai-1 {
  position: absolute;
  right: 8%;
  bottom: 25%;
  width: 120px;
  height: auto;
}
.content_about_ashirai-2 {
  position: absolute;
  right: 16%;
  bottom: 18%;
  width: 120px;
  height: auto;
}
.content_about_ashirai-1 img,
.content_about_ashirai-2 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.about_yoshinaga_wrap {
  padding-bottom: 5%;
  background: #fff;
}
.about_yoshinaga_container {
  display: flex;
  justify-content: space-between;
}
.about_yoshinaga_textBox {
  width: 70%;
  padding: 0 10% 0 5%;
}
.about_yoshinaga_text {
  margin: 0;
  font-size: 20px;
  line-height: 2.2;
}
.about_yoshinaga_profile {
  width: 30%;
}
.about_yoshinaga_img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/4;
}
.about_yoshinaga_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.about_yoshinaga_caption {
  text-align: right;
}
.about_yoshinaga_affiliation {
  margin: 0;
  font-size: 20px;
}
.about_yoshinaga_name {
  margin: 0;
  font-size: 26px;
}
.about_yoshinaga_name-small {
  margin-right: 20px;
  font-size: 20px;
}
.minsai_message {
  padding-top: 3%;
  background: #fff;
}
.minsai_message-yellow {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 85%, rgba(255, 252, 235, 1) 85%);
}
.minsai_message_wrap {
  border-radius: 0 0 50px 50px;
  background: #fff;
}
.minsai_message_titleBox::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  margin: 0 0 0 auto;
  background-image: url(images/content_about_line-red.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left top;
}
.minsai_message_titleBox::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  margin: 0 0 0 auto;
  background-image: url(images/content_about_line-red.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
}
.minsai_message_title {
  color: #d51b1b;
  font-size: 26px;
}
.minsai_profile {
  width: 25%;
}
.minsai_message_container {
  display: flex;
  justify-content: space-between;
  padding: 7% 5% 5% 5%;
  box-sizing: border-box;
}
.minsai_profile_img {
  width: 100%;
  aspect-ratio: 3/3.8;
}
.minsai_profile_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.minsai_profile_caption-right {
  text-align: right;
}
.minsai_profile_affiliation {
  margin: 0;
  font-size: 20px;
}
.minsai_profile_name {
  margin: 0;
  font-size: 26px;
}
.minsai_profile_note {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
}
.minsai_message_textBox {
  width: 75%;
  padding: 8% 5% 0 10%;
  box-sizing: border-box;
  background: url(images/doublequotation_green.png);
  background-size: 12%;
  background-repeat: no-repeat;
  background-position: 8% top;
}
.minsai_message_textBox-left {
  padding: 8% 10% 0 5%;
  box-sizing: border-box;
  background-position: 0 top;
}
.minsai_message_text {
  line-height: 2.2;
}
.minsai_message_note {
  font-size: 15px;
  text-align: right;
}
.about_message_bottomInner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.about_message_bottomImg {
  width: 45%;
  height: auto;
}
.about_message_bottomImg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.about_message_bottomWrap {
  padding: 6% 0;
  box-sizing: border-box;
}
.message_closing {
  width: 50%;
  padding: 0 10% 0 0;
  box-sizing: border-box;
}
.message_closing_text {
  margin: 0;
  font-size: 20px;
}
.message_closing_nameGroup {
  padding-top: 30px;
}
.message_closing_affiliation,
.message_closing_name {
  margin: 0;
  font-size: 24px;
}
.about_minsai_btnWrap {
  padding: 7% 0 10% 0;
  background-image: url(images/content_about_line-red.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% top;
}
.about_minsai_btnContainer {
  display: flex;
  justify-content: center;
  gap: 5%;
}
.about_minsai_btn {
  width: 50%;
  max-width: 500px;
  height: 165px;
  border-radius: 15px;
  border: 3px solid #288e4b;
}
.about_minsai_btn-red {
  border: 3px solid #d51b1b;
}
.about_minsai_btn a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
}
.about_minsai_btnInner {
  display: flex;
  align-items: center;
  width: 75%;
  height: 100%;
  background: #fff;
  border-radius: 20px 0 0 20px;
  transition: all 0.3s;
}
.about_minsai_btnInner i {
  margin: 0 10px 0 20px;
}
.about_minsai_btnText {
  font-size: 22px;
}
.about_minsai_btn a:hover .about_minsai_btnInner {
  color: #288e30;
}
.about_minsai_btn a:hover .about_minsai_btnInner-red {
  color: #d51b40;
}
.about_minsai_arrowBox {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25%;
  height: 100%;
  background: #288e4b;
  border-radius: 0 10px 10px 0;
  transition: transform 0.6s ease;
}
.about_minsai_btn a:hover .about_minsai_arrowBox {
  background: #288e30;
}
.about_minsai_arrowBox-red {
  background: #d51b1b;
}
.about_minsai_btn a:hover .about_minsai_arrowBox-red {
  background: #d51b40;
}
.about_minsai_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 55px;
  height: 55px;
  background: #fff;
  border-radius: 50%;
}
.about_minsai_arrow i {
  color: #288e4b;
  transition: transform 0.6s ease;
}
.about_minsai_arrow-red i {
  color: #d51b1b;
  transition: transform 0.6s ease;
}
.about_minsai_btn a:hover .about_minsai_arrow i {
  color: #288e30;
  transform: translateX(2px);
}
.about_minsai_btn a:hover .about_minsai_arrow-red i {
  color: #d51b40;
  transform: translateX(2px);
}

@media screen and (max-width: 1280px) {
  .about_message_headText {
    font-size: 2vw;
  }
  .about_message_headWrap {
    background-image: linear-gradient(to bottom, transparent 75%, rgba(255, 255, 255, 1) 75%), url(images/content_about_backimg.png);
  }
  .about_yoshinaga_text {
    font-size: 18px;
  }
  .about_yoshinaga_img {
    aspect-ratio: 3/3.5;
  }
  .about_yoshinaga_affiliation {
    font-size: 16px;
  }
  .minsai_message_title {
    font-size: 22px;
  }
  .minsai_profile_affiliation {
    font-size: 17px;
  }
  .minsai_profile_name {
    font-size: 22px;
  }
  .minsai_profile_note {
    font-size: 12px;
  }
  .message_closing_text {
    font-size: 18px;
  }
  .message_closing_affiliation,
  .message_closing_name {
    font-size: 20px;
  }
  .about_minsai_btn {
    max-width: 420px;
  }
  .about_minsai_btnText {
    font-size: 19px;
  }
  .about_minsai_arrow {
    width: 50px;
    height: 50px;
  }
}

@media screen and (max-width: 1024px) {
  .content_about_ashirai-1 {
    width: 70px;
  }
  .content_about_ashirai-2 {
    width: 60px;
  }
  .about_yoshinaga_textBox {
    padding: 0 5% 0 0;
  }
  .about_yoshinaga_text {
    font-size: 16px;
  }
  .about_yoshinaga_affiliation {
    font-size: 1.4vw;
  }
  .about_yoshinaga_name {
    font-size: 2.8vw;
  }
  .minsai_message_title {
    font-size: 18px;
    line-height: 1.6;
  }
  .minsai_message_container {
    padding: 7% 5% 0 5%;
  }
  .minsai_profile_affiliation {
    font-size: 1.4vw;
  }
  .minsai_profile_name {
    font-size: 1.7vw;
  }
  .minsai_profile_note {
    font-size: 0.9vw;
  }
  .minsai_message_textBox {
    padding: 8% 0 0 10%;
  }
  .minsai_message_textBox-left {
    padding: 8% 5%;
  }
  .minsai_message_text {
    font-size: 16px;
  }
  .minsai_message_note {
    font-size: 14px;
  }
  .message_closing {
    padding: 0;
  }
  .message_closing_text {
    font-size: 16px;
  }
  .message_closing_affiliation,
  .message_closing_name {
    font-size: 18px;
  }
  .about_minsai_btn {
    height: 120px;
  }
  .about_minsai_btnText {
    font-size: 17px;
    line-height: 1.6;
  }
  .about_minsai_arrow {
    width: 40px;
    height: 40px;
  }
  .about_minsai_btnInner i {
    font-size: 20px;
  }
}

@media screen and (max-width: 500px) {
  .about_message_headWrap {
    display: flex;
    flex-direction: column-reverse;
    padding: 8% 0 0 0;
    background-image: linear-gradient(to bottom, transparent 40%, rgba(255, 255, 255, 1) 40%), url(images/content_about_backimg.png);
    background-position: 50% 22%;
  }
  .about_message_headImg {
    position: static;
    width: 75%;
    margin: 0 auto;
  }
  .about_message_headText {
    width: 100%;
    margin: 0 auto;
    padding: 5% 0 8% 0;
    font-size: 24px;
    text-align: left;
    line-height: 1.8;
  }
  .about_message_headInner::before {
    background-image: none;
  }
  .about_message_headInner::after {
    background-image: none;
  }
  .content_about_ashirai-1 {
    top: 0%;
    width: 50px;
  }
  .content_about_ashirai-2 {
    top: 3%;
  }
  .about_yoshinaga_container {
    flex-direction: column;
    gap: 30px;
  }
  .about_yoshinaga_textBox {
    width: 100%;
  }
  .about_yoshinaga_profile {
    width: 65%;
    margin: 0 auto;
  }
  .about_yoshinaga_caption {
    text-align: left;
  }
  .about_yoshinaga_affiliation {
    font-size: 13px;
  }
  .about_yoshinaga_name {
    font-size: 22px;
  }
  .about_yoshinaga_name-small {
    font-size: 18px;
  }
  .minsai_message_wrap {
    border-radius: 0 0 30px 30px;
  }
  .minsai_message_container {
    flex-direction: column-reverse;
    gap: 30px;
    padding: 7% 5% 15% 0;
  }
  .minsai_message_container-left {
    flex-direction: column;
  }
  .minsai_message_textBox {
    width: 100%;
    padding: 18% 0 0 0;
    background-size: 22%;
    background-position: left top;
  }
  .minsai_message_text {
    margin: 0;
    padding: 0 0 0 20px;
    box-sizing: border-box;
  }
  .minsai_message_note {
    margin: 0;
    font-size: 13px;
  }
  .minsai_profile {
    width: 65%;
    margin: 0 auto;
  }
  .minsai_profile_affiliation {
    font-size: 14px;
    text-align: left;
  }
  .minsai_profile_name {
    font-size: 22px;
    text-align: left;
    white-space: nowrap;
  }
  .minsai_profile_note {
    font-size: 12px;
    text-align: left;
    white-space: nowrap;
  }
  .about_message_bottomWrap {
    padding: 0 0 10% 0;
  }
  .about_message_bottomInner {
    flex-direction: column;
  }
  .about_message_bottomImg {
    width: 80%;
    margin: 50px auto 20px auto;
  }
  .message_closing {
    width: 100%;
  }
  .about_minsai_btnWrap {
    padding: 7% 0 25% 0;
  }
  .about_minsai_btnContainer {
    flex-direction: column;
    gap: 15px;
  }
  .about_minsai_btn {
    width: 90%;
    min-width: 300px;
    height: 75px;
    margin: 0 auto;
  }
  .about_minsai_btnInner {
    width: 85%;
  }
  .about_minsai_btnInner i {
    font-size: 14px;
  }
  .about_minsai_btnText {
    font-size: 16px;
  }
  .about_minsai_arrowBox {
    width: 15%;
  }
  .about_minsai_arrow {
    width: 20px;
    height: 20px;
  }
  .about_minsai_arrow i {
    font-size: 12px;
  }
}

/* VISION */
.about_vision {
  background-image: url(images/content_about_vision_head.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% top;
}
.about_vision_wrap {
  padding: 5% 0 0 0;
  box-sizing: border-box;
}
.about_vision_text {
  margin: 0;
  font-size: 20px;
  text-align: center;
  line-height: 2.2;
}
.about_vision_imgBox {
  position: relative;
  padding: 5% 0 0 0;
  box-sizing: border-box;
}
.about_vision_img {
  width: 90%;
  height: auto;
  margin: 0 auto;
}
.about_vision_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50px;
}
.about_vision_ashirai-green {
  position: absolute;
  top: 0;
  left: -5%;
}
.about_vision_ashirai-pink {
  position: absolute;
  bottom: 0;
  right: -3%;
}

@media screen and (max-width: 1280px) {
  .about_vision_text {
    font-size: 18px;
  }
}

@media screen and (max-width: 1024px) {
  .about_vision_ashirai-green,
  .about_vision_ashirai-pink {
    width: 20%;
    height: auto;
  }
  .about_vision_ashirai-green img,
  .about_vision_ashirai-pink img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .about_vision_ashirai-pink {
    bottom: -12%;
  }
  .about_vision_img img {
    border-radius: 30px;
  }
}

@media screen and (max-width: 500px) {
  .about_vision_wrap {
    padding: 15% 0 0 0;
  }
  .about_vision_text {
    text-align: left;
  }
  .about_vision_imgBox {
    padding: 10% 0 0 0;
  }
  .about_vision_img {
    width: 100%;
  }
  .about_vision_img img {
    border-radius: 20px;
  }
  .about_vision_ashirai-green,
  .about_vision_ashirai-pink {
    width: 15%;
  }
  .about_vision_ashirai-green {
    top: 7%;
  }
}

/* 設立からのあゆみ */
.about_history {
  padding-top: 7%;
  box-sizing: border-box;
  background: #f5fbf5;
  border-radius: 100px;
}
.about_history_wrap {
  display: flex;
}
.content_title-tate {
  width: 15%;
  padding-right: 5%;
  box-sizing: border-box;
  writing-mode: vertical-rl;
}
.about_history_container {
  width: 85%;
}
.about_history_inner {
  display: flex;
  align-items: center;
}
.about_history_inner-first {
  position: relative;
  z-index: 200;
}
.about_history_inner-secound {
  position: relative;
  z-index: 202;
}
.about_history_inner-third {
  position: relative;
  z-index: 201;
  margin-top: -3%;
}
.about_history_textBox {
  width: 65%;
  padding-right: 7%;
}
.about_history_textBox-secound {
  width: 50%;
}
.about_history_img {
  width: 35%;
  height: auto;
}
.about_history_img-secound {
  width: calc(100% - 75%);
  height: auto;
  aspect-ratio: 1.2/1;
}
.about_history_img-third {
  aspect-ratio: 2/1.2;
}
.about_history_img img {
  width: 100%;
  height: 100%;
  border-radius: 30px;
  object-fit: cover;
}
.about_history_text {
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .about_history {
    border-radius: 50px;
  }
  .about_history_container {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .about_history_inner {
    align-items: flex-start;
  }
  .about_history_textBox {
    padding-right: 3%;
    font-size: 16px;
  }
  .about_history_img img {
    border-radius: 20px;
  }
  .about_history_textBox-secound {
    width: 55%;
  }
  .about_history_img-secound {
    width: calc(100% - 70%);
  }
  .about_history_inner-third {
    margin-top: 0;
  }
}

@media screen and (max-width: 500px) {
  .about_history {
    padding-top: 20%;
    border-radius: 30px;
  }
  .about_history_wrap {
    gap: 25px;
  }
  .about_history_inner {
    flex-direction: column;
    gap: 20px;
  }
  .about_history_textBox {
    width: 100%;
  }
  .about_history_img {
    width: 100%;
  }
  .content_title-tate {
    width: 10%;
    padding-right: 0;
  }
}

/* 団体概要 */
.about_outline_container {
  max-width: 990px;
  margin: 0 auto;
}
.about_outline_list {
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% bottom;
  font-size: 20px;
}
.about_outline_listItem {
  display: flex;
  padding: 4% 0;
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% top;
}
.about_outline_category {
  width: 30%;
  text-align: center;
}
.about_outline_inner {
  width: 70%;
}

@media screen and (max-width: 1280px) {
  .about_outline_container {
    width: 860px;
  }
  .about_outline_list {
    font-size: 18px;
  }
  .about_outline_listItem {
    padding: 3% 0;
  }
}

@media screen and (max-width: 1024px) {
  .about_outline_container {
    width: 70%;
  }
}

@media screen and (max-width: 500px) {
  .about_outline {
    padding: 15% 0;
  }
  .about_outline_container {
    width: 86%;
  }
  .about_outline_list {
    font-size: 16px;
  }
  .about_outline_inner {
    margin-left: 15px;
  }
}

/* -----コンテンツページ：私たちの活動----- */

/* ---活動の内容--- */
.activity_outline {
  border-radius: 0 0 100px 100px;
  background: #fffceb;
}
.activity_outline_titleBox {
  border-radius: 30px 30px 0 0;
  background: #fff;
}
.activity_outline_textBox {
  background: #fff;
}
.activity_outline_title {
  margin: 0;
  padding: 100px 0 45px 0;
  box-sizing: border-box;
  color: #d51b1b;
  font-size: 2vw;
  text-align: center;
}
.activity_outline_text {
  width: 85%;
  max-width: 1040px;
  margin: 0 auto;
}
.activity_gallery {
  width: 100%;
  overflow: hidden;
}
.activity_gallery_slide {
  display: flex;
  gap: 30px;
  width: 250%;
  padding: 5% 0 10% 0;
  background: #fff;
  animation: slide 60s linear infinite;
}
.activity_gallery_slideItem {
  width: 100%;
  height: auto;
}
.activity_gallery_slideItem img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.activity_support_flow {
  width: 100%;
  height: auto;
  padding: 5% 3%;
  box-sizing: border-box;
  border: 3px solid #288e4b;
  border-radius: 30px;
}
.activity_support_flowImg {
  width: 95%;
  height: auto;
  margin: 0 auto;
}
.activity_support_flow img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.minsai_site_container {
  padding: 7% 0 0 0;
  box-sizing: border-box;
}
.minsai_site_textBox {
  padding: 0 0 3% 0;
  box-sizing: border-box;
}
.minsai_site_text {
  margin: 0;
  font-size: 20px;
  text-align: center;
}
.minsai_about_btn {
  margin: 0 auto;
}

.activity_sigengomi_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  padding: 0 50px;
  box-sizing: border-box;
}
.activity_sigengomi_listItem {
  width: 22.5%;
}
.activity_sigengomi_listItem img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media screen and (max-width: 1280px) {
  .activity_outline_title {
    font-size: 2.2vw;
  }
  .activity_outline_text {
    max-width: 860px;
  }
  .minsai_site_text {
    font-size: 18px;
  }
}

@media screen and (max-width: 1024px) {
  .activity_outline {
    border-radius: 0 0 50px 50px;
  }
  .activity_outline_title {
    padding: 60px 0 45px 0;
    font-size: 2.6vw;
  }
  .activity_outline_text {
    max-width: none;
    width: 70%;
  }
  .activity_gallery_slide {
    width: 300%;
  }
  .activity_sigengomi_list {
    gap: 20px;
  }
  .activity_sigengomi_listItem {
    width: 30%;
  }
}

@media screen and (max-width: 500px) {
  .activity_outline_titleBox {
    border-radius: 20px 20px 0 0;
  }
  .activity_outline_title {
    padding: 40px 0 25px 0;
    font-size: 22px;
  }
  .activity_gallery_slide {
    gap: 15px;
    width: 600%;
    padding: 10% 0 20% 0;
  }
  .activity_gallery_slideItem img {
    border-radius: 15px;
  }
  .activity_support_flow {
    overflow-x: scroll;
    padding: 5%;
    border-radius: 20px;
  }
  .activity_support_flowImg img {
    max-width: 100%;
    min-width: 1040px;
  }
  .minsai_site_textBox {
    width: 80%;
    margin: 0 auto;
    padding: 0 0 7% 0;
  }
  .activity_sigengomi_container {
    width: 90%;
    margin: 0 auto;
  }
  .activity_sigengomi_list {
    gap: 15px;
    padding: 0;
  }
  .activity_sigengomi_listItem {
    width: 47%;
  }
}

/* ---メンバーの声--- */
.member_voice_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 50px;
}
.member_voice_listItem {
  width: calc((100% - 50px) / 2);
  height: 320px;
}
.member_voice_listItem label {
  display: flex;
  width: 100%;
  height: 100%;
}
.member_voice_img {
  width: 40%;
  height: 100%;
  overflow: hidden;
  border-radius: 30px 0 0 30px;
}
.member_voice_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px 0 0 30px;
  transition: transform 0.6s ease;
}
.member_voice_listItem label:hover .member_voice_img img {
  transform: scale(1.05);
}
.member_voice_inner {
  position: relative;
  width: 60%;
  padding: 5%;
  box-sizing: border-box;
  border-radius: 0 30px 30px 0;
  background-image: url(images/member-voice_backimg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% top;
}
.member_voice_name {
  margin: 0;
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% bottom;
  color: #67613a;
  font-size: 26px;
}
.member_voice_position {
  margin-right: 20px;
  font-size: 18px;
}
.member_voice_catch {
  color: #d51b1b;
  font-size: 22px;
}
.member_voice_readBtn {
  display: flex;
  align-items: center;
  gap: 20px;
  position: absolute;
  bottom: 7%;
  right: 5%;
  color: #d51b1b;
}
.member_voice_readText {
  margin: 0;
}
.member_voice_readArrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: #d51b1b;
}
.member_voice_readArrow i {
  color: #fff;
  transition: transform 0.6s ease;
}
.member_voice_listItem label:hover .member_voice_readArrow i {
  transform: translateX(2px);
}

@media screen and (max-width: 1280px) {
  .member_voice_listItem {
    height: 280px;
  }
  .member_voice_img {
    width: 35%;
  }
  .member_voice_inner {
    width: 65%;
  }
  .member_voice_name {
    font-size: 22px;
  }
  .member_voice_catch {
    font-size: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .member_voice_listItem {
    height: 250px;
  }
  .member_voice_position {
    font-size: 15px;
  }
  .member_voice_catch {
    font-size: 18px;
    line-height: 1.8;
  }
  .member_voice_readArrow {
    width: 35px;
    height: 35px;
  }
}

@media screen and (max-width: 500px) {
  .member_voice {
    padding-top: 20%;
  }
}

/* メンバーの声のポップアップ */
.popup_voice {
  cursor: pointer;
}
.popup_voice_background {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: #413909;
  opacity: 0.4;
}
.popup_voice_container {
  --height: 70vh;
  --width: 75%;
  max-width: 1280px;
  z-index: 1001;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: var(--height);
  width: var(--width);
  overflow: auto;
  background: #f9f2ca;
  box-sizing: border-box;
  border: 3px solid #d51b1b;
  border-radius: 5px;
  overflow: hidden;
  overflow-y: auto;
  box-shadow: 0px 0px 16px -9px #777;
  background-image: url(images/member-voice_backimg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
.popup_voice_container > .popup_voice_closeBtn {
  --size: 70px;
  position: absolute;
  top: 30px;
  right: 50px;
  height: var(--size);
  width: var(--size);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #413909;
  border: 2px solid #413909;
  box-sizing: border-box;
  border-radius: 50%;
}
.popup_voice_container > .popup_voice_closeBtn:hover {
  background-color: #67613a;
  color: white;
}
.popup_voice_container > .popup_voice_box {
  padding: 50px 0;
  box-sizing: border-box;
}
.popup_voice_container::-webkit-scrollbar {
  width: 15px;
  height: 15px;
}
.popup_voice_container::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #57b389;
}
.popup_voice_container::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #eee;
}
.popup_voice_flag {
  display: none;
}
.popup_voice_flag:not(:checked) + .popup_voice_background {
  display: none;
}
.popup_voice_flag:not(:checked) + * + .popup_voice_container {
  display: none;
}

.popup_voice_box {
  display: flex;
  justify-content: center;
  gap: 75px;
  width: 85%;
  margin: 0 auto;
}
.popup_voice_img {
  width: 25%;
  height: 300px;
}
.popup_voice_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}
.popup_voice_inner {
  width: 75%;
}
.popup_voice_head {
  display: flex;
  padding-bottom: 20px;
  box-sizing: border-box;
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% bottom;
}
.popup_voice_name {
  margin: 0;
  color: #67613a;
  font-size: 28px;
}
.popup_voice_position {
  margin-right: 20px;
  font-size: 20px;
}
.popup_voice_catch {
  padding: 5% 0 7% 0;
  box-sizing: border-box;
}
.popup_voice_catchText {
  margin: 0;
  color: #d51b1b;
  font-size: 32px;
}
.popup_voice_title {
  position: relative;
  width: 330px;
  margin: 0;
  padding: 0 30px;
  box-sizing: border-box;
  border-radius: 50px;
  background: #67613a;
  color: #fff;
  font-size: 22px;
  line-height: 1.8;
}
.popup_voice_backBrown::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30%;
  margin: auto 0;
  width: 180px;
  height: 1px;
  content: "";
  background: #fff;
}

@media screen and (max-width: 1280px) {
  .popup_voice_box {
    width: 90%;
    gap: 50px;
  }
  .popup_voice_img {
    height: 210px;
  }
  .popup_voice_catchText {
    font-size: 26px;
  }
}

@media screen and (max-width: 1024px) {
  .popup_voice_container {
    --height: 80vh;
    --width: 80%;
  }
  .member_voice_list {
    justify-content: center;
    gap: 20px;
  }
  .member_voice_listItem {
    width: calc((100% - 20px) / 2);
    min-width: 430px;
  }
  .popup_voice_catchText {
    font-size: 22px;
  }
}

@media screen and (max-width: 500px) {
  .member_voice_listItem {
    min-width: 340px;
    height: 180px;
  }
  .member_voice_img img {
    border-radius: 20px 0 0 20px;
  }
  .member_voice_inner {
    border-radius: 0 20px 20px 0;
  }
  .member_voice_name {
    font-size: 18px;
  }
  .member_voice_position {
    margin-right: 10px;
    font-size: 14px;
  }
  .member_voice_catch {
    margin: 10px 0 0 0;
    font-size: 16px;
    line-height: 1.6;
  }
  .member_voice_readText {
    font-size: 14px;
  }
  .member_voice_readBtn {
    gap: 10px;
  }
  .member_voice_readArrow {
    width: 30px;
    height: 30px;
  }
  .member_voice_readArrow i {
    font-size: 16px;
  }
  .popup_voice_box {
    flex-direction: column;
    gap: 30px;
  }
  .popup_voice_container {
    width: 90%;
    padding: 0 15px;
  }
  .popup_voice_container > .popup_voice_box {
    padding: 80px 0;
  }
  .popup_voice_container > .popup_voice_closeBtn {
    --size: 50px;
    position: absolute;
    top: 10px;
    right: 10px;
    height: var(--size);
    width: var(--size);
  }
  .popup_voice_img {
    width: 65%;
    margin: 0 auto;
  }
  .popup_voice_inner {
    width: 100%;
  }
  .popup_voice_head {
    padding-bottom: 10px;
  }
  .popup_voice_name {
    font-size: 24px;
  }
  .popup_voice_position {
    margin-right: 15px;
    font-size: 18px;
  }
  .popup_voice_catch {
    padding: 5% 0 12% 0;
  }
  .popup_voice_catchText {
    line-height: 1.7;
  }
  .popup_voice_title {
    width: 80%;
  }
  .popup_voice_title {
    padding: 0 15px;
    font-size: 18px;
  }
  .popup_voice_backBrown::after {
    width: 100px;
  }
  .popup_voice_container::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
}

/* ---協力事業所紹介--- */
.office_intro {
  border-radius: 100px;
  background: #f3faff;
}
.office_intro_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  width: 100%;
}
.office_intro_listItem {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((100% - 80px) / 3);
  height: 150px;
  border: 2px solid #3263b2;
  border-radius: 15px;
  background: #fff;
  font-size: 22px;
  overflow: hidden;
}

.office_intro_listItem a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.office_intro_listItem a:hover {
  background: #fcfcfc;
}
.office_intro_name {
  width: 80%;
  margin: 0;
  text-align: center;
  transition: transform 0.5s ease;
}
.office_intro_listItem a:hover .office_intro_name {
  transform: scale(1.05);
}
.office_intro_arrowBox {
  width: 20%;
}
.office_intro_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 800;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: #3263b2;
  transition: all 0.5s;
}
.office_intro_arrow i {
  color: #fff;
}
.office_intro_listItem a:hover .office_intro_arrow {
  background: #3238b2;
}
.office_intro_listItem img {
  width: 75%;
  height: 75%;
  object-fit: cover;
  object-position: 50% 50%;
  transition: transform 0.5s ease;
}
.office_intro_listItem:hover img {
  transform: scale(1.05);
}

@media screen and (max-width: 1280px) {
  .office_intro_listItem {
    height: 120px;
    font-size: 1.5vw;
  }
  .office_intro_arrow {
    width: 40px;
    height: 40px;
  }
}

@media screen and (max-width: 1024px) {
  .office_intro {
    border-radius: 50px;
  }
  .content_title_subText-left {
    margin: 0;
  }
  .office_intro_list {
    gap: 20px;
  }
  .office_intro_listItem {
    height: 100px;
  }
  .office_intro_arrow {
    width: 30px;
    height: 30px;
  }
}

@media screen and (max-width: 500px) {
  .office_intro {
    padding-top: 10%;
    border-radius: 30px;
  }
  .office_intro_listItem {
    width: 94%;
    justify-content: center;
    gap: 5px;
    font-size: 17px;
  }
}

/* ---コンテンツページ：支援について--- */

/* 支援の内容 */
.support_wrap {
  margin-bottom: 7%;
  border-radius: 0 0 100px 100px;
  background: #fffceb;
}
.support_container {
  padding-top: 0;
}
.support_scholarship {
  display: flex;
  justify-content: space-between;
  padding: 3% 50px 5% 50px;
  box-sizing: border-box;
}
.support_scholarship_container {
  width: 55%;
  padding: 3% 10% 0 0;
  box-sizing: border-box;
}
.support_scholarship_catch {
  margin: 0;
  font-size: 22px;
  line-height: 1;
}
.support_scholarship_title {
  margin: 0;
  color: #d51b1b;
  font-size: 44px;
}
.support_scholarship_text {
  font-size: 20px;
}
.support_scholarship_img {
  width: 45%;
  height: auto;
}
.support_scholarship_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
}

.support_darnee {
  width: calc(100% - 100px);
  margin: 0 auto;
  padding: 3% 5%;
  box-sizing: border-box;
  border: 3px solid #248044;
  border-radius: 30px;
  background: #fff;
}
.support_darnee_title {
  margin: 0;
  color: #248044;
  font-size: 30px;
}
.support_darnee_text-small {
  font-size: 15px;
  text-align: right;
}

.support_donation {
  width: 100%;
  height: auto;
}
.support_donation_list {
  display: flex;
  justify-content: space-between;
}
.support_donation_listItem {
  width: 30%;
}
.support_donation_imgBox {
  padding: 10% 0 5% 0;
  box-sizing: border-box;
  border-radius: 30px 30px 0 0;
  background: #fff;
}
.support_donation_title {
  margin: 0;
  font-size: 28px;
  text-align: center;
}
.support_donation_titleInner {
  display: inline-block;
  width: 230px;
  border-radius: 33px;
  background: #a6ddda;
}
.support_donation_title-pink {
  background: #ffc4d9;
}
.support_donation_title-blue {
  background: #c4f1ff;
}
.support_donation_img {
  width: auto;
  height: 180px;
  margin-top: 20px;
}
.support_donation_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.support_donation_textBox {
  height: 235px;
  padding: 5% 7% 10%;
  box-sizing: border-box;
  border-radius: 0 0 30px 30px;
  background: #a6ddda;
}
.support_donation_textBox-pink {
  background: #ffc4d9;
}
.support_donation_textBox-blue {
  background: #c4f1ff;
}
.support_donation_text {
  margin: 0;
}

@media screen and (max-width: 1280px) {
  .support_scholarship_title {
    font-size: 40px;
  }
  .support_scholarship_text {
    font-size: 18px;
  }
  .minsai_about_btn-large {
    width: 380px;
  }
  .support_donation_listItem {
    width: 31%;
  }
  .support_donation_title {
    font-size: 22px;
  }
  .support_donation_titleInner {
    width: 200px;
  }
  .support_donation_img {
    height: 130px;
  }
}

@media screen and (max-width: 1024px) {
  .support_wrap {
    border-radius: 0 0 50px 50px;
  }
  .support_scholarship {
    flex-direction: column;
    gap: 20px;
  }
  .support_scholarship_img {
    width: 70%;
    margin: 0 auto;
  }
  .support_scholarship_container {
    width: 100%;
    padding: 0;
  }
  .support_scholarship_catch {
    font-size: 20px;
  }
  .support_scholarship_title {
    font-size: 38px;
  }
  .support_scholarship_img img {
    border-radius: 20px;
  }
  .support_darnee {
    border-radius: 20px;
  }
  .support_darnee_title {
    font-size: 28px;
  }
  .support_darnee_text {
    font-size: 16px;
  }
  .support_donation_title {
    font-size: 18px;
  }
  .support_donation_titleInner {
    width: 140px;
  }
  .support_donation_imgBox {
    border-radius: 20px 20px 0 0;
  }
  .support_donation_img {
    height: 80px;
  }
  .support_donation_textBox {
    height: 200px;
    border-radius: 0 0 20px 20px;
  }
  .support_donation_text {
    font-size: 14px;
    line-height: 1.8;
  }
}

@media screen and (max-width: 500px) {
  .support_wrap {
    margin-bottom: 25%;
  }
  .support_container {
    padding-bottom: 10%;
  }
  .support_scholarship {
    padding: 8% 15px;
  }
  .support_scholarship_catch {
    font-size: 18px;
  }
  .support_scholarship_title {
    font-size: 32px;
  }
  .support_scholarship_img {
    width: 100%;
  }
  .support_darnee {
    width: calc(100% - 30px);
    padding: 7%;
  }
  .support_darnee_title {
    font-size: 24px;
  }
  .minsai_about_btn-large {
    width: 320px;
  }
  .support_donation_list {
    flex-direction: column;
    gap: 30px;
    width: 86%;
    margin: 0 auto;
  }
  .support_donation_listItem {
    width: 100%;
  }
  .support_donation_img {
    height: 120px;
  }
  .support_donation_text {
    font-size: 16px;
  }
}

/* 支援実績 */
.support_record {
  padding: 7% 0 12% 0;
  box-sizing: border-box;
  border-radius: 100px;
  background: #f3faff;
}
.support_record_head {
  display: flex;
  justify-content: space-between;
  width: 86%;
  max-width: 1280px;
  margin: 0 auto;
}
.support_record_headText {
  width: 55%;
}
.support_record_headImg {
  width: 45%;
}
.support_record_headImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
}

.support_record_outer {
  width: 86%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 7% 0 0 0;
  box-sizing: border-box;
}
.support_record_titleBox {
  padding-bottom: 50px;
}
.support_record_title {
  margin: 0;
  padding-left: 30px;
  border-left: 10px solid #248044;
  box-sizing: border-box;
  font-size: 36px;
  line-height: 1.2;
}
.support_record_wrap {
  padding: 7% 0 2% 0;
  box-sizing: border-box;
  border-radius: 30px;
  background: #fff;
}
.support_record_container {
  width: 80%;
  max-width: 990px;
  margin: 0 auto;
  padding: 0 0 10% 0;
  box-sizing: border-box;
}
.support_record_listTitleBox {
  margin-bottom: 50px;
  padding-bottom: 30px;
  box-sizing: border-box;
  background-image: url(images/content_about_outline.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% bottom;
}
.support_record_listTitle {
  margin: 0;
  font-size: 28px;
}
.record_listTitle_small {
  font-size: 18px;
}
.support_record_listBox {
  width: 90%;
  margin: 0 auto;
}
.support_record_list,
.supportRecord_donation_list {
  width: 100%;
  box-sizing: border-box;
  border-collapse: collapse;
  border: 5px solid #fff;
  font-size: 22px;
}
.supportRecord_scholarship_country {
  width: 70%;
}
.supportRecord_scholarship_qty {
  width: 30%;
}
.support_record_list tr:nth-child(odd),
.supportRecord_donation_list tr:nth-child(odd) {
  background: #fffceb;
}
.support_record_list tr:nth-child(even),
.supportRecord_donation_list tr:nth-child(even) {
  background: #f9f9f9;
}
.support_record_list thead tr:first-child,
.supportRecord_donation_list thead tr:first-child {
  background: #32b25e;
  color: #fff;
}
.support_record_list tbody tr:last-child {
  background: #fff09c;
  color: #d51b1b;
}
.support_record_list th,
.support_record_list td,
.supportRecord_donation_list th,
.supportRecord_donation_list td {
  padding: 20px 0;
  box-sizing: border-box;
  border: 5px solid #fff;
  text-align: center;
}

.supportRecord_donation_country {
  width: 30%;
}
.supportRecord_donation_project {
  width: 45%;
}
.supportRecord_donation_qty {
  width: 15%;
}

.supportRecord_darnee_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.supportRecord_darnee_listItem {
  display: flex;
  align-items: center;
  width: 100%;
}
.supportRecord_darnee_text {
  margin: 0;
  width: 80%;
  color: #fff;
}
.supportRecord_darnee_line {
  display: flex;
  align-items: center;
}
.supportRecord_darnee_line::before {
  content: "";
  width: 20px;
  height: 4px;
  margin-right: 10px;
  border-radius: 5px;
  background: #fff;
}
.supportRecord_darnee_arrowBox {
  width: 20%;
}
.supportRecord_darnee_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
}
.supportRecord_darnee_arrow i {
  color: #2da055;
}

@media screen and (max-width: 1280px) {
  .support_record_title {
    font-size: 28px;
  }
  .support_record_listTitle {
    font-size: 26px;
  }
  .support_record_list {
    font-size: 20px;
  }
  .supportRecord_darnee_list {
    gap: 15px;
  }
  .supportRecord_darnee_line::before {
    width: 15px;
  }
  .supportRecord_darnee_text {
    font-size: 1.3vw;
  }
  .supportRecord_darnee_arrow {
    width: 35px;
    height: 35px;
  }
  .supportRecord_donation_list {
    font-size: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .support_record {
    border-radius: 50px;
  }
  .support_record_headImg img {
    border-radius: 20px;
  }
  .support_record_titleBox {
    padding-bottom: 30px;
  }
  .support_record_title {
    font-size: 26px;
  }
  .support_record_listTitleBox {
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
  .support_record_listTitle {
    font-size: 22px;
  }
  .support_record_wrap {
    border-radius: 20px;
  }
  .support_record_list {
    font-size: 18px;
  }
  .supportRecord_donation_list {
    font-size: 18px;
  }
  .support_record_list th,
  .support_record_list td,
  .supportRecord_donation_list th,
  .supportRecord_donation_list td {
    padding: 15px 0;
  }
}

@media screen and (max-width: 500px) {
  .support_record {
    border-radius: 30px;
    padding: 10% 0 20% 0;
  }
  .support_record_outer {
    padding: 15% 0 7% 0;
  }
  .support_record_wrap {
    padding: 10% 0;
  }
  .support_record_container {
    width: 86%;
  }
  .support_record_head {
    flex-direction: column;
  }
  .support_record_headText {
    width: 100%;
  }
  .support_record_headImg {
    width: 100%;
  }
  .support_record_title {
    padding-left: 15px;
    font-size: 24px;
  }
  .support_record_listTitleBox {
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
  .support_record_listTitle {
    font-size: 20px;
    line-height: 1.6;
  }
  .record_listTitle_small {
    font-size: 14px;
  }
  .support_record_listBox {
    width: 100%;
  }
  .support_record_list th,
  .support_record_list td,
  .supportRecord_donation_list th,
  .supportRecord_donation_list td {
    border: 3px solid #fff;
    padding: 8px 0;
    font-size: 16px;
  }
}

/* 奨学金証書のポップアップ */
.supportRecord_darnee_listItem {
  display: flex;
  align-items: center;
  width: 100%;
  position: relative;
  cursor: pointer;
  width: 31%;
  padding: 3% 0.5% 3% 1.5%;
  box-sizing: border-box;
  border-radius: 10px;
  background: #2da055;
}
.popup_certificate {
  position: relative;
  cursor: pointer;
  width: 31%;
  padding: 0;
  box-sizing: border-box;
  border-radius: 0;
  background: 0;
  display: flex;
  align-items: center;
  width: 100%;
}
.popup_certificate_background {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: #000;
  opacity: 0.7;
}
.popup_certificate_box {
  --height: auto;
  --width: 70vw;
  max-width: 1040px;
  z-index: 1001;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: var(--height);
  width: var(--width);
  box-sizing: border-box;
}
.popup_certificate_box > .popup_certificate_closeBtn {
  --size: 70px;
  position: absolute;
  top: -50px;
  right: -80px;
  height: var(--size);
  width: var(--size);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #32b25e;
  border: 2px solid #32b25e;
  box-sizing: border-box;
  border-radius: 50%;
  transition: all 0.3s;
}
.popup_certificate_box > .popup_certificate_closeBtn:hover {
  background: #32b25e;
  color: white;
}
.popup_certificate_box > .popup_certificate_inner {
  width: 80%;
  height: 100%;
  margin: 0 auto;
  padding: 0 25px;
  box-sizing: border-box;
}
.popup_certificate_flag {
  display: none;
}
.popup_certificate_flag:not(:checked) + .popup_certificate_background {
  display: none;
}
.popup_certificate_flag:not(:checked) + * + .popup_certificate_box {
  display: none;
}

/* 奨学金証書のポップアップの中のスライド */
.splide {
  width: 100%;
  height: 100%;
}
.splide__track {
  max-width: 790px;
  height: auto;
  margin: 0 auto;
}
.splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.splide__pagination {
  bottom: -50px !important;
}

@media screen and (max-width: 1024px) {
  .supportRecord_darnee_listItem {
    width: 48%;
  }
  .supportRecord_darnee_text {
    width: 85%;
    font-size: 16px;
  }
  .supportRecord_darnee_arrowBox {
    width: 15%;
  }
  .supportRecord_darnee_arrow {
    width: 30px;
    height: 30px;
  }
}

@media screen and (max-width: 500px) {
  .supportRecord_darnee_listItem {
    width: 100%;
    padding: 5% 2% 5% 5%;
  }
  .supportRecord_darnee_arrow {
    width: 25px;
    height: 25px;
  }
  .supportRecord_darnee_arrow i {
    font-size: 16px;
  }
  .splide__arrow--next {
    right: -1rem !important;
  }
  .splide__arrow--prev {
    left: -1rem !important;
  }
  .popup_certificate_box > .popup_certificate_closeBtn {
    --size: 50px;
    position: absolute;
    top: -70px;
    right: 0;
    height: var(--size);
    width: var(--size);
  }
}

/* ---コンテンツページ：ひまわり通信(一覧)--- */

/* タブ切り替え */
.news_menu_container {
  position: relative;
  margin-top: -55px;
  padding: 10% 0 0 0;
  box-sizing: border-box;
  background-image: url(images/content_backimg_white.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: contain;
}
.news_menu_list {
  display: flex;
  justify-content: center;
  gap: 5%;
  max-width: 890px;
  margin: 0 auto;
  padding: 0 0 5% 0;
  box-sizing: border-box;
}
.news_menu_listItem {
  width: 185px;
  height: 65px;
  border: 2px solid #248044;
  border-radius: 35px;
}
.news_menu_listItem a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 20px;
  box-sizing: border-box;
  color: #248044;
}
.content_menu_arrow {
  width: 25px;
  height: 25px;
  background: #248044;
  border-radius: 50%;
}
.content_menu_arrow i {
  color: #fff;
}

@media screen and (max-width: 500px) {
  .news_menu_container {
    margin-top: -25px;
    padding: 20% 0 12% 0;
    background-image: linear-gradient(to bottom, transparent 12%, rgb(255, 255, 255) 12%), url(images/top_contact_head_backimg-sp.png);
    background-size: contain;
  }
  .news_menu_list {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 20px;
    width: 86%;
    padding: 0;
  }
  .news_menu_listItem {
    width: 45%;
    height: 50px;
    font-size: 14px;
  }
}

/* 一覧 */
.news_list {
  width: 80%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 5% 0;
  box-sizing: border-box;
  border-top: 1px solid #a0e59b;
  border-bottom: 1px solid #a0e59b;
}
.news_list_container {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 50px;
  width: 100%;
}
.news_list_item {
  width: calc((100% - 100px) / 3);
  max-width: 350px;
}
.news_list_img {
  width: auto;
  height: 245px;
  border-radius: 30px 30px 0 0;
  overflow: hidden;
}
.news_list_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.news_list_item a:hover .news_list_img img {
  transform: scale(1.1);
}
.news_list_inner {
  height: calc(430px - 245px);
  padding: 5% 10% 10% 10%;
  box-sizing: border-box;
  background: #fffceb;
  border-radius: 0 0 30px 30px;
}
.news_list_dateWrap {
  display: flex;
  justify-content: space-between;
  line-height: 1.5;
}
.news_list_date {
  margin: 0;
  color: #32b25e;
  font-size: 20px;
  font-weight: 800;
}
.news_list_cate {
  margin: 0;
}
.news_list_cate .category-tag {
  width: 90px;
  padding: 5px 15px;
  box-sizing: border-box;
  border-radius: 25px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
}
.news_list_textBox {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
.news_list_text {
  width: 90%;
  margin: 0;
  padding-right: 1rem;
  box-sizing: border-box;
  font-size: 18px;
  line-height: 1.8;
}
.news_list_arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10%;
}
.news_list_arrow i {
  transition: all 0.3s;
}
.news_list_item a:hover .news_list_arrow i {
  transform: translateX(5px);
}

@media screen and (max-width: 1280px) {
  .news_list_container {
    gap: 30px;
  }
  .news_list_item {
    width: calc((100% - 60px) / 3);
  }
  .news_list_img {
    height: 230px;
  }
  .news_list_inner {
    padding: 5% 7% 7% 7%;
  }
}

@media screen and (max-width: 1024px) {
  .news_list_container {
    gap: 20px;
  }
  .news_list_item {
    min-width: 200px;
    height: 320px;
  }
  .news_list_img {
    height: 180px;
    border-radius: 20px 20px 0 0;
  }
  .news_list_cate .category-tag {
    width: 75px;
    font-size: 14px;
    line-height: 2.4;
  }
  .news_list_inner {
    border-radius: 0 0 20px 20px;
  }
  .news_list_text {
    font-size: 16px;
  }
  .news_list_inner {
    height: calc(320px - 180px);
  }
}

@media screen and (max-width: 500px) {
  .news_list_container {
    flex-direction: column;
    gap: 20px;
  }
  .news_list {
    padding: 50px 0;
  }
  .news_list_item {
    width: 100%;
    min-width: 280px;
    height: 140px;
  }
  .news_list_item a {
    display: flex;
    width: 100%;
    height: 100%;
  }
  .news_list_img {
    width: 45%;
    height: auto;
    border-radius: 20px 0 0 20px;
  }
  .news_list_inner {
    width: 55%;
    height: auto;
    padding: 5%;
    border-radius: 0 20px 20px 0;
  }
  .news_list_date {
    font-size: 14px;
  }
  .news_list_cate .category-tag {
    width: 55px;
    font-size: 10px;
  }
  .news_list_text {
    line-height: 1.6;
  }
}

/* ページャー */
.pager {
  padding-top: 5%;
  box-sizing: border-box;
}
.pager .pagination {
  text-align: center;
}
.page-numbers {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 0 auto;
}
.pager .pagination li {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 2px;
  padding: 0;
  background: #fff;
  border: 2px solid #2da055;
  box-sizing: border-box;
  width: 50px;
  height: 50px;
  text-align: center;
  position: relative;
  border-radius: 50px;
}
.pager .pagination li a {
  display: flex;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  color: #2da055;
  font-weight: 800;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.pager .pagination li a span {
  display: table-cell;
  vertical-align: middle;
}
.pager .pagination li a:hover,
.pager .pagination li a.active {
  color: #fff;
  background: #2da055;
  border-radius: 50px;
}

@media only screen and (max-width: 767px) {
  .pager .pagination li {
    display: none;
  }
  .pager .pagination li.pre,
  .pager .pagination li.next {
    display: inline-block;
    width: 40%;
    height: 50px;
    text-align: center;
  }
  .pager .pagination li.pre a,
  .pager .pagination li.next a {
    width: 100%;
    text-align: center;
  }
  .pager .pagination li.pre span::after {
    content: "　前の10件へ";
  }
  .pager .pagination li.next span::before {
    content: "次の10件へ　";
  }
  .pager {
    padding-top: 50px;
  }
}

/* ---コンテンツページ：ひまわり通信(記事内容)--- */

.news_inner {
  margin-top: -55px;
  background-image: url(images/content_backimg_white.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: contain;
}
.news_inner_wrap {
  width: 80%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 7% 0 0 0;
  box-sizing: border-box;
}
.news_inner_head {
  margin: 0 0 7% 0;
  border-bottom: 1px solid #a0e59b;
}
.news_inner_dateWrap {
  display: flex;
  align-items: center;
  gap: 20px;
}
.news_inner_title {
  margin: 0;
  padding-bottom: 3%;
  box-sizing: border-box;
  font-size: 32px;
}
.news_inner_container {
  width: 100%;
  max-width: 890px;
  margin: 0 auto;
}
.news_inner_img img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.news_inner_textBox {
  padding: 5% 0;
}
.news_inner_text {
  margin: 0;
}
.news_btn {
  margin: 7% auto 0 auto;
}

.himawariTsushin_imgBox {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: auto;
  margin: 50px auto 0 auto;
}
.himawariTsushin_img {
  width: 48%;
  height: auto;
}
.himawariTsushin_img img {
  width: 100%;
  height: 100%;
}


@media screen and (max-width: 1280px) {
  .news_inner_title {
    font-size: 28px;
  }
  .news_inner_container {
    width: 680px;
  }
}

@media screen and (max-width: 500px) {
  .news_inner {
    margin-top: -25px;
    padding: 20% 0 12% 0;
    background-image: linear-gradient(to bottom, transparent 12%, rgb(255, 255, 255) 12%), url(images/top_contact_head_backimg-sp.png);
    background-size: contain;
  }
  .news_inner_title {
    font-size: 24px;
  }
  .news_inner_container {
    width: 94%;
  }
  .news_btn-sp {
    display: block;
  }
  .news_btn-sp a {
    justify-content: flex-start;
    gap: 30px;
    padding: 0 20px;
  }
  .news_btn-sp a p {
    margin: 0;
  }
  .himawariTsushin_imgBox {
    flex-direction: column;
    gap: 15px;
    width: 94%;
  }
  .himawariTsushin_img {
    width: 100%;
  }

}

/* ---コンテンツページ：お問合わせ--- */

.contact {
  margin-top: -55px;
  background-image: url(images/content_backimg_white.png);
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: contain;
}
.contact_form {
  width: 80%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 7% 0 0 0;
  box-sizing: border-box;
}
.contact_form_head {
  margin: 0;
  padding: 7% 0 40px 0;
  box-sizing: border-box;
  font-size: 20px;
}
.contact_form_head-large {
  padding-bottom: 0;
  color: #d51b1b;
  font-size: 38px;
}
.contact_form_wrap {
  border-top: 1px solid #d4ceac;
}
.contact_form_item {
  display: flex;
  padding: 35px 0;
  box-sizing: border-box;
  border-bottom: 1px solid #d4ceac;
}
.contact_form_item dt {
  display: flex;
  align-items: center;
  width: 30%;
  font-size: 20px;
}
.contact_form_required {
  display: inline-block;
  margin-right: 10px;
  padding: 2px 25px;
  box-sizing: border-box;
  border-radius: 30px;
  background: #d51b1b;
  color: #fff;
  font-size: 16px;
}
.contact_form_item dd {
  width: 70%;
  margin: 0;
}
input,
textarea {
  padding: 18px 20px;
  box-sizing: border-box;
  border: 1px solid #d4ceac;
  background: #fbfaf7;
}
input {
  width: 70%;
}
input[type="submit"] {
  color: #fff;
}
textarea {
  width: 100%;
  height: 300px;
}
.contact_btn {
  display: block;
  width: 360px;
  height: 120px;
  margin: 7% auto 0 auto;
  font-size: 22px;
}

@media screen and (max-width: 1280px) {
  .contact_form_head {
    font-size: 18px;
  }
  .contact_form_item dt {
    font-size: 18px;
  }
  .contact_form_required {
    font-size: 15px;
  }
  .contact_btn {
    height: 100px;
    font-size: 20px;
  }
  .contact_form_head-large {
    font-size: 32px;
  }
}

@media screen and (max-width: 1024px) {
  .contact_form {
    width: 86%;
  }
  .contact_form_item dt {
    width: 35%;
  }
  .contact_form_item dd {
    width: 65%;
  }
  .contact_form_required {
    padding: 2px 15px;
    font-size: 14px;
  }
  input {
    width: 85%;
  }
  .common_btn-contact {
    display: block;
  }
}

@media screen and (max-width: 500px) {
  .contact {
    margin-top: -25px;
    padding: 20% 0 12% 0;
    background-image: linear-gradient(to bottom, transparent 12%, rgb(255, 255, 255) 12%), url(images/top_contact_head_backimg-sp.png);
    background-size: contain;
  }
  .contact_form_item {
    flex-direction: column;
    gap: 15px;
    padding: 30px 0;
  }
  .contact_form_item dt,
  .contact_form_item dd {
    width: 100%;
  }
  .contact_form_item dt p,
  .contact_form_item dd p {
    margin: 0;
  }
  .contact_btn {
    width: 80%;
    margin-top: 50px;
  }
  .contact_form_head-large {
    font-size: 28px;
  }
}