@charset "UTF-8";
/* Scss Document */
.ttl {
  font-size: 36px;
  text-align: center; }
  @media (max-width: 999px) {
    .ttl {
      font-size: 2.4em; } }

/*=============
slick
=============*/
.fv-slider {
  width: 100%;
  position: relative;
  z-index: -1; }

.fv-slider div {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;
  margin: 0;
  overflow: hidden; }
  @media (max-width: 999px) {
    .fv-slider div {
      height: 64vh; } }

.fv-slider div img {
  width: 100%; }

.fv-slider .slick-slide > div {
  transform: scale(1);
  transition: transform 5s linear; }

.fv-slider .slick-slide > div.add-animation {
  transform: scale(1.03); }

.fv-slider div.img01 {
  background-image: url("../../img/home/fv1.jpg"); }

.fv-slider div.img02 {
  background-image: url("../../img/home/fv2.jpg"); }

.fv-slider div.img03 {
  background-image: url("../../img/home/fv3.jpg"); }

.fv-slider div.img04 {
  background-image: url("../../img/home/fv4.jpg"); }

.fv-slider div.img05 {
  background-image: url("../../img/home/fv5.jpg"); }

.fv-slider div.img06 {
  background-image: url("../../img/home/fv6.jpg"); }

/* 
---------------------------------------
メインビジュアル
---------------------------------------
*/
#kv {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  height: calc(100vh - 100px/*ヘッダーの高さ*/);
  background-size: cover;
  background-position: center center; }

/* 
---------------------------------------
home01
---------------------------------------
*/
#home01 {
  margin-top: -4.4%;
  position: relative;
  z-index: 2; }
  @media (max-width: 999px) {
    #home01 {
      margin-top: -5.9%; } }

#home01 .home01_head_top {
  margin-bottom: -10vw; }
  @media (max-width: 999px) {
    #home01 .home01_head_top {
      margin-bottom: -40px; } }

#home01 .home01_head.bottom {
  margin-top: -4px; }

#home01 .bgColor {
  background: #FFCC26; }

#home01 .about_white {
  background-color: #fff;
  text-align: center;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  position: relative;
  z-index: 1; }
  @media (max-width: 999px) {
    #home01 .about_white {
      width: 100% !important;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      margin-top: 20px; } }

#home01 .about_white .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  line-height: 1; }
  @media (max-width: 999px) {
    #home01 .about_white .sttl {
      font-size: 40px; } }
  #home01 .about_white .sttl span {
    color: #2B9A33; }

#home01 .about_white .ttlDeco {
  text-align: center;
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home01 .about_white .ttlDeco {
      font-size: 14px; } }

#home01 .about_white .stxt {
  padding: 58px 0 64px; }
  @media (max-width: 999px) {
    #home01 .about_white .stxt {
      padding: 24px 5% 38px; } }
  #home01 .about_white .stxt .bold {
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased; }

#home01 .about_orange {
  position: relative;
  background: #FFF5D3;
  margin-top: -100px;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  padding: 141px 0 28px;
  text-align: center; }
  @media (max-width: 999px) {
    #home01 .about_orange {
      width: 100%;
      margin-top: -70px;
      padding: 109px 0 50px;
      border-radius: clamp(0px, 0vw, 0px) clamp(0px, 0vw, 0px) clamp(10px, 1.4285714286vw, 20px) clamp(10px, 1.4285714286vw, 20px); } }

#home01 .about_orange .square_yellow,
#home01 .about_orange .square_orange {
  position: absolute; }
  #home01 .about_orange .square_yellow img,
  #home01 .about_orange .square_orange img {
    width: 50%; }

#home01 .about_orange .square_yellow {
  top: 312px;
  left: -138px; }

#home01 .about_orange .square_orange {
  top: 122px;
  right: -120px; }

#home01 .about_orange .stxt {
  margin-bottom: 45px; }
  #home01 .about_orange .stxt .wavy {
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    font-size: 30px; }
  @media (max-width: 999px) {
    #home01 .about_orange .stxt {
      padding: 0 5%; } }

#home01 .about_orange .stxt_Sp {
  margin-bottom: 29px; }

#home01 .about_orange .stxt_Sp .block1 {
  font-size: 16px;
  margin-bottom: 22.9px; }
  @media (max-width: 999px) {
    #home01 .about_orange .stxt_Sp .block1 {
      font-weight: 500;
      margin-bottom: 18px; } }

#home01 .about_orange .stxt_Sp .block2 {
  font-size: 16px; }
  #home01 .about_orange .stxt_Sp .block2 span {
    font-size: 22px;
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased; }

#home01 .about_orange .answer {
  font-size: 40px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-bottom: 45px;
  position: relative;
  z-index: 5; }
  #home01 .about_orange .answer span {
    font-size: 46px; }
    @media (max-width: 999px) {
      #home01 .about_orange .answer span {
        font-size: 28px; } }
  @media (max-width: 999px) {
    #home01 .about_orange .answer {
      padding: 0 5%;
      margin-bottom: 11.5px;
      font-size: 28px; } }

#home01 .about_orange .answer .mark {
  transition: 0.3s all; }

#home01 .about_orange .answer .mark.nonactive {
  background-image: none; }

#home01 .questionsBox,
#home01 .questionsBox_sp {
  position: relative; }

#home01 .question {
  position: absolute; }

#home01 .question img {
  width: 43%; }

#home01 .question1 {
  left: 6%;
  bottom: 3px; }

#home01 .question2 {
  transform: rotateZ(20deg);
  right: 6.84%;
  bottom: 3px; }

#home01 .questionsBox .outer {
  display: flex;
  justify-content: center;
  position: relative; }

@media (max-width: 999px) {
  #home01 .questionsBox_sp .outer {
    padding: 0 5%; } }

#home01 .questionsBox .outer img {
  width: 65.5%; }

#home01 .examples {
  margin-top: 59px;
  position: relative; }
  @media (max-width: 999px) {
    #home01 .examples {
      margin-top: 21px; } }

#home01 .bg {
  position: absolute;
  z-index: -1;
  top: 213px; }
  @media screen and (max-width: 999px) and (min-width: 394px) {
    #home01 .bg {
      top: auto;
      bottom: -228px; } }
  @media screen and (max-width: 393px) {
    #home01 .bg {
      top: auto;
      bottom: -178px; } }

#home01 .examples .bubble {
  position: relative;
  width: 64%;
  background: #6EAFE9;
  border-radius: clamp(40px, 5.7142857143vw, 80px);
  padding: 25px 0 14px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 42px;
  margin-left: -55px; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home01 .examples .bubble {
      margin-left: 0px; } }
  @media (max-width: 999px) {
    #home01 .examples .bubble {
      width: 68.4%;
      margin: 0px auto 25px;
      padding: 8px 0 0px; } }

#home01 .examples .bubble p {
  color: #fff;
  font-size: 42px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home01 .examples .bubble p {
      font-size: 30px; } }

#home01 .examples .bubble:before {
  position: absolute;
  z-index: -1;
  content: '';
  bottom: -45px;
  width: 0px;
  height: 0px;
  border-bottom: 25px solid transparent;
  border-right: 35px solid transparent;
  border-left: 35px solid transparent;
  border-top: 50px solid #6EAFE9; }
  @media (max-width: 999px) {
    #home01 .examples .bubble:before {
      border-bottom: 30px solid transparent;
      border-right: 35px solid transparent;
      border-left: 35px solid transparent;
      border-top: 50px solid #6EAFE9; } }

#home01 .examples .example_boxs1 {
  display: flex;
  justify-content: space-between;
  align-items: flex-end; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs1 {
      flex-direction: column; } }

#home01 .examples .example_boxs .stxt {
  margin-left: 16%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs .stxt {
      margin-left: 0; } }

#home01 .examples .example_boxs .stxt2 {
  margin-top: 46px; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs .stxt2 {
      margin-top: 0; } }

#home01 .examples .example_boxs1 .box1 {
  width: 49%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs1 .box1 {
      width: 100%; } }

#home01 .examples .example_boxs1 .box2 {
  width: 50.4%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs1 .box2 {
      width: 100%;
      margin-top: 10px; } }

#home01 .examples .example_boxs2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 64px; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 {
      flex-direction: column;
      margin-top: 27px; } }

#home01 .examples .example_boxs2 .box1 {
  width: 50%;
  position: relative; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box1 {
      width: 100%; } }

#home01 .examples .example_boxs2 .box1 .img1 {
  width: 16.8%;
  height: auto;
  margin-right: 4%;
  position: absolute;
  z-index: 3;
  left: -68px;
  bottom: 172px; }
  @media screen and (max-width: 1350px) and (min-width: 1000px) {
    #home01 .examples .example_boxs2 .box1 .img1 {
      left: -43px;
      margin-right: 2%; } }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box1 .img1 {
      width: 18.7%;
      margin-right: 0;
      bottom: -57px;
      right: 16px;
      left: auto; } }

#home01 .examples .example_boxs2 .box1 .img2 {
  width: 89.5%;
  margin-left: 10%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box1 .img2 {
      width: 100%;
      margin-left: 0%; } }

#home01 .examples .example_boxs2 .box2 {
  width: 41%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 {
      width: 100%; } }

#home01 .examples .example_boxs2 .box2 .middleschool,
#home01 .examples .example_boxs2 .box2 .highschool {
  display: flex;
  position: relative;
  justify-content: flex-end;
  height: auto; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .middleschool,
    #home01 .examples .example_boxs2 .box2 .highschool {
      flex-direction: row-reverse;
      align-items: center;
      justify-content: space-between; } }

@media (max-width: 999px) {
  #home01 .examples .example_boxs2 .box2 .middleschool {
    margin-top: 52.7px; } }

