*, *::before, *::after {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul[role="list"], ol[role="list"] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 2;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

set-font

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("/suzuki-gumi/share/font/NotoSansJP-Regular.woff2") format("woff2"), url("/suzuki-gumi/share/font/NotoSansJP-Regular.woff") format("woff");
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url(/suzuki-gumi/share/font/NotoSansJP-Bold.woff2) format("woff2"), url(/suzuki-gumi/share/font/NotoSansJP-Bold.woff) format("woff");
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 900;
  src: url(/suzuki-gumi/share/font/NotoSansJP-Black.woff2) format("woff2"), url(/suzuki-gumi/share/font/NotoSansJP-Black.woff) format("woff");
}

@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-style: normal;
  font-weight: 400;
  src: url("/suzuki-gumi/share/font/fa-brands-400.woff2") format("woff2"), url("/suzuki-gumi/share/font/fa-brands-400.woff") format("woff");
}

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  src: url("/suzuki-gumi/share/font/fa-regular-400.woff2") format("woff2"), url("/suzuki-gumi/share/font/fa-regular-400.woff") format("woff");
}

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  src: url("/suzuki-gumi/share/font/fa-solid-900.woff2") format("woff2"), url("/suzuki-gumi/share/font/fa-solid-900.woff") format("woff");
}

.pg-dx .sp {
  display: none;
}

@media screen and (max-width: 640px) {
  .pg-dx .sp {
    display: block;
  }
}

.pg-dx__intro {
  margin-bottom: 90px;
}

.pg-dx__intro p {
  max-width: 900px;
  width: 90%;
  margin: 0 auto;
}

.dx_nav{
  position: relative;
  width: 90%;
  max-width: 900px;
  margin: 0 auto 2rem;
}

.dx_nav ul{
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
}

.dx_nav ul::after{
  content: "";
  display: block;
  width: 11%;
}

.dx_nav ul li{
  display: block;
  width: 11%;
  margin: 0 1px 1px 0;
  position: relative;
}

@media screen and (max-width: 900px) {
  .dx_nav ul li{
    width: 16.5%;
    margin: 0 0 2px;
  } 
  .dx_nav ul::after{
    width: 16.5%;
  } 
}

@media screen and (max-width: 640px) {
  @media screen and (max-width: 900px) {
    .dx_nav ul li{
      width: 20%;
      margin: 0;
    } 
    .dx_nav ul::after{
      width: 60%;
    } 
  }}

.dx_nav ul li img{
  display: block;
  width: 100%;
}

.pg-dx__list h3 {
  text-align: center;
}

.pg-dx__list .flex {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
}

.pg-dx__list .flex .dx_item {
  background: #fff;
  padding: 45px 15px;
  width: 30%;
  margin-bottom: 65px;
  box-shadow: 8px 8px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 900px) {
  .pg-dx__list .flex .dx_item {
    width: 45%;
  }
}

@media screen and (max-width: 640px) {
  .pg-dx__list .flex .dx_item {
    width: 80%;
    margin: 0 auto 30px;
  }
}

.pg-dx__list .flex .dx_item:not(:nth-of-type(3n)) {
  margin-right: 5%;
}

@media screen and (max-width: 900px) {
  .pg-dx__list .flex .dx_item:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
}

@media screen and (max-width: 640px) {
  .pg-dx__list .flex .dx_item:not(:nth-of-type(3n)) {
    margin-right: auto;
  }
}

@media screen and (max-width: 900px) {
  .pg-dx__list .flex .dx_item:not(:nth-of-type(2n)) {
    margin-right: 10%;
  }
}

@media screen and (max-width: 640px) {
  .pg-dx__list .flex .dx_item:not(:nth-of-type(2n)) {
    margin-right: auto;
  }
}

.pg-dx__list .flex .dx_item img {
  max-width: 145px;
  width: 100%;
  margin: 0 auto 45px;
}

.pg-dx__list .flex .dx_item h3 {
  font-size: 1.8rem;
  margin-bottom: 15px;
}

.pg-dx__list .flex .dx_item p {
  width: 90%;
  margin: 0 auto;
  font-size: 1.3rem;
}

.term_title{
  font-size:1.25em;
  line-height: 1em;
  margin: 0 0 2em;
  padding:0 0 1.5em;
  text-align: center;
  border-bottom:3px solid #009a5b;
}

.news_sdgs ul{
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
}

.news_sdgs ul li.pg-news__item{
  width: 30%;
  position: relative;
  margin: 0 5% 3rem 0;
}
.news_sdgs ul li.pg-news__item:nth-of-type(3n){
  margin: 0 0 5rem 0;
}

@media screen and (max-width: 900px) {
  .news_sdgs ul li.pg-news__item{
    width: 48.5%;
    margin: 0 0 3rem;
  }
}

@media screen and (max-width: 640px) {
  .news_sdgs ul li.pg-news__item{
    width: 100%;
    margin: 0 0 3rem;

  }
}


.news_sdgs ul li.pg-news__item .pg-news__img{
  position: relative;
  margin: 0 0 1.5em;
}

.news_sdgs ul li.pg-news__item .pg-news__img img{
  display: block;
  width: 100%;
  border:1px solid #eee;
}

.news_sdgs ul li.pg-news__item .outline{
  display: block;
}

.news_sdgs ul li.pg-news__item .outline li{
  font-size:.9em;
  line-height: 1.75em;
}

.news_sdgs ul li.pg-news__item .outline li.date{
  font-size:.8em;
  line-height: 1em;
  margin: 0 0 0.5em;

}

/* DXの取り組みアイコン用のスタイル */
.pg-dx__list .flex .dx_item .dx_icon {
  font-size: 70px;         /* アイコンの大きさ */
  color: #009a5b;          /* アイコンの色（鈴木組様の緑色） */
  text-align: center;      /* 中央揃え */
  margin-bottom: 30px;     /* 下のテキストとの余白 */
}