@charset "UTF-8";
/* ------------------------------
    common
------------------------------ */
:root {
  --onest: "Onest", sans-serif;
  --green: #6aba97;
  --lightgreen: #74d6a1;
  --pink: #ef99a9;
  --yellow: #fbc938;
  --blue: #b0bedc;
  --mainWidth: 450px;
}

@media screen and (max-width: 1040px) {
  :root {
    --mainWidth: 320px;
  }
}
@media screen and (max-width: 980px) {
  :root {
    --mainWidth: 280px;
  }
}
@media screen and (max-width: 760px) {
  :root {
    --mainWidth: 100%;
  }
}
html {
  font-size: 0.0520833333vw;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16rem;
  font-weight: 700;
  color: #393641;
  line-height: 2;
  background-color: var(--green);
}

@media screen and (max-width: 760px) {
  html {
    font-size: 0.25vw;
  }
  body {
    overflow-x: hidden;
  }
}
.ib {
  display: inline-block;
}

/* ------------------------------
    slick
------------------------------ */
.slick-track {
  display: flex;
}
.slick-track::before, .slick-track::after {
  display: none;
}
.slick-track .slick-slide {
  float: none;
}

/* ------------------------------
    loading
------------------------------ */
.loading {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  transition: opacity 0.3s;
  background-color: var(--green);
  z-index: calc(infinity);
}
.loading .load_logo {
  opacity: 0;
  transition: opacity 0.5s;
  transition-delay: 0.3s;
}
.loading.loaded .load_logo {
  opacity: 1;
}

@media screen and (max-width: 760px) {
  .loading .load_logo {
    max-width: 80%;
  }
}
/* ------------------------------
    background
------------------------------ */
.background {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: url(../image/background.webp) top left/auto 100% no-repeat;
}

@media screen and (max-width: 760px) {
  .background {
    display: none;
  }
}
/* ------------------------------
    header
------------------------------ */
#header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 20rem 30rem 20rem 25rem;
  z-index: 999;
  pointer-events: none;
}
#header a {
  transition: opacity 0.3s;
  pointer-events: all;
}
#header .hd_left {
  width: 232px;
  line-height: 1;
}
#header .hd_right {
  width: 237px;
  line-height: 1;
}

#hd_sp {
  display: none;
}

@media (hover: hover) and (pointer: fine) {
  #header a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 760px) {
  #header {
    display: none;
  }
  #hd_sp {
    display: flex;
    justify-content: flex-end;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    padding: 10rem;
    pointer-events: none;
    z-index: 999;
    opacity: 0;
    transition: opacity 0.3s;
  }
  #hd_sp.scrolled {
    opacity: 1;
  }
  #hd_sp .hd_btn {
    font-size: 0;
    width: 60rem;
    aspect-ratio: 1/1;
    position: relative;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 50%;
    background-color: #fff;
    pointer-events: all;
    box-shadow: 0px 3rem 12rem rgba(0, 0, 0, 0.1607843137);
  }
  #hd_sp .hd_btn span {
    display: block;
    width: 24rem;
    height: 2rem;
    position: absolute;
    left: calc(50% - 12rem);
    background-color: #000;
  }
  #hd_sp .hd_btn span:nth-of-type(1) {
    top: 23rem;
    transition: top 0.3s, transform 0.3s;
  }
  #hd_sp .hd_btn span:nth-of-type(2) {
    top: 29rem;
    transition: width 0.3s;
  }
  #hd_sp .hd_btn span:nth-of-type(3) {
    top: 35rem;
    transition: top 0.3s, transform 0.3s;
  }
  #hd_sp .hd_btn.active span:nth-of-type(1) {
    top: 29rem;
    transform: rotate(30deg);
  }
  #hd_sp .hd_btn.active span:nth-of-type(2) {
    width: 0;
  }
  #hd_sp .hd_btn.active span:nth-of-type(3) {
    top: 29rem;
    transform: rotate(-30deg);
  }
  #hd_sp #gnav_sp {
    display: none;
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    padding-inline: 25rem;
    background-color: var(--green);
    z-index: -1;
    overflow-y: scroll;
  }
  #hd_sp #gnav_sp a {
    color: #fff;
    pointer-events: all;
  }
  #hd_sp #gnav_sp ul {
    padding-block: 70rem;
  }
  #hd_sp #gnav_sp ul li + li {
    margin-top: 20rem;
  }
  #hd_sp #gnav_sp ul .gnav_anchor a {
    display: flex;
    align-items: center;
    column-gap: 25rem;
  }
  #hd_sp #gnav_sp ul .gnav_anchor a .gnav_number img {
    width: 40rem;
  }
  #hd_sp #gnav_sp ul .gnav_anchor a .gnav_text {
    font-size: 18rem;
  }
  #hd_sp #gnav_sp ul .gnav_icons {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 20rem;
    padding-top: 30rem;
    margin-top: 30rem;
    border-top: 2rem solid #fff;
  }
  #hd_sp #gnav_sp ul .gnav_icons .icon {
    line-height: 1;
  }
  #hd_sp #gnav_sp ul .gnav_icons .instagram img, #hd_sp #gnav_sp ul .gnav_icons .youtube img {
    width: 36.6666666667rem;
  }
  #hd_sp #gnav_sp ul .gnav_icons .x img {
    width: 35.3333333333rem;
  }
  #hd_sp #gnav_sp ul .gnav_icons .tiktok img {
    width: 31.3333333333rem;
  }
  #hd_sp #gnav_sp ul .gnav_link a {
    display: flex;
    align-items: center;
    column-gap: 25rem;
  }
  #hd_sp #gnav_sp ul .gnav_link a .link_icon img {
    width: 40rem;
  }
  #hd_sp #gnav_sp ul .gnav_link a .link_text {
    font-size: 18rem;
  }
}
/* ------------------------------
    wrap
------------------------------ */
.wrap {
  position: relative;
  display: flex;
  align-items: flex-start;
  width: 100%;
  z-index: 99;
}