#home01 .examples .example_boxs2 .box2 .highschool {
  flex-direction: row-reverse;
  justify-content: end;
  top: 50px; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .highschool {
      top: 23px;
      flex-direction: row; } }

#home01 .examples .example_boxs2 .box2 .middleschool .img1 {
  width: 52.3%;
  margin-right: 34%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .middleschool .img1 {
      margin-right: 0;
      width: 65.7%; } }

#home01 .examples .example_boxs2 .box2 .middleschool .img2 {
  width: 28.3%;
  position: absolute;
  top: -16px;
  right: 20px; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .middleschool .img2 {
      position: static;
      width: 31.4%; } }

#home01 .examples .example_boxs2 .box2 .highschool .img1 {
  width: 52.3%; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .highschool .img1 {
      width: 65.4%; } }

#home01 .examples .example_boxs2 .box2 .highschool .img2 {
  width: 39.6%;
  position: absolute;
  top: 57px;
  left: 31px; }
  @media (max-width: 999px) {
    #home01 .examples .example_boxs2 .box2 .highschool .img2 {
      position: static;
      width: 41.5%;
      margin-left: -24px; } }

#home01 .conclution {
  margin-top: 56px;
  text-align: center;
  font-size: 26px; }
  #home01 .conclution span {
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home01 .conclution {
      margin-top: 51px;
      font-size: 18px;
      padding: 0 5%; } }

#home01 .txt {
  margin-top: 150px;
  text-align: center;
  font-size: 30px; }
  #home01 .txt span {
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home01 .txt {
      margin-top: 36px;
      font-size: 18px;
      padding: 0 5%; } }

#home01 .boxs {
  max-width: 970px;
  display: flex;
  justify-content: space-between;
  margin: 56px auto 0; }
  @media (max-width: 999px) {
    #home01 .boxs {
      max-width: 375px;
      padding: 0 5%;
      margin: 27px auto 0;
      flex-wrap: wrap;
      justify-content: center; } }

#home01 .boxs .box {
  width: 30.9%; }
  @media (max-width: 999px) {
    #home01 .boxs .box {
      width: 48%; } }

#home01 .boxs .box2 {
  margin-top: 32px; }
  @media (max-width: 999px) {
    #home01 .boxs .box2 {
      margin-top: 0;
      margin-left: 4%; } }

#home01 .boxs .box .dream {
  text-align: center;
  font-size: 22px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home01 .boxs .box .dream {
      margin-top: 0;
      font-size: 16px;
      line-height: 1.5; } }

#home01 .swiper-container {
  width: 100%;
  margin: 0 auto;
  max-width: 1400px; }
  @media (max-width: 999px) {
    #home01 .swiper-container {
      width: 88%; } }
#home01 .swiper-slide {
  transition: transform 0.3s ease, opacity 0.3s ease;
  position: relative;
  display: block; }
#home01 .swiper-slide-next, #home01 .swiper-slide-prev {
  opacity: 0.5; }
#home01 .swiper-slide img {
  width: 100%;
  height: auto;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  border-radius: clamp(15px, 2.1428571429vw, 30px);
  aspect-ratio: 3 / 2; }
  @media (max-width: 999px) {
    #home01 .swiper-slide img {
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }
#home01 .className {
  font-size: 2rem;
  text-align: center;
  padding: 0.4rem 3rem;
  background: #fff;
  color: #0E7BDB;
  font-weight: bold;
  width: max-content;
  margin: 0 auto;
  border-radius: 30px;
  border: 2px solid #0E7BDB; }
  @media (max-width: 999px) {
    #home01 .className {
      font-size: 14px;
      padding: 0.2rem 2rem; } }
#home01 .swiper-button-prev::after {
  background-color: #007bff;
  border: 4px solid #007bff;
  transition: all 0.3s; }
  @media (max-width: 999px) {
    #home01 .swiper-button-prev::after {
      padding: 8px; } }
#home01 .swiper-button-next::after {
  background-color: #007bff;
  border: 4px solid #007bff;
  transition: all 0.3s; }
  @media (max-width: 999px) {
    #home01 .swiper-button-next::after {
      padding: 8px; } }
#home01 .swiper-button-prev {
  left: 8%;
  right: auto;
  top: 48%; }
  @media (max-width: 999px) {
    #home01 .swiper-button-prev {
      left: -16px;
      top: 40%; } }
#home01 .swiper-button-next {
  right: 8%;
  top: 48%; }
  @media (max-width: 999px) {
    #home01 .swiper-button-next {
      right: -16px;
      left: inherit;
      top: 40%; } }
#home01 .swiper-button-next:hover::after, #home01 .swiper-button-prev:hover::after {
  color: #007bff;
  background-color: #fff;
  transition: all 0.6s; }
#home01 .swiper-3d .swiper-wrapper {
  padding-bottom: 50px; }
#home01 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
  background: #fff;
  opacity: 1; }
@media (max-width: 999px) {
  #home01 .swiper-horizontal > .swiper-pagination-bullets, #home01 .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 20px; } }

/* 
---------------------------------------
home02
---------------------------------------
*/
#home02 {
  background-image: url("../../img/home/02_bg_01.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 200px;
  padding-bottom: 200px; }
  @media screen and (max-width: 999px) and (min-width: 600px) {
    #home02 {
      background-image: url("../../img/home/02_bg_sp.webp");
      background-size: cover;
      background-position: top;
      padding-top: 197px;
      padding-bottom: 215px;
      margin-top: 20px; } }
  @media screen and (max-width: 599px) {
    #home02 {
      background-image: url("../../img/home/02_bg_sp.webp");
      background-size: cover;
      background-position: top;
      padding-bottom: 215px;
      padding-top: 117px;
      margin-top: 0px; } }

#home02 .home02_message {
  text-align: center; }

@media (max-width: 999px) {
  #home02 .home02_message .inner_M {
    width: 97%; } }

#home02 .home02_message .txt {
  font-size: 26px;
  margin-bottom: 42px; }
  #home02 .home02_message .txt .wavy {
    color: #0E7BDB;
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    background: url("../../img/common/wavy_blue.png") repeat-x bottom left/auto 5px; }
  #home02 .home02_message .txt .large {
    font-size: 30px;
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased; }
    @media (max-width: 999px) {
      #home02 .home02_message .txt .large {
        font-size: 18px; } }
  @media (max-width: 999px) {
    #home02 .home02_message .txt {
      font-size: 18px;
      margin-bottom: 28px; } }

#home02 .home02_message .catchcopy {
  font-size: 46px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home02 .home02_message .catchcopy {
      font-size: 28px; } }

#home02 .home02_message .txt2 {
  margin-top: 63px;
  margin-bottom: 0; }
  @media (max-width: 999px) {
    #home02 .home02_message .txt2 {
      margin-top: 40px;
      padding: 0 5%; } }

/* 
---------------------------------------
home03
---------------------------------------
*/
#home03 {
  background: url("../../img/home/03_bg.webp");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: 158px;
  padding-bottom: 172px;
  margin-top: -118px;
  position: relative;
  overflow: hidden; }
  @media (max-width: 999px) {
    #home03 {
      background: url("../../img/home/03_bg_sp.webp");
      background-size: cover;
      margin-top: -148px;
      padding-top: 58px;
      padding-bottom: 92px; } }

#home03 .ttlBox {
  margin-bottom: 68px;
  text-align: center; }
  @media (max-width: 999px) {
    #home03 .ttlBox {
      margin-bottom: 32px; } }

#home03 .ttlBox img {
  width: 7%;
  margin-bottom: 9px; }
  @media (max-width: 999px) {
    #home03 .ttlBox img {
      width: 13.1%;
      margin-bottom: 11.9px; } }

#home03 h3 {
  color: #fff;
  font-size: 50px;
  line-height: 1.5;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home03 h3 {
      font-size: 26px; } }

#home03 .boxs {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  position: relative;
  z-index: 3; }
  @media (max-width: 999px) {
    #home03 .boxs {
      flex-direction: column; } }

#home03 .boxs1 {
  margin-bottom: 48px; }
  @media (max-width: 999px) {
    #home03 .boxs1 {
      margin-bottom: 0px; } }

#home03 .boxs2 {
  justify-content: center;
  margin-bottom: 80px; }
  @media (max-width: 999px) {
    #home03 .boxs2 {
      margin-bottom: 50px; } }

#home03 .box {
  width: 31%;
  background-color: #fff;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  padding: 2.3%;
  display: flex;
  align-items: center;
  flex-direction: column; }
  @media (max-width: 999px) {
    #home03 .box {
      width: 100%;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      margin-bottom: 15px;
      padding: 6%; } }

#home03 .boxs2 .box {
  width: 36.17%; }
  @media (max-width: 999px) {
    #home03 .boxs2 .box {
      width: 100%;
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

@media (max-width: 999px) {
  #home03 .boxs2 .box:last-child {
    margin-bottom: 0; } }

#home03 .boxs2 .box1 {
  margin-right: 4%; }

#home03 .box .picBox {
  position: relative; }

#home03 .box .picBox img {
  border-radius: clamp(10px, 1.4285714286vw, 20px); }

#home03 .box .tag {
  position: absolute;
  bottom: 0;
  left: -1px;
  background-color: #fff;
  border-radius: clamp(0px, 0vw, 0px) clamp(5px, 0.7142857143vw, 10px) clamp(0px, 0vw, 0px) clamp(0px, 0vw, 0px);
  padding: 14px 14px 0 10px; }
  @media (max-width: 999px) {
    #home03 .box .tag {
      left: -1px;
      padding: 0 14px 0 10px; } }

