/* ================================================================
   ローカルボイスページ専用スタイル
   ij_localvoice.css
   ================================================================ */

/* 共通 */


.localvoice__link {
  padding: 14px 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 400px;
  background-color: #cc7182;
  border-radius: 6px;
  box-sizing: border-box;
  transform: scale(1) translateZ(0);
  backface-visibility: hidden;
  will-change: transform;
  transition: transform 0.3s ease-out;
}

.localvoice__link--text {
  color: #fff;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}

.localvoice__link--text:after {
  display: block;
  content: "";
  width: 25px;
  height: 47px;
  background: url(/share/imgs/ij_index_finger.svg) no-repeat center / cover;
  transition: translate 0.3s ease-out;
}

@media (any-hover: hover) {
  .localvoice__link:hover {
    transform: scale(1.05) translateZ(0);
    opacity: 1;
  }

  .localvoice__link:hover .localvoice__link--text:after {
    translate: 0 -5px;
  }
}

@media screen and (max-width: 640px) {
  .localvoice__link {
    gap: 7px;
    width: 172px;
    border-radius: 8px;
  }

  .localvoice__link--text {
    font-size: 16px;
    line-height: calc(25.976 / 15);
    gap: 7px;
  }

  .localvoice__link--text:after {
    width: 14px;
    height: 26px;
    right: -22px;
  }


}


/* ----------------------------------------------------------------
   ヒーローセクション
   ---------------------------------------------------------------- */
.localvoice_page {
  overflow: hidden;
}

.localvoice_hero {
  position: relative;
  width: 100%;
  margin-top: 120px;
  padding-top: 0;
  padding-bottom: 0;
  overflow: visible;
}

.localvoice_hero__bg {
  background: url(/share/imgs/ij_localvoice_mv_bg.svg) no-repeat center / cover;
  width: 100%;
  height: 100%;
  max-height: 457px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.localvoice_hero__inner {
  max-width: 1154px;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}

.localvoice_hero_content {
  position: relative;
  max-width: 1440px;
  padding-top: 152px;
  padding-bottom: 38px;
  margin: 0 auto;
  z-index: 2;
}

.localvoice_hero_title_wrap {
  display: flex;
  justify-content: center;
}

.localvoice_hero_title {
  margin: initial;
  display: block;
  width: 100%;
  max-width: 433px;
}

.localvoice_hero_title img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.localvoice_hero_text {
  margin-top: 74px;
  text-align: center;
}

.localvoice_hero_catch {
  margin-inline: auto;
  display: block;
  width: 100%;
  max-width: 370px;
  margin-bottom: initial;
}

.localvoice_hero_catch img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 382 / 40;
}

.localvoice_hero_desc {
  font-family: "IBM Plex Sans JP", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 2;
  color: #424142;
  text-align: center;
  margin-top: 48px;
}

.localvoice_hero_desc .is-sp {
  display: none;
}

/* キャラクターエリア */
.localvoice_hero_characters {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.localvoice_character_item {
  position: relative;
}

.localvoice_character_img {
  display: block;
  height: auto;
}

.localvoice_character_left {
  position: absolute;
  left: 26px;
  bottom: -77.37px;
}

@media screen and (max-width: 1024px) {
  .localvoice_character_left {
    left: 0;
  }
}

.localvoice_character_left_img {
  display: block;
  width: 100%;
  max-width: min(239.11px, 17.079285714285717vw);
}

.localvoice_character_left_img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 239.11 / 317.49;
}

.localvoice_character_right {
  position: absolute;
  right: 0;
  /* bottom: 46.43px; */
  bottom: 64.43px;
}

.localvoice_character_right_img {
  display: block;
  width: 100%;
  max-width: min(71.819px, 6.01499162479062vw);
}

.localvoice_character_right_img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 71.819 / 242.57;
}

.localvoice_character_center {
  position: absolute;
  right: min(111px, 11.9%);
  bottom: -41px;
}

.localvoice_character_center_img {
  display: block;
  width: 100%;
  max-width: min(78.78px, 6.597989949748744vw);
}

.localvoice_character_center_img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 78.78 / 210;
}

/* 吹き出し */
.localvoice_speech_bubble_wrap {
  position: absolute;
  display: block;
  width: 100%;
}

.localvoice_character_left .localvoice_speech_bubble_wrap {
  top: -37%;
  left: -24px;
  max-width: min(150.481px, 12.540083333333332vw);

}

.localvoice_character_center .localvoice_speech_bubble_wrap {
  top: -27%;
  left: -27px;
  max-width: 107px;
  width: min(107px, 8.916666666666668vw);
}

.localvoice_character_right .localvoice_speech_bubble_wrap {
  top: -27%;
  left: -34.63px;
  max-width: 114.08px;
  width: min(114.08px, 9.506666666666666vw);
}


.localvoice_speech_bubble_wrap img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.localvoice_character_left .localvoice_speech_bubble_wrap img {
  aspect-ratio: 141.481 / 112.881;
}

.localvoice_character_center .localvoice_speech_bubble_wrap img {
  aspect-ratio: 105 / 54.065;
}

.localvoice_character_right .localvoice_speech_bubble_wrap img {
  aspect-ratio: 112.08 / 55.9;
}

.localvoice_speech_bubble {
  color: #424142;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: min(20px, 1.6666666666666667vw);
  font-style: normal;
  font-weight: 700;
  line-height: 1.6;
  position: absolute;
  width: 100%;
}

.localvoice_speech_bubble_left {
  top: 30%;
  left: 0%;
}

.localvoice_speech_bubble_center {
  top: min(16.37px, 1.3641666666666667vw);
  left: 1.71px;
  font-size: 12px;
}

.localvoice_speech_bubble_right {
  top: 30%;
  left: 0%;
  font-size: 12px;
}