/* ------------------------------
    sidebar
------------------------------ */
.sidebar {
  display: flex;
  align-items: center;
  width: calc((100% - var(--mainWidth)) / 2);
  height: 100vh;
  position: sticky;
  top: 0;
  left: 0;
  padding-inline: 25px;
}
.sidebar a {
  transition: opacity 0.3s;
}

@media (hover: hover) and (pointer: fine) {
  .sidebar a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 760px) {
  .sidebar {
    display: none;
  }
}
.side-left #gnav ul .gnav_item + .gnav_item {
  margin-top: 30rem;
}
.side-left #gnav ul .gnav_item a {
  display: flex;
  align-items: center;
  column-gap: 20px;
}
.side-left #gnav ul .gnav_item a .gnav_number {
  width: 28px;
  line-height: 1;
  flex-shrink: 0;
}
.side-left #gnav ul .gnav_item a .gnav_text {
  font-size: 16px;
  color: #fff;
  line-height: 1.5;
}
.side-left .icons {
  position: absolute;
  bottom: 30px;
  left: 25px;
}
.side-left .icons ul {
  display: flex;
  align-items: center;
  column-gap: 20px;
}
.side-left .icons ul .icon.instagram, .side-left .icons ul .icon.youtube {
  width: 27px;
}
.side-left .icons ul .icon.x {
  width: 26px;
}
.side-left .icons ul .icon.tiktok {
  width: 23px;
}
.side-left .icons ul .icon a {
  transition: opacity 0.3s;
}
.side-left .icons ul .icon a img {
  vertical-align: middle;
}