#home03 .box .tag p {
  font-size: 46px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home03 .box .tag p {
      font-size: 33px; } }

#home03 .boxs1 .box1 .tag p,
#home03 .boxs1 .box3 .tag p,
#home03 .boxs2 .box2 .tag p {
  color: #BFE1C1; }

#home03 .boxs1 .box2 .tag p,
#home03 .boxs2 .box1 .tag p {
  color: #DBC3E2; }

#home03 .boxs1 .box3 .tag p {
  color: #DBC3E2; }

#home03 .boxs .box .txtBox .lead {
  font-size: 22px;
  text-align: center;
  margin-bottom: 20px;
  margin-top: 20px;
  line-height: 1.5;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home03 .boxs .box .txtBox .lead {
      font-size: 18px;
      text-align: justify;
      margin-bottom: 8px;
      margin-top: 8px; } }

#home03 .boxs1 .box1 .txtBox .lead,
#home03 .boxs1 .box3 .txtBox .lead,
#home03 .boxs2 .box2 .txtBox .lead {
  color: #2B9A33; }

#home03 .boxs1 .box2 .txtBox .lead,
#home03 .boxs2 .box1 .txtBox .lead {
  color: #87399F; }

#home03 .boxs .box .txtBox .stxt {
  font-size: 16px; }
  #home03 .boxs .box .txtBox .stxt span {
    font-size: 16px;
    display: block; }
  @media (max-width: 999px) {
    #home03 .boxs .box .txtBox .stxt {
      font-size: 16px; }
      #home03 .boxs .box .txtBox .stxt span {
        font-size: 14px; } }

#home03 .btn {
  display: block;
  width: 440px;
  margin: 0 auto;
  text-align: center;
  border-radius: clamp(12.5px, 1.7857142857vw, 25px);
  box-shadow: 4px 4px 0 0 #0e7bdb;
  transform: translateY(-4px);
  transition: 0.3s all; }
  @media screen and (max-width: 1470px) and (min-width: 1000px) {
    #home03 .btn {
      width: 37.3%; } }
  @media (max-width: 999px) {
    #home03 .btn {
      width: 90%;
      position: relative;
      z-index: 3;
      font-size: 16px;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      max-width: 375px; } }

#home03 .btn:hover {
  box-shadow: 0 0 0 0 #005400;
  transform: translateY(-2px); }

#home03 .btn p {
  background: #fff;
  border: 4px solid #0E7BDB;
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  color: #0e7bdb;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  padding: 20px;
  white-space: nowrap; }
  @media (max-width: 999px) {
    #home03 .btn p {
      font-size: 16px;
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#home03 .btn:hover p {
  background: #0e7bdb;
  color: #fff; }

/*歯車*/
#home03 .character1,
#home03 .character2,
#home03 .character3,
#home03 .purple_square,
#home03 .yellow_arrow,
#home03 .yellow_item,
#home03 .yellow_arrow,
#home03 .green_square,
#home03 .green_cros {
  position: absolute; }

#home03 .character1 {
  top: 91px;
  left: 10.35%;
  width: 6.5%; }
  @media (max-width: 999px) {
    #home03 .character1 {
      top: 28px;
      left: 8.35%;
      width: 14.2%; } }

#home03 .green_square {
  top: 291px;
  left: -49px;
  width: 7.1%; }

#home03 .yellow_item {
  top: 259px;
  left: 6.7%;
  width: 6.1%; }
  @media (max-width: 999px) {
    #home03 .yellow_item {
      top: 110px;
      left: -1%;
      width: 15.8%; } }

#home03 .yellow_arrow {
  bottom: 597px;
  left: 11.4%;
  width: 4%; }

#home03 .green_cros {
  width: 2.9%;
  bottom: 538.7px;
  left: 5.51%; }

#home03 .character2 {
  width: 6.5%;
  bottom: 126px;
  left: 12%; }

#home03 .character3 {
  width: 6.5%;
  bottom: 583px;
  right: 7.85%; }
  @media (max-width: 999px) {
    #home03 .character3 {
      width: 15.3%;
      bottom: auto;
      right: 2.2%;
      top: 163px; } }

#home03 .gear1 {
  position: absolute;
  top: 221px;
  right: -57px;
  width: 11.4%; }
  @media (max-width: 999px) {
    #home03 .gear1 {
      top: 38.9px;
      right: -20px;
      width: 18%; } }

#home03 .gear2 {
  position: absolute;
  bottom: 345px;
  width: 8.5%;
  left: 5.51%; }

#home03 .gear3 {
  position: absolute;
  width: 2.6%;
  bottom: 294.2px;
  left: 16.67%; }

#home03 .gear4 {
  position: absolute;
  bottom: 335PX;
  width: 11.2%;
  right: -50px; }
  @media (max-width: 999px) {
    #home03 .gear4 {
      position: absolute;
      bottom: 208.8px;
      width: 25%;
      right: -36px; } }

#home03 .purple_square {
  bottom: 367.5px;
  right: 12%;
  width: 3.8%; }

#home03 .gear5 {
  position: absolute;
  bottom: 173.5px;
  width: 8.3%;
  right: 8.3%; }
  @media (max-width: 999px) {
    #home03 .gear5 {
      bottom: 156.35px;
      width: 18.6%;
      right: 8.3%; } }

/* 
---------------------------------------
home04
---------------------------------------
*/
#home04 {
  background: url("../../img/home/04_bg.webp");
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 158px;
  padding-bottom: 180px;
  margin-top: -23px;
  position: relative; }
  @media (max-width: 999px) {
    #home04 {
      background: url("../../img/home/04_bg_sp.webp");
      background-size: cover;
      background-repeat: no-repeat;
      padding-top: 85px;
      padding-bottom: 105px; } }

#home04 .ttlBox {
  margin-bottom: 60px;
  text-align: center; }
  @media (max-width: 999px) {
    #home04 .ttlBox {
      margin-bottom: 30px; } }

#home04 .ttlBox img {
  width: 5%;
  margin-bottom: 9px; }
  @media (max-width: 999px) {
    #home04 .ttlBox img {
      width: 17.9%; } }

#home04 h3 {
  color: #333333;
  font-size: 50px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home04 h3 {
      font-size: 26px; } }

#home04 .boxs {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  max-width: 1200px;
  width: 90%;
  margin: 0 auto; }
  @media (max-width: 999px) {
    #home04 .boxs {
      padding-bottom: 20px;
      overflow-x: scroll;
      width: 95%;
      margin: 50px 0 0 auto;
      padding-top: 52px; } }

#home04 .boxs .box {
  position: relative;
  width: 31%;
  background-color: #fff;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 7.1% 3.4% 2.9% 3.4%; }
  @media (max-width: 999px) {
    #home04 .boxs .box {
      flex-shrink: 0;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      width: 75.8%;
      margin-right: 4%;
      padding: 19.3% 6% 6% 6%; } }

#home04 .boxs .box img {
  position: absolute;
  width: 34.2%;
  top: -57px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%); }
  @media (max-width: 999px) {
    #home04 .boxs .box img {
      width: 32.6%;
      top: -45px; } }

#home04 .character {
  position: absolute; }

#home04 .character1 {
  left: 12%;
  width: 4.2%;
  bottom: -72px; }
  @media screen and (max-width: 1270px) and (min-width: 1000px) {
    #home04 .character1 {
      bottom: -42px; } }
  @media (max-width: 999px) {
    #home04 .character1 {
      left: 4%;
      width: 8.6%;
      bottom: -37px; } }

#home04 .character2 {
  width: 5.4%;
  bottom: -39px;
  left: 21.96%; }
  @media screen and (max-width: 1270px) and (min-width: 1000px) {
    #home04 .character2 {
      bottom: -9px; } }
  @media (max-width: 999px) {
    #home04 .character2 {
      width: 11.2%;
      bottom: -19px;
      left: 19.16%; } }

#home04 .character3 {
  width: 5.6%;
  right: 19.2%;
  bottom: -46px; }
  @media screen and (max-width: 1270px) and (min-width: 1000px) {
    #home04 .character3 {
      bottom: -16px; } }
  @media (max-width: 999px) {
    #home04 .character3 {
      width: 11.2%;
      right: 19.2%;
      bottom: -16px; } }

#home04 .character4 {
  width: 4.3%;
  right: 10%;
  bottom: -24px; }
  @media screen and (max-width: 1270px) and (min-width: 1000px) {
    #home04 .character4 {
      bottom: 16px; } }
  @media (max-width: 999px) {
    #home04 .character4 {
      width: 9.1%;
      right: 3%;
      bottom: -24px; } }

#home04 .swiper-container {
  width: 84%;
  /* スライダーの幅 */
  margin: 0 auto;
  /* 中央揃え */ }
#home04 .swiper-slide {
  transition: transform 0.3s ease, opacity 0.3s ease;
  /* スムーズなアニメーション */
  border-radius: clamp(15px, 2.1428571429vw, 30px);
  border: 2px solid #FFB726;
  margin-right: 20px;
  background: #FFE07D;
  padding: 10px; }
#home04 .swiper-slide .bgColor {
  background: #fff;
  padding: 10px;
  border-radius: clamp(10px, 1.4285714286vw, 20px); }
#home04 .swiper-slide .bgColor p {
  padding: 20px;
  font-weight: 600;
  line-height: 1.5; }
  @media (max-width: 999px) {
    #home04 .swiper-slide .bgColor p {
      padding: 10px;
      font-size: 14px; } }
#home04 .swiper-slide img {
  width: 100%;
  /* スライド内の画像サイズ */
  height: auto;
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  /* 角丸 */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  /* シャドウ効果 */ }
#home04 .swiper-button-prev::after {
  background-color: #007bff;
  border: 4px solid #007bff;
  transition: all 0.3s; }
  @media (max-width: 999px) {
    #home04 .swiper-button-prev::after {
      padding: 8px; } }
