@charset "utf-8";

img {
  width: 100%;
  height: auto;
}
.w1000 {
  width: 1000px;
  margin: 0 auto;
}
#main {
  margin-top: 134px;
}        
.breadcrumb {
  margin: 24px auto;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  #main {
    margin-top: 50px;
  }        
}

/*------------------------------------------------
lcl-txtbasic
------------------------------------------------*/
.lcl-txtbasic {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
}

/*------------------------------------------------
lcl-txtbasic-bold
------------------------------------------------*/
.lcl-txtbasic-bold {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
}

/*------------------------------------------------
lcl-txtsmall
------------------------------------------------*/
.lcl-txtsmall {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-txtbasic {
    font-size: 13px;
  }
  .lcl-txtsmall {
    font-size: 11px;
  }
}
.c-green {
  color: #03A877;
}

/*------------------------------------------------
lcl-txtlink
------------------------------------------------*/
.lcl-txtlink {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0 5px;
}

/*------------------------------------------------
lcl-list
------------------------------------------------*/
.lcl-list__item {
  padding-left: 14px;
  position: relative;
}
.lcl-list__item:before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 5px;
  height: 5px;
  background: #03A877;
  border-radius: 100vmax;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-list__item {
    padding-left: 24px;
  }
  .lcl-list__item:before {
    top: 7px;
    left: 10px;
  }
}

/*------------------------------------------------
lcl-ttl01
------------------------------------------------*/
.lcl-ttl01 {
  color:#FFF;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  border-radius: 5px;
  padding: 10px 30px;
  background: var(--grad-green-01, linear-gradient(90deg, #1CC266 0%, #00CFB4 100%));
  position: relative;
}
.lcl-ttl01:before {
  content: "";
  width: 18px;
  height: 53px;
  background: url(../img/ico_01.png) no-repeat center / cover;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
}

/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
}

/*------------------------------------------------
lcl-ttl02
------------------------------------------------*/
.lcl-ttl02 {
  color: #03A877;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  border-bottom: 2px solid #D0E4D8;
  padding-bottom: 10px;
  padding-left: 25px;
  margin-bottom: 20px;
  position: relative;
}
.lcl-ttl02:before {
  content: "";
  width: 20px;
  height: 25px;
  background: url(../img/ico_02.png) no-repeat center / cover;
  position: absolute;
  left: 0;
  bottom: 10px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .w1000 {
    width: 100%;
    padding: 0 15px;
  }
  .lcl-ttl01 {
    font-size: 16px;
    border-radius: 5px;
    padding: 10px 25px;
  }
  .lcl-ttl01:before {
    width: 15px;
    height: 44px;
  }
}

/*------------------------------------------------
lcl-hero
------------------------------------------------*/
.lcl-hero {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 240px;
  overflow: hidden;
  position: relative;
}
.lcl-hero__pic {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.lcl-hero__img {
  object-fit: cover;
}
.lcl-hero__ttl {
  color:#fff;
  text-align: center;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
}
.lcl-hero__ttl:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  width: 50px;
  height: 5px;
  background-color: #FFFB52;
  margin-inline: auto;
}

/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-hero {
    height: 200px;
  }
  .lcl-hero__ttl {
    font-size: 22px;
  }
}

/*------------------------------------------------
lcl-navi
------------------------------------------------*/
.lcl-navi{
  width: 1000px;
  margin-inline: auto;
  padding: 40px 0 55px;
}
.lcl-navi__block {
  margin-bottom: 25px;
}
.lcl-navi-block__ttl{
  color: #03A877;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 10px;
  padding: 2px 0;
  border-bottom: 1px solid rgba(3,168,119,0.2);
  width: 100%;
  display: flex;
  position: relative;
}
.lcl-navi-block__ttl::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 15px;
  height: 1px;
  background-color: #03A877;
}
.lcl-navi-block__ttl::before{
	content: '\f13a';
	font-family: fontawesome;
	margin-right: 5px;
}
.lcl-navi-block__list{
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 3px 45px;
}
.lcl-navi-block-list__link{
  color: #03A877;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
  white-space: nowrap;
}
.lcl-navi-block-list__link::before{
	content: '\f13a';
	font-family: fontawesome;
	margin-right: 5px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-navi{
    width: 100%;
    padding: 30px 15px 40px;
  }
  .lcl-navi__block {
    margin-bottom: 20px;
  }
  .lcl-navi-block__ttl{
    font-size: 14px;
  }
  .lcl-navi-block__list{
    display: block;
  }
  .lcl-navi-block-list__item:not(:last-child) {
    margin-bottom: 3px;
  }
  .lcl-navi-block-list__link{
    font-size: 13px;
  }
}