@media screen and (max-width: 1024px) {
  .localvoice_character_left .localvoice_speech_bubble_wrap {
    left: 0;
  }

  .localvoice_character_center {
    right: 7.9%;
  }
}

@media screen and (max-width: 834px) {

  /* ヒーローセクション SP */
  .localvoice_hero {
    min-height: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 87px;
  }

  .localvoice_hero__bg {
    background: url(/share/imgs/ij_localvoice_mv_bg-sp.jpg) no-repeat center / cover;
    background-position: top -100px right;

  }

  .localvoice_hero__inner {
    padding-left: 15px;
    padding-right: 15px;
  }

  .localvoice_hero_content {
    padding-top: 76px;
    padding-bottom: 0;
  }

  .localvoice_hero_title {
    max-width: 178px;
  }

  .localvoice_hero_catch {
    max-width: 232px;
  }

  .localvoice_hero_catch img {
    aspect-ratio: 239 / 25;
  }

  .localvoice_hero_text {
    margin-top: 32px;
  }

  .localvoice_hero_desc {
    margin-top: 16px;
    font-size: 14px;
  }

  .localvoice_hero_desc .is-sp {
    display: block;
  }

  /* キャラクター SP */
  .localvoice_hero_characters {
    margin-top: 27px;
    height: 180px;
    padding: 0 10px;
  }

  .localvoice_character_left {
    left: 0;
    bottom: 19.55px;
  }

  .localvoice_character_left_img {
    max-width: 114.56px;
  }

  .localvoice_character_left_img img {
    aspect-ratio: 114.563 / 152.616;
  }

  .localvoice_character_center {
    bottom: 0;
    right: 61.51px;
  }

  .localvoice_character_center_img {
    max-width: 35.49px;
  }

  .localvoice_character_center_img img {
    aspect-ratio: 35.49 / 94.6;
  }

  .localvoice_character_right {
    bottom: 17.48px;
    right: -2.5px;
  }

  .localvoice_character_right_img {
    max-width: 36.63px;
  }

  .localvoice_character_right_img img {
    aspect-ratio: 36.63 / 123.73;
  }

  .localvoice_character_left .localvoice_speech_bubble_wrap {
    max-width: 78.97px;
    top: 28.43px;
    left: 97.48px;
    transform: rotate(12.54deg);
  }

  .localvoice_character_left .localvoice_speech_bubble_wrap img {
    aspect-ratio: 78.97 / 68.12;
  }

  .localvoice_speech_bubble_left {
    font-size: 10.24px;
    top: 22.96px;
    left: 50%;
    transform: translateX(-50%) rotate(-6.896deg);
  }

  .localvoice_character_center .localvoice_speech_bubble_wrap {
    max-width: 56.96px;
    width: 56.96px;
    top: -30px;
    left: -6px;
  }

  .localvoice_character_center .localvoice_speech_bubble_wrap img {
    aspect-ratio: 53.96 / 27.61;
  }

  .localvoice_character_right .localvoice_speech_bubble_wrap {
    max-width: 65.98px;
    width: 65.98px;
    top: -38px;
    left: auto;
    right: 9px;
  }

  .localvoice_character_right .localvoice_speech_bubble_wrap img {
    aspect-ratio: 65.98 / 36.12;
  }

  .localvoice_speech_bubble_right {
    font-size: 7.776px;
    top: 8.85px;
    left: 0;
  }

  .localvoice_speech_bubble_center {
    font-size: 6.51px;
    top: 9.37px;
    left: 0;
  }

}

@media screen and (max-width: 640px) {
  .localvoice_hero__bg {
    background-position: top -7px right;
  }
}

@media screen and (max-width: 375px) {
  .localvoice_hero_characters {
    height: min(180px, 48vw);
  }

  .localvoice_character_left {
    left: 0;
    bottom: min(19.55px, 5.213333333333334vw);
  }

  .localvoice_character_left_img {
    max-width: min(114.56px, 30.549333333333333vw);
  }

  .localvoice_character_center {
    bottom: 0;
    right: min(61.51px, 16.402666666666665vw);
  }

  .localvoice_character_center_img {
    max-width: min(35.49px, 9.464vw);
  }

  .localvoice_character_right {
    bottom: min(17.48px, 4.661333333333333vw);
    right: -2.5px;
  }

  .localvoice_character_right_img {
    max-width: min(36.63px, 9.768vw);
  }

  .localvoice_character_left .localvoice_speech_bubble_wrap {
    max-width: min(78.97px, 21.058666666666667vw);
    top: min(28.43px, 7.581333333333333vw);
    left: min(97.48px, 25.994666666666667vw);
    transform: rotate(12.54deg);
  }

  .localvoice_speech_bubble_left {
    font-size: min(10.24px, 2.7306666666666666vw);
    top: min(22.96px, 6.122666666666667vw);
    left: 50%;
    transform: translateX(-50%) rotate(-6.896deg);
  }

  .localvoice_character_center .localvoice_speech_bubble_wrap {
    width: min(56.96px, 15.189333333333332vw);
    top: max(-30px, -8vw);
    left: -6px;
  }



  .localvoice_character_right .localvoice_speech_bubble_wrap {
    width: min(65.98px, 17.594666666666665vw);
    top: max(-38px, -10.133333333333333vw);
    left: auto;
    right: 9px;
  }

  .localvoice_speech_bubble_right {
    font-size: min(7.776px, 2.0736vw);
    top: min(8.85px, 2.36vw);
    left: 0;
  }

  .localvoice_speech_bubble_center {
    font-size: min(6.51px, 1.736vw);
    top: min(9.37px, 2.4986666666666664vw);
    left: 0;
  }
}


/* ----------------------------------------------------------------
   メインコンテンツエリア
   ---------------------------------------------------------------- */