#home04 .swiper-button-next::after {
  background-color: #007bff;
  border: 4px solid #007bff;
  transition: all 0.3s; }
  @media (max-width: 999px) {
    #home04 .swiper-button-next::after {
      padding: 8px; } }
#home04 .swiper-button-prev {
  left: 6.5%;
  right: auto;
  top: 60%; }
  @media (max-width: 999px) {
    #home04 .swiper-button-prev {
      left: 16px;
      top: 58%; } }
#home04 .swiper-button-next {
  right: 6.5%;
  top: 60%; }
  @media (max-width: 999px) {
    #home04 .swiper-button-next {
      right: 16px;
      left: inherit;
      top: 58%; } }
#home04 .swiper-button-next:hover::after, #home04 .swiper-button-prev:hover::after {
  color: #007bff;
  background-color: #fff;
  transition: all 0.6s; }
#home04 .swiper-horizontal > .swiper-pagination-bullets, #home04 .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 120px; }
  @media (max-width: 999px) {
    #home04 .swiper-horizontal > .swiper-pagination-bullets, #home04 .swiper-pagination-bullets.swiper-pagination-horizontal {
      bottom: 60px; } }
#home04 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
  background: #fff;
  opacity: 1; }
#home04 .swiper-pagination {
  z-index: 6; }

.modaal-wrapper .modaal-container {
  border: 2px solid #FFB726;
  border-radius: clamp(12.5px, 1.7857142857vw, 25px);
  padding: 20px;
  background: #FFE07D; }
  @media (max-width: 999px) {
    .modaal-wrapper .modaal-container {
      padding: 8px; } }
@media (max-width: 999px) {
  .modaal-wrapper .modaal-content-container {
    padding: 20px; } }
.modaal-wrapper .modaal-content {
  background: #fff;
  border-radius: clamp(7.5px, 1.0714285714vw, 15px); }
.modaal-wrapper .sttl {
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 16px;
  border-bottom: 4px solid #FFA100; }
  @media (max-width: 999px) {
    .modaal-wrapper .sttl {
      font-size: 17px;
      font-weight: bold;
      padding-bottom: 10px;
      margin-bottom: 10px;
      border-bottom: 2px solid #FFA100; } }
.modaal-wrapper .name {
  text-align: right;
  background: #FFA100;
  color: #fff;
  width: max-content;
  margin: 0 0 16px auto;
  padding: 0 14px;
  border-radius: 999px;
  font-weight: bold; }
  @media (max-width: 999px) {
    .modaal-wrapper .name {
      font-size: 12px;
      margin-bottom: 10px; } }
.modaal-wrapper .stxtBox {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 999px) {
    .modaal-wrapper .stxtBox {
      flex-direction: column-reverse; } }
.modaal-wrapper .stxt {
  width: 45%;
  font-size: 16px;
  margin-right: 5%; }
  @media (max-width: 999px) {
    .modaal-wrapper .stxt {
      width: 100%;
      font-size: 13.5px; } }
.modaal-wrapper .stxt span {
  display: block;
  text-align: right; }
.modaal-wrapper .stxtBox img {
  width: 50%;
  height: 100%; }
  @media (max-width: 999px) {
    .modaal-wrapper .stxtBox img {
      width: 100%;
      margin-bottom: 10px; } }

/* モーダルコンテンツのスクロール部分をカスタマイズ */
@media (max-width: 999px) {
  .custom-modaal .modaal-content-container {
    max-height: 80vh;
    /* モーダルの高さを制限 */
    overflow-y: auto;
    /* 縦方向にスクロールを許可 */ } }
/* 
---------------------------------------
home05
---------------------------------------
*/
#home05 {
  margin-top: 155px; }
  @media (max-width: 999px) {
    #home05 {
      margin-top: 60px; } }

#home05 .ttlBox {
  margin-bottom: 70px; }
  @media (max-width: 999px) {
    #home05 .ttlBox {
      margin-bottom: 41px; } }

#home05 .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  line-height: 1; }
  @media (max-width: 999px) {
    #home05 .sttl {
      font-size: 40px; } }
  #home05 .sttl span {
    color: #87399F; }

#home05 .ttlDeco {
  text-align: center;
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home05 .ttlDeco {
      font-size: 14px; } }

#home05 .stxt {
  text-align: center;
  margin-bottom: 123px; }
  #home05 .stxt span.mark {
    font-family: Noto Sans JP, sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    background-image: linear-gradient(transparent 1.1em, #CEE4F8 0, #CEE4F8 calc(1.1em + 12px), transparent 0); }
  @media (max-width: 999px) {
    #home05 .stxt {
      text-align: justify;
      margin-bottom: 109px; } }

#home05 .courses {
  position: relative;
  display: flex;
  position: relative;
  width: 98%; }
  @media (max-width: 999px) {
    #home05 .courses {
      flex-direction: column;
      width: 100%; } }

#home05 .courses_sp {
  position: relative; }

#home05 .courses_sp .bubble {
  position: absolute;
  width: 35.1%;
  top: -106px;
  z-index: 3 !important;
  -webkit-z-index: 3 !important;
  left: -16px; }

#home05 .courses_sp .course_img {
  position: relative;
  z-index: 0; }

#home05 .courses .box {
  border-radius: 0 3px 3px 0; }

#home05 .courses .box {
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center; }

#home05 .courses .box1 {
  background: #547DCE;
  width: 23.53%;
  padding: 41px 1.9% 35px 3.9%;
  border-radius: 10px 3px 3px 10px; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home05 .courses .box1 {
      padding: 41px 1.9% 35px 2.9%; } }
  @media (max-width: 999px) {
    #home05 .courses .box1 {
      width: 100%;
      border-radius: 10px 10px 3px 3px; } }

#home05 .courses .box2 {
  background: #0BAE55;
  width: 24.64%;
  padding: 41px 1.9% 35px 5.4%; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home05 .courses .box2 {
      padding: 41px 0% 35px 3.9%; } }
  @media (max-width: 999px) {
    #home05 .courses .box2 {
      width: 100%; } }

#home05 .courses .box3 {
  background: #DB3F3F;
  width: 23.96%;
  padding: 41px 1.9% 35px 6.2%; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home05 .courses .box3 {
      padding: 41px 0% 35px 4.4%; } }
  @media (max-width: 999px) {
    #home05 .courses .box3 {
      width: 100%; } }

#home05 .courses .box4 {
  background: #F19000;
  width: 28.61%;
  padding: 41px 1.9% 34px 5.5%; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home05 .courses .box4 {
      padding: 41px 0% 34px 3.8%; } }
  @media (max-width: 999px) {
    #home05 .courses .box4 {
      width: 100%; } }

#home05 .courses .box:after {
  position: absolute;
  content: '';
  z-index: 3;
  bottom: 0;
  right: -51px;
  width: 0px;
  border-right: 26px solid transparent;
  border-bottom: 103px solid transparent;
  border-top: 103px solid transparent; }
  @media (max-width: 999px) {
    #home05 .courses .box:after {
      border-right: 50px solid transparent;
      border-bottom: 23px solid transparent;
      border-left: 50px solid #547DCE; } }

#home05 .courses .box1:after {
  border-left: 26px solid #547DCE; }
  @media (max-width: 999px) {
    #home05 .courses .box1:after {
      border-top: 26px solid #547DCE;
      border-left: inherit; } }

#home05 .courses .box2:after {
  border-left: 26px solid #0BAE55; }

#home05 .courses .box3:after {
  border-left: 26px solid #DB3F3F; }

#home05 .courses .box4:after {
  border-left: 26px solid #F19000; }

#home05 .courses .bubble {
  position: absolute;
  top: -103px;
  left: -44px; }

#home05 .courses .bubble .content {
  position: relative;
  background: #FFCC26;
  border-radius: 50%;
  width: 122px;
  height: 122px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  text-align: center;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }

#home05 .courses .bubble .content::after {
  content: '';
  position: absolute;
  bottom: -21px;
  right: -11px;
  width: 0px;
  border-right: 27px solid transparent;
  border-bottom: 17px solid transparent;
  border-top: 17px solid transparent;
  border-left: 25px solid #FFCC26;
  transform: rotateZ(56deg); }

#home05 .courses .box .circle {
  background-color: #fff;
  font-size: 20px;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  margin-bottom: 10px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  white-space: nowrap; }

#home05 .courses .box1 .circle {
  color: #1C3EA6; }

#home05 .courses .box2 .circle {
  color: #0BAE55; }

#home05 .courses .box3 .circle {
  color: #DB3F3F; }

#home05 .courses .box4 .circle {
  color: #F19000; }

#home05 .courses .box .lead {
  font-size: 20px;
  color: #fff;
  margin-bottom: 19px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  white-space: nowrap; }

#home05 .courses .box .period {
  font-size: 16px;
  color: #fff;
  white-space: nowrap; }

#home05 .trial_course .catch {
  position: relative;
  text-align: center;
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  width: fit-content;
  margin: 98px auto 17px; }
  @media (max-width: 999px) {
    #home05 .trial_course .catch {
      margin: 40px auto 13px; } }

#home05 .trial_course .catch:before,
#home05 .trial_course .catch:after {
  position: absolute;
  content: '';
  width: 2px;
  height: 23px;
  background: #333333; }

#home05 .trial_course .catch:before {
  ottom: 0;
  left: -11.2px;
  transform: rotateZ(150deg); }

#home05 .trial_course .catch:after {
  ottom: 0;
  right: -11.2px;
  transform: rotateZ(30deg); }