/*------------------------------------------------
lcl-message
------------------------------------------------*/
.lcl-message{
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 80px;
}
.lcl-message__in{
  padding-top: 25px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
.lcl-message__fig{
  width: 420px;
}
.lcl-message__main{
  padding-left: 64px;
  flex: 1;
}
.lcl-message__txt:not(:last-child){
  margin-bottom: 30px;
}
.lcl-message__name{
  text-align: right;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-message{
    width: 100%;
    margin: 0 auto 60px;
    padding: 0 15px;
  }
  .lcl-message__in{
    padding-top: 15px;
    display: block;
  }
  .lcl-message__fig{
    width: 100%;
  }
  .lcl-message__main{
    padding: 10px 0 0;
  }
  .lcl-message__txt:not(:last-child){
    margin-bottom: 20px;
  }
}

/*------------------------------------------------
lcl-head
------------------------------------------------*/
.lcl-head {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  min-height: 190px;
  height: 14.6vw;
  overflow: hidden;
  margin-bottom: 60px;
}
.lcl-head__pic {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
}
.lcl-head__img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.lcl-head__ttl{
  color: #FFF;
  text-align: center;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
}
.lcl-head__ttl:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  width: 50px;
  height: 5px;
  background-color: #FFFB52;
  margin-inline: auto;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-head {
    min-height: 150px;
    height: 150px;
    margin-bottom: 30px;
  }
  .lcl-head__ttl{
    font-size: 20px;
  }
  .lcl-head__ttl:after {
    width: 40px;
    height: 2px;
  }
}