.side-right {
  justify-content: flex-end;
}
.side-right .side_movie {
  width: min(240px, 100%);
}
.side-right .side_links {
  width: min(240px, 100% - 50px);
  position: absolute;
  right: 25px;
  bottom: 30px;
}
.side-right .side_links .links_item + .links_item {
  margin-top: 10px;
}
.side-right .side_links .links_item a {
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.side-right .side_links .links_item a .item_icon {
  width: 46px;
  line-height: 1;
  flex-shrink: 0;
}
.side-right .side_links .links_item a .item_text {
  font-size: 14px;
  color: #fff;
  line-height: 1.4;
}

@media screen and (max-width: 860px) {
  .side-right .side_links {
    right: 50%;
    transform: translateX(50%);
  }
}
@media screen and (max-height: 670px) {
  .side-right {
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    padding-block: 90px 20px;
  }
  .side-right .side_links {
    position: static;
    transform: none;
    width: min(240px, 100%);
  }
}
/* ------------------------------
    animation
------------------------------ */
.scaleIn {
  opacity: 0;
  transform: scale(1.2);
  transition: opacity 0.5s, transform 0.5s;
}
.scaleIn.animate-start {
  opacity: 1;
  transform: scale(1);
}

.slideIn {
  opacity: 0;
  transform: translateY(20%);
  transition: opacity 0.5s, transform 0.5s;
}
.slideIn.animate-start {
  opacity: 1;
  transform: translateY(0);
}

/* ------------------------------
    main
------------------------------ */
main {
  container-type: inline-size;
  width: var(--mainWidth);
  padding-top: 40px;
}
main * {
  font-size: 4cqw;
}
main section {
  background-color: #fff;
  border-radius: 5cqw;
}
main section + section {
  margin-top: 5cqw;
}

@media screen and (max-width: 760px) {
  main {
    padding-top: 0;
  }
}
/* btn_area */
.btn_area {
  margin-top: 11.25cqw;
}
.btn_area .btn_headline {
  font-size: 3.75cqw;
  line-height: 1.5333333333;
  text-align: center;
  white-space: nowrap;
  width: fit-content;
  position: relative;
  margin-inline: auto;
}
.btn_area .btn_headline::before, .btn_area .btn_headline::after {
  content: "";
  position: absolute;
  width: 0.5cqw;
  height: 5.5cqw;
  background-color: #393641;
  bottom: 0;
}
.btn_area .btn_headline::before {
  left: -5cqw;
  transform: rotate(-30deg);
}
.btn_area .btn_headline::after {
  right: -5cqw;
  transform: rotate(30deg);
}
.btn_area .btn_image {
  width: 48.5cqw;
  margin: 2.5cqw auto 1.25cqw;
}
.btn_area .btn_image a {
  transition: opacity 0.3s;
}
.btn_area .btn_guide {
  font-size: 3cqw;
  text-align: center;
  line-height: 1;
}

@media (hover: hover) and (pointer: fine) {
  .btn_area .btn_image a:hover {
    opacity: 0.7;
  }
}
/* fv */
#fv {
  padding-block: 20cqw 43.75cqw;
  background-color: var(--lightgreen);
}
#fv .title {
  text-align: center;
  margin-bottom: 17.5cqw;
}
#fv .title .line01 {
  font-size: 4.5cqw;
  line-height: 1;
  text-align: center;
  display: block;
  width: fit-content;
  position: relative;
  margin: 0 auto 3.75cqw;
}
#fv .title .line01::before, #fv .title .line01::after {
  position: absolute;
  content: "";
  width: 0.5cqw;
  height: 7.5cqw;
  top: calc(50% - 3.75cqw);
  background-color: #393641;
}
#fv .title .line01::before {
  left: -5cqw;
  transform: rotate(-25deg);
}
#fv .title .line01::after {
  right: -5cqw;
  transform: rotate(25deg);
}
#fv .title .line02 {
  width: 66cqw;
}
#fv .title .line03 {
  font-size: 4.5cqw;
  line-height: 1;
  text-align: center;
  display: block;
  margin-top: 5cqw;
}
#fv .slider_wrapper {
  position: relative;
}
#fv .slider_wrapper .deco_jintan {
  width: 59.75cqw;
  position: absolute;
  top: -10cqw;
  left: 2.5cqw;
  z-index: 9;
}
#fv .slider_wrapper .fv_slider {
  position: relative;
  width: 87.5cqw;
  height: 114.25cqw; /* 任意 */
  overflow: hidden;
  list-style: none;
  margin-inline: auto;
  padding: 0;
}
#fv .slider_wrapper .fv_slider_item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: translateX(100%); /* 右から準備 */
  transition: transform 1s ease, opacity 1s ease;
  z-index: 1;
}
#fv .slider_wrapper .fv_slider_item.active {
  opacity: 1;
  transform: translateX(0);
  z-index: 2; /* 前面 */
}
#fv .slider_wrapper .fv_slider_item.prev {
  opacity: 1;
  transform: translateX(0);
  z-index: 1; /* 背面に残る */
}
#fv .slider_wrapper .fv_slider_item img {
  width: 100%;
}
#fv .slider_wrapper .serif_slider {
  position: absolute;
  right: 10cqw;
  bottom: 7.5cqw;
  z-index: 9;
}
#fv .slider_wrapper .serif_slider .serif_slider_item {
  width: 34.75cqw;
  opacity: 0;
  transition: opacity 0.5s;
}
#fv .slider_wrapper .serif_slider .serif_slider_item.active {
  opacity: 1;
}
#fv .slider_wrapper .serif_slider .serif_slider_item:nth-of-type(n + 2) {
  position: absolute;
  top: 0;
  left: 0;
}
#fv .slider_wrapper .serif_slider .serif_slider_item p {
  line-height: 1.4375;
  text-align: center;
  width: max-content;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
}
#fv .slider_wrapper .serif_slider .serif_slider_item p.pink {
  color: var(--pink);
}
#fv .slider_wrapper .serif_slider .serif_slider_item p.yellow {
  color: var(--yellow);
}
#fv .slider_wrapper .serif_slider .serif_slider_item p.blue {
  color: var(--blue);
}
#fv .slider_wrapper .deco_jinai {
  width: 30cqw;
  position: absolute;
  left: 3.75cqw;
  bottom: -20cqw;
  z-index: 9;
}
#fv .slider_wrapper .deco_itan {
  width: 33.5cqw;
  position: absolute;
  right: 3.75cqw;
  bottom: -35cqw;
  z-index: 9;
}