@media (min-width: 1000px) {
  #home05 .w920 {
    max-width: 807px;
    width: 90%;
    margin: 0 auto; } }

#home05 .trial {
  display: flex;
  background: #FFCC66;
  border-radius: clamp(10px, 1.4285714286vw, 20px); }

#home05 .trial .leftBox {
  position: relative;
  background: #FFA329;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.9% 2.9% 1.9% 4.2%;
  border-radius: clamp(10px, 1.4285714286vw, 20px) clamp(0px, 0vw, 0px) clamp(0px, 0vw, 0px) clamp(10px, 1.4285714286vw, 20px); }

#home05 .trial .leftBox:after {
  position: absolute;
  content: '';
  z-index: 3;
  bottom: 0;
  right: -59px;
  width: 0px;
  border-right: 26px solid transparent;
  border-bottom: 67px solid transparent;
  border-top: 67px solid transparent;
  border-left: 35px solid #FFA329; }
  @media screen and (max-width: 1116px) and (min-width: 1000px) {
    #home05 .trial .leftBox:after {
      border-bottom: 92px solid transparent;
      border-top: 92px solid transparent; } }

#home05 .trial_course {
  position: relative; }

#home05 .circle_bubble {
  position: absolute;
  background: #FFCC26;
  border-radius: 50%;
  width: 122px;
  height: 122px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  text-align: center;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  top: -55px;
  left: 150px; }

#home05 .circle_bubble::after {
  content: '';
  position: absolute;
  bottom: -21px;
  right: -11px;
  width: 0px;
  border-right: 27px solid transparent;
  border-bottom: 17px solid transparent;
  border-top: 17px solid transparent;
  border-left: 25px solid #FFCC26;
  transform: rotateZ(56deg); }

#home05 .couse_name {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 68.7%; }

#home05 .couse_name .name {
  background-color: #fff;
  font-size: 20px;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  width: 100%;
  text-align: center;
  margin-bottom: 10px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  color: #FFA329; }

#home05 .couse_name .prepare {
  font-size: 20px;
  color: #fff;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }

#home05 .trial .rightBox {
  background: #FFCC66;
  width: 50%;
  border-radius: 0 10px 10px 0;
  padding: 2.9% 4.9% 2.9% 9.8%; }

#home05 .trial .rightBox ul li {
  position: relative;
  font-size: 16px;
  white-space: nowrap;
  display: flex;
  align-items: center; }

#home05 .trial .rightBox ul li:before {
  position: absolute;
  font-family: FontAwesome;
  content: "\f111";
  color: #FFA329;
  font-size: 10px;
  padding-right: 0.8rem;
  left: -14px; }

#home05 .trial .rightBox ul li:last-child {
  margin-bottom: 0; }

#home05 .message {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1076px;
  width: 90%;
  margin: 59px auto 0; }

#home05 .message .bubble {
  position: relative;
  background: #F2F3F4;
  border-radius: clamp(45px, 6.4285714286vw, 90px);
  display: flex;
  width: 34%;
  align-items: center;
  justify-content: center;
  padding: 0 0;
  height: 144px; }
  @media screen and (max-width: 1249px) and (min-width: 1000px) {
    #home05 .message .bubble {
      padding: 0 0; } }

#home05 .message .bubble:after {
  position: absolute;
  content: '';
  z-index: 3;
  top: 88px;
  right: -59px;
  width: 0px;
  border-right: 26px solid transparent;
  border-bottom: 18px solid transparent;
  border-top: 18px solid transparent;
  border-left: 53px solid #F2F3F4; }

#home05 .message .bubble1:after {
  transform: rotateZ(14deg);
  top: 88px;
  right: -59px; }

#home05 .message .bubble2:after {
  top: 88px;
  left: -60px;
  transform: rotateZ(161deg); }

#home05 .message .bubble p {
  font-size: 16px;
  text-align: center;
  white-wrap: nowrap;
  line-height: 1.5; }
  #home05 .message .bubble p span {
    font-size: 14px; }

#home05 .message img {
  width: 16%; }

#home05 .message_sp {
  position: relative; }

#home05 .message_sp .bubble1 {
  position: absolute;
  width: 66%;
  top: 50px; }

#home05 .message_sp .bubble2 {
  position: absolute;
  width: 66%;
  top: 178.9px; }

#home05 .message_sp .character {
  width: 29%;
  text-align: right;
  display: flex;
  justify-content: stretch;
  padding: 115px 0;
  margin: 0 0 0 auto; }

#home05 .btn {
  display: block;
  width: 440px;
  margin: 54px auto 0;
  text-align: center;
  border-radius: clamp(12.5px, 1.7857142857vw, 25px);
  box-shadow: 4px 4px 0 0 #0e7bdb;
  transform: translateY(-4px);
  transition: 0.3s all; }
  @media (max-width: 999px) {
    #home05 .btn {
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      width: 100%;
      margin: 0 auto 0; } }

#home05 .btn:hover {
  box-shadow: 0 0 0 0 #005400;
  transform: translateY(-2px); }

#home05 .btn p {
  background: #fff;
  border: 4px solid #0E7BDB;
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  color: #0e7bdb;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  padding: 20px;
  white-space: nowrap; }
  @media (max-width: 999px) {
    #home05 .btn p {
      font-size: 16px;
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#home05 .btn:hover p {
  background: #0e7bdb;
  color: #fff; }

/* 
---------------------------------------
home06
---------------------------------------
*/
#home06 {
  position: relative;
  margin-top: 161px;
  background: #F2F3F4;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  padding: 158px 0 160px; }
  @media (max-width: 999px) {
    #home06 {
      margin-top: 74px;
      border-radius: 0px;
      padding: 69px 0 70px;
      width: 100%;
      max-width: none; } }

#home06 .orange {
  position: absolute;
  bottom: 53px;
  left: 57px;
  width: 89px;
  height: 87px; }
  @media (max-width: 999px) {
    #home06 .orange {
      bottom: -11px;
      left: 7px;
      width: 43px;
      height: 42px; } }

#home06 .yellow {
  position: absolute;
  top: -24px;
  right: 54px;
  width: 92px;
  height: 75px; }
  @media (max-width: 999px) {
    #home06 .yellow {
      top: -14px;
      right: 20px;
      width: 41px;
      height: 34px; } }

#home06 .block1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 44.4%; }
  @media (max-width: 999px) {
    #home06 .block1 {
      width: 65%; } }

#home06 .block2 {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 30.4%; }
  @media (max-width: 999px) {
    #home06 .block2 {
      width: 44.3%;
      bottom: -9px; } }

#home06 .ttlBox {
  position: relative;
  z-index: 2;
  margin-bottom: 60px; }
  @media (max-width: 999px) {
    #home06 .ttlBox {
      margin-bottom: 30px; } }

#home06 .ttlBox .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  line-height: 1; }
  #home06 .ttlBox .sttl span {
    color: #2B9A33; }
  @media (max-width: 999px) {
    #home06 .ttlBox .sttl {
      font-size: 40px; } }

#home06 .ttlBox .ttlDeco {
  text-align: center;
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home06 .ttlBox .ttlDeco {
      font-size: 14px; } }

#home06 .btn2 {
  position: relative;
  z-index: 5;
  display: block;
  margin: 0 auto;
  text-align: center;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  box-shadow: 6px 6px 0 0 #0E7BDB;
  transform: translateY(-4px);
  transition: 0.3s all; }
  @media (max-width: 999px) {
    #home06 .btn2 {
      margin: 0 auto;
      border-radius: clamp(12.5px, 1.7857142857vw, 25px);
      width: 90%;
      max-width: 375px; } }

#home06 .btn2:hover {
  box-shadow: 0 0 0 0 #0E7BDB;
  transform: translateY(-2px); }

#home06 .btn2 .outer {
  position: relative;
  background: #fff;
  border: 4px solid #0E7BDB;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  color: #0e7bdb;
  overflow: hidden; }
  @media (max-width: 999px) {
    #home06 .btn2 .outer {
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#home06 .btn2 .circle {
  background-color: #0E7BDB;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 30px; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home06 .btn2 .circle {
      width: 60px;
      height: 60px;
      margin-left: 20px; } }
  @media (max-width: 999px) {
    #home06 .btn2 .circle {
      width: 35px;
      height: 35px;
      margin-left: 10px; } }

#home06 .btn2 .circle i {
  font-size: 20px;
  color: #fff; }
  @media (max-width: 999px) {
    #home06 .btn2 .circle i {
      font-size: 10px; } }

#home06 .btn2 .outer img {
  display: block; }

#home06 .btn2 .txtBox {
  position: absolute;
  z-index: 6;
  right: 9%;
  top: 55%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateX(-50%); }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home06 .btn2 .txtBox {
      right: 5%; } }
  @media (max-width: 999px) {
    #home06 .btn2 .txtBox {
      width: 100%;
      top: 77%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -moz-transform: translateX(-50%, -50%); } }

#home06 .btn2 .txtBox .TrialTxt1 {
  font-size: 48px;
  margin-bottom: 10px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home06 .btn2 .txtBox .TrialTxt1 {
      font-size: 44px;
      margin-bottom: 10px; } }
  @media (max-width: 999px) {
    #home06 .btn2 .txtBox .TrialTxt1 {
      font-size: 32px;
      margin-bottom: 10px; } }

#home06 .btn2 .txtBox .TrialTxt1 span {
  color: #2B9A33; }

#home06 .btn2 .txtBox .TrialTxt2 {
  display: flex;
  justify-content: center;
  align-items: center; }

