@charset "UTF-8";
.fv_main img {
  width: 100%;
  vertical-align: bottom;
}

.lower_fv {
  background: #044782;
}
.lower_fv .lower_fv_wrap {
  padding: 1.563vw 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5.469vw;
}
@media (max-width: 700px) {
  .lower_fv .lower_fv_wrap {
    padding: 2.563vw 0;
    display: block;
    gap: 1.469vw;
  }
}
.lower_fv .lower_fv_wrap .block {
  display: flex;
  align-items: center;
}
@media (max-width: 700px) {
  .lower_fv .lower_fv_wrap .block {
    justify-content: center;
  }
}
.lower_fv .lower_fv_wrap .block .block_b1 {
  font-size: 1.875vw;
  color: #fff;
  font-weight: bold;
  border-radius: 0.625vw;
  text-align: left;
}
@media (max-width: 700px) {
  .lower_fv .lower_fv_wrap .block .block_b1 {
    font-size: 2.769vw;
  }
}
.lower_fv .lower_fv_wrap .block .block_b2 {
  font-size: 1.875vw;
  color: #fff;
  font-weight: bold;
  text-align: left;
}
@media (max-width: 700px) {
  .lower_fv .lower_fv_wrap .block .block_b2 {
    font-size: 2.769vw;
  }
}

