#fvWrap {
  margin: 10px 0 clamp(36px, 6.2505vw, 60px) 3.4%;
  overflow: hidden;
  position: relative;
}
@media (max-width: 1024px) {
  #fvWrap {
    margin: 10px 0 clamp(36px, 6.2505vw, 60px) 5%;
  }
}
@media (max-width: 480px) {
  #fvWrap {
    margin: 10px auto clamp(36px, 6.2505vw, 60px);
    width: 90%;
  }
}
#fvWrap .fvInnerWrap {
  width: 126%;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
#fvWrap .fvInnerWrap .swiper {
  width: 48.35%;
}
#fvWrap .fvInnerWrap .swiper + .swiper {
  margin-left: clamp(36px, 6.2505vw, 60px);
}
#fvWrap .fvInnerWrap .swiper .swiper-wrapper {
  width: 100%;
}
#fvWrap .fvInnerWrap .swiper .swiper-wrapper .swiper-slide picture {
  border-radius: 1.3888888889vw;
  overflow: hidden;
  display: block;
  position: relative;
}
#fvWrap .fvInnerWrap .swiper .swiper-wrapper .swiper-slide picture::before {
  content: '';
  padding-top: 88.64%;
  display: block;
}
#fvWrap .fvInnerWrap .swiper .swiper-wrapper .swiper-slide picture img, #fvWrap .fvInnerWrap .swiper .swiper-wrapper .swiper-slide picture source {
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}
#fvWrap .fvInnerWrap .mainSlide {
  position: relative;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox {
  position: absolute;
  left: 7.5%;
  bottom: 21.8%;
  z-index: 10;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p span {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p span::after {
  content: '';
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .4s;
  transition: all .4s;
  transform-origin: bottom;
  transform: scale(1, 0);
  z-index: 1;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p span img {
  vertical-align: top;
  transform: translate(0, 35px);
  transform-origin: top;
  transition: all 0.6s ease-out;
  opacity: 0;
  position: relative;
  z-index: 2;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p.active span::after {
  transform: scale(1, 1);
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p.active span img {
  transform: translate(0, 0);
  opacity: 1;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox p + p {
  margin-top: 5px;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line01 span {
  width: 320px;
  height: 82px;
  overflow: hidden;
  position: relative;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line02 span {
  width: 350px;
  height: 82px;
  overflow: hidden;
  position: relative;
}
#fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line03 span {
  width: 350px;
  height: 36px;
  overflow: hidden;
  position: relative;
}
@media (max-width: 1024px) {
  #fvWrap .fvInnerWrap .mainSlide #fvcatchBox {
    bottom: 40px;
  }
}
@media (max-width: 1024px) {
  #fvWrap .fvInnerWrap {
    width: 150%;
  }
}
@media (max-width: 480px) {
  #fvWrap .fvInnerWrap {
    width: 100%;
  }
  #fvWrap .fvInnerWrap .swiper {
    width: 100%;
  }
  #fvWrap .fvInnerWrap .swiper .swiper-wrapper .swiper-slide picture::before {
    padding-top: 120%;
  }
  #fvWrap .fvInnerWrap .mainSlide #fvcatchBox p span {
    padding: 7px;
  }
  #fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line01 span {
    width: 202px;
    height: 52px;
  }
  #fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line02 span {
    width: 220px;
    height: 52px;
  }
  #fvWrap .fvInnerWrap .mainSlide #fvcatchBox .line03 span {
    width: 220px;
    height: 23px;
  }
  #fvWrap .fvInnerWrap .subSlide {
    display: none;
  }
}
#fvWrap #topNewsArea {
  padding: 10px;
  width: 39%;
  background: #FFFFFF;
  border-radius: 10px;
  border: 1px solid #00B2C7;
  position: absolute;
  right: 10px;
  bottom: 21.8%;
  z-index: 10;
}
#fvWrap #topNewsArea h2 {
  color: #00B2C7;
  font-size: 1.4rem;
  font-weight: 500;
  font-family: "Kumbh Sans", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "YOPQ" 300;
  width: 100px;
  height: 50px;
  line-height: 50px;
  letter-spacing: 0.06em;
  text-align: center;
  border-right: 1px solid #00B2C7;
}
#fvWrap #topNewsArea div {
  padding: 0 20px;
}
#fvWrap #topNewsArea div date {
  font-size: 1.4rem;
  font-weight: 500;
  font-family: "Kumbh Sans", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "YOPQ" 300;
  line-height: 1.7;
  letter-spacing: 0.06em;
  display: block;
}
#fvWrap #topNewsArea div a {
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media (max-width: 1024px) {
  #fvWrap #topNewsArea {
    margin: clamp(24px, 4.167vw, 40px) 5% 0 0;
    width: 95%;
    position: static;
  }
}
@media (max-width: 480px) {
  #fvWrap #topNewsArea {
    margin: clamp(24px, 4.167vw, 40px) auto 0;
    width: 100%;
  }
  #fvWrap #topNewsArea h2 {
    font-size: 1.2rem;
    width: 100%;
    height: auto;
    line-height: 1.4;
    text-align: left;
    border-right: none;
  }
  #fvWrap #topNewsArea div {
    padding: 0;
  }
  #fvWrap #topNewsArea div date {
    font-weight: 700;
  }
}