.localvoice_main {
  position: relative;
  padding: 173px 0 189px;
  background: url(/share/imgs/ij_localvoice_main_bg.webp) no-repeat center / cover;
  margin-top: 116px;
  border-top-right-radius: 2800px 400px;
  border-top-left-radius: 2800px 400px;
  border-bottom-right-radius: 2800px 400px;
  border-bottom-left-radius: 2800px 400px;
  z-index: 1;
}

.localvoice_main_icon {
  position: absolute;
}

.localvoice_main_icon--01 {
  top: 50px;
  left: 62px;
}

.localvoice_main_icon--02 {
  top: 208px;
  left: 126px;
}

.localvoice_main_icon--03 {
  top: -68.08px;
  left: 342px;
}

.localvoice_main_icon--04 {
  top: 99px;
  left: 50%;
  transform: translateX(-50%);
}

.localvoice_main_icon--05 {
  top: -68.08px;
  right: 428px;
}

.localvoice_main_icon--06 {
  top: -1px;
  right: 293.34px;
}

.localvoice_main_icon--07 {
  top: 39px;
  right: 43.34px;
}

.localvoice_main_icon--08 {
  top: 199px;
  right: 121.54px;
}

@media screen and (max-width: 1024px) {

  .localvoice_main_icon--01 {
    display: none;
  }

  .localvoice_main_icon--02 {
    display: none;
  }

  .localvoice_main_icon--03 {
    width: 86.369px;
    aspect-ratio: 86.369 / 93.547;
    top: -46.81px;
    left: 9px;
  }

  .localvoice_main_icon--04 {
    width: 74.893px;
    aspect-ratio: 71.893 / 25.029;
    top: -35.81px;
    left: calc(50% + 1px);
    transform: translateX(-50%);
  }

  .localvoice_main_icon--05 {
    display: none;
  }

  .localvoice_main_icon--06 {
    width: 63.611px;
    aspect-ratio: 63.611 / 68.338;
    top: -11px;
    right: 14px;
  }

  .localvoice_main_icon--07 {
    display: none;
  }

  .localvoice_main_icon--08 {
    display: none;
  }
}

@media screen and (max-width: 375px) {

  .localvoice_main_icon--03 {
    width: min(86.369px, 23.031733333333335vw);
    top: max(-46.81px, -12.482666666666667vw);
    left: 9px;
  }

  .localvoice_main_icon--04 {
    width: min(74.893px, 19.971466666666668vw);
    top: max(-35.81px, -12.482666666666667vw);
  }

  .localvoice_main_icon--06 {
    width: min(63.611px, 16.962933333333332vw);
    top: max(-11px, -2.933333333333333vw);
    right: min(14px, 3.733333333333334vw);
  }
}

.localvoice_main_icon_bottom--01 {
  bottom: 80.88px;
  left: 62px;
}

.localvoice_main_icon_bottom--02 {
  bottom: 10.88px;
  left: 362px;
}

.localvoice_main_icon_bottom--03 {
  bottom: 4.12px;
  right: 467.34px;
}

.localvoice_main_icon_bottom--04 {
  bottom: 39.88px;
  right: 263.34px;
}

.localvoice_main_icon_bottom--05 {
  bottom: 110.88px;
  right: 33.34px;
}

@media screen and (max-width: 1024px) {

  .localvoice_main_icon_bottom--01 {
    display: none;
  }

  .localvoice_main_icon_bottom--02 {
    width: 63.611px;
    aspect-ratio: 63.611 / 68.338;
    bottom: 41.67px;
    left: 10px;
  }

  .localvoice_main_icon_bottom--03 {
    width: 63.611px;
    aspect-ratio: 63.611 / 68.338;
    bottom: -6.67px;
    right: 166.39px;
  }

  .localvoice_main_icon_bottom--04 {
    width: 63.611px;
    aspect-ratio: 63.611 / 68.338;
    bottom: 22.67px;
    right: 13.39px;
  }

  .localvoice_main_icon_bottom--05 {
    display: none;
  }
}

@media screen and (max-width: 375px) {

  .localvoice_main_icon_bottom--02 {
    width: min(63.611px, 16.962933333333332vw);
    bottom: min(41.67px, 11.112000000000002vw);
    left: min(10px, 2.666666666666667vw);
  }

  .localvoice_main_icon_bottom--03 {
    width: min(63.611px, 16.962933333333332vw);
    bottom: max(-6.67px, -1.7786666666666666vw);
    right: min(166.39px, 44.370666666666665vw);
  }

  .localvoice_main_icon_bottom--04 {
    width: min(63.611px, 16.962933333333332vw);
    bottom: min(22.67px, 6.045333333333334vw);
    right: min(13.39px, 3.5706666666666673vw);
  }

}

.localvoice_main_curve {
  width: 100%;
  height: 100px;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}