/* section */
.section {
  padding-top: 35cqw;
}
.section .point_title {
  text-align: center;
  margin-bottom: 25cqw;
}
.section .point_title img {
  width: 24.5cqw;
}
.section .point_headline {
  font-size: 8.25cqw;
  font-weight: 900;
  text-align: center;
  line-height: 1.5151515152;
  margin-bottom: 12.5cqw;
}
.section .point_lead {
  font-size: 4cqw;
  text-align: center;
  line-height: 1.875;
  margin-bottom: 12.5cqw;
}
.section .content + .content {
  margin-top: 25cqw;
}
.section .content .content_title {
  color: #fff;
  line-height: 1;
  text-align: center;
  width: 75cqw;
  margin: 0 auto 10cqw;
  padding-block: 3.75cqw 2.5cqw;
  border-radius: 5cqw 5cqw 0 0;
}
.section .content .content_lead {
  font-size: 3.5cqw;
  text-align: center;
}
.section .content::after {
  content: "";
  display: block;
  width: 75cqw;
  height: 11.25cqw;
  margin: 8.75cqw auto 0;
  border: 1cqw solid #000;
  border-top: none;
  border-radius: 0 0 5cqw 5cqw;
}

/* point1 */
#point1 {
  padding-bottom: 20cqw;
}
#point1 .point_headline {
  color: var(--pink);
}
#point1 .content .content_title {
  background-color: var(--pink);
}
#point1 .content::after {
  border-color: var(--pink);
}
#point1 .job .job_wrap {
  width: 87.5cqw;
  margin-inline: auto;
  padding-block: 7.5cqw 13.75cqw;
  border-radius: 5cqw;
  background: url(../image/job_bg.webp) center center/cover;
}
#point1 .job .job_wrap .job_item {
  display: flex;
  justify-content: center;
  column-gap: 3.75cqw;
}
#point1 .job .job_wrap .job_item + .job_item {
  margin-top: 5cqw;
}
#point1 .job .job_wrap .job_item:nth-of-type(even) {
  flex-direction: row-reverse;
}
#point1 .job .job_wrap .job_item .job_item_image {
  width: 47.5cqw;
}
#point1 .job .job_wrap .job_item .job_item_image img {
  width: 100%;
}
#point1 .job .job_wrap .job_item .job_info {
  width: 25cqw;
}
#point1 .job .job_wrap .job_item .job_info .headline {
  text-align: center;
  line-height: 1;
  padding-bottom: 1.25cqw;
  border-bottom: 0.5cqw solid #393641;
}
#point1 .job .job_wrap .job_item .job_info .icon {
  width: 21.25cqw;
  margin: 5cqw auto 1.25cqw;
}
#point1 .job .job_wrap .job_item .job_info .icon img {
  width: 100%;
}
#point1 .job .job_wrap .job_item .job_info .btn {
  line-height: 1;
  width: 16.25cqw;
  margin-inline: auto;
}
#point1 .job .job_wrap .job_item .job_info .btn a {
  transition: opacity 0.3s;
}
#point1 .job .job_wrap .job_grid {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(3, 21.25cqw);
  gap: 8.75cqw 6.25cqw;
  margin-top: 8.75cqw;
}
#point1 .job .job_wrap .job_grid .grid_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
  place-items: center;
}
#point1 .job .job_wrap .job_grid .grid_item .headline {
  font-size: 3.25cqw;
  line-height: 1.3846153846;
  text-align: center;
  margin-bottom: 1.25cqw;
}
#point1 .job .job_wrap .job_grid .grid_item .icon {
  width: 100%;
}
#point1 .job .job_wrap .job_grid .grid_item .icon img {
  width: 100%;
}
#point1 .job .job_wrap .job_grid .grid_item .btn {
  line-height: 1;
  width: 16.25cqw;
  margin: 1.25cqw auto 0;
}
#point1 .job .job_wrap .job_grid .grid_item .btn a {
  transition: opacity 0.3s;
}
#point1 .job .job_future {
  margin-top: 22.5cqw;
}
#point1 .job .job_future .future_lead {
  font-size: 4.25cqw;
  line-height: 1.7647058824;
  color: var(--pink);
  text-align: center;
  margin-bottom: 5cqw;
}
#point1 .job .job_future .future_headline {
  text-align: center;
  margin-bottom: 8.75cqw;
}
#point1 .job .job_future .future_headline img {
  width: 45.5cqw;
}
#point1 .job .job_future .future_slider_wrap {
  display: flex;
  overflow-x: hidden;
}
#point1 .job .job_future .future_slider_wrap .future_slider {
  display: flex;
  width: 520cqw;
  animation: future_slider 80s infinite linear 0.5s both;
}
#point1 .job .job_future .future_slider_wrap .future_slider .future_slide {
  width: 260cqw;
}
#point1 .course .course_headline {
  font-size: 11.25cqw;
  text-align: center;
  color: var(--pink);
  line-height: 1;
  font-weight: 900;
  margin-bottom: 7.5cqw;
}
#point1 .course .course_list {
  width: 87.5cqw;
  margin: 10cqw auto 0;
}
#point1 .course .course_list .course_list_item {
  position: relative;
  border-radius: 5cqw;
  padding-block: 7.5cqw;
  overflow: hidden;
}
#point1 .course .course_list .course_list_item .item_head {
  font-size: 6.75cqw;
  text-align: center;
  color: #fff;
  line-height: 1;
  margin-bottom: 5cqw;
}
#point1 .course .course_list .course_list_item .item_lead {
  font-size: 3.5cqw;
  text-align: center;
  line-height: 1.6428571429;
  position: relative;
  z-index: 2;
}
#point1 .course .course_list .course_list_item .item_btn {
  position: relative;
  width: 21.25cqw;
  margin: 31.25cqw auto 0;
  z-index: 2;
}
#point1 .course .course_list .course_list_item .item_btn a {
  transition: opacity 0.3s;
}
#point1 .course .course_list .course_list_item .item_image {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  pointer-events: none;
}
#point1 .course .course_list .course_list_item + .course_list_item {
  margin-top: 5cqw;
}
#point1 .course .course_list .course_list_item:nth-of-type(1) {
  background-color: #7dbd91;
}
#point1 .course .course_list .course_list_item:nth-of-type(2) {
  background-color: #71c9b8;
}
#point1 .course .course_list .course_list_item:nth-of-type(3) {
  background-color: #33bddb;
}
#point1 .support .support_headline {
  font-size: 9cqw;
  font-weight: 900;
  color: var(--pink);
  text-align: center;
  line-height: 1;
  margin-bottom: 7.5cqw;
}
#point1 .support .support_percent {
  font-size: 18.5cqw;
  font-weight: 900;
  color: var(--pink);
  text-align: center;
  line-height: 1;
  margin-bottom: 5cqw;
}
#point1 .support .support_image {
  width: 87.5cqw;
  margin: 7.5cqw auto 0;
  border-radius: 5cqw;
  overflow: hidden;
}
#point1 .video-container {
  position: relative;
  margin-top: 18.75cqw;
}
#point1 .video-container video {
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.3s;
}
#point1 .video-container .thumbnail {
  text-align: center;
  cursor: pointer;
  transition: opacity 0.3s;
}
#point1 .video-container .thumbnail img {
  width: 78.5cqw;
  object-fit: cover;
  display: inline-block;
}
#point1 .video-container.playing .thumbnail {
  opacity: 0;
  pointer-events: none;
}
#point1 .video-container.playing video {
  opacity: 1;
  pointer-events: all;
}

