@media screen and (min-width: 1500px) {
  .future_sec .future_sec-bc::after {
    background: rgb(255, 255, 255);
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 1) 0%,
      rgba(255, 255, 255, 1) 30%,
      rgba(245, 244, 236, 1) 20%,
      rgba(245, 244, 236, 1) 100%
    );
  }
}


@media screen and (max-width: 1280px) {
  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01{
    max-width: 410px;
  }
}

@media screen and (max-width: 1280px) {
  div.pop-slider section.sustainable-relay-img-slider div.boxss div.boxsimg {
    max-width: 550px;
  }
}

@media screen and (max-width: 1260px) {
  .text-slider {
    margin-left: 140px;
  }
}


@media screen and (max-width: 1200px) {
  .menu-content-map {
    display: none;
  }

  .top-sustainable-future.future_sec .text-slider {
    padding-right: 260px;
  }

  .top-sustainable-future.future_sec .main-slider {
    width: 640px;
  }

  .top-sustainable-future.future_sec div.inner {
    max-width: 89.5%;
  }
}


@media screen and (max-width: 1190px) {
  section.top-sustainable-action div.main-inner,
  div.inner {
    width: 89.5%;
  }

  .thumbnail-slider {
    margin-left: -10px;
  }

  div.top-voice_block
    a.top-voice_content
    div
    div.top-voice_content-box_ele.sp-only,
  div.top-voice_block
    a.top-voice_content
    div.top-voice_content-box
    div.top-voice_content-box_ele {
    right: -45px;
  }

  .top-page-body .top-sustainable-future .top-future-body::after {
    content: "";
    left: 50px;
  }

  section.top-mapping div.top-mapping_left {
    width: 89.5%;
  }
}


@media screen and (max-width: 1070px) {
  section.top-mapping div.top-out-right {
    width: 95%;
    padding-left: 200px;
  }

  section.top-mapping div.top-out-right {
    margin-top: 0;
  }
}


@media screen and (max-width: 1050px) {
  div.top-voice_block
    a.top-voice_content
    div
    div.top-voice_content-box_ele.sp-only,
  div.top-voice_block
    a.top-voice_content
    div.top-voice_content-box
    div.top-voice_content-box_ele {
    right: -25px;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box {
    width: 234px;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box img {
    height: 344px;
  }
}


@media screen and (max-width: 1024px) {
  .main-slider {
    max-width: 658px;
    width: 100%;
  }

  .top-sustainable-future .top-future-body::after {
    content: "";
    width: 100vw;
    height: 100%;
    background: rgb(255, 255, 255);
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 1) 0%,
      rgba(254, 254, 254, 1) 5.7%,
      rgba(245, 245, 237, 1) 5.7%,
      rgba(245, 244, 236, 1) 100%
    );
  }
}