.localvoice_main_inner {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ----------------------------------------------------------------
   #はたらく20代 セクション
   ---------------------------------------------------------------- */

.localvoice_hashtag_title {
  max-width: 355px;
  margin: 0 auto 45px;
}

.localvoice_hashtag_title_img {
  width: 100%;
  height: auto;
}

/* 記事グリッド */
.localvoice_articles_grid {
  margin-inline: auto;
}

.localvoice_articles_row {
  margin-inline: auto;
  max-width: 1200px;
  display: flex;
}

/* 円形記事カード */
.localvoice_article_card {
  position: relative;
}

.localvoice_article_card:nth-child(1) {
  margin-left: 92px;
}

.localvoice_article_card:nth-child(2) {
  margin-top: 202px;
  margin-left: 12px;
}

.localvoice_article_card:nth-child(3) {
  margin-top: 78px;
  margin-left: 55px;
}

.localvoice_article_card:nth-child(4) {
  margin-top: 143px;
  margin-left: 63px;
}

.localvoice_article_link {
  position: relative;
  display: block;
  transition: 0.3s;
}

.localvoice_article_link:hover .localvoice_article_image,
.localvoice_article_link:hover .localvoice_article_featured_image {
  transform: scale(1.05);
}

.localvoice_article_image {
  position: relative;
  /* width: 230px; */
  width: min(230px, 17.692307692307693vw);
  /* height: 230px; */
  height: min(230px, 17.692307692307693vw);
  border-radius: 50%;
  overflow: hidden;
  border: 5px solid;
  transition: 0.3s;
}

.localvoice_article_card:nth-child(1) .localvoice_article_image {
  border-color: #7c836f;
}

.localvoice_article_card:nth-child(2) .localvoice_article_image {
  border-color: #ceb687;
}

.localvoice_article_card:nth-child(3) .localvoice_article_image {
  border-color: #a88584;
}

.localvoice_article_card:nth-child(4) .localvoice_article_image {
  border-color: #758596;
}

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

.localvoice_article_balloon {
  position: absolute;
}

.localvoice_article_balloon_1 {
  top: min(188px, 79%);
  left: -69px;
}

.localvoice_article_balloon_2 {
  width: 100%;
  top: max(-134px, -56%);
  left: min(99px, 41.2%);
}

.localvoice_article_balloon_3 {
  width: min(341.39px, 26.26076923076923vw);
  top: min(199px, 91%);
  left: -54px;
}

.localvoice_article_balloon_4 {
  width: 171.73px;
  top: max(-141px, -58%);
  left: -42px;
}

.localvoice_article_balloon_img {
  display: block;
  width: 100%;
  filter: drop-shadow(4px 4px 10px rgba(0, 0, 0, 0.1));
}

.localvoice_article_balloon_img_1 {
  max-width: clamp(205px, 23.384615384615383vw, 304px);
}

.localvoice_article_balloon_img_2 {
  max-width: clamp(122px, 12.673692307692308vw, 164.758px);
}

.localvoice_article_balloon_img_3 {
  max-width: min(341.39px, 26.26076923076923vw);
}

.localvoice_article_balloon_img_4 {
  max-width: min(171.73px, 13.209999999999999vw);
}

.localvoice_article_balloon_img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.localvoice_article_balloon_img_1 img {
  aspect-ratio: 304 / 209.5;
}

.localvoice_article_balloon_img_2 img {
  aspect-ratio: 164.758 / 135.337;
}

.localvoice_article_balloon_img_3 img {
  aspect-ratio: 341.39 / 254.5;
}

.localvoice_article_balloon_img_4 img {
  aspect-ratio: 171.73 / 142.17;
}

.localvoice_article_balloon_text_wrap {
  position: absolute;
  top: min(65px, 30.2%);
  left: min(20px, 8.4%);
}

.localvoice_article_balloon_text {
  margin-bottom: initial;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: clamp(1rem, 1.8vw, 1.5rem);
  font-weight: 700;
  position: absolute;
}

.localvoice_article_balloon_text_1 {
  line-height: 1.6;
  color: #7c836f;
  position: initial;
}

.localvoice_article_balloon_text_2 {
  line-height: 1.4;
  color: #CEB687;
  top: min(29px, 22.2%);
  left: 22px;
}

.localvoice_article_balloon_text_3 {
  line-height: 1.6;
  color: #A88584;
  top: min(81px, 6.25vw);
  left: min(54px, 15.5%);
}

.localvoice_article_balloon_text_4 {
  color: #758596;
  top: min(47px, 34.4%);
  left: min(26px, 2.2222222222222223vw);
}

.localvoice_article_balloon_location {
  margin-top: 8px;
  display: inline-block;
  color: #7c836f;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: clamp(0.875rem, 1.3vw, 1.125rem);
  font-weight: 700;
  line-height: 1.6;
}

.localvoice_article_line {
  margin-top: 140.15px;
}

.localvoice_article_line img {
  width: 100%;
}

.localvoice_article_line--mt18 {
  margin-top: 18px;
}

/* 特集記事カード */
.localvoice_article_featured {
  max-width: 879px;
  width: 100%;
  margin: 56px auto 0;
}

.localvoice_article_featured .localvoice_article_link {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 20px;
}

.localvoice_article_featured_image {
  display: block;
  width: 100%;
  max-width: 223px;
  border: min(5px, 2.24vw) solid #A28CA7;
  border-radius: 9999px;
  height: 223px;
  transition: 0.3s;
}

.localvoice_article_featured_image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 1 / 1;
}

.localvoice_article_featured_content {
  flex: 1;
  position: relative;
}

.localvoice_article_featured_balloon_img {
  filter: drop-shadow(4px 4px 10px rgba(0, 0, 0, 0.10));
}

.localvoice_article_featured_balloon_img img {
  width: 100%;
}

.localvoice_article_featured_text-block {
  max-width: 461px;
  position: absolute;
  top: 48px;
  right: 0;
  padding: 0 48px;
}

.localvoice_article_featured_title {
  color: #A28CA7;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 0;
}

.localvoice_article_featured_text {
  color: #424142;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 2;
  margin-top: 24px;
}

.localvoice_article_featured_text+.localvoice_article_featured_text {
  margin-top: 2em;
}


@media screen and (max-width: 1170px) {
  .localvoice_articles_row {
    justify-content: center;
  }

  .localvoice_article_card:nth-child(1) {
    margin-left: 64px;
  }

  .localvoice_article_balloon_1 {
    left: -63px;
  }

  .localvoice_article_card:nth-child(2) {
    margin-left: 0;
  }

  .localvoice_article_card:nth-child(3) {
    margin-left: 40px;
  }

  .localvoice_article_balloon_3 {
    left: max(-29px, -17.1%);
  }

  .localvoice_article_card:nth-child(4) {
    margin-left: 20px;
  }
}