@keyframes future_slider {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@media (hover: hover) and (pointer: fine) {
  #point1 .job .job_wrap .job_item .job_info .btn a:hover,
  #point1 .job .job_wrap .job_grid .grid_item .btn a:hover,
  #point1 .course .course_list .course_list_item .item_btn a:hover,
  #point1 .video-container:not(.playing) .thumbnail:hover {
    opacity: 0.7;
  }
}
/* point2 */
#point2 {
  padding-bottom: 16.25cqw;
}
#point2 .point_headline {
  color: var(--yellow);
}
#point2 .report {
  width: 87.5cqw;
  border-radius: 37.5cqw;
  margin-inline: auto;
  padding: 25cqw 6.875cqw;
  background-color: var(--yellow);
}
#point2 .report .report_headline {
  text-align: center;
  line-height: 1;
  margin-bottom: 17.5cqw;
}
#point2 .report .report_headline .line01 {
  font-family: var(--onest);
  font-size: 10cqw;
  color: #fff;
  font-weight: 300;
  display: inline-block;
  margin-bottom: 3.75cqw;
}
#point2 .report .report_headline .line02 {
  font-size: 4.25cqw;
  font-weight: 500;
}
#point2 .report .report_item + .report_item {
  margin-top: 18.75cqw;
}
#point2 .report .report_item .item_number {
  font-family: var(--onest);
  font-size: 16cqw;
  text-align: center;
  line-height: 1;
  color: #fff;
  margin-bottom: 5cqw;
}
#point2 .report .report_item .item_headline {
  font-size: 5cqw;
  color: #fff;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 7.5cqw;
}
#point2 .report .report_item .item_lead {
  font-size: 3.75cqw;
  font-weight: 400;
  margin-bottom: 6.25cqw;
}
#point2 .report .report_item .item_images .item_image {
  position: relative;
}
#point2 .report .report_item .item_images .item_image + .item_image {
  margin-top: 1.25cqw;
}
#point2 .report .report_item .item_images .item_image .item_image_cap {
  font-size: 3cqw;
  text-align: center;
  line-height: 1.5;
  position: absolute;
  width: fit-content;
  padding: 1.25cqw 2.5cqw;
  border: 0.5cqw solid #000000;
  border-radius: 2.5cqw;
  background-color: #fff;
  opacity: 0;
  transition: opacity 0.5s, transform 0.5s;
}
#point2 .report .report_item .item_images .item_image .item_image_cap:where(.item_image:nth-of-type(odd) *) {
  left: -4.5cqw;
  transform: translateX(-20%);
}
#point2 .report .report_item .item_images .item_image .item_image_cap:where(.item_image:nth-of-type(even) *) {
  right: -4.5cqw;
  transform: translateX(20%);
}
#point2 .report .report_item .item_images .item_image .item_image_cap.top {
  top: 2.75cqw;
}
#point2 .report .report_item .item_images .item_image .item_image_cap.bottom {
  bottom: 5cqw;
}
#point2 .report .report_item .item_images .item_image.animate-start .item_image_cap {
  opacity: 1;
  transform: translateX(0);
}
#point2 .bottomimage {
  text-align: center;
  margin-top: 10cqw;
}
#point2 .bottomimage .illust {
  width: 84.5cqw;
}