/*============================================================================
	common
=============================================================================*/
article {
  padding: clamp(42px, 9.9996vw, 120px) 0;
}
article .textBox p {
  font-weight: 500;
  letter-spacing: 0.04em;
}
article .textBox p + p {
  margin-top: 2em;
}

/*============================================================================
	missionArea
=============================================================================*/
#missionArea {
  border-radius: 2.7777777778vw 2.7777777778vw 0 0;
  background: linear-gradient(to bottom right, #5feeff 0%, #fffdd9 100%);
}
@media (max-width: 480px) {
  #missionArea {
    border-radius: 5.3333333333vw 5.3333333333vw 0 0;
  }
}
#missionArea h2 {
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  #missionArea h2 {
    margin-bottom: 60px;
  }
}
#missionArea .container .textBox {
  margin: auto 0;
  width: 50%;
}
#missionArea .container .textBox p {
  font-size: clamp(12.6px, 2.25vw, 18px);
  line-height: 2;
}
#missionArea .container figure {
  margin: 0 0 0 auto;
  width: 47.2%;
}
@media (max-width: 1024px) {
  #missionArea .container .textBox {
    width: 100%;
  }
  #missionArea .container figure {
    margin: clamp(33px, 5.7285vw, 55px) auto 0;
    width: 85%;
  }
}

/*============================================================================
	aboutArea
=============================================================================*/
#aboutArea h2 {
  margin-bottom: clamp(42px, 9.9996vw, 120px);
}
#aboutArea .textBox {
  width: 60%;
}
#aboutArea .textBox p {
  font-size: clamp(12.6px, 2.25vw, 18px);
  line-height: 2;
}
#aboutArea figure {
  margin: 0 0 0 auto;
  width: 36%;
}
@media (max-width: 1024px) {
  #aboutArea .textBox {
    margin-top: 40px;
    width: 100%;
  }
  #aboutArea figure {
    width: 85%;
    -webkit-order: -1;
    -moz-order: -1;
    -ms-order: -1;
    order: -1;
  }
}