@media screen and (max-width: 834px) {

  /* メインコンテンツ SP */
  .localvoice_main {
    padding-top: 40px;
    margin-top: 47px;
    background: url(/share/imgs/ij_localvoice_main_bg-sp.png) no-repeat center / cover;
    padding-bottom: 219px;
  }

  .localvoice_main_curve {
    height: 60px;
  }

  .localvoice_main_inner {
    padding: 0 16px;
  }

  .localvoice_hashtag_title {
    max-width: 178px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    font-size: 28px;
    margin-bottom: 32px;
  }

  .localvoice_hashtag_title_img {
    width: 100%;
    aspect-ratio: 178 / 30;
  }

  /* #はたらく20代 SP */
  .localvoice_hashtag_section {
    padding: 2px 0 65px;
  }

  .localvoice_articles_row {
    flex-direction: column;
  }

  .localvoice_article_link {
    display: inline-flex;
  }

  .localvoice_article_link--reverse {
    flex-direction: row-reverse;
  }

  .localvoice_article_image {
    width: max(160px, 42.66666666666667vw);
    height: max(160px, 42.66666666666667vw);
    flex-shrink: 0;
  }

  .localvoice_article_balloon {
    position: relative;
  }

  .localvoice_article_card:nth-child(1) {
    margin-left: 0;
  }

  .localvoice_article_balloon_1 {
    top: 19.09px;
    left: initial;
    margin-left: -39.12px;
  }

  .localvoice_article_balloon_img_1 {
    max-width: 212.13px;
  }

  .localvoice_article_balloon_img_1 img {
    aspect-ratio: 212.13 / 145.91;
  }

  .localvoice_article_balloon_text_wrap {
    top: 19.91px;
    right: 0;
  }

  .localvoice_article_balloon_text_1 {
    font-size: 16px;
  }

  .localvoice_article_balloon_location {
    font-size: 14px;
    margin-top: 5.04px;
  }



  .localvoice_article_card:nth-child(2) {
    margin-top: 28px;
    margin-left: -10px;
  }

  .localvoice_article_balloon_2 {
    top: 6px;
    left: initial;
  }

  .localvoice_article_balloon_img_2 {
    max-width: 118.8px;
  }

  .localvoice_article_balloon_img_2 img {
    aspect-ratio: 118.8 / 88.09;
  }

  .localvoice_article_balloon_text_2 {
    font-size: 16px;
    top: 24px;
    left: 21px;
  }

  .localvoice_article_card:nth-child(3) {
    margin-top: 10px;
    margin-left: -3px;
  }

  .localvoice_article_balloon_3 {
    width: 341.39px;
    top: initial;
    left: initial;
    margin-top: 76.36px;
    margin-left: -48px;
  }

  .localvoice_article_balloon_img_3 {
    max-width: 226.03px;
  }

  .localvoice_article_balloon_img_3 img {
    aspect-ratio: 226.03 / 151.14;
  }

  .localvoice_article_balloon_text_3 {
    font-size: 16px;
    top: 34.14px;
    left: 37.32px;
  }

  .localvoice_article_card:nth-child(4) {
    margin-top: 80.6px;
    margin-left: auto;
    margin-right: 42px;
  }

  .localvoice_article_balloon_4 {
    top: initial;
    left: initial;
    margin-top: -62.34px;
    margin-right: -40.26px;
    width: auto;
  }

  .localvoice_article_balloon_img_4 {
    max-width: 128.15px;
  }

  .localvoice_article_balloon_img_4 img {
    aspect-ratio: 113.15 / 86.99;
  }

  .localvoice_article_balloon_text_4 {
    font-size: 16px;
    top: 33.5px;
    left: 24.76px;
  }

  .localvoice_article_line {
    margin-top: 20px;
  }

  /* 特集記事 SP */
  .localvoice_article_featured {
    margin-top: 70px;
  }

  .localvoice_article_featured .localvoice_article_link {
    flex-direction: column;
    gap: 8px;
    padding: 0;
  }

  .localvoice_article_featured_image {
    max-width: max(150px, 40vw);
    width: 100%;
    height: max(150px, 40vw);
  }


  .localvoice_article_featured_balloon_img img {
    aspect-ratio: 345 / 291.565;
    width: 100%;
    height: auto;
    max-width: max(345px, 92vw);
  }

  .localvoice_article_featured_text-block {
    max-width: max(261px, 69.6vw);
    padding: 0 max(33px, 8.799999999999999vw);
    right: auto;
    left: 0;
    top: max(68px, 18.133333333333333vw);
  }

  .localvoice_article_featured_title {
    font-size: max(18px, 4.8vw);
  }

  .localvoice_article_featured_text {
    margin-top: 16px;
    font-size: clamp(14px, 3.733333333333334vw, 30px);
  }

  .localvoice_article_line--bottom {
    margin-top: 43px;
  }
}