/* point3 */
#point3 {
  padding-bottom: 2.5cqw;
}
#point3 .point_headline {
  color: var(--blue);
}
#point3 .content .content_title {
  background-color: var(--blue);
}
#point3 .content::after {
  border-color: var(--blue);
}
#point3 .qualification .qualification_slider .slick-arrow {
  font-size: 0;
  width: 3.5cqw;
  position: absolute;
  top: calc(50% - 3.125cqw);
  aspect-ratio: 14/25;
  padding: 0;
  border: none;
  z-index: 2;
  transition: opacity 0.3s;
}
#point3 .qualification .qualification_slider .slick-arrow.slick-prev {
  left: 11.75cqw;
  background: url(../image/slick_arrow_prev.webp) top left/100% 100%;
}
#point3 .qualification .qualification_slider .slick-arrow.slick-next {
  right: 11.75cqw;
  background: url(../image/slick_arrow_next.webp) top left/100% 100%;
}
#point3 .qualification .qualification_slider .qualification_slide {
  width: 100cqw;
  padding-inline: 22cqw;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_headline {
  font-size: 5cqw;
  text-align: center;
  line-height: 1.7;
  color: var(--blue);
  white-space: nowrap;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_image {
  margin-bottom: 6.25cqw;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_image img {
  width: 100%;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_list dt {
  font-size: 3cqw;
  text-align: center;
  line-height: 1;
  padding-bottom: 1.25cqw;
  border-bottom: 0.5cqw solid #000;
  margin-bottom: 2.5cqw;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_list dd p {
  font-size: 3.5cqw;
  line-height: 1.5714285714;
  display: flex;
}
#point3 .qualification .qualification_slider .qualification_slide .slide_list dd p::before {
  content: "・";
  flex-shrink: 0;
}
#point3 .program .program_headline {
  font-size: 10cqw;
  font-weight: 900;
  color: var(--blue);
  line-height: 1.5;
  text-align: center;
  margin-bottom: 5cqw;
}
#point3 .program .program_lead {
  text-align: center;
  line-height: 1.75;
  margin-bottom: 10cqw;
}
#point3 .program .program_point {
  width: 87.5cqw;
  border-radius: 5cqw;
  padding-block: 10cqw 15cqw;
  margin-inline: auto;
  background-color: #FCFF4C;
}
#point3 .program .program_point .point_item + .point_item {
  margin-top: 11.25cqw;
}
#point3 .program .program_point .point_item .item_number {
  font-weight: 900;
  text-align: center;
  line-height: 1;
  width: fit-content;
  margin: 0 auto 2.5cqw;
  padding-bottom: 2cqw;
  border-bottom: 0.25cqw solid #000;
}
#point3 .program .program_point .point_item .item_headline {
  font-size: 6.5cqw;
  font-weight: 900;
  color: var(--blue);
  text-align: center;
  line-height: 1.5384615385;
}
#point3 .program .program_point .point_item .item_image {
  width: 44.5cqw;
  margin-inline: auto;
}
#point3 .program .program_point .point_item .item_btn {
  width: 21.25cqw;
  margin-inline: auto;
}
#point3 .program .program_point .point_item .item_btn a {
  transition: opacity 0.3s;
}
#point3 .circle .circle_headline {
  font-size: 10cqw;
  font-weight: 900;
  color: var(--blue);
  line-height: 1.5;
  text-align: center;
  margin-bottom: 5cqw;
}
#point3 .circle .circle_lead {
  text-align: center;
  line-height: 1.75;
  margin-bottom: 10cqw;
}
#point3 .circle .circle_images {
  position: relative;
  margin-top: 53.75cqw;
}
#point3 .circle .circle_images .circle_illust {
  width: 54.75cqw;
  position: absolute;
  top: -48.75cqw;
  left: calc(50% - 27.375cqw);
  z-index: 2;
}
#point3 .circle .circle_images .circle_image {
  width: 92.5cqw;
  margin-inline: auto;
  border-radius: 50%;
  overflow: hidden;
}
#point3 .bottomimage {
  margin-top: 7.5cqw;
}

