@charset "utf-8";
#container {
  margin-top: 170px;
}

.pcDspNone {
  display: none;
}
.spDspNone {
  display: block;
}
.mB0 {
  margin-bottom: 0!important;
}
.btn {
  position: relative;
  max-width: 280px;
  width: 100%;
  height: 44px;
  margin-left: auto;
  margin-right: auto;
  font-size: 2rem;
  font-weight: 700;
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  background: #008ED4;
  color: #fff;
  transition: .2s;
  letter-spacing: .05em;
}
.btn::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  width: 41px;
  height: 8px;
  background: url(../../images/content/sdgs/btn_arrow01.svg) no-repeat center / contain;
}
.btn:hover {
  text-decoration: none;
  opacity: .6;
}
.btn:link,
.btn:visited {
  color: #fff;
}
/**
 * ---------------------------------------------------
 * pageTitleVox
 * ---------------------------------------------------
 */
#pageTitleVox {
  width: 100%;
  height: 300px;
  text-align: left;
  position: relative;
  overflow: hidden;
  background-image: url(../../images/content/content/pageTitleBg.jpg);
}
#pageTitleVox::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.4);
}

/**
 * ---------------------------------------------------
 * pageTitle
 * ---------------------------------------------------
 */
#pageTitle {
  top: 50%;
  left: 14%;
  width: 100%;
  position: absolute;
  text-align: center;
  color: #ffffff;
  z-index: 999;
  font-size: 3rem;
  letter-spacing: 1rem;
  font-family: 'NotoSansJP-M';
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/**
 * ---------------------------------------------------
 * subpageTitle
 * ---------------------------------------------------
 */
.pageSubtitle {
  width: 1200px;
  color: #008ed4;
  margin: 0 auto 120px;
  font-size: 4.8rem;
  text-align: center;
  position: relative;
  font-family: 'NotoSansJP-M';
}

/**
 * ---------------------------------------------------
 * main
 * ---------------------------------------------------
 */
#sdgs .inner,
#certification .inner {
  width: 1200px;
  margin: 0 auto;
}
#sdgs {
  padding: 50px 0 120px;
}
#sdgs .inner p.txt {
  width: 1200px;
  margin: 0 auto 100px;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 2.2;
}
#sdgs .inner .imgVox {
  width: 780px;
  margin: 0 auto 80px;
}
#sdgs .inner .imgVox img {
  display: block;
  margin-bottom: 60px;
}
#sdgs .inner .imgVox p.txt01 {
  margin-bottom: 20px;
}
#sdgs .inner .imgVox p.note {
  text-indent: -1em;
  padding-left: 1em;
}
#sdgs .inner .btnVox {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 1200px;
  margin: 0 auto;
  height: 350px;
  position: relative;
  box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.15);
}
#sdgs .inner .btnVox::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 39px;
  width: 578px;
  height: 138px;
  background: url(../../images/content/sdgs/bg_btn01.png) no-repeat center / contain;
}
#sdgs .inner .btnVox::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 389px;
  height: 323px;
  background: url(../../images/content/sdgs/bg_btn02.png) no-repeat center / contain;
}
#sdgs .inner .btnVox .btnWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 1120px;
  height: 270px;
  border-radius: 5px;
  border: 6px solid rgba(0, 142, 212, 0.2);
}
#sdgs .inner .btnVox .btnWrap p {
  color: #008ED4;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  margin-bottom: 10px;
  text-align: center;
}
#sdgs .inner .btnVox .btnWrap p .large {
  font-size: 4.5rem;
}
#certification {
  padding: 70px 0;
  background: #EDF0F0;
}
#certification .itemVox .item {
  background: #fff;
  padding: 40px 50px;
  display: flex;
  align-items: center;
  gap: 0 60px;
}
#certification .itemVox .item:not(:last-child) {
  margin-bottom: 50px;
}
#certification .itemVox .item .imgVox {
  width: 280px;
}
#certification .itemVox .item .imgVox .logo01 {
  display: block;
  width: 270px;
  margin: 0 auto 40px;
}
#certification .itemVox .item .imgVox .logo02 {
  display: block;
  width: 185px;
  margin-left: auto;
}
#certification .itemVox .item .txtVox {
  width: calc(100% - 340px);
  line-height: 2.2;
  letter-spacing: .12em;
}
#certification .itemVox .item .txtVox .txt {
  font-size: 2rem;
  margin-bottom: 40px;
}
#certification .itemVox .item .txtVox .list {
  display: flex;
  gap: 14px;
  list-style-type: none;
  margin: 0 0 40px;
  padding: 0;
}
#certification .itemVox .item .txtVox .list li {
  width: 70px;
}
#certification .itemVox .item .txtVox .dlList {
  font-size: 2rem;
}
#certification .itemVox .item .txtVox .dlList .dlitem {
  display: flex;
  gap: 0 20px;
}
#certification .itemVox .item .txtVox .dlList .dlitem dt {
  width: 150px;
  color: #008ED4;
  font-weight: 500;
}