#home06 .btn2 .txtBox .TrialTxt2 p {
  font-size: 20px;
  color: #0E7BDB;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media screen and (max-width: 1300px) and (min-width: 1000px) {
    #home06 .btn2 .txtBox .TrialTxt2 p {
      font-size: 16px; } }
  @media (max-width: 999px) {
    #home06 .btn2 .txtBox .TrialTxt2 p {
      font-size: 16px; } }

#home06 .btn2 .txtBox .TrialTxt3 {
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-bottom: 16px; }
  @media (max-width: 999px) {
    #home06 .btn2 .txtBox .TrialTxt3 {
      font-size: 12px;
      margin-bottom: 10px; } }

#home06 .swiper {
  width: 95%;
  margin: 0  0 80px auto;
  overflow: hidden; }
  @media (max-width: 999px) {
    #home06 .swiper {
      margin: 0  0 30px auto; } }
#home06 .swiper-button-next,
#home06 .swiper-button-prev {
  top: 48px;
  z-index: 6; }
  @media (max-width: 999px) {
    #home06 .swiper-button-next,
    #home06 .swiper-button-prev {
      top: 124px; } }
#home06 .swiper-button-next {
  right: 54.8%; }
  @media screen and (max-width: 1550px) and (min-width: 1251px) {
    #home06 .swiper-button-next {
      right: 53.8%; } }
  @media screen and (max-width: 1250px) and (min-width: 1100px) {
    #home06 .swiper-button-next {
      right: 52.8%; } }
  @media screen and (max-width: 1099px) and (min-width: 1000px) {
    #home06 .swiper-button-next {
      right: 51.8%; } }
  @media screen and (max-width: 1000px) and (min-width: 843px) {
    #home06 .swiper-button-next {
      left: 14%; } }
  @media screen and (max-width: 842px) and (min-width: 500px) {
    #home06 .swiper-button-next {
      left: 18%; } }
  @media screen and (max-width: 499px) {
    #home06 .swiper-button-next {
      right: auto;
      left: 24%; } }
#home06 .swiper-button-prev {
  left: auto;
  right: 60%; }
  @media (max-width: 999px) {
    #home06 .swiper-button-prev {
      right: auto;
      left: 7%; } }
#home06 .swiper-button-next::after {
  font-family: FontAwesome;
  content: "\f061";
  background-color: #FFA100;
  color: #fff;
  border: 4px solid #FFA100;
  font-size: 20px;
  border-radius: 50%;
  padding: 23px; }
  @media (max-width: 999px) {
    #home06 .swiper-button-next::after {
      font-size: 14px;
      padding: 18px; } }
#home06 .swiper-button-next:hover::after,
#home06 .swiper-button-prev:hover::after {
  background-color: #fff;
  color: #FFA100; }
#home06 .swiper-button-prev::after {
  font-family: FontAwesome;
  content: "\f060";
  color: #fff;
  background-color: #FFA100;
  border: 4px solid #FFA100;
  font-size: 20px;
  border-radius: 50%;
  padding: 23px; }
  @media (max-width: 999px) {
    #home06 .swiper-button-prev::after {
      font-size: 14px;
      padding: 18px; } }
#home06 .swiper .picBox {
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  overflow: hidden;
  position: relative; }
#home06 .swiper .picBox img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s all; }
#home06 .swiper .picBox::before {
  content: "";
  display: block;
  padding-top: 66.67%; }
#home06 .swiper .picBox img:hover {
  transform: scale(1.07, 1.07);
  transition: 0.5s all; }
#home06 .swiper .txtBox {
  margin-top: 12px;
  border-bottom: #D6D6D6 1px solid; }
#home06 .swiper .txtBox .date {
  font-size: 12px;
  margin-bottom: 4px; }
#home06 .swiper .txtBox .blogTtl {
  font-size: 20px;
  line-height: 1.5;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-bottom: 4px; }
  @media (max-width: 999px) {
    #home06 .swiper .txtBox .blogTtl {
      font-size: 16px; } }
@media (min-width: 1000px) {
  #home06 .swiper .txtBox .blogTtl:hover {
    opacity: 0.7; } }
#home06 .swiper .txtBox .txt {
  font-size: 13px;
  padding-bottom: 8px; }
  @media (max-width: 999px) {
    #home06 .swiper .txtBox .txt {
      font-size: 12px; } }
#home06 .swiper .txtBox .txt a {
  display: block;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; }
  @media (max-width: 999px) {
    #home06 .swiper .txtBox .txt a {
      -webkit-line-clamp: 1; } }
#home06 .swiper .txtBox .txt p img {
  display: none; }
#home06 .swiper .school {
  font-size: 12px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  padding-top: 8px;
  color: #999999; }
  @media (max-width: 999px) {
    #home06 .swiper .school {
      padding-top: 11.5px; } }

/* 
---------------------------------------
home07
---------------------------------------
*/
#home07 {
  position: relative;
  margin-top: 170px; }
  @media (max-width: 999px) {
    #home07 {
      margin-top: 60px; } }

#home07 .ttlContainer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 90%;
  margin: 0 0 0 auto; }
  @media (max-width: 999px) {
    #home07 .ttlContainer {
      flex-direction: column;
      margin-bottom: 22px;
      width: 100%; } }

#home07 .swiper {
  width: 90%;
  margin: 0 0 0 auto;
  overflow: hidden; }
  @media (max-width: 999px) {
    #home07 .swiper {
      width: 95%;
      margin: 0 auto; } }

.swiper-button-next,
.swiper-button-prev {
  top: 48px;
  z-index: 6; }
  @media (max-width: 999px) {
    .swiper-button-next,
    .swiper-button-prev {
      top: 124px; } }

.swiper-button-next {
  right: 54.8%; }
  @media screen and (max-width: 1550px) and (min-width: 1251px) {
    .swiper-button-next {
      right: 53.8%; } }
  @media screen and (max-width: 1250px) and (min-width: 1100px) {
    .swiper-button-next {
      right: 52.8%; } }
  @media screen and (max-width: 1099px) and (min-width: 1000px) {
    .swiper-button-next {
      right: 51.8%; } }
  @media screen and (max-width: 1000px) and (min-width: 843px) {
    .swiper-button-next {
      left: 14%; } }
  @media screen and (max-width: 842px) and (min-width: 500px) {
    .swiper-button-next {
      left: 18%; } }
  @media screen and (max-width: 499px) {
    .swiper-button-next {
      right: auto;
      left: 24%; } }

.swiper-button-prev {
  left: auto;
  right: 60%; }
  @media (max-width: 999px) {
    .swiper-button-prev {
      right: auto;
      left: 7%; } }

.swiper-button-next::after {
  font-family: FontAwesome;
  content: "\f061";
  background-color: #FFA100;
  color: #fff;
  border: 4px solid #FFA100;
  font-size: 20px;
  border-radius: 50%;
  padding: 23px; }
  @media (max-width: 999px) {
    .swiper-button-next::after {
      font-size: 14px;
      padding: 18px; } }

.swiper-button-next:hover::after,
.swiper-button-prev:hover::after {
  background-color: #fff;
  color: #FFA100; }

.swiper-button-prev::after {
  font-family: FontAwesome;
  content: "\f060";
  color: #fff;
  background-color: #FFA100;
  border: 4px solid #FFA100;
  font-size: 20px;
  border-radius: 50%;
  padding: 23px; }
  @media (max-width: 999px) {
    .swiper-button-prev::after {
      font-size: 14px;
      padding: 18px; } }

#home07 .ttlBox {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  border-radius: 50%; }
  @media (max-width: 999px) {
    #home07 .ttlBox {
      flex-direction: column;
      margin-bottom: 30px; } }

#home07 .ttlBox .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-right: 27px; }
  @media (max-width: 999px) {
    #home07 .ttlBox .sttl {
      font-size: 40px;
      margin-right: 0px;
      line-height: 1; } }
  #home07 .ttlBox .sttl span {
    color: #87399F; }

#home07 .ttlBox .ttlDeco {
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home07 .ttlBox .ttlDeco {
      font-size: 14px;
      margin-right: 0px; } }

#home07 .swiper .picBox {
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  overflow: hidden;
  position: relative; }

#home07 .swiper .picBox img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s all; }

#home07 .swiper .picBox::before {
  content: "";
  display: block;
  padding-top: 66.67%; }

#home07 .swiper .picBox img:hover {
  transform: scale(1.07, 1.07);
  transition: 0.5s all; }

#home07 .swiper .txtBox {
  margin-top: 12px;
  border-bottom: #D6D6D6 1px solid; }

#home07 .swiper .txtBox .date {
  font-size: 12px;
  margin-bottom: 4px; }

#home07 .swiper .txtBox .blogTtl {
  font-size: 14px;
  line-height: 1.5;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-bottom: 4px; }

@media (min-width: 1000px) {
  #home07 .swiper .txtBox .blogTtl:hover {
    opacity: 0.7; } }

#home07 .swiper .txtBox .txt {
  font-size: 13px;
  padding-bottom: 8px; }
  @media (max-width: 999px) {
    #home07 .swiper .txtBox .txt {
      font-size: 12px; } }

#home07 .swiper .txtBox .txt a {
  display: block;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; }
  @media (max-width: 999px) {
    #home07 .swiper .txtBox .txt a {
      -webkit-line-clamp: 1; } }

#home07 .swiper .txtBox .txt p img {
  display: none; }

#home07 .swiper .school {
  font-size: 12px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  padding-top: 8px;
  color: #999999; }
  @media (max-width: 999px) {
    #home07 .swiper .school {
      padding-top: 11.5px; } }