@media (hover: hover) and (pointer: fine) {
  #point3 .qualification .qualification_slider .slick-arrow:hover,
  #point3 .program .program_point .point_item .item_btn a:hover {
    opacity: 0.7;
  }
}
/* links */
.links {
  background-color: #f5f4e7;
  padding: 15cqw 6.25cqw;
}
.links .links_headline {
  font-size: 10cqw;
  text-align: center;
  line-height: 1.6666666667;
  margin-bottom: 12.5cqw;
}
.links .links_banner + .links_banner {
  margin-top: 12.5cqw;
}
.links .links_banner a {
  transition: opacity 0.3s;
}
.links .links_banner a img {
  width: 100%;
}
.links .links_icons {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 9.25cqw;
  margin-top: 12.5cqw;
}
.links .links_icons .links_icon.instagram, .links .links_icons .links_icon.youtube {
  width: 12.25cqw;
}
.links .links_icons .links_icon.x {
  width: 11.75cqw;
}
.links .links_icons .links_icon.tiktok {
  width: 10.5cqw;
}
.links .links_icons .links_icon a {
  transition: opacity 0.3s;
}

@media (hover: hover) and (pointer: fine) {
  .links a:hover {
    opacity: 0.7;
  }
}
/* footer */
footer {
  background-color: #8F82BC;
  padding: 12.5cqw 7.5cqw 15.625cqw;
  margin-top: 5cqw;
}
footer .ft_btn {
  font-size: 4.5cqw;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 16.25cqw;
  border: 0.5cqw #fff solid;
  background-color: #8F82BC;
  transition: color 0.3s, background-color 0.3s;
}
footer .ft_logo {
  text-align: center;
  margin-top: 11.25cqw;
}
footer .ft_logo a {
  transition: opacity 0.3s;
}
footer .ft_logo a img {
  width: 77.25cqw;
}

@media (hover: hover) and (pointer: fine) {
  footer .ft_btn:hover {
    color: #8F82BC;
    background-color: #fff;
  }
  footer .ft_logo a:hover {
    opacity: 0.7;
  }
}
/* modal */
.modal_wrap {
  display: none;
}
.modal_wrap * {
  display: none;
}

#cboxContent {
  overflow-y: auto;
}

#cboxOverlay {
  background: rgba(0, 0, 0, 0.7);
}