/*============================================================================
	serviceArea
=============================================================================*/
#serviceArea {
  border-radius: 2.7777777778vw 2.7777777778vw 0 0;
  background: linear-gradient(to bottom right, #5feeff 0%, #fffdd9 100%);
}
@media (max-width: 480px) {
  #serviceArea {
    border-radius: 5.3333333333vw 5.3333333333vw 0 0;
  }
}
#serviceArea h2 {
  margin-bottom: clamp(24px, 4.167vw, 40px);
}
#serviceArea > .moreBtn {
  margin-left: calc((100vw - 1224px) / 2);
}
@media (max-width: 1240px) {
  #serviceArea > .moreBtn {
    margin-left: 5%;
  }
}
#serviceArea .serviceLineupWrap {
  margin: clamp(60px, 10.416vw, 100px) 0 0 calc((100vw - 1224px) / 2);
  padding-bottom: 90px;
}
@media (max-width: 1240px) {
  #serviceArea .serviceLineupWrap {
    margin-left: 5%;
  }
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap {
    margin-left: 0;
    padding-bottom: 60px;
  }
}
#serviceArea .serviceLineupWrap .swiper-wrapper .swiper-slide {
  height: auto;
}
#serviceArea .serviceLineupWrap .swiper-pagination {
  text-align: left;
  bottom: 40px;
}
#serviceArea .serviceLineupWrap .swiper-pagination .swiper-pagination-bullet {
  width: 20px;
  height: 20px;
  background: #FFFFFF;
  opacity: 1;
}
#serviceArea .serviceLineupWrap .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #00B2C7;
}
#serviceArea .serviceLineupWrap .swiper-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
  margin-left: 30px;
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap .swiper-pagination {
    text-align: center;
    bottom: 8px;
  }
}
#serviceArea .serviceLineupWrap .naviLeft, #serviceArea .serviceLineupWrap .naviRight {
  width: 60px;
  height: 60px;
  background: #FFFFFF;
  border-radius: 50%;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all .4s;
  transition: all .4s;
  position: absolute;
  top: auto;
  left: auto;
  right: calc((100vw - 1224px) / 2);
  bottom: 0;
  z-index: 100;
}
#serviceArea .serviceLineupWrap .naviLeft svg, #serviceArea .serviceLineupWrap .naviRight svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: #00b2c7;
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap .naviLeft, #serviceArea .serviceLineupWrap .naviRight {
    width: 48px;
    height: 48px;
  }
}
#serviceArea .serviceLineupWrap .naviLeft {
  left: auto;
  right: calc(calc((100vw - 1224px) / 2) + 100px);
}
#serviceArea .serviceLineupWrap .naviLeft svg {
  transform: scale(-1, 1);
}
@media (max-width: 1240px) {
  #serviceArea .serviceLineupWrap .naviLeft {
    right: calc(5% + 100px);
  }
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap .naviLeft {
    left: 7.5%;
    right: auto;
  }
}
#serviceArea .serviceLineupWrap .naviRight {
  left: auto;
  right: calc((100vw - 1224px) / 2);
}
@media (max-width: 1240px) {
  #serviceArea .serviceLineupWrap .naviRight {
    right: 5%;
  }
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap .naviRight {
    right: 7.5%;
  }
}
#serviceArea .serviceLineupWrap section {
  padding: clamp(48px, 8.334vw, 80px) 7.4% clamp(30px, 5.208vw, 50px);
  height: 100%;
  background: #FFFFFF;
  border-radius: 1.3888888889vw;
}
#serviceArea .serviceLineupWrap section .textBox {
  width: 50%;
}
#serviceArea .serviceLineupWrap section .textBox .ttlEN {
  margin: 0 auto clamp(33px, 5.7285vw, 55px);
  color: #00B2C7;
  font-size: 1.4rem;
  font-family: "Kumbh Sans", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "YOPQ" 300;
  font-weight: 700;
  letter-spacing: 0.06em;
}
#serviceArea .serviceLineupWrap section .textBox h3 {
  margin: 0 auto 10px;
  font-size: clamp(16.8px, 3.0006vw, 24px);
  font-weight: 700;
  letter-spacing: 0.12em;
}
#serviceArea .serviceLineupWrap section .textBox .read {
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
#serviceArea .serviceLineupWrap section figure {
  margin: auto 0 auto auto;
  width: 36.6%;
}
@media (max-width: 480px) {
  #serviceArea .serviceLineupWrap section .textBox {
    width: 100%;
  }
  #serviceArea .serviceLineupWrap section figure {
    margin: 0 auto 40px;
    width: 80%;
    -webkit-order: -1;
    -moz-order: -1;
    -ms-order: -1;
    order: -1;
  }
}

/*============================================================================
	voiceArea
=============================================================================*/
#voiceArea h2 {
  margin-bottom: clamp(48px, 8.334vw, 80px);
}
#voiceArea .voiceCardWrap .voiceCard {
  margin: 0 5.2% clamp(51px, 8.8545vw, 85px) 0;
  width: 47.4%;
}
#voiceArea .voiceCardWrap .voiceCard:nth-of-type(2n) {
  margin-right: 0;
}
#voiceArea .voiceCardWrap .voiceCard a {
  display: block;
}
#voiceArea .voiceCardWrap .voiceCard a figure {
  margin: 0 auto clamp(24px, 4.167vw, 40px);
  border-radius: 1.3888888889vw;
  overflow: hidden;
  position: relative;
}
#voiceArea .voiceCardWrap .voiceCard a figure::before {
  content: '';
  padding-top: 62%;
  display: block;
}
#voiceArea .voiceCardWrap .voiceCard a figure img {
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
  -webkit-transition: all .4s;
  transition: all .4s;
}
#voiceArea .voiceCardWrap .voiceCard a .num {
  margin: 0 auto 16px;
  font-size: 1.4rem;
  font-weight: 700;
  font-family: "Kumbh Sans", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "YOPQ" 300;
  letter-spacing: 0.06em;
}
#voiceArea .voiceCardWrap .voiceCard a h3 {
  margin: 0 auto 12px;
  font-size: clamp(16.8px, 3.0006vw, 24px);
  font-weight: 700;
  letter-spacing: 0.12em;
}
#voiceArea .voiceCardWrap .voiceCard a .read {
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
#voiceArea .voiceCardWrap .voiceCard a:hover figure img {
  transform: scale(1.1);
}
#voiceArea .moreBtn {
  margin: clamp(12px, 2.0835vw, 20px) auto 0;
}
@media (max-width: 480px) {
  #voiceArea {
    width: 85%;
  }
  #voiceArea .voiceCardWrap .voiceCard {
    margin-right: 0;
    width: 100%;
  }
  #voiceArea .voiceCardWrap .voiceCard a figure {
    margin-bottom: 20px;
  }
  #voiceArea .voiceCardWrap .voiceCard a .num {
    margin-bottom: 6px;
  }
  #voiceArea .voiceCardWrap .voiceCard a h3 {
    margin-bottom: 4px;
  }
}