@media screen and (max-width: 375px) {
  .localvoice_article_image {
    width: min(160px, 42.66666666666667vw);
    height: min(160px, 42.66666666666667vw);
    flex-shrink: 0;
  }


  .localvoice_article_card:nth-child(1) {
    margin-left: 0;
  }

  .localvoice_article_balloon_1 {
    top: min(19.09px, 5.090666666666667vw);
    left: initial;
    margin-left: max(-39.12px, -10.432vw);
  }

  .localvoice_article_balloon_img_1 {
    max-width: min(212.13px, 56.568vw);
  }

  .localvoice_article_balloon_text_wrap {
    top: min(19.91px, 5.309333333333333vw);
    right: 0;
  }

  .localvoice_article_balloon_text_1 {
    font-size: min(16px, 4.266666666666667vw);
  }

  .localvoice_article_balloon_location {
    font-size: min(14px, 3.733333333333334vw);
    margin-top: 5.04px;
  }



  .localvoice_article_card:nth-child(2) {
    margin-top: min(28px, 7.466666666666668vw);
    margin-left: max(-10px, -2.666666666666667vw);
  }

  .localvoice_article_balloon_2 {
    top: min(6px, 1.6vw);
    left: initial;
  }

  .localvoice_article_balloon_img_2 {
    max-width: min(118.8px, 31.679999999999996vw);
  }

  .localvoice_article_balloon_text_2 {
    font-size: min(16px, 4.266666666666667vw);
    top: min(24px, 6.4vw);
    left: min(21px, 5.6000000000000005vw);
  }

  .localvoice_article_card:nth-child(3) {
    margin-top: min(10px, 2.666666666666667vw);
    margin-left: max(-3px, -0.8vw);
  }

  .localvoice_article_balloon_3 {
    width: min(341.39px, 91.03733333333332vw);
    top: initial;
    left: initial;
    margin-top: min(76.36px, 20.36266666666667vw);
    margin-left: max(-48px, -12.8vw);
  }

  .localvoice_article_balloon_img_3 {
    max-width: min(226.03px, 60.27466666666667vw);
  }

  .localvoice_article_balloon_text_3 {
    font-size: min(16px, 4.266666666666667vw);
    top: min(34.14px, 9.104vw);
    left: min(37.32px, 9.952vw);
  }

  .localvoice_article_card:nth-child(4) {
    margin-top: min(80.6px, 21.493333333333332vw);
    margin-left: auto;
    margin-right: min(42px, 11.200000000000001vw);
  }

  .localvoice_article_balloon_4 {
    top: initial;
    left: initial;
    margin-top: max(-62.34px, -16.624vw);
    margin-right: max(-40.26px, -10.735999999999999vw);
    width: auto;
  }

  .localvoice_article_balloon_img_4 {
    max-width: min(128.15px, 34.17333333333333vw);
  }

  .localvoice_article_balloon_text_4 {
    font-size: min(16px, 4.266666666666667vw);
    top: min(33.5px, 8.933333333333334vw);
    left: min(24.76px, 6.602666666666666vw);
  }

  .localvoice_article_featured {
    margin-top: min(70px, 18.666666666666668vw);
  }

  .localvoice_article_featured_image {
    max-width: min(150px, 40vw);
    width: 100%;
    height: min(150px, 40vw);
  }


  .localvoice_article_featured_balloon_img img {
    max-width: min(345px, 92vw);
  }

  .localvoice_article_featured_text-block {
    max-width: min(261px, 69.6vw);
    padding: 0 min(33px, 8.799999999999999vw);
    right: auto;
    left: 0;
    top: min(68px, 18.133333333333333vw);
  }

  .localvoice_article_featured_title {
    font-size: min(18px, 4.8vw);
  }

  .localvoice_article_featured_text {
    margin-top: min(16px, 4.266666666666667vw);
    font-size: min(14px, 3.733333333333334vw);
  }
}


/* ----------------------------------------------------------------
   sai セクション
   ---------------------------------------------------------------- */
.localvoice_sai_section {
  padding: 129px 0 80px;
}

.localvoice_sai_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  max-width: 1268px;
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  box-sizing: border-box;
}

.localvoice_sai_img {
  position: absolute;
}

.localvoice_sai_img--01 {
  max-width: min(167.04px, 17.583157894736843vw);
  top: 110px;
  right: 5px;
}

.localvoice_sai_img--02 {
  max-width: min(143px, 15.052631578947368vw);
  bottom: 201.04px;
  left: -13px;
}

.localvoice_sai_img--03 {
  max-width: min(94.16px, 9.91157894736842vw);
  top: -56px;
  left: 0;
}

.localvoice_sai_img--04 {
  max-width: min(125.41px, 13.201052631578946vw);
  bottom: 37px;
  right: 22px;
}

.localvoice_sai_content {
  flex: 1;
  max-width: min(705px, 74.21052631578947vw);
}

.localvoice_sai_title {
  max-width: 311px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
}

.localvoice_sai_text {
  color: #424142;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 400;
  line-height: 2;
  margin-top: 30px;
  margin-bottom: 0;
}