#cboxLoadedContent {
  margin: 0;
}

#cboxClose {
  display: none;
}

#cboxLoadedContent:has(.modal_nomal) {
  max-height: 90vh;
}

.modal_nomal {
  width: min(400rem, 90vw);
  padding: 10rem 10rem 40rem;
}
.modal_nomal .btn_close {
  display: block;
  width: 33rem;
  margin: 0 0 10rem auto;
  transition: opacity 0.3s;
}
.modal_nomal .lead {
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.75;
  margin-inline: 30rem;
}

@media (hover: hover) and (pointer: fine) {
  .modal_nomal .btn_close:hover {
    opacity: 0.7;
  }
}
#modal_movie {
  max-width: 90vw;
}
#modal_movie video {
  max-width: 100%;
}

.modal_job .headline {
  font-size: 19rem;
  line-height: 1.4;
  text-align: center;
  border: 1rem solid #393641;
  padding: 15rem 5rem;
  margin-bottom: 20rem;
  margin-inline: 30rem;
}
.modal_job .image {
  margin-bottom: 15rem;
  margin-inline: 30rem;
}
.modal_job .name {
  font-size: 13rem;
  font-weight: 400;
  line-height: 1.5384615385;
  padding-bottom: 10rem;
  border-bottom: 2rem solid #393641;
  margin-bottom: 10rem;
  margin-inline: 30rem;
}
.modal_job .name strong {
  font-size: 18rem;
  font-weight: 700;
}

.modal_course .headline {
  font-size: 19rem;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  padding: 15rem 5rem;
  margin-bottom: 20rem;
  margin-inline: 30rem;
}
.modal_course .pickup {
  margin-top: 20rem;
  margin-inline: 30rem;
}
.modal_course .pickup .pickup_headline {
  font-size: 12rem;
  line-height: 1;
  text-align: center;
  padding-block: 5rem;
  border-radius: 5rem 5rem 0 0;
  border: 1rem solid #393641;
  border-bottom: none;
  margin-bottom: 20rem;
}
.modal_course .pickup .pickup_title {
  font-size: 19rem;
  line-height: 1.5789473684;
  text-align: center;
  margin-block: 15rem;
}
.modal_course .pickup .pickup_lead {
  font-size: 15rem;
  font-weight: 400;
  line-height: 1.6666666667;
}
.modal_course#modal_course_01 .headline {
  background-color: #7dbd91;
}
.modal_course#modal_course_01 .pickup .pickup_headline {
  color: #7dbd91;
}
.modal_course#modal_course_02 .headline {
  background-color: #71c9b8;
}
.modal_course#modal_course_02 .pickup .pickup_headline {
  color: #71c9b8;
}
.modal_course#modal_course_03 .headline {
  background-color: #00acd2;
}
.modal_course#modal_course_03 .pickup .pickup_headline {
  color: #00acd2;
}

.modal_program .number {
  font-size: 16rem;
  font-weight: 900;
  text-align: center;
  line-height: 1;
  width: fit-content;
  margin: 0 auto 10rem;
  padding-bottom: 8rem;
  border-bottom: 1rem solid #000;
}
.modal_program .headline {
  font-size: 26rem;
  font-weight: 900;
  color: #b0bedc;
  text-align: center;
  line-height: 1.5384615385;
  margin-bottom: 20rem;
  margin-inline: 30rem;
}
.modal_program .example {
  margin-top: 20rem;
  margin-inline: 30rem;
}
.modal_program .example dt {
  font-size: 16rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  line-height: 1;
  padding-block: 5rem;
  margin-bottom: 10rem;
  background-color: #393641;
}
.modal_program .example dd {
  font-size: 14rem;
  font-weight: 400;
  line-height: 1.7142857143;
}
.modal_program .example dd strong {
  font-weight: 700;
}
.modal_program .reward {
  margin-top: 30rem;
  margin-inline: 30rem;
}
.modal_program .reward + .reward {
  margin-top: 15rem;
}
.modal_program .reward dt {
  font-size: 14rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10rem;
}
.modal_program .reward dt strong {
  font-size: 17rem;
  font-weight: 900;
}
.modal_program .reward dt strong.gold {
  color: #d4a900;
}
.modal_program .reward dt strong.silver {
  color: #9db5cf;
}
.modal_program .reward dt strong.bronze {
  color: #bb9855;
}
.modal_program .reward dd {
  font-size: 14rem;
  font-weight: 400;
  line-height: 1;
}/*# sourceMappingURL=style.css.map */