#home07 .btn3 {
  display: block;
  background: #F2F3F4;
  width: fit-content;
  border-radius: 999px;
  padding: 1.1% 4.5% 1.1% 3%;
  display: flex;
  align-items: center;
  margin-right: 10%; }
  @media (max-width: 999px) {
    #home07 .btn3 {
      padding: 3.1% 8.5%;
      margin: 0 0 0 auto; } }

#home07 .btn3:hover {
  background: #333333;
  color: #fff; }

#home07 .btn3 .double {
  border-top: 2px solid #333333;
  border-bottom: 2px solid #333333;
  width: 14px;
  height: 6px;
  margin-right: 6px; }

#home07 .btn3:hover .double {
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff; }

#home07 .btn3 p {
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  font-size: 16px; }

#home07 .btn2 {
  position: relative;
  display: block;
  margin: 60px auto 120px;
  text-align: center;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  box-shadow: 6px 6px 0 0 #FFA100;
  transform: translateY(-4px);
  transition: 0.3s all; }
  @media (max-width: 999px) {
    #home07 .btn2 {
      margin: 20px auto 60px;
      border-radius: clamp(12.5px, 1.7857142857vw, 25px); } }

#home07 .btn2:hover {
  box-shadow: 0 0 0 0 #FFA100;
  transform: translateY(-2px); }

#home07 .btn2 .outer {
  position: relative;
  background: #fff;
  border: 4px solid #FFA100;
  border-radius: 50px;
  color: #0e7bdb;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  white-space: nowrap; }
  @media (max-width: 999px) {
    #home07 .btn2 .outer {
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#home07 .btn2 .circle {
  position: absolute;
  background-color: #FFA100;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  right: 4.2%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%); }
  @media (max-width: 999px) {
    #home07 .btn2 .circle {
      width: 35px;
      height: 35px; } }

#home07 .btn2 .circle i {
  font-size: 20px; }
  @media (max-width: 999px) {
    #home07 .btn2 .circle i {
      font-size: 10px; } }

#home07 .btn2 .outer img {
  display: block; }

#home07 .btn2 .txtBox {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%); }

#home07 .btn2 .txtBox .qanda {
  display: flex;
  align-items: center; }
  @media (max-width: 999px) {
    #home07 .btn2 .txtBox .qanda {
      flex-direction: column; } }

#home07 .btn2 .txtBox .qanda .en {
  font-size: 70px;
  margin-right: 12%;
  white-space: nowrap;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home07 .btn2 .txtBox .qanda .en {
      font-size: 40px;
      margin-right: 0;
      margin-bottom: 10px; } }
  #home07 .btn2 .txtBox .qanda .en span {
    font-size: 50px; }
    @media (max-width: 999px) {
      #home07 .btn2 .txtBox .qanda .en span {
        font-size: 30px; } }

#home07 .btn2 .txtBox .qanda .jp {
  font-size: 16px;
  white-space: nowrap;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (min-width: 1000px) {
    #home07 .btn2 .txtBox .qanda .jp {
      margin-bottom: 10px; } }
  @media (max-width: 999px) {
    #home07 .btn2 .txtBox .qanda .jp {
      font-size: 14px; } }

/* 
---------------------------------------
home08
---------------------------------------
*/
#home08 {
  margin-top: 147px; }
  @media (max-width: 999px) {
    #home08 {
      margin-top: 80px; } }

#home08 .boxs {
  display: flex; }
  @media (max-width: 999px) {
    #home08 .boxs {
      flex-direction: column; } }

#home08 .boxs .leftBox {
  width: 29%; }
  @media (max-width: 999px) {
    #home08 .boxs .leftBox {
      width: 100%;
      display: flex;
      align-items: flex-start;
      justify-content: space-between; } }

#home08 .boxs .rightBox {
  width: 71%; }
  @media (max-width: 999px) {
    #home08 .boxs .rightBox {
      width: 100%; } }

#home08 .ttlBox {
  position: relative;
  z-index: 2;
  margin-bottom: 42px; }
  @media (max-width: 999px) {
    #home08 .ttlBox {
      margin-bottom: 32px; } }

#home08 .ttlBox .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  line-height: 1; }
  @media (max-width: 999px) {
    #home08 .ttlBox .sttl {
      font-size: 40px; } }
  #home08 .ttlBox .sttl span {
    color: #2B9A33; }

#home08 .ttlBox .ttlDeco {
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #home08 .ttlBox .ttlDeco {
      font-size: 14px;
      margin-right: 0px; } }

#home08 .btn3 {
  display: block;
  background: #F2F3F4;
  width: fit-content;
  border-radius: 999px;
  padding: 4% 11%;
  display: flex;
  align-items: center; }
  @media (max-width: 999px) {
    #home08 .btn3 {
      padding: 4.2% 6.5%; } }

#home08 .btn3:hover {
  background: #333333;
  color: #fff; }

#home08 .btn3:hover .double {
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff; }

#home08 .btn3 .double {
  border-top: 2px solid #333333;
  border-bottom: 2px solid #333333;
  width: 14px;
  height: 6px;
  margin-right: 6px; }

#home08 .btn3 p {
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  font-size: 16px; }
  @media (max-width: 999px) {
    #home08 .btn3 p {
      font-size: 14px; } }

#home08 .boxs .rightBox a {
  display: block; }

#home08 .boxs .rightBox li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: #F2F3F4 2px solid; }
  @media (max-width: 999px) {
    #home08 .boxs .rightBox li {
      margin-bottom: 10px;
      padding-bottom: 10px; } }

#home08 .boxs .rightBox li:last-child {
  margin-bottom: 23px; }
  @media (max-width: 999px) {
    #home08 .boxs .rightBox li:last-child {
      margin-bottom: 0; } }

#home08 .boxs .rightBox li a .date {
  font-size: 16px; }
  @media (max-width: 999px) {
    #home08 .boxs .rightBox li a .date {
      font-size: 12px;
      font-weight: 900;
      color: #666; } }

#home08 .boxs .rightBox li a .b_ttl {
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  width: 100%; }
  @media (max-width: 999px) {
    #home08 .boxs .rightBox li a .b_ttl {
      font-size: 14px;
      line-height: 1.5; } }

@media (min-width: 1000px) {
  #home08 .boxs .rightBox li a:hover .b_ttl {
    opacity: 0.7; } }

/* 
---------------------------------------
under_school02
---------------------------------------
*/
#under_school02 {
  margin-top: 243px;
  padding-bottom: 200px;
  background: #FFA100;
  position: relative; }
  @media (max-width: 999px) {
    #under_school02 {
      margin-top: 80px;
      padding-top: 28px;
      padding-bottom: 90px; } }

#under_school02 .bg {
  position: absolute; }

#under_school02 .bg1 {
  top: -80px; }
  @media (max-width: 999px) {
    #under_school02 .bg1 {
      top: -15px;
      width: 100%; } }

#under_school02 .bg2 {
  bottom: -68px; }
  @media (max-width: 999px) {
    #under_school02 .bg2 {
      bottom: -8px; } }

#under_school02 .ttlBox {
  text-align: center;
  margin-bottom: 66px; }
  @media (max-width: 999px) {
    #under_school02 .ttlBox {
      margin-bottom: 49px; } }

#under_school02 .ttlBox img {
  width: 8.6%;
  margin-bottom: 21px; }
  @media (max-width: 999px) {
    #under_school02 .ttlBox img {
      margin-bottom: 11.9px;
      width: 23.1%; } }

#under_school02 .ttlBox h3 {
  font-size: 48px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  color: #fff;
  margin-bottom: 20px; }
  @media (max-width: 999px) {
    #under_school02 .ttlBox h3 {
      font-size: 24px; } }

#under_school02 .divide {
  display: flex;
  justify-content: flex-start;
  background: #fff;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  padding: 23px 4.2%;
  margin-bottom: 42px;
  flex-wrap: wrap; }
  @media (max-width: 999px) {
    #under_school02 .divide {
      flex-wrap: wrap;
      margin-bottom: 20px;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      padding: 15px 3%;
      justify-content: flex-start; } }

#under_school02 .divide .devide_child {
  display: flex;
  align-items: center;
  width: 20%;
  margin-bottom: 8px; }
  @media (max-width: 999px) {
    #under_school02 .divide .devide_child {
      width: 50%;
      margin-bottom: 0; } }

#under_school02 .divide .devide_child:nth-child(n+6) {
  margin-bottom: 0; }

#under_school02 .divide .devide_grandson {
  border-radius: 4px;
  width: 20px;
  height: 20px;
  margin-right: 5px; }
  @media (max-width: 999px) {
    #under_school02 .divide .devide_grandson {
      width: 10px;
      height: 10px;
      margin-right: 2px; } }

#under_school02 .divide .devide_grandson.blue {
  background: #547DCE; }

#under_school02 .divide .devide_grandson.green {
  background: #0BAE55; }

#under_school02 .divide .devide_grandson.red {
  background: #DB3F3F; }

#under_school02 .divide .devide_grandson.orange {
  background: #F19000; }

#under_school02 .divide .devide_grandson.yellow {
  background: #FFB747; }

#under_school02 .divide .devide_grandson.gray {
  background: #59BFB3; }

#under_school02 .divide .devide_grandson.pink {
  background: #dbadff; }

#under_school02 .divide p {
  font-size: 14px; }
  @media (max-width: 999px) {
    #under_school02 .divide p {
      font-size: 12px; } }

#under_school02 .schedule_txt {
  color: #fff;
  font-size: 16px;
  text-align: center; }
  @media (max-width: 999px) {
    #under_school02 .schedule_txt {
      font-size: 16px; } }

