.main-visual {
  width: 100%;
  height: 40rem;
  position: relative;
  overflow: hidden;
}
.main-visual .swiper-slide {
  position: relative;
}
.main-visual .swiper-slide .img-wrap {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.main-visual .swiper-slide .img-wrap img {
  width: 100%;
}
.main-visual .swiper-slide .img-wrap::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: #00000059;
}
.main-visual .swiper-slide .text-wrap,
.main-visual .swiper-slide .text-wrap2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-flow: column wrap;
  align-items: center;
  justify-content: center;
  z-index: 2;
  padding-bottom: 10px;
  color: var(--white);
}
/* .main-visual .swiper-slide .text-wrap h4 {
  font-weight: 700;
  font-size: var(--size40);
  line-height: 1.2;
  text-align: center;
  color: var(--white);
}
.main-visual .swiper-slide .text-wrap p {
  font-weight: 400;
  font-size: var(--size30);
  line-height: 1.2;
  text-align: center;
  color: var(--white);
  margin-top: 1.25rem;
} */
.main-visual .swiper-slide .text-wrap h4 {
  font-weight: 700;
  font-size: var(--size45);
  line-height: 1.2;
  text-align: center;
}
.main-visual .swiper-slide .text-wrap h5 {
  font-weight: 400;
  font-size:var(--size30);
  line-height: 1.5;
  text-align: center;
  margin-top: 1.875rem;
}
.main-visual .swiper-slide .text-wrap p {
  font-weight: 400;
  font-size: var(--size22);
  line-height: 1.5;
  text-align: center;
  margin-top: 3.75rem;
}
.main-visual .text-wrap2 .max-w-container-max {
  max-width: 1200px;
}
.main-visual .text-wrap2 h2 {
  font-weight: bold;
}
.border-solid {
  border-style: solid;
}
.main-visual .swiper-controls {
  position: absolute;
  z-index: 3;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  display: flex;
  flex-flow: row nowrap;
  gap: 5px;
}
.main-visual .swiper-paging {
  background-color: #00000040;
  width: 3.375rem;
  height: 1.5rem;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -ms-border-radius: 20px;
  -o-border-radius: 20px;
  display: inline-flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  font-family: "Lato", sans-serif;
  font-weight: 800;
  font-size: var(--size13);
  line-height: 1.5385;
  letter-spacing: 10%;
  text-align: center;
  color: #FFFFFF80;
}
.main-visual .swiper-pagination-current {
  color: #fff;
}
.main-visual .swiper-button {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: #00000040;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
.main-visual .swiper-button-play {margin: 0 8px; flex: none; width: 6px; height: 8px; background: url(/img/main/play.png) 50% 50% no-repeat; background-size: 100% auto; display: none;}
.main-visual .swiper-button-stop {margin: 0 8px; flex: none; width: 6px; height: 8px; background: url(/img/main/stop.png) 50% 50% no-repeat; background-size: auto 100%; display: block;}
#main-wrap {
  padding: 5rem 0 6.25rem;
}

.mct01 .inner {
  display: flex;
  flex-flow: row wrap;
  gap: 3.75rem;
}
.mct01 .box {
  border: 1px solid #ddd;
  width: 21.25rem;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  padding: 3.6875rem 2.75rem;
  box-sizing: border-box;
}
.mct01 .box h4 {
  font-weight: 600;
  font-size: var(--size24);
  line-height: 1.20834;
  text-align: center;
  color: #111;
}
.mct01 .box ul {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-top: 3.5625rem;
  gap: 2.1875rem;
}
.mct01 .box ul li {
  width: calc(33.33334% - 1.4583334rem);
}
.mct01 .box ul li .icon-wrap {
  width: 100%;
  max-width: 3.75rem;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F7FAFC;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  margin: 0 auto;
}
.mct01 .box ul li .icon-wrap img {
  max-width: 80%;
  max-height: 80%;
}
.mct01 .box ul li p {
  margin-top: 1.25rem;
  font-weight: 500;
  font-size: var(--size16);
  line-height: 1.1875;
  text-align: center;
  color: #111;
  white-space: nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mct01 .notice-wrap {
  padding-left: 1.25rem;
  width: calc(100% - 50rem);
  box-sizing: border-box;
}
.mct01 .notice-wrap > h4 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: var(--size24);
  line-height: 1.208334;
  color: #111;
}
.mct01 .notice-wrap > h4 a {
  font-weight: 500;
  font-size: var(--size14);
  line-height: 1.2143;
  text-align: right;
  color: #2F6FA3;
}
.mct01 .notice-wrap .top-board {
  margin-top: 1.875rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid #ddd;
}
.mct01 .notice-wrap .top-board a {
  display: flex;
  flex-flow: row wrap;
  gap: 1.1875rem;
}
.mct01 .notice-wrap .top-board .icon-wrap {
  width: 3.8125rem;
}
.mct01 .notice-wrap .top-board .icon-wrap img {
  max-width: 100%;
}
.mct01 .notice-wrap .top-board .text-wrap {
  width: calc(100% - 5rem);
}
.mct01 .notice-wrap .top-board .text-wrap h5 {
  font-weight: 600;
  font-size: var(--size18);
  line-height: 1.777778;
  color: #111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mct01 .notice-wrap .top-board .text-wrap p {
  margin-top: 5px;
  font-weight: 400;
  font-size: var(--size16);
  line-height: 1.8125;
  color: #111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mct01 .notice-wrap .top-board .text-wrap h6 {
  font-weight: 400;
  font-size: var(--size15);
  line-height: 1.8;
  color: #666;
  margin-top: 10px;
}
.mct01 .notice-wrap ul {
  margin-top: 1.25rem;
}
.mct01 .notice-wrap ul li a {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  padding: 3px 0;
}
.mct01 .notice-wrap ul li p {
  font-weight: 400;
  font-size: var(--size16);
  line-height: 1.8125;
  color: #111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 68%;
}
.mct01 .notice-wrap ul li h6 {
  font-weight: 400;
  font-size: 15px;
  font-size: var(--size15);
  line-height: 1.8;
  color: #666;
}
.mct02 {
  margin-top: 5rem;
}
.mct02 .inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.mct02 .box {
  width: 48.4375%;
}
.mct02 .box h4 {
  font-weight: 600;
  font-size: var(--size24);
  line-height: 1.208334;
  color: #111;
}
.mct02 .box > a {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  height: 13.75rem;
  border-radius: 20px;
  overflow: hidden;
  margin-top: 1.875rem;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -ms-border-radius: 20px;
  -o-border-radius: 20px;
}
.mct02 .box > a h5 {
  font-weight: 600;
  font-size: var(--size26);
  line-height: 1.38462;
  text-align: center;
  color: var(--white)
}
.mct02 .box01 > a {
  padding-left: 4.375rem;
  background: #2f6fa3 url(/img/main/mct02_img01.png) right 49px center no-repeat;
}
.mct02 .box02 > a {
  padding-left: 3.75rem;
  background: #0E3A5D url(/img/main/mct02_img02.png) right 30px center no-repeat;
}
.mct03 {
  margin-top: 3.75rem;
}
.mct03 .banner {
  width: 100%;
  height: 9.375rem;
  border-radius: 20px;
  background-color: #D9D9D9;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -ms-border-radius: 20px;
  -o-border-radius: 20px;
}
.mct03 .banner {
  font-weight: 500;
  font-size: var(--size16);
  line-height: 1.125;
  color: red;
}