.about_sdgs .inner {
  width: 93.75vw;
  margin: 0 auto;
}
.about_sdgs .inner .sec1 {
  padding: 3.125vw 0;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 {
    padding: 7.125vw 0;
  }
}
.about_sdgs .inner .sec1 .custom-heading.pc {
  margin-bottom: 3.125vw;
  color: #044782;
  font-size: 2.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-family: "Hiragino Maru Gothic Pro";
  text-align: center;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .custom-heading.pc {
    display: none;
  }
}
.about_sdgs .inner .sec1 .custom-heading.pc .dots {
  color: #044782;
  font-size: 2.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: -0.6em; /* ドットと文字の間隔を少し調整 */
  font-family: "Hiragino Maru Gothic Pro";
}
.about_sdgs .inner .sec1 .custom-heading.pc .dots2 {
  color: #044782;
  font-size: 2.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: -0.6em; /* ドットと文字の間隔を少し調整 */
  font-family: "Hiragino Maru Gothic Pro";
  margin-left: -1.953vw;
}
.about_sdgs .inner .sec1 .custom-heading.sp {
  margin-bottom: 3.125vw;
  color: #044782;
  font-size: 5.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-family: "Hiragino Maru Gothic Pro";
  text-align: center;
  display: none;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .custom-heading.sp {
    display: block;
  }
}
.about_sdgs .inner .sec1 .custom-heading.sp .dots {
  color: #044782;
  font-size: 2.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: -0.6em; /* ドットと文字の間隔を少し調整 */
  font-family: "Hiragino Maru Gothic Pro";
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .custom-heading.sp .dots {
    font-size: 4.813vw; /* サイズはお好みで調整 */
  }
}
.about_sdgs .inner .sec1 .custom-heading.sp .dots2 {
  color: #044782;
  font-size: 2.813vw; /* サイズはお好みで調整 */
  text-align: center;
  font-weight: bold;
  letter-spacing: -0.6em; /* ドットと文字の間隔を少し調整 */
  font-family: "Hiragino Maru Gothic Pro";
  margin-left: -1.953vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .custom-heading.sp .dots2 {
    font-size: 4.813vw; /* サイズはお好みで調整 */
  }
}
.about_sdgs .inner .sec1 .txt1 {
  font-size: 1.875vw;
  text-align: center;
  font-weight: bold;
  text-align: center;
  line-height: 1.75;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .txt1 {
    font-size: 3.875vw;
  }
}
.about_sdgs .inner .sec1 .txt1 .sp_only {
  display: none;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec1 .txt1 .sp_only {
    display: block;
  }
}
.about_sdgs .inner .sec2 {
  background: #fff;
  border: 0.391vw solid #235fab;
  margin-bottom: 1.563vw;
  width: 100%;
  border-radius: 0.938vw;
  display: block;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 {
    border: 1.291vw solid #235fab;
    margin-bottom: 6.563vw;
  }
}
.about_sdgs .inner .sec2 h3.ttl1 {
  background: #235fab;
  color: #fff;
  padding: 1.281vw 0.781vw 0.781vw;
  font-size: 1.875vw;
  text-align: center;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 h3.ttl1 {
    font-size: 4.875vw;
    padding: 2.781vw 0;
  }
}
.about_sdgs .inner .sec2 .wrap {
  padding: 2.344vw 0px 1.563vw;
  display: flex;
  justify-content: center;
  gap: 3.672vw;
}
@media (max-width: 600px) {
  .about_sdgs .inner .sec2 .wrap {
    display: block;
    padding: 2vw;
  }
}
.about_sdgs .inner .sec2 .wrap .pic {
  width: 19.531vw;
}
@media (max-width: 600px) {
  .about_sdgs .inner .sec2 .wrap .pic {
    width: 60%;
    margin: 0 auto;
    margin-bottom: 4.5vw;
  }
}
.about_sdgs .inner .sec2 .wrap .pic img {
  width: 100%;
}
.about_sdgs .inner .sec2 .wrap .pic.deco {
  position: relative;
  width: 19.531vw;
}
@media (max-width: 600px) {
  .about_sdgs .inner .sec2 .wrap .pic.deco {
    width: 60%;
    margin: 0 auto;
    margin-bottom: 4.5vw;
  }
}
.about_sdgs .inner .sec2 .wrap .pic.deco:before {
  position: absolute;
  top: -0.694vw;
  right: 0;
  width: 11.944vw;
  height: 4.444vw;
  content: "";
  background-image: url(../img/img14-deco.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 600px) {
  .about_sdgs .inner .sec2 .wrap .pic.deco:before {
    position: absolute;
    top: -3.694vw;
    right: -25px;
    width: 44.944vw;
    height: 18.444vw;
    content: "";
    background-image: url(../img/img14-deco.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
.about_sdgs .inner .sec2 .wrap .pic.deco img {
  width: 100%;
}
.about_sdgs .inner .sec2 .link_b {
  width: 41.963vw;
  margin-left: auto;
  margin-right: 1.563vw;
  margin-bottom: 1.563vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 .link_b {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 4vw;
  }
}
.about_sdgs .inner .sec2 .link_b a {
  display: flex;
  align-items: center;
  gap: 0.581vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 .link_b a {
    align-items: flex-start;
  }
}
.about_sdgs .inner .sec2 .link_b a .i1 {
  width: 1.875vw;
  flex: 0 0 1.875vw;
  margin-top: 0.469vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 .link_b a .i1 {
    width: 4.875vw;
    flex: 0 0 4.875vw;
    margin-top: 0vw;
  }
}
.about_sdgs .inner .sec2 .link_b a .i1 img {
  width: 100%;
}
.about_sdgs .inner .sec2 .link_b a .link_txt {
  font-size: 1.875vw;
  color: #ca2578;
  font-weight: bold;
  width: 100%;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 .link_b a .link_txt {
    font-size: 3.6vw;
    flex: auto;
  }
}
.about_sdgs .inner .sec2 .link_b a .i2 {
  width: 1.906vw;
  flex: 0 0 1.906vw;
  margin-top: 0.813vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec2 .link_b a .i2 {
    flex: 0 0 5.406vw;
    margin-top: 0vw;
  }
}
.about_sdgs .inner .sec2 .link_b a .i2 img {
  width: 100%;
}
.about_sdgs .inner .sec3 {
  background: #fff;
  border: 0.391vw solid #235fab;
  border-radius: 0.938vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 {
    border: 1.291vw solid #235fab;
  }
}
.about_sdgs .inner .sec3 h3.ttl1 {
  background: #235fab;
  color: #fff;
  padding: 1.281vw 0.781vw 0.781vw;
  font-size: 1.875vw;
  text-align: center;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 h3.ttl1 {
    font-size: 4.875vw;
    padding: 2.781vw 0;
  }
}
.about_sdgs .inner .sec3 .flow_con {
  padding: 5.344vw 3.125vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap {
  display: flex;
  gap: 0.781vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .left {
  width: 3.516vw;
  flex: 0 0 3.516vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .left {
    display: none;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .left img {
  width: 100%;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt {
  color: #044782;
  font-size: 1.875vw;
  line-height: 1.35;
  font-weight: bold;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt:not(:first-of-type):before {
    position: absolute;
    top: 1.1vw;
    left: 0;
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
@media (max-width: 480px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt:not(:first-of-type):before {
    position: absolute;
    top: 2.6vw;
    left: 0;
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt {
    font-size: 4.075vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last {
  color: #044782;
  font-size: 1.875vw;
  line-height: 1.35;
  font-weight: bold;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last {
    font-size: 4.075vw;
  }
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last:before {
    position: absolute;
    top: -1vw;
    left: 0;
    background-image: url(../img/p-num5.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
@media (max-width: 480px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.main_txt.last:before {
    position: absolute;
    top: 3.2vw;
    left: 0;
    background-image: url(../img/p-num5.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.sub_txt {
  font-size: 1.875vw;
  line-height: 1.35;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right p.sub_txt {
    font-size: 3.275vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b {
  width: 41.963vw;
  margin-left: auto;
  margin-right: 1.563vw;
  margin-bottom: 1.563vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b {
    width: 95%;
    margin: 0 auto;
    margin-bottom: 4vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a {
  display: flex;
  align-items: center;
  gap: 0.381vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a {
    align-items: flex-start;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1 {
  width: 1.875vw;
  flex: 0 0 1.875vw;
  margin-top: 0.469vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1 {
    width: 5.875vw;
    flex: 0 0 4.875vw;
    margin-top: 1.25vw;
  }
}
@media (max-width: 480px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1 {
    margin-top: 3vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1 img {
  width: 100%;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1.i0 {
  width: 1.875vw;
  flex: 0 0 1.875vw;
  margin-top: 0.469vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1.i0 {
    width: 5.875vw;
    flex: 0 0 4.875vw;
    margin-top: 0vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i1.i0 img {
  width: 100%;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .link_txt {
  font-size: 1.875vw;
  color: #ca2578;
  font-weight: bold;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .link_txt {
    font-size: 3.5vw;
    flex: auto;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i2 {
  width: 1.406vw;
  flex: 0 0 1.906vw;
  margin-top: 0.613vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i2 {
    flex: 0 0 5.406vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .link_b a .i2 img {
  width: 100%;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin1 {
  margin-top: 0.547vw;
  margin-bottom: 1.328vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin1 {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin1:before {
    position: absolute;
    top: -1vw;
    left: 0;
    background-image: url(../img/p-num1.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin2 {
  margin-bottom: 1.328vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin3 {
  margin-bottom: 1.29vw;
  margin-right: auto;
  margin-left: 0;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin3 a {
    gap: 0.96vw;
  }
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin3 a .i2 {
    margin-top: -0.213vw;
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin4 {
  margin-bottom: 2.578vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin4 {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin4:before {
    position: absolute;
    top: -1vw;
    left: 0;
    background-image: url(../img/p-num2.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin5 {
  margin-bottom: 1.034vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin6 {
  margin-bottom: 1.25vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin6 {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin6:before {
    position: absolute;
    top: -1vw;
    left: 0;
    background-image: url(../img/p-num3.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin7 {
  margin-bottom: 1.328vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin8 {
  margin-bottom: 0.109vw;
  margin-right: auto;
  margin-left: 0;
  width: 100%;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin9 {
  margin-bottom: 1.875vw;
}
@media (max-width: 700px) {
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin9 {
    position: relative;
    padding-left: 6vw;
  }
  .about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin9:before {
    position: absolute;
    top: -1vw;
    left: 0;
    background-image: url(../img/p-num4.svg);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 6vw;
    height: 6vw;
    content: "";
  }
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin10 {
  margin-bottom: 1vw;
}
.about_sdgs .inner .sec3 .flow_con .flow_wrap .right .margin11 {
  margin-bottom: 0.5vw;
}

.for_gradian {
  margin-top: 0.781vw;
  background: #044782;
  padding: 3.906vw 0;
}
@media (max-width: 700px) {
  .for_gradian {
    padding: 2.906vw 0;
  }
}
.for_gradian .inner {
  width: 92.188vw;
  margin: 0 auto;
  background: #fff;
}
.for_gradian .inner .inner2 {
  width: 85.938vw;
  margin: 0 auto;
}
.for_gradian .inner .inner2 .con {
  padding: 3.125vw;
}
.for_gradian .inner .inner2 .con p.ttl {
  margin-bottom: 2.813vw;
  font-size: 1.875vw;
  text-align: center;
  font-weight: none;
}
@media (max-width: 700px) {
  .for_gradian .inner .inner2 .con p.ttl {
    font-size: 4.875vw;
    padding: 2.781vw 0;
  }
}
.for_gradian .inner .inner2 .con .txt1 {
  font-size: 1.406vw;
}
@media (max-width: 700px) {
  .for_gradian .inner .inner2 .con .txt1 {
    font-size: 3.875vw;
    padding: 2.781vw 0;
  }
}
.for_gradian .inner .inner2 .con .txt1 span {
  font-size: 1.406vw;
  font-weight: bold;
}
@media (max-width: 700px) {
  .for_gradian .inner .inner2 .con .txt1 span {
    font-size: 3.875vw;
    padding: 2.781vw 0;
  }
}
.for_gradian .inner .inner2 .con .txt1 a {
  font-weight: bold;
  text-decoration: underline;
  color: #235fab;
}

.cta_sec {
  margin: 30px auto;
}
.cta_sec .cta_link1 {
  text-align: center;
  margin-bottom: 2.344vw;
  font-size: 1.406vw;
}
.cta_sec .cta_link1 a {
  color: #235fab;
  font-weight: bold;
  display: inline-block;
}
.cta_sec .cta_link1 a:after {
  display: block;
  content: "";
  width: 100%;
  height: 2px;
  background: #235fab;
  margin-top: -5px;
}
@media (max-width: 700px) {
  .cta_sec .cta_link1 {
    font-size: 4vw;
  }
}

.cta_link2 {
  width: 30.312vw;
  margin: 0 auto;
}
@media (max-width: 700px) {
  .cta_link2 {
    width: 63.312vw;
  }
}

.cta_link2 a {
  position: relative;
  top: 0;
  display: block;
  padding: 2.563vw 0 1.563vw;
  background-color: #02a3d4;
  box-shadow: 0 6px #0088a8;
  border-radius: 781.172vw;
  font-size: 2.5vw;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: 0.2s ease-in-out;
  font-weight: bold;
}
@media (max-width: 700px) {
  .cta_link2 a {
    padding: 4.063vw 0 1.563vw;
    background-color: #02a3d4;
    box-shadow: 0 6px #0088a8;
    border-radius: 781.172vw;
    font-size: 5.5vw;
  }
}

.cta_link2 a:hover {
  top: 0.469vw; /* 元の位置から9px分下げる */
  box-shadow: 0 0 #0088a8; /* 影を0pxにする */
}

@media (max-width: 700px) {
  .dl_pc_only {
    display: none;
  }
}

.dl_sp_only {
  display: none;
}
@media (max-width: 700px) {
  .dl_sp_only {
    display: block;
  }
}/*# sourceMappingURL=top.css.map */