.p-mv {
  position: relative;
}
@media print, screen and (min-width: 769px) {
  .p-mv {
    height: calc(100vh - 100px);
    min-height: min(700px, 50vw);
    max-height: min(900px, 64.2857142857vw);
    overflow: hidden;
  }
}
.p-mv .swiper-slide-active .swiper-img,
.p-mv .swiper-slide-duplicate-active .swiper-img,
.p-mv .swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}
.p-mv .swiper-slide img {
  height: auto;
  width: 100%;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
.p-mv .p-mv-ttl {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
}
.p-mv .p-mv-ttl img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-mv .p-mv-ttl {
    width: 45.3333333333vw;
    top: 13.3333333333vw;
    left: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv .p-mv-ttl {
    width: min(260px, 18.5714285714vw);
    height: min(134px, 9.5714285714vw);
    margin: auto;
    left: 10%;
  }
}

@media only screen and (max-width: 768px) {
  .p-intro {
    margin-bottom: 13.3333333333vw;
    background: url(../../img/cmn-bg01.png) no-repeat top -80px left -140px;
    background-size: 220%;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro {
    margin-bottom: 100px;
    background: url(../../img/cmn-bg01.png) no-repeat 240px -70px;
  }
}
@media only screen and (max-width: 768px) {
  .p-intro {
    padding-top: 18.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro {
    padding-top: min(200px, 14.2857142857vw);
  }
}
.p-intro .p-sec-ttl01 p img {
  display: inline-block;
  margin: 0 10px;
  vertical-align: top;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-sec-ttl01 p img {
    width: 20.4vw;
    height: 12.9333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-sec-ttl01 p img {
    width: min(128px, 9.1428571429vw);
    height: min(81px, 5.7857142857vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-sec-ttl01 {
    margin-bottom: 9.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-sec-ttl01 {
    margin-bottom: 40px;
    margin-left: min(120px, 8.5714285714vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-lead {
    margin-left: min(400px, 28.5714285714vw);
    width: min(710px, 50.7142857143vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl {
    margin-bottom: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl {
    margin-bottom: 60px;
    display: flex;
    justify-content: space-between;
  }
}
.p-intro .p-intro-link-bl li img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl li {
    margin-bottom: min(30px, 2.1428571429vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl li {
    width: 49%;
  }
}
.p-intro .p-intro-link-bl a {
  background: #375ac0;
  color: #fff;
  display: block;
  border-radius: 8px;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl a {
    padding: 4vw;
    padding-bottom: min(30px, 2.1428571429vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl a {
    padding: min(40px, 2.8571428571vw);
    padding-bottom: min(20px, 1.4285714286vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl a:hover {
    background: #2749ae;
  }
}
.p-intro .p-intro-link-bl a::after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 4px;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl a::after {
    background: #f0f3f5 url(../../img/cmn-arr-bl.png) no-repeat center;
    background-size: 3.3333333333vw;
    padding: 4vw;
    right: 5.3333333333vw;
    bottom: 3.3333333333vw;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl a::after {
    background: #f0f3f5 url(../../img/cmn-arr-bl.png) no-repeat center;
    background-size: min(14px, 1vw);
    padding: min(30px, 2.1428571429vw);
    right: min(40px, 2.8571428571vw);
    bottom: min(25px, 1.7857142857vw);
    width: min(30px, 2.1428571429vw);
    height: min(30px, 2.1428571429vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl h3 {
    margin-top: 3.3333333333vw;
    margin-left: 3.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl h3 {
    margin-top: min(25px, 1.7857142857vw);
  }
}
.p-intro .p-intro-link-bl h3 i {
  display: block;
  font-style: normal;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl h3 i {
    font-size: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl h3 i {
    font-size: min(13px, 0.9285714286vw);
  }
}
.p-intro .p-intro-link-bl h3 span {
  display: block;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-bl h3 span {
    font-size: 5.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-bl h3 span {
    font-size: min(24px, 1.7142857143vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal {
    border-top: solid 1px #dbdbdb;
    padding-top: 8vw;
    margin-bottom: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal li {
    padding-bottom: 8vw;
    margin-bottom: 8vw;
    border-bottom: solid 1px #dbdbdb;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal li {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: solid 1px #dbdbdb;
  }
}
.p-intro .p-intro-link-normal li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal .p-img {
    display: flex;
    align-items: center;
    margin-bottom: 3.3333333333vw;
  }
  .p-intro .p-intro-link-normal .p-img img {
    display: block;
    margin-right: 4vw;
    width: 40vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal .p-img {
    width: min(370px, 26.4285714286vw);
    margin-right: min(40px, 2.8571428571vw);
  }
  .p-intro .p-intro-link-normal .p-img img {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal h3 {
    font-size: 5.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal h3 {
    font-size: min(24px, 1.7142857143vw);
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal .p-txt {
    width: min(820px, 58.5714285714vw);
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal .p-btn-style-anime {
    text-align: right;
  }
}
.p-intro .p-intro-link-normal a {
  display: inline-block;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal a {
    margin-top: 10px;
    padding-left: 8.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal a {
    margin-top: 20px;
    padding-left: min(40px, 2.8571428571vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal a:hover {
    text-decoration: underline;
  }
}
.p-intro .p-intro-link-normal a::after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 4px;
}
@media only screen and (max-width: 768px) {
  .p-intro .p-intro-link-normal a::after {
    background: #000 url(../../img/cmn-arr-wh.png) no-repeat center;
    background-size: min(35px, 2.5vw);
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    padding: 0.6666666667vw;
    left: 0;
    top: -0.4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-link-normal a::after {
    background: #000 url(../../img/cmn-arr-wh.png) no-repeat center;
    background-size: min(8px, 0.5714285714vw);
    width: min(30px, 2.1428571429vw);
    height: min(30px, 2.1428571429vw);
    padding: min(10px, 0.7142857143vw);
    left: 0;
    top: max(-3px, -0.2142857143vw);
  }
}
.p-intro .p-intro-bnr {
  display: block;
  margin: auto;
}
.p-intro .p-intro-bnr img {
  width: 100%;
}
@media print, screen and (min-width: 769px) {
  .p-intro .p-intro-bnr {
    width: min(990px, 70.7142857143vw);
  }
  .p-intro .p-intro-bnr:hover {
    opacity: 0.8;
  }
}

.p-interview {
  background: #375ac0;
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .p-interview {
    padding-top: 8vw;
    padding-bottom: 13.3333333333vw;
    background: #375ac0 url(../../img/cmn-bg03.png) no-repeat top 66.6666666667vw right -90px;
    background-size: 87.6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview {
    padding-top: 30px;
    padding-bottom: 100px;
    background: #375ac0 url(../../img/cmn-bg03.png) no-repeat bottom -50px right -20px;
    background-size: 580px;
  }
}
.p-interview .scroll-wrapper {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}
@media only screen and (max-width: 768px) {
  .p-interview .scroll-wrapper {
    margin-bottom: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .scroll-wrapper {
    margin-bottom: 20px;
  }
}
.p-interview .scroll-left-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: scroll-left 30s linear infinite;
}
@media only screen and (max-width: 768px) {
  .p-interview .scroll-left-track img {
    width: 66.4vw;
  }
}
.p-interview .scroll-right-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: scroll-left 30s linear infinite;
}
@media only screen and (max-width: 768px) {
  .p-interview .scroll-right-track img {
    width: 262.6666666667vw;
  }
}
.p-interview .scroll-content {
  flex-shrink: 0;
  padding-right: min(30px, 2.1428571429vw);
}
.p-interview .scroll-content img {
  display: inline-block;
  margin-right: min(30px, 2.1428571429vw);
}
.p-interview .scroll-content img:last-child {
  margin-right: min(5px, 0.3571428571vw);
}
@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes scroll-right {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}
@media only screen and (max-width: 768px) {
  .p-interview .p-interview-ttl {
    font-size: 8.5333333333vw;
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-ttl {
    font-size: min(50px, 3.5714285714vw);
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .p-interview .p-interview-lead {
    margin-bottom: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-lead {
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-link {
    display: flex;
  }
}
@media only screen and (max-width: 768px) {
  .p-interview .p-interview-link li {
    margin-bottom: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-link li {
    margin-right: min(20px, 1.4285714286vw);
  }
}
.p-interview .p-interview-link a {
  font-weight: bold;
  display: block;
  color: #fff;
  border: solid 2px #fff;
  border-radius: 50px;
  line-height: 1.5;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-interview .p-interview-link a {
    padding: 4vw 8vw 4vw 5.3333333333vw;
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-link a {
    padding: min(8px, 0.5714285714vw) min(60px, 4.2857142857vw) min(5px, 0.3571428571vw) min(15px, 1.0714285714vw);
    font-size: min(18px, 1.2857142857vw);
  }
}
.p-interview .p-interview-link a::after {
  display: block;
  content: "";
  position: absolute;
  border-radius: 50px;
}
@media only screen and (max-width: 768px) {
  .p-interview .p-interview-link a::after {
    background: #FFF url(../../img/cmn-arr-bl.png) no-repeat center;
    background-size: 2.6666666667vw;
    width: 8vw;
    height: 8vw;
    right: 4vw;
    top: 0;
    bottom: 0;
    margin: auto;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-link a::after {
    background: #FFF url(../../img/cmn-arr-bl.png) no-repeat center;
    background-size: min(7px, 0.5vw);
    width: min(25px, 1.7857142857vw);
    height: min(25px, 1.7857142857vw);
    right: min(8px, 0.5714285714vw);
    top: 0;
    bottom: 0;
    margin: auto;
  }
}
@media print, screen and (min-width: 769px) {
  .p-interview .p-interview-link a:hover {
    background: #2749ae;
  }
}

@media only screen and (max-width: 768px) {
  .p-sdgs {
    padding: 8vw 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs {
    padding: 60px 0;
  }
}
.p-sdgs .p-sdgs-inr {
  background: #dde8f4;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-inr {
    padding: 16vw 4vw 8vw 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-inr {
    padding-top: 140px;
    padding-bottom: 60px;
  }
}
.p-sdgs .p-sdgs-ttl {
  letter-spacing: 0.15em;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-ttl {
    font-size: 8.5333333333vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-ttl {
    font-size: min(54px, 3.8571428571vw);
    text-align: center;
  }
}
.p-sdgs .p-sdgs-ttl::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-ttl::before {
    width: 18.1333333333vw;
    height: 16.2666666667vw;
    background: url(../img/sdgs-ttl.png) no-repeat center;
    background-size: 100%;
    left: calc(50% - 75px);
    top: -25px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-ttl::before {
    width: min(170px, 12.1428571429vw);
    height: min(155px, 11.0714285714vw);
    background: url(../img/sdgs-ttl.png) no-repeat center;
    background-size: 100%;
    left: calc(50% - 170px);
    top: -70px;
  }
}
.p-sdgs .p-sdgs-lead01 {
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-lead01 {
    margin-bottom: 3.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-lead01 {
    font-size: min(18px, 1.2857142857vw);
    margin-bottom: min(25px, 1.7857142857vw);
  }
}
.p-sdgs .p-sdgs-lead02 {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-lead02 {
    text-align: left;
    margin-bottom: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-lead02 {
    margin-bottom: min(40px, 2.8571428571vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-list {
    display: flex;
    justify-content: center;
    width: min(1200px, 85.7142857143vw);
    gap: min(30px, 2.1428571429vw);
    margin-bottom: min(30px, 2.1428571429vw);
  }
}
.p-sdgs .p-sdgs-list li {
  background-color: #FFF;
  padding: 20px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-list li {
    text-align: left;
    margin-bottom: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-list li {
    width: min(352px, 25.1428571429vw);
    padding: min(40px, 2.8571428571vw) min(30px, 2.1428571429vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-item {
    display: flex;
    align-items: center;
    margin-bottom: 4vw;
  }
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-item figure {
    width: 20vw;
    margin-right: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-item figure {
    margin: auto;
    width: min(90px, 6.4285714286vw);
    margin-bottom: 15px;
  }
}
.p-sdgs .p-sdgs-item img {
  width: 100%;
}
.p-sdgs .p-sdgs-item h3 {
  line-height: 1.5;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-item h3 {
    font-size: 3.7333333333vw;
    text-align: left;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-item h3 {
    font-size: min(18px, 1.2857142857vw);
    margin-bottom: 15px;
  }
}
.p-sdgs .p-sdgs-end {
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-sdgs .p-sdgs-end {
    text-align: left;
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-sdgs .p-sdgs-end {
    text-align: center;
    margin-top: 60px;
    font-size: min(18px, 1.2857142857vw);
    margin-bottom: 15px;
  }
}

.p-requirements {
  background: #fff;
}
@media only screen and (max-width: 768px) {
  .p-requirements {
    padding: 13.3333333333vw 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements {
    padding: min(100px, 7.1428571429vw) 0;
  }
}
.p-requirements .p-requirements-ttl {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-requirements .p-requirements-ttl {
    font-size: 5.6vw;
    margin-bottom: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements .p-requirements-ttl {
    font-size: min(28px, 2vw);
    margin-bottom: 30px;
  }
}
.p-requirements dl {
  display: flex;
  border-bottom: solid 1px #dbdbdb;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 768px) {
  .p-requirements dl {
    margin: auto;
    margin-bottom: 5px;
    padding-bottom: 5px;
    width: calc(100% - 60px);
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements dl {
    margin: auto;
    width: min(990px, 70.7142857143vw);
    margin-bottom: 5px;
    padding-bottom: 5px;
  }
}
.p-requirements dl:first-of-type {
  border-top: solid 1px #dbdbdb;
}
@media only screen and (max-width: 768px) {
  .p-requirements dl:first-of-type {
    padding-top: 5px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements dl:first-of-type {
    padding-top: 5px;
  }
}
.p-requirements dt {
  background: #f0f3f5;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-requirements dt {
    width: 35%;
    padding: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements dt {
    width: min(300px, 21.4285714286vw);
    padding: min(20px, 1.4285714286vw);
  }
}
@media only screen and (max-width: 768px) {
  .p-requirements dd {
    width: 65%;
    padding: 5.3333333333vw 0vw 5.3333333333vw 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements dd {
    width: min(690px, 49.2857142857vw);
    padding: min(20px, 1.4285714286vw) min(30px, 2.1428571429vw);
  }
}
.p-requirements .p-requirements-gap {
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 768px) {
  .p-requirements .p-requirements-gap {
    gap: 10px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-requirements .p-requirements-gap {
    gap: 15px;
  }
}/*# sourceMappingURL=index.css.map */