/*------------------------------------------------
lcl-sec
------------------------------------------------*/
.lcl-sec {
  padding-bottom: 40px;
}
.lcl-sec__column{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.lcl-sec-column__block{
  flex: 1;
  padding-right: 50px;
}
.lcl-sec-column__fig{
  width: 490px;
}
.lcl-sec__column02{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.lcl-sec-column02__block{
  flex: 1;
  padding-left: 50px;
}
.lcl-sec-column02__fig{
  width: 676px;
}
.lcl-sec__column03{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.lcl-sec-column03__block{
  flex: 1;
  padding-left: 50px;
}
.lcl-sec-column03__fig{
  width: 345px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-sec__column{
    flex-direction: column;
  }
  .lcl-sec__column--reverse {
    flex-direction: column-reverse;
  }
  .lcl-sec-column__block{
    flex: 1;
    padding-right: 0;
    padding-bottom: 15px;
  }
  .lcl-sec__column--reverse .lcl-sec-column__block {
    padding: 15px 0 0;
  }
  .lcl-sec-column__fig{
    width: 100%;
  }
  .lcl-sec__column02{
    display: block;
  }
  .lcl-sec-column02__block{
    padding: 10px 0 0;
  }
  .lcl-sec-column02__fig{
    width: 100%;
  }
  .lcl-sec__column03{
    display: block;
  }
  .lcl-sec-column03__block{
    padding: 10px 0 0;
  }
  .lcl-sec-column03__fig{
    width: 100%;
  }
}

/*------------------------------------------------
lcl-about
------------------------------------------------*/
.lcl-about{
  background:#F7F7F0;
  display: flex;
  align-items: stretch;
}
.lcl-about__fig{
  width: 490px;
}
.lcl-about__main{
  padding: 40px 50px;
  flex: 1;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-about{
    flex-direction: column;
  }
  .lcl-about__fig{
    width: 100%;
  }
  .lcl-about__main{
    padding: 25px 15px;
  }
}

/*------------------------------------------------
lcl-course
------------------------------------------------*/
.lcl-course{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 0 20px;
  margin-top: 40px;
}
.lcl-course__block{
  width: calc(50% - 10px);
  border-radius: 5px;
  border: 1px solid #00CFB4;
  overflow: hidden;
}
.lcl-course-block__head{
  padding: 15px 0;
  background: var(--grad-green-01, linear-gradient(90deg, #1CC266 0%, #00CFB4 100%));
}
.lcl-course-block-head__ttl01{
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6; 
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-bottom: 5px;
  margin-inline: auto;
  padding: 0 20px;
  border-radius: 100vmax;
  background: #FFFB52;
}
.lcl-course-block-head__ttl02{
  color: #FFF;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
}
.lcl-course-block-head__ttl03{
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
}
.lcl-course-block__main{
  padding: 30px 40px;
}
.lcl-course-block-main__ttl{
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 5px;
}
.lcl-course-block-list__item{
  position: relative;
  padding-left: 13px;
}
.lcl-course-block-list__item:not(:last-child){
  margin-bottom: 5px;
}
.lcl-course-block-list__item:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 2px;
  background: #03A877;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-course{
    display: block;
    margin-top: 30px;
  }
  .lcl-course__block{
    width: 100%;
  }
  .lcl-course__block:not(:last-child){
    margin-bottom: 20px;
  }
  .lcl-course-block-head__ttl01{
    font-size: 12px;
  }
  .lcl-course-block-head__ttl02{
    font-size: 16px;
  }
  .lcl-course-block-head__ttl03{
    font-size: 13px;
  }
  .lcl-course-block__main{
    padding: 20px 15px;
  }
  .lcl-course-block-list__item{
    padding-left: 11px;
  }
  .lcl-course-block-list__item:not(:last-child){
    margin-bottom: 5px;
  }
  .lcl-course-block-list__item:before {
    top: 8px;
    width: 6px;
    height: 2px;
  }
}

/*------------------------------------------------
lcl-schedule
------------------------------------------------*/
.lcl-schedule{
  margin-bottom: 80px;
}
.lcl-schedule__in{
  width: 100%;
}
.lcl-schedule__fig{
  width: 100%;
}
.lcl-schedule__kome{
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
  margin-top: 20px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-schedule{
    margin-bottom: 0;
  }
  .lcl-schedule__in{
    overflow-x: scroll;
    position: relative;
  }
  .lcl-schedule__in:after {
    content: "";
    position: absolute;
    top: 10%;
    left: 20%;
    width: 79px;
    height: 77.5px;
    background: url(../../common/img/parts/gesture_01.png) no-repeat center / cover;
    
  }
  @keyframes yurayura {
    0% {
      opacity: 1;
      visibility: visible;
      transform: translateX(30px);
    }
    25%{
      transform: translateX(-30px);
    }
    50%{
      transform: translateX(30px);
    }
    75%{
      transform: translateX(-30px);
      opacity: 1;
      visibility: visible;
    }
    100%{
      opacity: 0;
      visibility: hidden;
      transform: translateX(30px);
    }
  }
  .lcl-schedule__in.scr_active:after {
    animation: yurayura 3.5s ease-in-out both;
  }
  .lcl-schedule__fig{
    width: 1000px;
  }
  .lcl-schedule__kome{
    font-size: 11px;
    margin-top: 10px;
  }
}

/*------------------------------------------------
lcl-landscape
------------------------------------------------*/
.lcl-landscape{
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 30px 20px;
}
.lcl-landscape__item{
  width: calc(100% / 3 - 15px);
}
.lcl-landscape-item__caption{
  display: block;
  text-align: center;
  margin-top: 10px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-landscape{
    gap: 20px 5px;
  }
  .lcl-landscape__item{
    width: calc(50% - 3px);
  }
}

/*------------------------------------------------
lcl-recruitment
------------------------------------------------*/
.lcl-recruitment {
  border-radius: 5px;
  overflow: hidden;
  border: 1px solid #03A877;
  background: #F7F7F0;
}
.lcl-recruitment__ttl {
  color:#fff;
  text-align: center;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--grad-green-01, linear-gradient(90deg, #1CC266 0%, #00CFB4 100%));
  padding: 15px 0;
}
.lcl-recruitment__in {
  padding: 40px 0 60px;
}
.lcl-recruitment__txt {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 20px;
  text-align: center;
}
.lcl-recruitment__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 10px;
}
.lcl-recruitment-list__link {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  padding: 10px 20px 10px 30px;
  border-radius: 5px;
  background: #FFF;
  box-shadow: 0 4px 0 0 #DDDBC6;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 10px;
  transition: transform 0.25s, box-shadow 0.25s;
}
/* pc-only ------------*/
@media screen and (min-width: 768px) {
  .lcl-recruitment-list__link:hover {
    transform: translateY(4px);
    box-shadow: 0 0 0 0 #DDDBC6;
  }
}
.lcl-recruitment-list__link:after {
  content: '';
  width: 17px;
  height: 20px;
  background: url(../../common/img/parts/ico_pdf.png) no-repeat center / cover;
}
.lcl-recruitment-list__link.lcl-recruitment-list__link--doc:after {
  background: url(../../common/img/parts/ico_word.png) no-repeat center / cover;
}

/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-recruitment {
    margin-top: 40px;
  }
  .lcl-recruitment__ttl {
    font-size: 20px;
    padding: 10px 0;
  }
  .lcl-recruitment__in {
    padding: 20px 30px 30px;
  }
  .lcl-recruitment__txt {
    font-size: 15px;
    margin-bottom: 20px;
  }
  .lcl-recruitment__list {
    gap: 10px;
  }
  .lcl-recruitment-list__link:after {
    width: 13px;
    height: 16px;
  }
  .lcl-recruitment-list__link {
    font-size: 13px;
  }
}

/*------------------------------------------------
lcl-sec__table
------------------------------------------------*/
.lcl-sec__table {
  width: 100%;
  border-collapse: collapse;
}
.lcl-sec-table__th,
.lcl-sec-table__td {
  padding: 12px 15px;
  border: 1px solid #D0E4D8;
}
.lcl-sec-table__th {
  color: #03A877;
  background-color: #F7F7F0;
  width: 150px;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
}

/*------------------------------------------------
lcl-specific-list
------------------------------------------------*/
.lcl-specific-list__head{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #D0E4D8;
}
.lcl-specific-list__ttl{
  color: #03A877;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
}
.lcl-specific-list__txt{
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}
.lcl-specific-list__block {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 0 20px;
}
.lcl-specific-list__act{
    width: calc(100% / 3 - 14px);
}
.lcl-specific-list-act__item{
  position: relative;
  padding-left: 13px;
}
.lcl-specific-list-act__item:not(:last-child){
  margin-bottom: 2px;
}
.lcl-specific-list-act__item:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 2px;
  background: #03A877;
}
/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px){
  .lcl-specific-list__head{
    display: block;
    margin-bottom: 10px;
  }
  .lcl-specific-list__ttl{
    font-size: 13px;
  }
  .lcl-specific-list__txt{
    font-size: 11px;
  }
  .lcl-specific-list__block {
    flex-direction: column;
  }
  .lcl-specific-list__act{
    width: 100%;
  }
}