/**
 ****************************************************
 *
 * screens smaller than 1024
 *
 ****************************************************
 */
@media only screen and (max-width: 1024px) {
  .bread ul {
    width: 90%;
  }
}

/**
 ****************************************************
 *
 * screens smaller than 767
 *
 ****************************************************
 */
@media only screen and (max-width: 767px) {
  #container {
    margin-top: 100px;
  }
  .pcDspNone {
    display: block;
  }
  .spDspNone {
    display: none;
  }

	/**
	 * pageTitleVox
	 */
  #pageTitleVox {
    background-size: cover;
    height: auto;
    padding: 12% 0;
  }
  /**
	 * pageTitle
	 */
  #pageTitle {
    left: 33%;
    font-size: 2rem;
  }
  /**
	 * bread
	 */
  .bread ul {
    width: 90%;
  }
	/**
	 * pageSubtitle
	 */
  .pageSubtitle {
    width: 100%;
    font-size: 2.5rem;
    margin: 0 auto 50px;
  }
  .btn {
    position: relative;
    height: 39px;
    max-width: 245px;
    font-size: 1.6rem;
  }
  .btn::before {
    width: 36px;
    height: 7px;
  }
  /**
	 * content
	 */
  #sdgs .inner,
  #certification .inner {
    width: 100%;
    margin: 0 auto;
  }
  #sdgs {
    padding: 40px 0 60px;
  }
  #sdgs .inner p.txt {
    width: 90%;
    font-size: 1.6rem;
    margin: 0 auto 55px;
  }
  #sdgs .inner .imgVox {
    width: 90%;
    margin: 0 auto 50px;
  }
  #sdgs .inner .imgVox img {
    margin-bottom: 30px;
  }
  #sdgs .inner .btnVox {
    width: calc(100% - 13%);
    height: auto;
    padding: 12px;
    box-shadow: 0px 0px 16px 3px rgba(0, 0, 0, 0.15);
  }
  #sdgs .inner .btnVox::before {
    top: 32px;
    left: 8px;
    width: 286px;
    height: 68px;
    transform: rotate(4deg);
  }
  #sdgs .inner .btnVox::after {
    right: 0;
    width: 226px;
    height: 188px;
    z-index: 0;
  }
  #sdgs .inner .btnVox .btnWrap {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 300px;
  }
  #sdgs .inner .btnVox .btnWrap p {
    font-size: 2.6rem;
    line-height: 1.4;
    letter-spacing: 0.11em;
    margin-bottom: 12px;
    margin-top: 20px;
    vertical-align: middle;
  }
  #sdgs .inner .btnVox .btnWrap p .large {
    font-size: 4.1rem;
    letter-spacing: .16em;
    line-height: 1;
    vertical-align: sub;
    margin-bottom: .1em;
    display: inline-block;
  }
  #sdgs .inner .btnVox .btnWrap .btn {
    margin-bottom: 2px;
  }
  #certification {
    padding: 50px 0 70px;
  }
  #certification .itemVox {
    margin: 0 5%;
  }
  #certification .itemVox .item {
    padding: 40px 20px 25px;
    display: block;
  }
  #certification .itemVox .item:not(:last-child) {
    margin-bottom: 40px;
  }
  #certification .itemVox .item .imgVox {
    width: 100%;
    margin-bottom: 30px;
  }
  #certification .itemVox .item .imgVox .logo01 {
    width: calc(270px * 0.6);
    margin: 0 auto 30px;
  }
  #certification .itemVox .item .imgVox .logo02 {
    width: calc(185px * 0.6);
    margin-right: auto;
  }
  #certification .itemVox .item .txtVox {
    width: 100%;
  }
  #certification .itemVox .item .txtVox .txt {
    font-size: 1.6rem;
    margin-bottom: 40px;
  }
  #certification .itemVox .item .txtVox .list {
    gap: 10px;
  }
  #certification .itemVox .item .txtVox .list li {
    width: 65px;
  }
  #certification .itemVox .item .txtVox .dlList {
    font-size: 1.6rem;
  }
  #certification .itemVox .item .txtVox .dlList .dlitem {
    flex-direction: column;
  }
  #certification .itemVox .item .txtVox .dlList .dlitem:not(:last-child) {
    margin-bottom: 15px;
  }
  #certification .itemVox .item .txtVox .dlList .dlitem dt {
    width: 100%;
  }
}