/*============================================================================
	recruitArea
=============================================================================*/
#recruitArea {
  padding: 0;
  border-radius: 2.7777777778vw 0 0 0;
  background: linear-gradient(to bottom right, #5feeff 0%, #fffdd9 100%);
}
#recruitArea .textBox {
  margin: auto 0;
  padding-left: calc((100vw - 1224px) / 2);
  width: 58%;
}
@media (max-width: 1240px) {
  #recruitArea .textBox {
    padding-left: 5%;
  }
}
#recruitArea .textBox h2 {
  margin-bottom: clamp(12px, 2.0835vw, 20px);
}
#recruitArea .textBox .catch {
  margin: 0 auto clamp(18px, 3.1245vw, 30px);
  font-size: clamp(16.8px, 3.0006vw, 24px);
  font-weight: 700;
  letter-spacing: 0.12em;
}
#recruitArea .textBox .moreBtn {
  margin-top: clamp(24px, 4.167vw, 40px);
}
#recruitArea picture {
  margin: 0 0 0 auto;
  width: 41.7%;
  display: block;
  overflow: hidden;
  position: relative;
}
#recruitArea picture::before {
  content: '';
  padding-top: 104.2%;
  display: block;
}
#recruitArea picture img, #recruitArea picture source {
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}
@media (max-width: 1024px) {
  #recruitArea .textBox {
    margin: auto;
    padding: clamp(30px, 5.208vw, 50px) 0 0;
    width: 85%;
  }
  #recruitArea picture {
    margin: clamp(48px, 8.334vw, 80px) auto 0;
    width: 100%;
  }
  #recruitArea picture::before {
    padding-top: 69.3%;
  }
}
@media (max-width: 480px) {
  #recruitArea {
    border-radius: 5.3333333333vw 0 0 0;
  }
}

/*============================================================================
	newsArea
=============================================================================*/
#newsArea h2 {
  margin-bottom: clamp(36px, 6.2505vw, 60px);
}
#newsArea .newsListWrap {
  margin: 0 0 0 auto;
  width: 70%;
  max-width: 828px;
}
#newsArea .newsListWrap .listCard {
  padding: clamp(18px, 3.1245vw, 30px) 0;
  border-top: 1px solid #555555;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
#newsArea .newsListWrap .listCard:last-of-type {
  border-bottom: 1px solid #555555;
}
#newsArea .newsListWrap .listCard figure {
  width: 22%;
  border-radius: 10px;
  border: 1px solid #555555;
  overflow: hidden;
  position: relative;
}
#newsArea .newsListWrap .listCard figure::before {
  content: '';
  padding-top: 66.7%;
  display: block;
}
#newsArea .newsListWrap .listCard figure img {
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}
#newsArea .newsListWrap .listCard .newsText {
  margin: 0 0 0 auto;
  width: 75.4%;
}
#newsArea .newsListWrap .listCard .newsText .infoBox {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
#newsArea .newsListWrap .listCard .newsText .infoBox date {
  margin: auto 16px auto 0;
  font-size: 1.4rem;
  font-family: "Kumbh Sans", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "YOPQ" 300;
  font-weight: 700;
  display: inline-block;
}
#newsArea .newsListWrap .listCard .newsText .infoBox .ctg {
  padding: 4px 0;
  color: #00B2C7;
  font-size: 1.4rem;
  font-weight: 500;
  min-width: 120px;
  text-align: center;
  border-radius: 20px;
  background: rgba(0, 178, 199, 0.1);
  display: inline-block;
}
#newsArea .newsListWrap .listCard .newsText .ttl {
  margin-top: 16px;
  font-weight: 500;
}
#newsArea .moreBtn {
  -webkit-order: -1;
  -moz-order: -1;
  -ms-order: -1;
  order: -1;
}
@media (max-width: 1024px) {
  #newsArea {
    width: 85%;
  }
  #newsArea .newsListWrap {
    margin: 50px auto 0;
    width: 100%;
  }
  #newsArea .newsListWrap .listCard figure {
    margin: 0 0 auto;
  }
  #newsArea .moreBtn {
    margin-top: clamp(36px, 6.2505vw, 60px);
    -webkit-order: 2;
    -moz-order: 2;
    -ms-order: 2;
    order: 2;
  }
}
@media (max-width: 480px) {
  #newsArea .newsListWrap {
    margin: 50px auto 0;
    width: 100%;
  }
  #newsArea .newsListWrap .listCard {
    padding: clamp(30px, 5.208vw, 50px) 0;
    display: block;
  }
  #newsArea .newsListWrap .listCard:first-of-type {
    border: none;
  }
  #newsArea .newsListWrap .listCard figure {
    margin: 0 auto 20px;
    width: 90%;
  }
  #newsArea .newsListWrap .listCard .newsText {
    width: 100%;
  }
  #newsArea .newsListWrap .listCard .newsText .ttl {
    margin-top: 10px;
  }
}