@media screen and (max-width: 1100px) {
  div.s_inner {
    width: 89.5%;
  }

  .menu-content_link-02:nth-child(1) {
    margin-bottom: 0px;
  }

  section.page_sub_head div.main-inner {
    width: 89.5%;
  }


  /* sab head */
  div.section_title_block div h1,
  div.section_title_block div h2 {
    font-size: 24px;
    margin-bottom: 0;
  }

  div.section_title_block img {
    width: 62px;
    height: 53px;
  }


  /* lab page */
  div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    h2 {
    font-size: 16px;
  }

  div.actions01_page-block.n3
    a.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    div.actions01_page-block_content-flex
    p,
  div.actions01_page-block.n3
    div.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    div.actions01_page-block_content-flex
    p {
    font-size: 14px;
  }

  div.actions01_page-block.n3 a.n3-block img.n3-block_img,
  div.actions01_page-block.n3 div.n3-block img.n3-block_img {
    align-self: flex-start;
    width: 80%;
  }

  section.president-chat-sec div.chat-box.right,
  section.president-chat-sec div.chat-box.left {
    width: 90%;
  }

  section.president-chat-sec .chat-box-block {
    padding: 0;
  }

  section.voice-detail_page div.voice-detail_page-head div.voice_page_imgbox {
    width: 80%;
  }

  section.voice_page-body a.voice_page-content div.box-items h2,
  section.voice_page-body div.voice_page-content div.box-items h2,
  section.voice-detail_page div.box-items h2 {
    font-size: 24px;
  }

  section.voice_page-body a.voice_page-content div.box-items h3,
  section.voice_page-body div.voice_page-content div.box-items h3,
  section.voice-detail_page div.box-items h3 {
    font-size: 16px;
    margin-top: 10px;
  }

  section.voice_page-body a.voice_page-content div.box-items p,
  section.voice_page-body div.voice_page-content div.box-items p,
  section.voice-detail_page div.box-items p {
    font-size: 14px;
    margin-top: 20px;
  }

  div.box-items p span {
    font-size: 18px;
  }

  section.voice_page-body a.voice_page-content div.box-items,
  section.voice_page-body div.voice_page-content div.box-items,
  section.voice-detail_page div.voice-detail_page-head .box-items {
    width: 350px;
  }

  section.voice_page div.inner {
    width: 89.5%;
  }

  section.voice_page-body a.voice_page-content div.voice_page-content-img,
  section.voice_page-body div.voice_page-content div.voice_page-content-img {
    width: 90%;
    height: auto;
    aspect-ratio: 22/9;
  }

  .top-sustainable-future.future_sec .t-slider-content_head-text01 {
    font-size: 18px;
  }

  .top-sustainable-future.future_sec .t-slider-content_head-number {
    font-size: 76px;
  }

  .top-sustainable-future.future_sec .text-slider_title {
    font-size: 22px;
  }

  .top-sustainable-future.future_sec .top-future-body .text-slider.s-slider,
  .top-sustainable-future.future_sec
    .future_sec
    .top-future-body
    .text-slider.s-slider {
    position: unset;
    padding: 0;
    margin: auto;
  }

  .top-sustainable-future.future_sec .text-slider {
    max-width: 100%;
  }

  .top-sustainable-future.future_sec .text-slider-content_head {
    display: none;
  }

  .top-sustainable-future.future_sec .main-slider {
    width: 100%;
  }

  .top-sustainable-future.future_sec .text-slider-content {
    align-items: flex-start;
    padding-left: 15px;
  }

  .top-sustainable-future.future_sec .t-slider-content_title-box {
    margin-top: -15px;
  }

  .top-sustainable-future.future_sec .dotts {
    margin-left: auto;
    margin-right: 0;
    margin-top: 24px;
  }

  .top-sustainable-future div.flex-fsb-head {
    flex-direction: column;
  }

  .top-sustainable-future div.flex-fsb-head p {
    text-align: start;
  }

  .top-sustainable-future.future_sec .main-slider {
    margin-top: 50px;
  }

  div.top-sustainable-action_sec-block
    .top-sustainable-action_sec-block-sha_img,
  section.top-sustainable-action_sec-block
    .top-sustainable-action_sec-block-sha_img {
    width: 90%;
  }

  div.top-sustainable-action_sec-block,
  section.top-sustainable-action_sec-block {
    padding-left: 30px;
    padding-right: 30px;
  }

  .t-slider-content_head-number {
    font-size: 80px;
  }

  .text-slider_title,
  .t-slider-content_head-text01 {
    font-size: 20px;
  }

  .text-slider {
    padding-bottom: 80px;
    margin-left: 40px;
  }

  .thumbnail-inner .d-btn.white {
    min-width: 110px;
    font-size: 14px;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box {
    width: calc(234px - 35px);
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box img {
    height: calc(344px - 50px);
  }
}


@media screen and (max-width: 900px) {
  section.top-mapping div.top-out-right {
    padding-left: 400px;
  }
}


@media screen and (max-width: 880px) {
  .thumbnail-slider {
    width: 500px;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01,
  div.pop-slider section.sustainable-relay-img-slider div.boxss div.boxsimg {
    width: 340px;
  }

  .top-page-body .top-sustainable-future .top-future-body::after {
    content: "";
    left: 10px;
  }
}


@media screen and (max-width: 830px) {
  div.main-inner,
  div.inner {
    max-width: 89.5%;
    width: 100%;
  }

  section.page_sub_head .main-inner,
  footer.footer div.footer_head {
    flex-direction: column;
  }

  footer.footer
    div.footer_head
    div.footer-left
    p.footer-left_text
    .mobile_none {
    display: none;
  }

  footer.footer div.footer_head div.footer-right ul {
    margin-top: 30px;
  }


  /* lab page */
  div.actions01_page-block.n3 a.n3-block img.n3-block_img,
  div.actions01_page-block.n3 div.n3-block img.n3-block_img {
    width: 50%;
  }

  section.page_sub_head div.main-inner {
    align-items: flex-start;
  }

  section.page_sub_head div.main-inner div.page_sub_head-link_box {
    margin-top: 20px;
    flex-direction: row;
  }

  section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box
    a.page_sub_head-link {
    margin-bottom: 0;
    margin-right: 13px;
    font-size: 14px;
  }

  section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box
    a.page_sub_head-link:nth-child(2) {
    margin-right: 0;
  }

  div.social_contributions-sec_02 div.actions01_page-block {
    width: 100%;
  }

  div.actions01_page-block div.actions01_page-block_contentbox {
    gap: 0 20px;
  }

  section.president-page
    div.inner
    div.president-page-head
    div.president-page-head_img {
    width: 600px;
    border-radius: 20px 0 20px 0;
  }

  section.top-sustainable-relay
    div.top-sustainable-relay_block
    div.top-sustainable-relay_block--content {
    width: min(27.108vw, 225px);
    height: min(18.313vw, 152px);
  }

  .main-slider {
    max-width: 568px;
  }
}


@media screen and (max-width: 1024px) {
  section.president-page div.inner div.president-page-head {
    height: auto;
    padding-top: 0;
  }

  section.president-page div.inner div.president-page-head div.president-page-head_img {
    width: 100%;
    height: 40.8vw;
    min-height: 153px;
    position: unset;
    margin-top: 20px;
  }

  section.president-page div.inner div.president-page-head h1 span, section.president-page div.inner div.president-page-head h1 {
    font-size: 27px;
    margin-top: 20px;
  }
}


@media screen and (max-width: 768px) {
  .dotts {
    font-size: 14px;
  }

  .sp-only {
    display: block;
  }

  .pc-only {
    display: none !important;
  }

  .navi-img {
    width: 241px;
    height: 22px;
  }

  .navigation {
    padding: 0 20px;
    padding-left: 0;
    height: 49px;
    border: none;
  }
  .top-page-body .navigation {
    border-bottom: 2px solid var(--d-red);
  }
  .mb_menu-section {
    width: 55px;
    border-right: 1px solid #cccccc;
    height: 100%;
    margin-right: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
  }

  /* topページのサステナアクションのために記述 */
  div.section_title_block {
    align-items: center;
  }

  /* トップページのサステナアクションのボタン */
  div.top-sustainable-action-body .d-btn {
    margin-top: 30px;
  }

  /* トップページのサステナアクションのもっと見るボタン */
  #on_btn,
  main.action-main div.top-sustainable-action_sec-block_open-btn {
    margin-top: 30px;
  }

  section.top-sustainable-relay
    div.top-sustainable-relay_content
    p.section_title_block-relay_text.red-color,
  section.top-sustainable-relay
    div.top-sustainable-relay_content
    p.section_title_block-relay_text {
    font-size: 14px;
    margin-top: 20px;
  }

  div.section_title_block div h1,
  div.section_title_block div h2 {
    font-size: 22px;
  }

  div.section_title_block div span.f-en {
    font-size: 12px;
    line-height: 1.5;
  }

  div.section_title_block img {
    width: 46px;
    height: 40px;
  }

  section.page_sub_head {
    padding-bottom: 30px;
    padding-top: 86px;
  }

  .menu-link-box div:last-child {
    display: flex;
    flex-direction: column;
  }

  .menu-content_link-02 {
    margin-bottom: 0px;
    display: flex;
    align-items: baseline;
  }

  .menu-content_link-02 {
    margin-bottom: 5px !important;
  }

  .menu-content_link-02:last-child {
    margin-bottom: 0;
  }

  .menu_display_white {
    border-radius: unset;
    padding: 0;
    padding-top: 5px;
  }

  .menu-content_list {
    padding-left: 0;
  }

  .menu-content {
    margin: 0 auto;
    margin-top: 47px;
    width: 89.33%;
    padding-bottom: 100px;
  }

  .menu-content_link {
    font-size: 16px;
    letter-spacing: -0.05em;
  }

  .navigation.menu {
    width: 89.33%;
    align-items: center;
  }

  .navigation.menu .navi-img {
    width: 241px;
    height: auto;
    margin-top: 0;
  }

  .memu_container {
    align-items: flex-start;
  }

  .memu_btn {
    font-size: 12px;
    width: 73px;
    height: 34px;
  }

  .menu_btn-icon {
    width: 8px;
    height: 7px;
    margin-bottom: 3px;
    margin-right: 5px;
  }

  /* footer */
  footer.footer div.footer_head {
    max-width: 89%;
    width: 100%;
    padding: 0;
  }

  footer.footer div.footer_body {
    height: 56px;
  }


  /* lab page */
  section.voice_page-body div.voice_page-content,
  div.actions01_page-block div.actions01_page-block_contentbox {
    display: flex;
    flex-direction: column;
  }

  div.actions01_page-block div.actions01_page-block_contentbox {
    gap: 10px;
  }

  div.actions01_page-block.n3 a.n3-block,
  div.actions01_page-block.n3 div.n3-block {
    flex-direction: column;
  }

  section.voice_page-body a.voice_page-content div.voice_page-content-img,
  section.voice_page-body div.voice_page-content div.voice_page-content-img,
  div.actions01_page-block.n3 a.n3-block div.actions01_page-block_contentbox,
  div.actions01_page-block.n3 div.n3-block div.actions01_page-block_contentbox {
    margin-left: auto;
    margin-right: 0;
    max-width: calc(100% - 25px);
    width: 100%;
    margin-top: -50px;
  }

  section.voice_page-body a.voice_page-content,
  section.voice_page-body div.voice_page-content {
    margin-top: 30px;
  }

  section.voice_page-body a.voice_page-content div.voice_page-content-img,
  section.voice_page-body div.voice_page-content div.voice_page-content-img {
    margin-left: 0;
    margin-right: auto;
    margin-top: 0;
  }

  div.actions01_page-block.n3 a.n3-block img.n3-block_img,
  div.actions01_page-block.n3 div.n3-block img.n3-block_img {
    transform: translate(0);
    max-width: calc(100% - 25px);
    width: 100%;
  }

  section.voice_page-body a.voice_page-content div.box-items,
  section.voice_page-body div.voice_page-content div.box-items {
    margin-left: auto;
    margin-right: 0;
    margin-top: -30px;
  }

  section.voice_page-body a.voice_page-content div.box-items,
  section.voice_page-body div.voice_page-content div.box-items {
    max-width: calc(100% - 40px);
    width: 100%;
  }

  section.voice_page-body a.voice_page-content div.voice_page-content-img,
  section.voice_page-body div.voice_page-content div.voice_page-content-img {
    aspect-ratio: 315/227;
    border-radius: 20px 0 20px 0;
  }

  section.voice_page-body
    a.voice_page-content:nth-child(odd)
    div.voice_page-content-img {
    background-position: left;
  }

  section.voice_page-body
    a.voice_page-content:nth-child(even)
    div.voice_page-content-img {
    background-position: right;
  }

  div.actions01_page-block {
    padding: 10px;
    padding-top: 68px;
    padding-bottom: 10px;
  }

  div.social_contributions-sec_02 div.actions01_page-block,
  div.actions01_page-block.n3
    a.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content,
  div.actions01_page-block.n3
    div.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content {
    padding: 20px;
    padding-top: 70px;
  }

  div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    h2 {
    font-size: 20px;
    line-height: 1.7;
    text-align: start;
  }

  .actions-page-bodys
    div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    h2 {
    text-align: unset;
    text-align: center;
  }

  div.actions01_page-block.n3
    a.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    div.actions01_page-block_content-flex
    p,
  div.actions01_page-block.n3
    div.n3-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    div.actions01_page-block_content-flex
    p {
    margin-top: 20px;
  }

  div.actions01_page-block.n3 a.n3-block,
  div.actions01_page-block.n3 div.n3-block {
    margin-bottom: 20px;
  }

  div.actions01_page-block.n3 div.n3-block.last {
    margin-bottom: 0;
  }

  div.social_contributions-sec_02
    div.actions01_page-block
    div.actions01_page-block_item,
  div.actions01_page-block div.actions01_page-block_item {
    width: 295px;
    height: 98px;
  }

  div.actions01_page-block div.actions01_page-block_item {
    height: auto;
    padding: 20px 0;
    z-index: 1;
  }

  div.actions01_page-block div.actions01_page-block_item div {
    font-size: 16px;
    text-align: center;
    line-height: 1.75;
  }

  div.actions01_page-block
    div.actions01_page-block_item
    div.actions01_page-block_item-text-sp {
    font-size: 14px;
  }

  div.actions01_page-block.first
    div.actions01_page-block_contentbox
    div.actions01_page-block_content-flex
    h2 {
    font-size: 20px;
    margin-top: 20px;
  }

  div.actions01_page-block.first
    div.actions01_page-block_contentbox
    div.actions01_page-block_content-flex
    p {
    margin-top: 20px;
  }

  span.social_contributions-top_span {
    margin-top: 50px;
    font-size: 14px;
  }

  div.actions01_page-block {
    margin-top: 70px;
    padding-top: 100px;
  }

  div.actions01_page-block:last-of-type {
    padding-top: 75px;
  }

  div.actions01_page-block.first {
    margin-top: 100px;
    padding-bottom: 30px;
  }

  .lab-page-bodys div.actions01_page-block:last-of-type {
    padding-top: 40px;
  }

  .lab-page-bodys div.actions01_page-block.first {
    padding-top: 60px;
  }

  div.actions01_page-block.n3 p.n3-p {
    margin-bottom: 20px;
    font-size: 14px;
  }

  section.social_contributions-sec.lab-sec
    div.s_inner
    div
    div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    a.dotts {
    font-size: 14px;
    margin-top: 20px;
  }

  div.social_contributions-sec_02 {
    margin-top: 80px;
    gap: 52px 0;

    flex-direction: column;
  }

  .action02-page-bodys
    section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box
    a.page_sub_head-link,
  div.social_contributions_block div.actions01_page-block_contentbox p {
    font-size: 14px;
  }

  div.social_contributions-sec_02 a.social_contributions-sec_02-blocks,
  div.social_contributions-sec_02 div.social_contributions-sec_02-blocks {
    width: 100%;
  }

  div.social_contributions-sec_02
    div.actions01_page-block
    div.actions01_page-block_item.socialpage {
    padding: 10px 0;
  }

  .action02-page-bodys
    section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box,
  .actions-page-bodys
    section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box {
    gap: 40px;
  }

  section.page_sub_head div.main-inner div.page_sub_head-link_box {
    gap: 10px;
  }

  div.s_inner.actions02_page div.actions02_block div.actions02_block-box02 {
    margin-top: 30px;
  }

  .main-content__section--future .d-btn {
    margin-top: 50px;
  }

  section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box
    a.page_sub_head-link
    span {
    margin-right: 5px;
  }

  section.page_sub_head
    div.main-inner
    div.page_sub_head-link_box
    a.page_sub_head-link {
    flex-basis: 50%;
    margin-right: 0;
    align-items: baseline;
    line-height: 1.7;
  }

  div.social_contributions_block a.social_contributions_block-banner {
    margin-top: 50px;
  }

  section.voice-detail_page div.voice-detail_page-head div.voice_page_imgbox {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    bottom: auto;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    div.voice_page_imgbox
    div.voice_page_imgbox-items {
    top: -109px;
    width: 200px;
    height: 98px;
    left: 50%;
    transform: translateX(-50%);
    background-image: url(../img/voice/page/voice-items-sp.svg);
    padding-bottom: 20px;
    align-items: flex-start;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    div.voice_page_imgbox
    div.voice_page_imgbox-items
    h2 {
    font-size: 12px;
    margin-top: 10px;
    text-align: start;
  }

  section.voice-detail_page div.voice-detail_page-head div.voice_page_imgbox {
    width: 100%;
    height: auto;
    aspect-ratio: 335/153;
    margin-top: 20px;
    flex: none;
  }

  section.voice-detail_page div.voice-detail_page-head .box-items {
    transform: translateY(0);
    margin: auto;
    border: none;
    padding-top: 13px;
    padding-bottom: 0;
    width: 100%;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    .box-items
    div.box-items_footer {
    margin-top: 20px;
  }

  section.voice-detail_page div.voice-detail_page-head {
    height: auto;
  }

  .voice-detail-body section.voice-detail_page div.box-items h3 {
    margin-top: 10px;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    .box-items
    div.box-items_footer
    div:nth-child(2) {
    font-size: 14px;
  }

  section.voice-detail_page div.box-items h3 {
    margin-top: 16px;
  }

  div.inner section.president-chat-sec.voice_page_varsion {
    margin-top: 30px;
    padding: 30px 10px;
  }

  div.inner
    section.president-chat-sec.voice_page_varsion
    div.chat-box-block
    h1.voice-datail_page-h1 {
    font-size: 20px;
    margin-bottom: 20px;
  }

  section.president-chat-sec div.chat-box.right,
  section.president-chat-sec div.chat-box.left {
    font-size: 16px;
    padding: 15px;
  }

  div.inner
    section.president-chat-sec.voice_page_varsion
    div.chat-box-block
    div.chat-box
    .chat-box_min-content
    .chat-box_min-content_head
    span {
    font-size: 14px;
  }

  div.inner
    section.president-chat-sec.voice_page_varsion
    div.chat-box-block
    div.chat-box
    .chat-box_min-content
    .chat-box_min-content_head
    h2 {
    font-size: 16px;
    text-align: center;
  }

  div.inner
    section.president-chat-sec.voice_page_varsion
    div.chat-box-block
    div.chat-box
    .chat-box_min-content
    .chat-box_min-content_body {
    font-size: 16px;
    padding: 20px;
  }

  section.president-chat-sec hr {
    margin-top: 30px;
    margin-bottom: 20px;
  }

  .voice-detail_page-inner .d-btn {
    margin-top: 30px;
  }

  section.voice-detail_page .section_title_block {
    margin-top: 0;
  }

  .all-voice-bodys
    section.voice_page-body
    div.voice_page-content:nth-child(even)
    div.box-items {
    margin-left: 0;
    margin-right: auto;
  }

  section.voice_page-body a.voice_page-content div.box-items,
  section.voice_page-body div.voice_page-content div.box-items {
    transform: unset;
    position: unset;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  section.voice_page div.inner div.voice_page-head {
    flex-direction: column;
  }

  .all-voice-bodys section.voice_page-body a.voice_page-content div.dotts,
  .all-voice-bodys section.voice_page-body div.voice_page-content a.dotts {
    margin-top: 20px;
  }

  .all-voice-bodys section.voice_page div.inner div.voice_page-head p {
    font-size: 14px;
    text-align: left;
  }

  section.voice_page div.inner div.voice_page-head p {
    margin-top: 20px;
  }

  main.action-main,
  section.future_sec,
  section.voice_page {
    margin-top: 84px;
  }

  section.future_sec {
    padding-bottom: 50px;
  }

  section.voice_page-body a.voice_page-content div.box-items h2,
  section.voice_page-body div.voice_page-content div.box-items h2 {
    font-size: 18px;
  }

  section.voice_page-body a.voice_page-content div.box-items h3,
  section.voice_page-body div.voice_page-content div.box-items h3 {
    font-size: 14px;
  }

  div.actions01_page
    div.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title,
  div.s_inner.actions02_page
    div.actions02_block
    div.actions02_block_textbox
    h2 {
    font-size: 24px;
    line-height: 1.75;
    padding-top: 0;
  }

  section.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title {
    font-size: 24px;
    line-height: 1.75;
    padding-top: 50px;
  }

  div.actions01_page div.top-sustainable-action_sec-block,
  div.s_inner.actions02_page {
    margin-top: 50px;
  }

  div.top-sustainable-action_sec-block p.top-sustainable-action_sec-block-p,
  section.top-sustainable-action_sec-block p.top-sustainable-action_sec-block-p {
    margin-top: 20px;
    font-size: 14px;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    p.top-sustainable-action_sec-block_policy-box-p,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    p.top-sustainable-action_sec-block_policy-box-p,
  div.s_inner.actions02_page div.actions02_block div.actions02_block_textbox p {
    font-size: 16px;
    margin-top: 20px;
  }

  div.s_inner.actions02_page div.actions02_block div.actions02_block-box {
    flex-direction: column;
    padding: 30px 20px;
    margin-top: 30px;
  }

  div.s_inner.actions02_page div.actions02_block div.actions02_block-box div {
    width: 100%;
    height: 1px;
    min-height: auto;
    margin: 30px 0;
  }

  .actions01_page-sec2,
  div.actions02_block.section03,
  div.s_inner.actions02_page div.actions02_block:nth-of-type(2) {
    margin-top: 50px;
  }

  div.actions02_block.section03 div.actions02_block03_head {
    flex-direction: column;
  }

  div.actions02_block.section03 div.actions02_block03_head h2 {
    font-size: 28px;
  }

  div.actions02_block.section03 div.actions02_block03_head p {
    font-size: 16px;
    margin-top: 20px;
  }

  div.actions02_block.section03 div.actions02_block03_head p::after {
    bottom: -30px;
  }

  section.top-mapping div.top-mapping_right img,
  div.actions02_block.section03 img {
    width: 751px;
    height: 481px;
  }

  div.actions02_block.section03 span {
    font-size: 12px;
    margin-top: 30px;
  }

  section.top-mapping div.top-mapping_right,
  div.actions02_block.section03 .actions02_block03_head-imgbox {
    width: 100%;
    display: flex;
    justify-content: center;
    width: 100vw;
  }

  .mapping-content-inner_box {
    max-width: 89.5%;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .mapping-content-inner_box ul {
    padding-left: 15px;
  }

  section.top-mapping div.top-mapping_right .mapping-content {
    position: unset;
  }

  section.top-mapping div.top-mapping_right .mapping-content.n01 {
    margin-left: auto;
    margin-right: -1.333vw;
    width: 65.867vw;
    height: 46.4vw;
    margin-top: -30px;
    background-image: url(../img/top-page/map/map01_sp.png);
  }

  section.top-mapping div.top-mapping_right .mapping-content.n02 {
    margin-left: -1.333vw;
    margin-right: auto;
    margin-top: -36.333vw;
    width: 65.867vw;
    height: 64.267vw;
    background-image: url(../img/top-page/map/map02_sp.png);
  }

  .mapping-inner-flex_style {
    flex-direction: column;
  }

  section.top-mapping div.top-mapping_right .mapping-content.n03 {
    width: 68.8vw;
    height: 48.533vw;
    margin-left: auto;
    margin-right: -4vw;
    margin-top: -19.667vw;
    background-image: url(../img/top-page/map/map03_sp.png);
  }

  section.top-mapping div.top-mapping_right .mapping-content.n04 {
    width: 65.333vw;
    height: 51.2vw;
    margin-right: auto;
    margin-left: -2.667vw;
    margin-top: -23.667vw;
    background-image: url(../img/top-page/map/map04_sp.png);
  }

  section.top-mapping div.top-mapping_right .mapping-content.n05 {
    width: 65.6vw;
    height: 46.667vw;
    margin-left: auto;
    margin-right: -4vw;
    margin-top: -20.667vw;
    background-image: url(../img/top-page/map/map05_sp.png);
  }

  section.top-mapping div.top-out-right {
    width: 100%;
    padding: 0;
    overflow: visible;
    margin-top: 30px;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    div.top-sustainable-action_sec-block_policy-box-title,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    div.top-sustainable-action_sec-block_policy-box-title {
    font-size: 16px;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    h2.top-sustainable-action_sec-block_policy-h2
    .m,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    h2.top-sustainable-action_sec-block_policy-h2
    .m,
  div.actions01_page
    div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    h2.top-sustainable-action_sec-block_policy-h2
    .m {
    font-size: 24px;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box {
    padding-top: 48px;
    padding-bottom: 30px;
    margin-top: 38px;
  }

  div.top-sustainable-action_sec-block div.triangle,
  section.top-sustainable-action_sec-block div.triangle {
    width: 22px;
    height: 12px;
    margin-top: 20px;
  }

  .actions01_page-textbox p.action02_page-textbox-bold_p {
    font-size: 14px;
  }

  .actions01_page-textbox h2 {
    font-size: 20px;
  }

  .actions01_page-textbox p {
    font-size: 14px;
    margin-top: 20px;
  }

  div.actions01_page-block div.actions01_page-block_item span {
    font-size: 24px;
  }

  div.actions01_page-block:nth-of-type(1)
    div.actions01_page-block_contentbox
    div.actions01_page-block_content {
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 100%;
  }

  div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content
    p {
    margin-top: 20px;
  }

  section.top-sustainable-special div.inner,
  section.president-page .top-sustainable-special .inner {
    flex-direction: column;
  }

  section.top-sustainable-special div.inner div.top-special_right.sp-only {
    margin-top: 30px;
  }

  section.top-sustainable-special
    div.inner
    a.top-special_left
    p.top-special_left-text,
  section.top-sustainable-special
    div.inner
    div.top-special_left
    p.top-special_left-text {
    font-size: 12px;
    margin-top: 20px;
  }

  section.top-sustainable-special
    div.inner
    a.top-special_left
    h2.top-special_left-title,
  section.top-sustainable-special
    div.inner
    div.top-special_left
    h2.top-special_left-title {
    font-size: 20px;
  }

  section.president-chat-sec div.chat-box.left {
    font-size: 16px;
  }

  section.president-chat-sec div.chat-box.right {
    font-size: 14px;
  }

  section.president-chat-sec {
    padding: 30px 10px;
    margin-top: 30px;
  }

  section.president-page div.inner div.president-page-head {
    height: auto;
    padding-top: 0;
  }

  section.president-page
    div.inner
    div.president-page-head
    div.president-page-head_img {
    width: 100%;
    height: 40.8vw;
    min-height: 153px;
    position: unset;
    margin-top: 20px;
  }

  section.president-page div.inner div.president-page-head h1 span,
  section.president-page div.inner div.president-page-head h1 {
    font-size: 27px;
    margin-top: 20px;
  }

  section.president-page
    div.inner
    div.president-page-head
    span.president-names {
    font-size: 18px;
    margin-top: 15px;
  }

  div.top-sustainable-action_sec-block .top-sustainable-action_sec-block-zu,
  section.top-sustainable-action_sec-block .top-sustainable-action_sec-block-zu {
    margin-top: 30px;
  }

  section.president-page div.inner div.president-page-head span {
    font-size: 14px;
    margin-top: 20px;
  }

  section.president-page .top-sustainable-special {
    margin-top: 50px;
  }

  section.president-page
    div.inner
    div.president-page-head
    .section_title_block
    span {
    margin-top: 0 !important;
    font-size: 12px;
  }

  section.president-chat-sec div.chat-box.left:has(> img),
  section.president-chat-sec div.chat-box.right:has(> img) {
    width: 100%;
  }

  section.top-sustainable-special
    div.inner
    a.top-special_left
    p.top-special_left-text.small,
  section.top-sustainable-special
    div.inner
    div.top-special_left
    p.top-special_left-text.small {
    margin-top: 20px;
  }

  footer.footer {
    margin-top: 50px;
    padding-top: 30px;
  }

  div.sustainable-action-column a.sustainable-action-content-link {
    display: flex;
    flex-direction: row;
    width: 100%;
  }

  div.sustainable-action-column
    a.sustainable-action-content-link
    div.sustainable-action-content_img-box {
    width: 127px;
    height: 97px;
    flex: none;
  }

  div.sustainable-action-column
    a.sustainable-action-content-link
    div.sustainable-action-content_img-box
    img.sustainable-action-content_img {
    width: 100%;
    height: 100%;
    aspect-ratio: unset;
  }

  div.sustainable-action-column
    a.sustainable-action-content-link
    h2.sustainable-action-content_title {
    margin-left: 20px;
    margin-top: 0;
    font-size: 14px;
  }

  div.sustainable-action-column div:nth-child(2) {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  div.sustainable-action-column {
    gap: 20px;
    margin-top: 30px;
  }

  div.sustainable-action-column
    a.sustainable-action-content-link
    div.sustainable-action-content_img-box
    img.sustainable-action-content_new {
    width: 40px;
    height: 40px;
    top: -10px;
    left: -10px;
  }

  div.sustainable-action-column
    a.sustainable-action-content-link
    div.sustainable-action-content_dem-link {
    flex-direction: row;
    margin-top: 0;
    font-size: 14px;
  }

  div.top-sustainable-action-head {
    flex-direction: column;
  }

  div.top-sustainable-action-head p {
    margin-top: 20px;
    font-size: 14px;
    margin-right: 0;
  }

  section.top-sustainable-action {
    margin-top: 50px;
  }

  section.top-sustainable-action div.sustainable-action-column {
    margin-top: 30px;
  }

  section.top-mapping div.top-mapping_left h1.top-mapping-title {
    font-size: 24px;
    margin-bottom: 0;
  }

  section.top-mapping div.top-mapping_left p {
    margin-top: 20px;
    max-width: 100%;
    width: 100%;
    font-size: 14px;
  }

  section.top-mapping div.top-mapping_left p span {
    margin-top: 23px;
    font-size: 14px;
  }

  section.top-mapping div.top-mapping_right img,
  div.actions02_block.section03 img {
    margin-top: 0;
  }

  section.top-mapping {
    margin-top: 50px;
  }

  section.top-mapping div.top-mapping_left a.d-btn {
    margin-top: 20px;
  }

  section.top-mapping div.top-mapping_right {
    margin-top: 5px;
    justify-content: unset;
    align-items: center;
    flex-direction: column;
    height: auto;
    width: 100%;
    min-width: 100%;
  }

  a.top-sustainable-action_sec-block-sha_img,
  div.top-sustainable-action_sec-block
    a.top-sustainable-action_sec-block-sha_img,
  .main-content__section--talk .top-sustainable-action_sec-block-sha_img,
  div.top-sustainable-action_sec-block
    .top-sustainable-action_sec-block-sha_img {
    width: 335px;
    height: auto;
    aspect-ratio: 335/356;
    background-image: url(../img/sustainable-action-img/shachouLink/shacho-link-sp.svg);
  }

  a.top-sustainable-action_sec-block-sha_img:hover,
  div.top-sustainable-action_sec-block
    .top-sustainable-action_sec-block-sha_img:hover {
    background-image: url(../img/sustainable-action-img/shachouLink/shacho-link-sp-hover.svg);
  }

  div.top-sustainable-action_sec-block,
  section.top-sustainable-action_sec-block {
    margin-top: 230px;
    padding: 0;
    padding-bottom: 50px;
  }

  div.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title,
  section.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title {
    font-size: 24px;
    line-height: 1.7;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block-first_none,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block-first_none,
  section.top-sustainable-action
    div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block-p,
  section.top-sustainable-action_sec-block
    p.top-sustainable-action_sec-block-p,
  section.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title {
    max-width: 89.5%;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block-first_none,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block-first_none,
  section.top-sustainable-action_sec-block
    h2.top-sustainable-action_sec-block-title {
    margin: 0 auto;
  }

  section.top-sustainable-relay #opens_btns {
    display: flex;
  }

  section.top-sustainable-relay div.top-sustainable-relay_content {
    margin-top: 50px;
  }

  section.top-sustainable-relay
    div.top-sustainable-relay_block
    div.top-sustainable-relay_block--content {
    width: 100%;
    height: 68.8vw;
    min-width: 196px;
    min-height: 131px;
    border-radius: 20px 0 20px 0;
    overflow: hidden;
  }


  section.top-sustainable-special,
  section.top-sustainable-voice,
  .top-sustainable-future {
    margin-top: 50px;
  }

  .top-sustainable-future.top div.flex-fsb-head p {
    margin-top: 20px;
  }

  .top-sustainable-future.future_sec div.flex-fsb-head p {
    text-align: start;
    font-size: 14px;
    margin-top: 20px;
  }

  .text-slider-content_head {
    display: none;
  }

  .text-slider {
    max-width: 100%;
    margin: 0;
  }

  .text-slider_title {
    font-size: 20px;
    margin-left: 26px;
  }

  .t-slider-content_head-text02 {
    font-size: 14px;
    margin-left: 25px;
  }

  section.top-sustainable-special div.inner div.top-special_left,
  section.top-sustainable-special div.inner div.top-special_right {
    width: 100%;
    max-width: 100%;
    max-height: fit-content;
  }

  div.top-voice_block {
    flex-direction: column;
    margin-top: 40px;
  }

  div.top-voice_block
    a.top-voice_content
    div.top-voice_content-box
    div.top-voice_content-box_ele {
    bottom: auto;
    top: 30px;
  }

  div.top-voice_block a.top-voice_content {
    width: 100%;
    display: flex;
    gap: 20px;
  }

  div.top-voice_block a.top-voice_content h2.top-voice_content-title {
    margin-top: 20px;
  }

  div.top-voice_block
    a.top-voice_content
    div
    div.top-voice_content-box_ele.sp-only {
    position: relative;
    margin-left: -40px;
    margin-top: 20px;
    z-index: 1;
    bottom: unset;
    top: unset;
    left: unset;
    right: unset;

    width: 100%;
    min-width: 194px;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box {
    width: calc(50% - 10px);
    min-width: 161px;
    height: auto;
    min-height: 277px;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box_ele-cover {
    width: calc(50% - 10px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  div.top-voice_block a.top-voice_content div.top-voice_content-box img {
    height: 100%;
    object-fit: cover;
  }

  div.top-voice_block a.top-voice_content a.dotts {
    margin-top: 10px;
  }

  div.top-voice_block a.top-voice_content:nth-child(2) {
    flex-direction: row-reverse;
    margin-top: 30px;
    margin-bottom: 30px;
  }

  div.top-voice_block
    a.top-voice_content:nth-child(2)
    div
    div.top-voice_content-box_ele.sp-only {
    margin-left: auto;
    margin-right: -40px;
  }

  .top-first_section {
    margin-top: 49px;
  }

  .main-slider {
    max-width: 100%;
  }

  .text-slider {
    padding: 0;
    max-width: 100%;
    width: 100%;
    margin-top: -160px;
    padding-top: 100px;
  }

  .text-slider-content {
    align-items: center;
  }

  .text-slider-content .dotts {
    margin-left: auto;
    margin-top: 20px;
    margin-right: 30px;
  }

  .text-slider::after {
    width: 110.5%;
    margin-right: -5.25%;
    height: 80%;
  }

  .thumbnail-slider {
    padding-bottom: 150px;
    padding-left: 0;
  }

  .thumbnail-inner .d-btn.white {
    position: relative;
    margin: auto;
    margin-top: -100px;
    width: 180px;
    font-size: 16px;
  }

  .thumbnail-slider,
  .thumbnail-inner.inner {
    max-width: 100%;
    width: 100%;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss {
    flex-direction: column;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.boxsimg {
    max-width: 100%;
    width: calc(100% - 20px);
    height: auto;
    aspect-ratio: 315 / 242;
    margin-right: auto;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01 {
    margin-left: auto;
    max-width: 100%;
    width: calc(100% - 20px);
    margin-top: -19px;
    min-height: auto;
    margin-top: 20px;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01 ul {
    gap: 10px;
  }

  div.pop-slider
    section.sustainable-relay-img-slider
    div.boxss
    div.text01
    ul
    li {
    padding: 20px;
    padding-right: 14px;
  }

  div.pop-slider .slick-prev,
  div.pop-slider .slick-next {
    background-image: unset !important;
    background-color: transparent;
  }

  div.pop-slider .slick-next:before,
  div.pop-slider .slick-prev:before {
    width: 35px;
    height: 35px;
  }

  div.pop-slider .slick-prev {
    left: -140px;
  }

  div.pop-slider .slick-next {
    right: -140px;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01 h2 {
    font-size: 16px;
    font-weight: bold;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss div.text01 p {
    font-size: 14px;
    margin-left: 20px;
  }

  div.pop-slider section.sustainable-relay-img-slider {
    width: 89.3%;
  }

  div.pop-slider section.sustainable-relay-img-slider div.boxss p.boxss-info {
    display: none;
  }

  .column-outside-left img {
    height: auto;
    aspect-ratio: 683/420;
  }

  .navigation .navigation-inner {
    margin-left: 0;
  }

  .navigation .navigation-inner {
    margin-left: 20px; /* デフォルトのmargin */
  }

  .navigation:has(.mb_menu-section) .navigation-inner {
    margin-left: 0; /* .mb_menu-section が存在しない場合のmargin */
  }

  .navigation .navigation-inner a {
    display: flex;
  }
  .top-page-body .navigation-inner picture {
    display: flex;
  }
  .navigation-inner img:nth-child(1) {
    width: 241px;
    height: auto;
    max-width: 65vw;
  }

  .navigation-inner img:nth-child(2) {
    width: 109px;
    height: 12px;
  }

  .navi-img_02 {
    width: 241px;
    height: 22px;
  }
  
  .navi-img_20th {
  width: 70px !important;
  height: auto !important;
  }
  
  .top-page-body .navigation-inner .navi-img_catch {
    width: 72px;
    height: 17px;
  }

  div.top-first_new {
    flex-direction: column;
    padding-top: 20px;
  }

  div.top-first_new h2.top-first_news-title {
    font-size: 14px;
    margin-bottom: 15px;
  }

  section.secound-banner .secound-banner-img {
    width: 89.33%;
    margin-top: 50px;
  }

  section.top-sustainable-voice p.top-sustainable-voice_detail-text {
    margin-right: 0;
  }

  section.top-sustainable-relay div.top-sustainable-relay_block {
    margin-top: 30px;
    gap: 20px;
  }

  section.top-sustainable-relay
    div.top-sustainable-relay_content
    p.section_title_block-relay_text.red-color {
    margin-top: 20px;
  }

  section.president-page div.inner div.president-page-head h1 span {
    margin-left: -18px;
  }

  div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content {
    width: 100%;
  }

  div.actions02_block.section03 p.actions02_block_section03-p {
    font-size: 16px;
    margin-top: 20px;
  }

  div.actions02_block.section03 img.actions02_block_section03-img {
    margin-top: 30px;
  }

  div.actions02_block.section03 div.actions02_block_section03-h2 {
    font-size: 24px;
  }

  div.s_inner.actions02_page
    div.actions02_block
    div.actions02_block-box
    p:nth-of-type(1),
  div.s_inner.actions02_page
    div.actions02_block
    div.actions02_block-box
    p:nth-of-type(2) {
    width: 100%;
  }

  div.s_inner.actions02_page
    div.actions02_block
    div.actions02_block-box
    p:nth-of-type(2) {
    font-size: 18px;
  }

  div.s_inner.actions02_page
    div.actions02_block
    div.actions02_block-box
    p:nth-of-type(1) {
    font-size: 24px;
  }

  .top-sustainable-future.future_sec .text-slider_title {
    font-size: 20px;
    margin-left: 25px;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    .box-items
    p.box-items-ptext {
    font-size: 14px;
  }

  section.voice-detail_page
    div.voice-detail_page-head
    .box-items
    p.box-items-ptext
    span {
    font-size: 18px;
  }

  .top-sustainable-future .top-future-body {
    background: unset;
  }

  .top-sustainable-future .top-future-body::after {
    content: "";
    display: none;
  }

  .text-slider::after {
    background-color: #f5f4ec;
  }

  .thumbnail-slider::after {
    content: "";
    width: 150vw;
    position: absolute;
    height: 100%;
    bottom: 0;
    right: 0;
    background-color: #f5f4ec;
    margin-right: -200px;
    z-index: -1;
  }

  div.top-first_new ul li span {
    margin-right: 10px;
  }

  .top-page-body .top-sustainable-future .top-future-body::after {
    display: none;
  }

  .t-slider-content_title-box {
    margin-right: auto;
    margin-left: 0;
  }

  footer.footer div.footer_head div.footer-left img.footer-left-logo {
    width: 130px;
    height: 30px;
  }

  footer.footer div.footer_head div.footer-left p.footer-left_text {
    margin-top: 20px;
  }

  .actions-page-bodys
    div.actions01_page-block
    div.actions01_page-block_contentbox
    div.actions01_page-block_content,
  .actions-page-bodys
    div.actions01_page-block:nth-of-type(1)
    div.actions01_page-block_contentbox
    div.actions01_page-block_content {
    max-width: 100%;
    width: 100%;
  }

  .info-block_part-04_h-right {
    padding-right: 20px;
  }

  .info-block__content-box.info-block_part-img_right-link
    a.info-block_part-04.style_c01 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .info-block__content-box.info-block_part-img_right-link
    a.info-block_part-04.style_c01
    .info-block_part-04_h-right {
    padding-right: 0;
  }

  .info-block__content-box.info-block_part-img_right-link
    a.info-block_part-04.style_c01
    .info-block_part-04_footer {
    width: -webkit-fill-available;
  }

  .info-block__content-box.info-block_part-img_right-link
    a.info-block_part-04.style_c01
    .info-block_part-04_head {
    margin-top: 20px;
  }

  .info-block__content-box.info-block_part-img_right-link
    a.info-block_part-04.style_c01
    .info-block_part-04_head
    .info-block_part-04_h-left.style_c01 {
    padding-left: 0;
  }

  .info-block_part-04_footer_style02 {
    flex-direction: column;
    padding-left: 30px;
    padding-right: 30px;
  }

  .info-block_part-04_footer_style02 p {
    max-width: 100%;
    margin-bottom: 20px;
  }

  .info-block__content-box.info-block_part-img_right-link a.info-block_part-04 {
    width: 100%;
  }

  .link_block_part {
    flex-direction: column;
  }

  a.link_block_part div.link_block_part-imgbox {
    max-width: 100%;
  }

  a.link_block_part h2.link_block_part-link_title {
    text-align: center;
    justify-content: center;
    padding: 0;
    margin-top: 20px;
    padding-bottom: 20px;
  }

  .info-block__content-box {
    min-height: auto !important;
  }

  .main-content__testimonial-baloon-main {
    display: block;
    min-height: auto;
  }

  .post-balloon__item--right .post-balloon__icon .post-balloon__icon-img,
  .post-balloon__item--left .post-balloon__icon .post-balloon__icon-img {
    width: 100%;
  }

  a.link_block_part div.link_block_part-title {
    font-size: 16px;
    max-width: 210px;
    height: 45px;
  }

  section.efforts-block:first-child {
    padding-top: 97px;
  }

  section.efforts-block {
    padding: 20px;
    margin-top: 20px;
  }

  section.efforts-block img.efforts-block-f-img {
    width: 255px;
    height: 154px;
    top: calc(-154px / 2);
  }

  section.efforts-block h1.efforts-block-main-title {
    font-size: 20px;
  }

  section.efforts-block span.efforts-block_small-derection {
    font-size: 12px;
  }

  section.efforts-block p.efforts-block_first-text {
    font-size: 16px;
    margin-top: 20px;
  }

  section.efforts-block span.efforts-block_fontsmall-derection {
    font-size: 12px;
    margin-top: 20px;
  }

  section.efforts-block h2.efforts-block_min-title {
    max-width: 295px;
    padding-top: 10px;
    padding-bottom: 8px;
    font-size: 16px;
  }

  section.efforts-block p.efforts-block_text {
    font-size: 14px;
    margin-top: 20px;
  }

  section.efforts-block img.efforts-block_img {
    width: 100%;
  }

  section.efforts-section02 {
    margin-top: 50px;
  }

  section.efforts-section02 h2.efforts-section02-title {
    font-size: 18px;
  }

  section.efforts-section02 div.efforts-section02-box {
    flex-direction: column;
    margin-top: 20px;
  }

  section.efforts-section02 div.efforts-section02-box img {
    width: 132px;
    height: 132px;
  }

  section.efforts-section02 div.efforts-section02-box p {
    font-size: 14px;
    margin-top: 20px;
    text-align: center;
  }

  section.efforts-section02 span.efforts-section02-data,
  section.efforts-section02 div.efforts-section02-text {
    margin-top: 30px;
    font-size: 14px;
  }

  main.efforts-content .link_block_part h2.link_block_part-link_title {
    padding: 0;
    padding-bottom: 20px;
  }

  main.efforts-content {
    margin-top: 161px;
  }

  section.president-chat-sec .chat-box-block span.small-descriptions-span {
    width: 90%;
    font-size: 12px;
  }

  section.top-sustainable-relay img.top-sustainable-relay_background-img {
    width: 250%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(331deg);
    z-index: -1;
  }

  .top-sustainable-future {
    margin-top: 0;
  }

  section.top-sustainable-relay {
    padding-bottom: 50px;
  }

  .main-content__hero-body-span {
    order: 4;
  }

  .lab_new-blocks {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 70px !important;
  }

  .lab_new-blocks .lab_new-blocks-content {
    background-color: #f5f4ec;
    border-radius: 20px 0 20px 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex-basis: 50%;
  }

  .lab_new-blocks .lab_new-blocks-content h2 {
    font-size: 20px;
    min-height: auto;
  }

  .lab_new-blocks .lab_new-blocks-content p {
    font-size: 14px;
    margin-top: 20px;
  }

  .lab_new-blocks .lab_new-blocks-content .dotts {
    margin-top: auto;
    margin-left: auto;
    margin-top: 20px;
  }

  .actions01_page-block_item.new-lab-sect {
    top: calc(-68px / 2) !important;
  }

  section.president-chat-sec div.chat-box.right img.change-image-02,
  img.chenge-image-01 {
    width: 100%;
  }

  .post--future .yt,
  .post--future .yt img,
  .post--future .yt iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 810 / 458;
  }

  .white_head-line {
    display: none;
  }

  .footer_section {
    margin-top: 50px;
  }

  .top-page-body .navigation-inner .navigation-inner_logo-picture img {
    width: 70px;
    height: auto;
  }
}


@media screen and (max-width: 674px) {
  .footer_section-text {
    padding-left: 20px;
    padding-right: 20px;
    text-align: left;
  }
  .footer_section-link_line ul {
    row-gap: 15px;
    flex-direction: column;
    padding-left: 20px;
  }
  .footer_section-link_line ul:nth-child(1) {
    margin-bottom: 15px;
  }
}


@media screen and (max-width: 500px) {
  .sp500-only {
    display: block;
  }

  footer.footer div.footer_head div.footer-right {
    flex-direction: column;
  }

  footer.footer div.footer_head div.footer-right ul:last-child {
    margin-top: 0;
  }

  footer.footer div.footer_body {
    margin-top: 30px;
  }

  div.top-first_new {
    width: 89.3%;
  }

  .top-first_section_img {
    width: 100%;
    height: auto;
  }

  .top-first_section_title {
    position: absolute;
    bottom: 20px;
    left: 20px;
  }

  .top-first_section_title span {
    font-size: clamp(23px, 3.953vw, 54px);
    font-weight: bold;
    color: var(--d-red);
    background-color: #fff;
  }

  div.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    div.top-sustainable-action_sec-block_policy-box-title.change-font-size01,
  section.top-sustainable-action_sec-block
    div.top-sustainable-action_sec-block_policy-box
    div.top-sustainable-action_sec-block_policy-box-title.change-font-size01 {
    font-size: 13px;
  }
}