/*------------------------------------------------
bg-chg--bl
------------------------------------------------*/
html.bg-chg--blk,
html.bg-chg--bl{
  color: #fff;
}
.bg-chg--blk body,
.bg-chg--bl body{
  color: #fff;
}
.bg-chg--blk .lcl-ttl01 {
  color:#333;
}
.bg-chg--blk .lcl-ttl02,
.bg-chg--bl .lcl-ttl02 {
  color:#fff;
}
.bg-chg--blk .lcl-txtlink,
.bg-chg--bl .lcl-txtlink {
  color:#333;
}
.bg-chg--blk .lcl-about__main .lcl-ttl02{
  color:#333;
}
.bg-chg--blk .lcl-navi-block__ttl,
.bg-chg--bl .lcl-navi-block__ttl{
  color: #fff;
  border-bottom: 1px solid rgba(226, 243, 238, 0.2);
}
.bg-chg--blk .lcl-navi-block__ttl::after,
.bg-chg--bl .lcl-navi-block__ttl::after{
  background-color: #fff;
}
.bg-chg--blk .lcl-navi-block-list__link,
.bg-chg--bl .lcl-navi-block-list__link {
  color: #fff;
}
.bg-chg--blk .lcl-about__main .lcl-txtbasic{
  color:#333;
}
.bg-chg--blk .lcl-recruitment__ttl {
  color:#333;
}
.bg-chg--blk .lcl-recruitment__txt {
  color:#333;
}
.bg-chg--blk .lcl-recruitment-list__link {
  color:#333;
}
.bg-chg--blk .lcl-specific-list__ttl {
  color: #fff;
}

.bg-chg--blk .lcl-course-block-head__ttl01 {
  color:#333;
}
.bg-chg--blk .lcl-course-block-head__ttl02 {
  color:#333;
}

/*------------------------------------------------
bg-chg--bl
------------------------------------------------*/
.bg-chg--bl .lcl-ttl01 {
  color: #132381;
}
.bg-chg--bl .lcl-ttl01 {
  color: #132381;
}
.bg-chg--bl .lcl-head__ttl {
  color: #132381;
}
.bg-chg--bl .lcl-about__main .lcl-ttl02 {
  color: #132381;
}
.bg-chg--bl .lcl-about__main .lcl-txtbasic{
  color:#333;
}
.bg-chg--bl .lcl-course-block-head__ttl01 {
  color:#132381;
}
.bg-chg--bl .lcl-course-block-head__ttl02 {
  color:#132381;
}
.bg-chg--bl .lcl-recruitment__ttl {
  color:#132381;
}
.bg-chg--bl .lcl-recruitment__txt {
  color:#333;
}
.bg-chg--bl .lcl-recruitment-list__link {
  color:#333;
}
.bg-chg--bl .lcl-specific-list__ttl {
  color: #fff;
}
.bg-chg--bl .lcl-sec-table__th {
  color:#132381;
}

/*------------------------------------------------
bg-chg--yl
------------------------------------------------*/
.bg-chg--yl .lcl-ttl01 {
  color: #fff;
}
.bg-chg--yl .lcl-ttl02 {
  color: #333;
  border-bottom: 2px solid #333;
}
.bg-chg--yl .lcl-navi-block__ttl {
  color: #333;
}
.bg-chg--yl .lcl-navi-block-list__link {
  color: #333;
}
.bg-chg--yl .lcl-about__main .lcl-ttl02 {
  color: #333;
  border-bottom: 2px solid #D0E4D8;
}
.bg-chg--yl .lcl-specific-list__ttl {
  color: #333;
}