.localvoice_sai_image {
  flex-shrink: 0;
  margin-top: 114px;
  max-width: min(844px, 58.611111111111114vw);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.localvoice_sai__link {
  display: block;
  transition: 0.3s;
}

.localvoice_sai_image img {
  width: 100%;
  height: auto;
  aspect-ratio: 201 / 98;
}

@media screen and (max-width: 834px) {

  /* sai セクション SP */
  .localvoice_sai_section {
    padding: 60px 0;
  }

  .localvoice_sai_wrap {
    flex-direction: column;
    text-align: center;
    padding: 0;
  }

  .localvoice_sai_img--01 {
    max-width: 97.99px;
    width: 100%;
    height: auto;
    aspect-ratio: 97.99 / 79.877;
    top: -83.85px;
  }

  .localvoice_sai_img--02 {
    max-width: 78px;
    width: 100%;
    height: auto;
    aspect-ratio: 78 / 93.789;
    bottom: -127.8px;
    left: 0;
  }

  .localvoice_sai_img--03 {
    max-width: 56.44px;
    width: 100%;
    height: auto;
    aspect-ratio: 56.44 / 53.17;
    top: -73.59px;
    right: 0;
  }

  .localvoice_sai_img--04 {
    max-width: 57.89px;
    width: 100%;
    height: auto;
    aspect-ratio: 57.89 / 45.24;
    bottom: -109.89px;
    right: 0;
  }

  .localvoice_sai_content {
    max-width: 100%;
  }

  .localvoice_sai_title {
    max-width: 291px;
  }

  .localvoice_sai_title_img {
    width: 100%;
    height: auto;
    aspect-ratio: 291 / 127;
  }

  .localvoice_sai_text {
    font-size: 14px;
  }

  .localvoice_sai_image {
    margin-top: 66px;
    max-width: 300px;
  }

  .localvoice_sai_image img {
    max-width: 300px;
    aspect-ratio: 30 / 19;
  }

}

@media screen and (max-width: 375px) {

  .localvoice_sai_img--01 {
    max-width: min(97.99px, 26.130666666666663vw);
    top: max(-83.85px, -22.36vw);
  }

  .localvoice_sai_img--02 {
    max-width: min(78px, 20.8vw);
    bottom: max(-127.8px, -34.08vw);
    left: 0;
  }

  .localvoice_sai_img--03 {
    max-width: min(56.44px, 15.050666666666665vw);
    top: max(-73.59px, -19.624vw);
    right: 0;
  }

  .localvoice_sai_img--04 {
    max-width: min(57.89px, 15.437333333333333vw);
    bottom: max(-109.89px, -29.304000000000002vw);
    right: 0;
  }

  .localvoice_sai_image {
    margin-top: 66px;
    max-width: min(300px, 80vw);
  }

  .localvoice_sai_image img {
    max-width: min(300px, 80vw);
    aspect-ratio: 30 / 19;
  }

  .localvoice_sai_text {
    font-size: clamp(12px, 3.733333333333334vw, 14px);
  }


}

/* ----------------------------------------------------------------
   推しポイント セクション
   ---------------------------------------------------------------- */
.localvoice_oshipoint_section {
  position: relative;
  padding: 234px 0 324px;
  overflow: hidden;
  margin-top: -100px;
  background: linear-gradient(90deg, #EEF4EE 0%, #D1E4D4 100%), #F6F6EB;
}

.localvoice_oshipoint_bg {
  position: absolute;
  top: 73px;
  left: calc(50% + 34px);
  height: 100%;
  background: url(/share/imgs/ij_localvoice_oshipoint_way.svg) no-repeat center;
  background-size: cover;
  width: 529px;
  transform: translateX(-50%);
  background-position: bottom -189px right;
}

.localvoice_oshipoint_wrap {
  position: relative;
  max-width: 1138px;
  margin: 0 auto;
  padding: 0 20px;
  z-index: 2;
}

.localvoice_oshipoint_header {
  text-align: center;
}

.localvoice_oshipoint_title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 9px;
}

.localvoice_oshipoint_title_img {
  max-width: 270px;
  width: 100%;
}

.localvoice_oshipoint_title-icon {
  max-width: 37.63px;
  width: 100%;
  aspect-ratio: 37.63 / 88.56;
}

.localvoice_oshipoint_content {
  display: flex;
  align-items: flex-start;
  gap: min(111px, 7.708333333333334vw);
  margin-top: 100px;
}

.localvoice_oshipoint_left {
  flex: 1;
  margin-top: 15px;
}

.localvoice_oshipoint_lead {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}

.localvoice_oshipoint_lead img {
  max-width: min(352px, 30.085470085470085vw);
}

.localvoice_oshipoint_lead::before {
  content: "";
  display: inline-block;
  width: min(52.72px, 4.505982905982906vw);
  aspect-ratio: 52.72 / 44.64;
  background-image: url("/share/imgs/localvoice_oshipoint_lead_line_left.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.localvoice_oshipoint_lead::after {
  content: "";
  display: inline-block;
  width: min(52.72px, 4.505982905982906vw);
  aspect-ratio: 52.72 / 44.64;
  background-image: url("/share/imgs/localvoice_oshipoint_lead_line_right.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.localvoice_oshipoint_desc {
  margin-top: 38px;
  color: #424142;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  font-weight: 400;
  line-height: 2;
}

.localvoice_oshipoint__btn {
  margin-top: 65px;
  text-align: center;
}


.localvoice_oshipoint_right {
  flex: 1;
  max-width: min(456.45px, 39.01282051282051vw);
}

.localvoice_oshipoint_images {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  position: relative;
  min-height: min(464.25px, 39.679487179487175vw);
  max-width: min(456.45px, 39.01282051282051vw);
}

.localvoice_oshipoint_balloon {
  position: absolute;
  top: 1px;
  right: min(29.16px, 2.4923076923076923vw);
  width: min(309.13px, 26.42136752136752vw);
}

.localvoice_oshipoint_balloon img {
  width: 100%;
}

.localvoice_oshipoint_balloon_text {
  position: absolute;
  top: min(32px, 2.735042735042735vw);
  left: min(37.28px, 3.1863247863247866vw);
  color: #CC7182;
  text-align: center;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: min(20px, 1.7094017094017095vw);
  font-weight: 700;
  line-height: 1.4;
}

.localvoice_oshipoint_image--main {
  position: absolute;
  left: 1px;
  top: min(151px, 12.905982905982908vw);
  max-width: min(290.65px, 24.84188034188034vw);
  width: 100%;
  aspect-ratio: 290.65 / 222.36;
}

.localvoice_oshipoint_image--sub {
  position: absolute;
  bottom: 0;
  left: min(196.08px, 16.7589743589743vw);
  max-width: min(227.92px, 19.48034188034188vw);
  width: 100%;
  aspect-ratio: 227.92 / 210.27;
}

.localvoice_oshipoint_image_illust--01 {
  position: absolute;
  bottom: min(7px, 0.5982905982905984vw);
  left: min(56.94px, 12.95%);
  max-width: min(113.67px, 9.715384615384616vw);
  width: 100%;
  aspect-ratio: 113.67 / 127;
}

.localvoice_oshipoint_image_illust--02 {
  position: absolute;
  top: min(147px, 12.564102564102564vw);
  right: 0;
  max-width: min(77.39px, 6.614529914529915vw);
  width: 100%;
  aspect-ratio: 77.39 / 154;
}

@media screen and (max-width: 1024px) {
  .localvoice_oshipoint_content {
    gap: 20px;
  }
}

@media screen and (max-width: 834px) {

  /* 推しポイント SP */
  .localvoice_oshipoint_section {
    padding: 106px 0 146px;
    margin-top: min(-25.6px, -6.826666666666667vw);
  }

  .localvoice_oshipoint_bg {
    background: url("/share/imgs/ij_localvoice_oshipoint_way-sp.svg") no-repeat;
    background-size: cover;
    top: 0;
    left: calc(50% - 16px);
    background-position: top -110px right;
    width: 393.877px;
  }

  .localvoice_oshipoint_header {
    margin-bottom: 0;
  }

  .localvoice_oshipoint_title {
    gap: 12px;
    margin-bottom: 0;
  }

  .localvoice_oshipoint_title_img {
    max-width: 135px;
    width: 100%;
    height: auto;
    aspect-ratio: 155 / 30;
  }

  .localvoice_oshipoint_title-icon {
    max-width: 16.14px;
    width: 100%;
    height: auto;
    aspect-ratio: 16.14 / 38;
  }

  .localvoice_oshipoint_content {
    flex-direction: column;
    align-items: center;
    margin-top: 23px;
    gap: 9px;
  }

  .localvoice_oshipoint_lead {
    gap: 19px;
  }

  .localvoice_oshipoint_lead::before {
    width: 33.22px;
    aspect-ratio: 33.22 / 28.12;
  }

  .localvoice_oshipoint_lead::after {
    width: 33.22px;
    aspect-ratio: 33.22 / 28.12;
  }

  .localvoice_oshipoint_lead img {
    aspect-ratio: 211 / 68;
    max-width: 205px;
    width: 100%;
    height: auto;
  }

  .localvoice_oshipoint_desc {
    margin-top: 27px;
    font-size: 14px;
  }

  .localvoice_oshipoint_images {
    min-height: max(361.38px, 96.368vw);
    flex-direction: column;
    align-items: center;
    gap: 16px;
    max-width: 100%;
  }

  .localvoice_oshipoint_balloon {
    /* right: max(13.89px, 2.34%); */
    right: max(5.89px, calc((100% - 375px) / 2 + 5.89px));
    width: auto;
  }

  .localvoice_oshipoint_image--balloon {
    width: max(228.74px, 59.93066666666667vw);
    height: auto;
    aspect-ratio: 224.74 / 99.6;
    filter: drop-shadow(0 3.2px 8px rgba(0, 0, 0, 0.10));
  }

  .localvoice_oshipoint_balloon_text {
    top: max(21px, 18%);
    left: max(15.54px, 7%);
    font-size: 16px;
  }

  .localvoice_oshipoint_image--main {
    top: min(104.38px, 28.88%);
    max-width: max(233px, 62.133333333333326vw);
    width: 100%;
    aspect-ratio: 233 / 178;
    left: -3px;
  }

  .localvoice_oshipoint_image--sub {
    left: auto;
    right: 0;
    bottom: 0;
    max-width: max(182px, 48.53333333333333vw);
    width: 100%;
    aspect-ratio: 182 / 168;
  }

  .localvoice_oshipoint_image_illust--01 {
    max-width: max(90.94px, 24.250666666666664vw);
    height: auto;
    aspect-ratio: 90.94 / 101.6;
    bottom: 5.6px;
    left: 42.47px;
  }

  .localvoice_oshipoint_image_illust--02 {
    max-width: max(61.91px, 16.242666666666665vw);
    top: 86.78px;
    aspect-ratio: 61.91 / 123.2;
    right: -6px;
  }

  .localvoice_oshipoint__btn {
    margin-top: 40.64px;
  }

  .localvoice_oshipoint_left {
    max-width: 100%;
    text-align: center;
  }

  .localvoice_oshipoint_text_wrap {
    margin-bottom: 30px;
  }

  .localvoice_oshipoint_right {
    max-width: 100%;
    width: 100%;
  }
}

@media screen and (max-width: 375px) {

  .localvoice_oshipoint_images {
    min-height: min(361.38px, 96.368vw);
  }

  .localvoice_oshipoint_image--balloon {
    width: min(228.74px, 59.93066666666667vw);
  }

  .localvoice_oshipoint_balloon img {
    width: min(228.74px, 60.99733333333334vw);
  }

  .localvoice_oshipoint_balloon_text {
    top: min(21px, 5.6000000000000005vw);
    left: min(15.54px, 4.144vw);
    font-size: min(16px, 4.266666666666667vw);
  }

  .localvoice_oshipoint_image--main {
    top: min(104.38px, 27.834666666666664vw);
    max-width: min(233px, 62.133333333333326vw);
    left: max(-3px, -0.8vw);
  }

  .localvoice_oshipoint_image--sub {
    max-width: min(182px, 48.53333333333333vw);
  }

  .localvoice_oshipoint_image_illust--01 {
    max-width: min(90.94px, 24.250666666666664vw);
    bottom: min(5.6px, 1.4933333333333334vw);
    left: min(42.47px, 11.325333333333333vw);
  }

  .localvoice_oshipoint_image_illust--02 {
    max-width: min(61.91px, 16.242666666666665vw);
    top: min(86.78px, 23.141333333333332vw);
    right: max(-6px, -1.6vw);
  }
}



#footer {
  margin-top: min(-100px, -7.7vw);
  position: relative;
}

@media screen and (max-width: 834px) {
  #footer {
    margin-top: min(-22px, -5.933333333333333vw);
  }
}

/* 共通 */

.is-sp {
  display: none;
}

@media screen and (max-width: 834px) {
  .is-sp {
    display: block;
  }

  .is-pc {
    display: none;
  }
}