#under_school02 .btn {
  display: block;
  width: 26.6%;
  margin: 0 auto;
  text-align: center;
  border-radius: clamp(12.5px, 1.7857142857vw, 25px);
  box-shadow: 4px 4px 0 0 #0e7bdb;
  transform: translateY(-4px);
  transition: 0.3s all;
  margin-top: 27px; }
  @media screen and (max-width: 1470px) and (min-width: 1000px) {
    #under_school02 .btn {
      width: 37.3%; } }
  @media (max-width: 999px) {
    #under_school02 .btn {
      width: 90%;
      position: relative;
      z-index: 3;
      font-size: 16px;
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      max-width: 375px; } }

#under_school02 .btn:hover {
  box-shadow: 0 0 0 0 #005400;
  transform: translateY(-2px); }

#under_school02 .btn p {
  background: #fff;
  border: 4px solid #0E7BDB;
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  color: #0e7bdb;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  padding: 20px;
  white-space: nowrap; }
  @media (max-width: 999px) {
    #under_school02 .btn p {
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#under_school02 .btn:hover p {
  background: #0e7bdb;
  color: #fff; }

#under_school02 .GoogleCalendar {
  margin-top: 40px;
  width: 90%;
  height: 100%; }
  @media (max-width: 999px) {
    #under_school02 .GoogleCalendar {
      width: 90%; } }

#under_school02 .GoogleCalendar iframe {
  height: 862px;
  width: 100%; }
  @media (max-width: 999px) {
    #under_school02 .GoogleCalendar iframe {
      height: 340px; } }

/* 
---------------------------------------
EVENT
---------------------------------------
*/
#event {
  margin-top: 0;
  padding-bottom: 200px;
  background: #FFA100;
  position: relative;
  padding-top: 140px; }
  @media (max-width: 999px) {
    #event {
      margin-top: 0;
      padding-top: 60px;
      padding-bottom: 80px; } }

#event .bg {
  position: absolute; }

#event .bg1 {
  top: -60px; }
  @media (max-width: 999px) {
    #event .bg1 {
      top: -15px;
      width: 100%; } }

#event .bg2 {
  bottom: -68px; }
  @media (max-width: 999px) {
    #event .bg2 {
      bottom: -8px; } }

#event .ttlContainer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 90%;
  margin: 0 0 40px auto; }
  @media (max-width: 999px) {
    #event .ttlContainer {
      flex-direction: column;
      margin-bottom: 22px;
      width: 100%; } }

#event .swiper {
  width: 90%;
  margin: 0 0 0 auto;
  overflow: hidden; }
  @media (max-width: 999px) {
    #event .swiper {
      width: 95%;
      margin: 0 0 0 auto; } }

#event .swiper-button {
  position: absolute;
  right: 50%;
  top: 176px; }
  @media (max-width: 999px) {
    #event .swiper-button {
      position: absolute;
      right: auto;
      top: 160px;
      left: 60px; } }

#event .swiper-button-next,
#event .swiper-button-prev {
  top: 0; }
  @media (max-width: 999px) {
    #event .swiper-button-next,
    #event .swiper-button-prev {
      top: 24px; } }

#event .swiper-button-next {
  left: 50px;
  right: auto; }
  @media (max-width: 999px) {
    #event .swiper-button-next {
      left: 30px; } }

#event .swiper-button-prev {
  left: auto;
  right: 0px; }

#event .swiper-button-next::after,
#event .swiper-button-prev::after {
  background-color: #fff;
  color: #FFA100;
  transition: all 0.6s; }

#event .swiper-button-next:hover::after,
#event .swiper-button-prev:hover::after {
  background-color: #FFA100;
  color: #fff;
  border: 4px solid #fff;
  transition: all 0.6s; }

#event .ttlBox {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  border-radius: 50%;
  line-height: 1; }
  @media (max-width: 999px) {
    #event .ttlBox {
      flex-direction: column;
      margin-bottom: 42px; } }

#event .ttlBox .sttl {
  font-size: 70px;
  font-family: Josefin Sans, sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  margin-right: 27px; }
  @media (max-width: 999px) {
    #event .ttlBox .sttl {
      font-size: 40px;
      margin-right: 0px;
      line-height: 1; } }
  #event .ttlBox .sttl span {
    color: #FFF12E; }

#event .ttlBox .ttlDeco {
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 999px) {
    #event .ttlBox .ttlDeco {
      font-size: 14px;
      margin-right: 0px; } }

#event .swiper .picBox {
  border-radius: clamp(10px, 1.4285714286vw, 20px);
  overflow: hidden;
  aspect-ratio: 210/298; }
  @media (max-width: 999px) {
    #event .swiper .picBox {
      border-radius: clamp(5px, 0.7142857143vw, 10px); } }

#event .swiper .picBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s all; }

#event .swiper .picBox img:hover {
  transform: scale(1.07, 1.07);
  transition: 0.5s all; }

#event .swiper .txtBox {
  margin-top: 12px; }

#event .swiper .txtBox .date {
  font-size: 12px;
  border: 1px solid;
  width: max-content;
  padding: 2px 20px;
  border-radius: 999px;
  color: #0E7BDB;
  font-weight: bold; }

#event .swiper .txtBox .date.end {
  background: #EAEAEA;
  color: #333;
  border: none;
  font-weight: bold; }

#event .swiper .tagBox {
  display: flex;
  align-items: center;
  margin-bottom: 8px; }

#event .swiper .tagBox .event-tags li {
  font-size: clamp(13px, 1vw, 16px);
  color: #666;
  margin-left: 10px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased; }

#event .swiper .txtBox .blogTtl {
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5; }

#event .swiper dl {
  display: flex;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 10px 0; }

#event .swiper dt {
  font-size: 14px;
  font-weight: bold;
  margin-right: 20px;
  width: 30%;
  margin-right: 5%; }

#event .swiper dd {
  font-size: 14px;
  width: 65%; }

@media (min-width: 1000px) {
  #event .swiper .txtBox .blogTtl:hover {
    opacity: 0.7; } }

#event .swiper .txtBox .txt {
  font-size: 13px;
  padding-bottom: 8px; }
  @media (max-width: 999px) {
    #event .swiper .txtBox .txt {
      font-size: 12px; } }

#event .swiper .txtBox .txt a {
  display: block;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; }
  @media (max-width: 999px) {
    #event .swiper .txtBox .txt a {
      -webkit-line-clamp: 1; } }

#event .swiper .txtBox .txt p img {
  display: none; }

#event .swiper-slide {
  background: #fff;
  padding: 24px;
  border-radius: clamp(15px, 2.1428571429vw, 30px); }
  @media (max-width: 999px) {
    #event .swiper-slide {
      border-radius: clamp(10px, 1.4285714286vw, 20px);
      padding: 12px; } }

#event .btn3 {
  display: block;
  background: #F2F3F4;
  width: fit-content;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  padding: 1.1% 4.5% 1.1% 3%;
  display: flex;
  align-items: center;
  margin-right: 10%; }
  @media (max-width: 999px) {
    #event .btn3 {
      border-radius: clamp(25px, 3.5714285714vw, 50px);
      padding: 3.1% 8.5%;
      margin: 0 3% 0 auto; } }

#event .btn3:hover {
  background: #333333;
  color: #fff; }

#event .btn3 .double {
  border-top: 2px solid #333333;
  border-bottom: 2px solid #333333;
  width: 14px;
  height: 6px;
  margin-right: 6px; }

#event .btn3:hover .double {
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff; }

#event .btn3 p {
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  font-size: 16px; }

#event .btn2 {
  position: relative;
  display: block;
  margin: 141px auto 0;
  text-align: center;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  box-shadow: 6px 6px 0 0 #FFA100;
  transform: translateY(-4px);
  transition: 0.3s all; }
  @media (max-width: 999px) {
    #event .btn2 {
      margin: 80px auto 0;
      border-radius: clamp(12.5px, 1.7857142857vw, 25px); } }

#event .btn2:hover {
  box-shadow: 0 0 0 0 #FFA100;
  transform: translateY(-2px); }

#event .btn2 .outer {
  position: relative;
  background: #fff;
  border: 4px solid #FFA100;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  color: #0e7bdb;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  white-space: nowrap; }
  @media (max-width: 999px) {
    #event .btn2 .outer {
      border-radius: clamp(10px, 1.4285714286vw, 20px); } }

#event .btn2 .circle {
  position: absolute;
  background-color: #FFA100;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  right: 4.2%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%); }
  @media (max-width: 999px) {
    #event .btn2 .circle {
      width: 35px;
      height: 35px; } }

#event .btn2 .circle i {
  font-size: 20px; }
  @media (max-width: 999px) {
    #event .btn2 .circle i {
      font-size: 10px; } }

#event .btn2 .outer img {
  display: block; }

#event .btn2 .txtBox {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%); }

#event .DetailBtn {
  position: relative;
  display: block;
  width: 100%;
  border-radius: clamp(25px, 3.5714285714vw, 50px);
  text-align: center;
  padding: 12px 0;
  background: #0E7BDB;
  color: #fff;
  font-size: 16px;
  font-family: Noto Sans JP, sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  border: 4px solid;
  max-width: 320px;
  margin: 12px auto 0; }
  @media (max-width: 999px) {
    #event .DetailBtn {
      width: 80%;
      font-size: 14px; } }

#event .DetailBtn:before {
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateX(-50%);
  content: "\f061";
  font-family: FontAwesome;
  font-size: 20px; }

#event .DetailBtn:hover {
  background: #fff;
  color: #0E7BDB; }

#event .DetailBtn:before:hover {
  color: #0E7BDB; }

/*#event .DetailBtn.event{
    background: #FFF12E;
    color: #333333;
    border: 4px solid #FFF12E;
}
#event .DetailBtn.event:before {
    color: #333333;
}*/
