body{
  font-family: "Noto Sans", sans-serif;
  font-weight: 500;
  font-variation-settings:
    "wdth" 100;
}
main{
  overflow-x: hidden;
}
.wrapper{
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px;
}
.wrapper02{
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px;
}
  .sp{
    display: none;
  }
  .pc{
    display: block;
  }
@media screen and (max-width: 768px) {
  .wrapper{
    padding-left: 12px;
    padding-right: 12px;
  }
  .wrapper02{
    padding-left: 12px;
    padding-right: 12px;
  }
  .sp{
    display: block;
  }
  .pc{
    display: none;
  }
}
/* 
========================
l_kv
========================
*/

.l_kv {
  position: relative;
  width: 100%;
  height: 825px;
  background-image: url(../image/l_kv/bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  max-height: initial;
}
.l_kv .bar {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  padding: 3vw;
  top: 0;
  left: 0;
  width: 9.48292308%;
  height: 100%;
  background-color: #002c6a;
  box-sizing: border-box;
}

.l_kv .bar img{
  width: 100%;
  height: 100%;
  max-height: 720px;
  object-fit:contain;
  object-position: center;
}

.l_kv .main {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(100% - 9.48292308%);
  height: 100%;
}

.l_kv .main .inner {
  position: relative;
  max-width: 1600px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.l_kv .main .content {
  padding: 64px 0vw 40px 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
}

.l_kv .main .content  img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.l_kv .main .content .person{
  position: absolute;
  bottom: 0;
  left: 0%;
  width: 21%;
  height: auto;
}
.l_kv .main .content .person img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.l_kv .main .content .aimanager{
  position: absolute;
  z-index: 1;
  display: block;
  bottom: 40px;
  right: 9.9%;
  width: 79.1%;
  height: 11.1%;
  opacity: 1;
  border-radius: 11px;
}


.l_kv .main .form-content {
  text-align: left;
  overflow: hidden;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 47%;
  height: calc(100% - 64px);
  padding: 40px;
}

@media (max-width: 1600px) {
  .l_kv .main .content {
    padding: 40px 0px 40px 40px;
  }
  .l_kv .main .content .person{
    left: 0%;
    width: 175px;
  }
}

@media screen and (max-width: 768px) {
  .l_kv {
    width: 100%;
    height: auto;
    background-image: none;
  }
  .l_kv .bar {
    padding: 12px;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 41px;
  }
  
  .l_kv .bar img{
    display: block;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  
  .l_kv .main {
    position: initial;
    top: 40px;
    right: 0;
    width: 100%;
    height:auto;
  }
  
  .l_kv .main .content {
    padding: 72px 4.8px 40px 4.8px;
    position: initial;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url(../image/l_kv/bg-sp.jpg);
    background-size: cover;
    background-position: left;
    background-repeat: no-repeat;
  }
  
  .l_kv .main .content .aimanager{
    position: absolute;
    z-index: 1;
    display: block;
    bottom: 40px;
    right: 9.9%;
    width: 79.1%;
    height: 11.1%;
    opacity: 1;
    border-radius: 11px;
  }

  .l_kv .main .content .person{
    left: 0%;
    width: 27.8%;
  }
  
  
  .l_kv .main .form-content {
    /* display: none; */
    text-align: left;
    overflow: hidden;
    position: relative;
    top: initial;
    transform: translateY(0%);
    right: 0;
    width: 100%;
    height: auto;
    padding: 16px;
  }
}


/* 
========================
l_sp-form
========================
*/
.l_sp-form {
  padding: 32px 0 32px;
  background-color: #e9f4ff;
}

.l_sp-form .form-content {
  text-align: left;
}
.l_sp-form .form-content .m_form {
  background-color: #fff;
  border-radius: 10px;
  /* padding: 16px; */
}


/* 
========================
l_logos
========================
*/
.l_logos {
  padding: 56px 0;
  background-color: #e9f4ff;
  overflow: hidden;
}

.l_logos .heading-gr{
  margin-bottom: 32px;
}

.l_logos .logo-slider{
  display: flex;
  width: 200%;
  /* 2セット分を横に並べて流す */
  animation: slideLoop 10s linear infinite;
}
.l_logos .logo-slider .items{
  display: flex;
  gap: 24px;
}
.l_logos .logo-slider .items .item{
  background-color: #fff;
  padding: 16px;
  border-radius: 0;
  height: 80px;
  width: 240px;
}

.l_logos .logo-slider .items {
  display: flex;
  /* width: 200%; */
  /* 2セット分を横に並べて流す
  animation: slideLoop 10s linear infinite; */
}

/* ホバー時に一時停止 */
.l_logos .logo-slider .items:hover {
  animation-play-state: paused;
}

/* 各スライドグループ */
.l_logos .logo-slider .items {
  display: flex;
  gap: 40px;
  align-items: center;
  flex-shrink: 0;
}
.l_logos .logo-slider .items .item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.8;
  transition: all 0.3s ease;
}

/* ホバーで少し強調 */
.l_logos .logo-slider .items .item img:hover {
  filter: none;
  opacity: 1;
  transform: scale(1.05);
}

/* 無限横スライドアニメーション */
@keyframes slideLoop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_logos .logo-slider .items {
    gap: 24px;
  }

  .l_logos .logo-slider .items .item {
    width: 120px;
    height: 60px;
  }
  .l_logos {
    padding: 40px 0;
  }
  
  .l_logos .heading-gr{
    margin-bottom: 16px;
  }
  
  .l_logos .logo-slider{
    animation: slideLoop 5s linear infinite;
  }
  .l_logos .logo-slider .items{
    gap: 12px;
  }
  .l_logos .logo-slider .items .item{
    padding: 8px;
    height: 50px;
    width: 150px;
  }
  
  /* 各スライドグループ */
  .l_logos .logo-slider .items {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-shrink: 0;
  }
}


/* 
========================
l_hojokin
========================
*/
.l_hojokin .banner{
  display: block;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.l_hojokin .banner img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_hojokin .banner{
    width: 100%;
  }
  .l_hojokin .banner img{
    display: block;
  } 
}

/* 
========================
l_concern
========================
*/
.l_concern{
  position: relative;
}
.l_concern .triangle{
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 55px;
  height: 55px;
  background-color: #e7dbc9;
  clip-path: polygon(0 0, 50% 50%, 100% 0);
  transform: translateY(100%);
}

.l_concern .outer{
  padding: 56px 0;
  background-color: #e7dbc9;
  overflow: hidden;
}
.l_concern .heading-gr{
  margin-bottom: 32px;
}

.l_concern .content .items{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.l_concern .content .items .item{
  position: relative;
  width: 24%;
}

.l_concern .content .items .item .icon{
  position: absolute;
}
.l_concern .content .items .item:nth-of-type(1){
  z-index: 2;
}
.l_concern .content .items .item:nth-of-type(1) .icon{
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translateY(55%) translateX(33%);
  width: 46%;
}
.l_concern .content .items .item:nth-of-type(2){
  z-index: 1;
}
.l_concern .content .items .item:nth-of-type(2) .icon{
  position: absolute;
  right: 6%;
  bottom: 10%;
  width: 19%;
}

.l_concern .content .items .item:nth-of-type(3) .icon{
  position: absolute;
  right: 11%;
  bottom: 0;
  transform: translateY(39%);
  width: 50%;
}

.l_concern .content .items .item:nth-of-type(4) .icon{
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translateY(34%) translateX(9%);
  width: 48%;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_concern .outer{
    padding: 40px 0;
  }
  .l_concern .heading-gr{
    margin-bottom: 16px;
  }
  
  .l_concern .content .items .item{
    width: 48.75%;
  }
  .l_concern .content .items .item:nth-of-type(1) .icon{
    right: 0;
    bottom: 0;
    transform: translateY(0%) translateX(10%);
    width: 28%;
  }
  
  .l_concern .content .items .item:nth-of-type(4) .icon{
    transform: translateY(14%) translateX(9%);
    width: 37%;
  } 
}

/* 
========================
l_reasons
========================
*/
.l_reasons{
  padding: 56px 0;
  position: relative;
  background-image: url(../image/l_reasons/back.jpg);
  background-size: cover;
  background-position: center;
}
.l_reasons .heading-gr{
  margin-bottom: 32px;
}

.l_reasons .content .items{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.l_reasons .content .items .item{
  padding: 24px;
  border-radius:10px;
  width: 32%;
  background-color: rgba(255,255,255,.2);
}

.l_reasons .content .items .item .heading{
  margin-bottom: 16px;
}

.l_reasons .content .items .item .heading img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.l_reasons .content .items .item .desc{
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.5;
  color: #fff;
}

.l_reasons .content .items .item .strong-s{
  border-top: solid 2px #fff;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  padding-top: 16px;
}
/* スマホ対応 */
@media (max-width: 768px) {
  .l_reasons{
    padding: 40px 0;
    background-image: url(../image/l_reasons/back.jpg);
  }
  .l_reasons .heading-gr{
    margin-bottom: 16px;
  }
  
  .l_reasons .content .items{
    flex-direction: column;
    gap: 16px;
  }
  
  .l_reasons .content .items .item{
    padding: 24px 16px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  
  .l_reasons .content .items .item .heading{
    margin-bottom: 16px;
    width: 85%;
  }
  
  .l_reasons .content .items .item .desc{
    margin-bottom: 8px;
    font-size: 12.5px;
  }
  
  .l_reasons .content .items .item .strong-s{
    font-size: 15px;
    padding-top: 8px;
  } 
}
/* 
========================
l_features
========================
*/
.l_features{
  padding: 72px 0;
  background-color: #e9f4ff;
}
.l_features .heading-gr{
  margin-bottom: 48px;
}

.l_features .content ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 24px;
}

.l_features .content ul li{
  padding: 32px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  box-shadow: 3px 3px 0px 0 #002c6a;
  border-radius: 10px;
}

.l_features .content ul li .lr{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.l_features .content ul li .lr .left{
  width: 40%;
}

.l_features .content ul li .lr .left .image-gr{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_features .content ul li .lr .left .image-gr .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  object-position: center;
}

.l_features .content ul li .lr .right{
  padding-left: 32px;
  width: 60%;
}
.l_features .content ul li .lr .right .txt-gr .c-heading{
  font-size: 28px;
  font-weight: 600;
  color: #002c6a;
  border-bottom: solid 2px #002c6a;
  letter-spacing: .075em;
  padding-bottom: 8px;
  margin-bottom: 16px;
}

.l_features .content ul li .lr .right .txt-gr .p{
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}
.l_features .content ul li .lr .right .txt-gr .p strong{
  font-weight: 600;
  color: #fc445d;
  border-bottom: solid 1px;
}

.l_features .content ul li .lr .right .txt-gr .link{
  margin-top: 16px;
  padding-bottom: 5px;
}

.l_features .content ul li .lr .right .txt-gr .link a{
  color: #000;
  border-bottom: solid 1.5px #000;
  letter-spacing: .1em;
  font-weight: 600;
  display: inline-block;
  padding-bottom: 5px;
}
.l_features .content ul li .lr .right .txt-gr .link a:hover{
  opacity: 0.8;
  transition-duration: 0.5s;
  cursor: pointer;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_features{
    padding: 40px 0;
  }
  .l_features .heading-gr{
    margin-bottom: 24px;
  }
  
  .l_features .content ul{
    gap: 16px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  
  .l_features .content ul li{
    padding: 16px 16px;
  }
  
  .l_features .content ul li .lr{
    display: block;
  }
  
  .l_features .content ul li .lr .left{
    width: 100%;
  }

  .l_features .content ul li .lr .right{
    margin-top: 12px;
    padding-left: 0;
    width: 100%;
  }
  .l_features .content ul li .lr .right .txt-gr .c-heading{
    font-size: 20px;
    padding-bottom: 4px;
    margin-bottom: 8px;
  }
  
  .l_features .content ul li .lr .right .txt-gr .p{
    font-size: 14px;
  }
  
  .l_features .content ul li .lr .right .txt-gr .link{
    margin-top: 8px;
    padding-bottom: 2.5px;
  }

  .l_features .content ul li .lr .right .txt-gr .link{
    border-bottom: none;
  }
  
  .l_features .content ul li .lr .right .txt-gr .link a{
    font-size: 12.5px;
    border-bottom: solid 1px #000;
    display: inline;
  }
}

/* 
========================
l_taimen
========================
*/
.l_taimen{
  padding:56px 0;
  background-color: #fff;
}
.l_taimen .heading-gr{
  margin-bottom: 48px;
}

.l_taimen .content .topdesc{
  margin-bottom: 32px;
  text-align: center;
  font-size: 18px;
  line-height: 1.8;
  color: #002c6a;
  font-weight: 600;
}

.l_taimen .content .items{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;    
  flex-direction: column;
  gap: 24px;
}

.l_taimen .content .items .item .lr{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;    
}

.l_taimen .content .items .item .lr .left{
  width: 15%;
}

.l_taimen .content .items .item .lr .left .icon{
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: contain;
  object-position: center;
}

.l_taimen .content .items .item .lr .left .icon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_taimen .content .items .item .lr .right{
  padding-left: 32px;
  width: 85%;
}

.l_taimen .content .items .item .lr .right .c-heading{
  font-size: 28px;
  font-weight: 600;
  color: #002c6a;
  border-bottom: solid 2px #002c6a;
  padding-bottom: 8px;
  margin-bottom: 16px;
}
.l_taimen .content .items .item .lr .right .desc{
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}
.l_taimen .content .items .item .lr .right .desc strong{
  font-weight: 600;
  color: #ed8f26;
}
.l_taimen .content .comparison-block{
  margin-top: 56px;
  text-align: center;
  background-color: #e9f4ff;
  padding: 40px 0;
  border-radius: 10px;
}
.l_taimen .content .comparison-block .c-heading{
  font-size: 28px;
  font-weight: 600;
  color: #002c6a;
  margin-bottom: 32px;
}

.l_taimen .content .comparison-block .image{
  width: 72%;
  margin-left: auto;
  margin-right: auto;
}
.l_taimen .content .comparison-block .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_taimen{
    padding:40px 0;
  }
  .l_taimen .heading-gr{
    margin-bottom: 24px;
  }
  
  .l_taimen .content .topdesc{
    margin-bottom: 16px;
    font-size: 15px;
  }
  
  .l_taimen .content .items{
    gap: 16px;
  }
  
  .l_taimen .content .items .item .lr{
    /* display: flex; */
    align-items: flex-start;
  }
  
  .l_taimen .content .items .item .lr .left{
    width: 22.5%;
  }
  .l_taimen .content .items .item .lr .right{
    padding-left: 15px;
    width: 77.5%;
  }
  
  .l_taimen .content .items .item .lr .right .c-heading{
    font-size: 17px;
    padding: 4px 8px;
    margin-bottom: 8px;
    background-color:#002c6a;
    border-bottom: none;
    color: #fff;
    text-align: center;
  }
  .l_taimen .content .items .item .lr .right .desc{
    font-size: 13px;
  } 
  .l_taimen .content .comparison-block{
    margin-top: 28px;
    padding: 24px 0px;
  }
  .l_taimen .content .comparison-block .c-heading{
    font-size: 20px;
    margin-bottom: 16px;
  }
  
  .l_taimen .content .comparison-block .image{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    overflow-x: auto;
  }
  .l_taimen .content .comparison-block .image img{
    display: block;
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 16px;
    max-width: initial;
    width: 440px;
    height: auto;
    object-fit: contain;
    object-position: center;
  } 
}

/* 
========================
l_cta
========================
*/
.l_cta{
  position: relative;
  padding: 56px 0;
  background-image: url(../image/l_cta/back.jpg);
  background-position: right top;
  z-index: 0;
}
.l_cta::after{
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #002c6a;
  opacity: .84;
}

.l_cta .inner{
  position: relative;
  z-index: 2;
}
.l_cta .lr{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
} 
.l_cta .inner .lr .left{
  width: 50%;
}
.l_cta .inner .lr .left .company-name{
  width: 45%;
  margin-left: auto;
  margin-right: auto;
}
.l_cta .inner .lr .left .company-name img{
  width: 100%;
  height: 100%;
}
.l_cta .inner .lr .left .tags{
  margin-top: 24px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
}
.l_cta .inner .lr .left .tags .item{
  font-size: 18px;
  font-weight: 600;
  background-color: #fff;
  color: #002c6a;
  padding: 6.4px 12px;
  letter-spacing: .075em;
  border-radius: 50px;
  display: inline-block;
}
.l_cta .inner .lr .left .copy{
  font-size: 56px;
  font-weight: 600;
  color: #fff;
  margin: 40px 0 50px;
  letter-spacing: 0.075em;
  line-height: 1.4;
  border: solid 1px #fff;
  padding: 24px;
  text-align: center;
}
.l_cta .inner .lr .left .desc{
  font-size: 16px;
  line-height: 1.5;
  color: #fff;
  margin-top: 24px;
}
.l_cta .inner .lr .left .desc strong{
  background-color: #fff;
  margin-left: 4px;
  margin-right: 4px;
  padding: 4px;
  color: #002c6a;
}
.l_cta .inner .lr .left .images{
  margin-top: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}
.l_cta .inner .lr .left .images .image{
  width: 48%;
}
.l_cta .inner .lr .left .images .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  box-shadow: 7px 8px 8px rgba(0,0,0,0.8);
}
.l_cta .inner .lr .left .images .desc{
  padding-left: 8px;
  margin-top: 0;
  width: 48.75%;
  font-size: 14.9px;
  line-height: 1.9;
}
.l_cta .inner .lr .right{
  width: 45%;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_cta{
    padding: 40px 0;
    background-image: url(../image/l_cta/back.jpg);
  }
  .l_cta .lr{
    display: block;
  } 
  .l_cta .inner .lr .left{
    width: 100%;
  }
  .l_cta .inner .lr .left .company-name{
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
  .l_cta .inner .lr .left .tags{
    margin-top: 12px;
    gap: 8px;
    justify-content: center;
  }
  .l_cta .inner .lr .left .tags .item{
    font-size: 13px;
    padding: 4px 8px;
  }
  .l_cta .inner .lr .left .copy{
    font-size: 32px;
    margin: 24px 0 26px;
    padding: 24px 0;
    text-align: center;
  }
  .l_cta .inner .lr .left .desc{
    font-size: 14px;
    margin-top: 12px;
  }
  .l_cta .inner .lr .left .images{
    /* justify-content: space-between; */
    margin-top: 12px;
    gap: 0;
    display: block;
  }
  .l_cta .inner .lr .left .images .image{
    /* width: 48.75%; */
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .l_cta .inner .lr .left .images .desc{
    width: 100%;
    padding-left: 0;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    line-height: 2.2;
    margin-top: 16px;
    font-size: 13px;
  }
  
  .l_cta .inner .lr .right{
    margin-top: 24px;
    width: 100%;
  }
}

/* 
========================
l_example
========================
*/
.l_example{
  padding: 56px 0;
  background-color: #fff;
}
.l_example .heading-gr{
  margin-bottom: 32px;
}
.l_example .content .items{
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 32px;
}
.l_example .content .items li{
  width: 100%;
  background-color: #fff;
  border: solid 1px #b3b3b3;
  padding: 40px;
  border-radius: 10px;
}
.l_example .content .items li .c-heading{
  padding-left: 22px;
  margin-bottom: 32px;
  position: relative;
  font-size: 28px;
  font-weight: 600;
  color: #000;
}


.l_example .content .items li .c-heading::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 12px;
  height: 100%;
  background-color: #000;
}

.l_example .content .items li .lr{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.l_example .content .items li .lr .left{
  padding-left: 20px;
  width: 30%;
}
.l_example .content .items li .lr .left .image{
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: contain;
  object-position: center;
}
.l_example .content .items li .lr .left .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_example .content .items li .lr .left .name{
  font-size: 16px;
  font-weight: 400;
  color: #000;
  text-align: center;
  margin-top: 8px;
}
.l_example .content .items li .lr .right{
  padding-left: 32px;
  width: 70%;
}
.l_example .content .items li .lr .right .txt-gr{
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.l_example .content .items li .lr .right .txt-gr .heading-gr{
  /* margin-top: 8px; */
  margin-bottom: 0;
  padding: 12px;
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  background-color: #b3b3b3;
}
.l_example .content .items li .lr .right .txt-gr .p{
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}
.l_example .content .items li .lr .right .txt-gr .p strong{
  color: #002c6a;
  font-weight: 600;
  padding-bottom: 2.4px;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_example{
    padding: 40px 0;
    background-color: #fff;
  }
  .l_example .heading-gr{
    margin-bottom: 24px;
  }
  .l_example .content .items{
    gap: 16px;
  }
  .l_example .content .items li{
    padding: 24px 16px;
  }
  .l_example .content .items li .c-heading{
    padding-left: 18px;
    margin-bottom: 24px;
    font-size: 20px;
  }
  .l_example .content .items li .c-heading::before{
    width: 7px;
  }
  
  .l_example .content .items li .lr{
    display: block;
  }
  .l_example .content .items li .lr .left{
    padding-left: 20px;
    width: 100%;
  }
  .l_example .content .items li .lr .left .name{
    font-size: 14px;
    margin-top: 4px;
  }
  .l_example .content .items li .lr .right{
    margin-top: 16px;
    padding-left: 20px;
    width: 100%;
  }
  .l_example .content .items li .lr .right .txt-gr{
    gap: 8px;
  }
  .l_example .content .items li .lr .right .txt-gr .heading-gr{
    margin-bottom: 0;
    padding: 8px 12px;
    font-size: 17px;
  }
  .l_example .content .items li .lr .right .txt-gr .p{
    font-size: 13px;
  }
}

/* 
========================
l_solution
========================
*/
.l_solution{
  padding: 56px 0;
  background-color: #e9f4ff;
}
.l_solution .heading-gr{
  margin-bottom: 40px;
}
.l_solution .content .desc{
  font-size: 18px;
  color: #000;
  margin-bottom: 32px;
  text-align: center;
  line-height: 2;
}
.l_solution .content .items{
  display: flex;
  flex-wrap: wrap;
  gap: 24px 5%;
}

.l_solution .content .items li{
  width: 12.5%;
  text-align: center;
}
.l_solution .content .items li:hover{
  cursor: pointer;
}

.l_solution .content .items li .icon{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  overflow: hidden;
  text-align: center;
}
.l_solution .content .items li .icon img{
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 44%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_solution .content .items li:hover .icon img{
  cursor: pointer;
  transform: scale(1.1);
  transition: all 0.3s ease;
}
.l_solution .content .items li h3{
  font-size: 16px;
  font-weight: 600;
  color: #002c6a;
  margin-top: 12px;
  text-align: center;
}
.l_solution .popup{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1000;
  transition: all 0.3s ease;
  visibility: hidden;
  opacity: 0;
}
.l_solution .popup.is-active{
  visibility: visible;
  opacity: 1;
}

.l_solution .popup .inner{
  display:flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.l_solution .popup .inner > .content{
  position: relative;
  padding: 64px 40px;
  overflow-y: auto;
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  border-radius: 20px;
  height: calc(100vh - 100px);
  background-color: #e6f0fa;
}

.l_solution .popup .inner > .content .cross{
  position: absolute;
  top: 24px;
  right: 40px;
  width: 40px;
  height: 40px;
  background-color: #002c6a;
}
.l_solution .popup .inner > .content .cross:hover{
  cursor: pointer;
}
.l_solution .popup .inner > .content .cross span{
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50%;
  height: 2px;
  background-color: #fff;
  display: inline-block;
}
.l_solution .popup .inner > .content .cross span:first-of-type{
  transform: rotate(45deg);
  left: 25%;
}
.l_solution .popup .inner > .content .cross span:last-of-type{
  transform: rotate(-45deg);
  left: 25%;
}

.l_solution .popup .inner  .content .upper{
  margin-top: 32px;
}

.l_solution .popup .inner  .content .upper .industry{
  display:flex;
  align-items: center;
  gap: 16px;
  font-size: 20px;
  letter-spacing: .075em;
  font-weight: 600;
  color: #002c6a;
}

.l_solution .popup .inner > .content .upper .industry .icon{
  padding: 6px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #fff;
}

.l_solution .popup .inner > .content .upper .industry .icon img{
  width: 100%;
  height: 100%;
}

.l_solution .popup .inner > .content .upper .outline{
  margin-top: 8px;
  font-size: 28px;
  font-weight: 600;
  letter-spacing: .075em;
  color: #fff;
  background-color: #002c6a;
  padding: 8px 16px;
}
.l_solution .popup .inner > .content .upper .who{
  margin-top: 24px;
  display:flex;
  align-items: center;
  gap: 8px;
  color: #002c6a;
}

.l_solution .popup .inner > .content .upper .who .department{
  font-size: 14px;
  font-weight:600;
  color: #002c6a;
  background-color: #fff;
  padding: 5px 24px;
  border-radius:50px;
  display: inline-block;
}

.l_solution .popup .inner > .content .upper .who .sexal{
  margin-left: 8px;
  font-weight: 600;
  color: #002c6a;
}
.l_solution .popup .inner > .content .upper .who .sexal::after{
  margin-left: 8px;
  content: "/";
}

.l_solution .popup .inner > .content .upper .who .age{
  font-size: 16px;
  font-weight: 600;
  color: #002c6a;
}

.l_solution .popup .inner > .content .about{
  margin-top: 24px;
}

.l_solution .popup .inner > .content .about > .c-heading{
  font-size: 24px;
  font-weight: 600;
  color: #002c6a;
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  border-bottom: solid 2px #002c6a;
  padding-bottom: 8px;
}

.l_solution .popup .inner > .content .about > .c-heading > span{  
  font-size: 14px;
  font-weight: 400;
  display: inline-block;
}

.l_solution .popup .inner > .content .about .problem{
  margin-top: 24px;
  font-size: 16px;
  line-height: 1.7;
  color: #000;
  letter-spacing: .075em;
  text-align: left;
}

.l_solution .popup .inner > .content .about .problem .box{
  position: relative;
  margin-bottom: 12px;
  padding-left: 16px;
  display: block;
  font-size: 20px;
  letter-spacing: .1em;
  line-height: 1.4;
  font-weight: 600;
  color: #002c6a;
}
.l_solution .popup .inner > .content .about .problem .box::before{
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 12px;
  height: 12px;
  background-color: #002c6a;
}

.l_solution .popup .inner > .content .about .after{
  position: relative;
  /* border-radius: 10px; */
  margin-top: 24px;
  font-size: 16px;
  line-height: 1.7;
  /* color: #000; */
  letter-spacing: .075em;
  text-align: left;
  background-color: #fff;
  padding: 48px 16px 16px;

}
.l_solution .popup .inner > .content .about > .after > .c-heading{
  position: absolute;
  left: 0;
  top: 0;
  font-size: 16px;
  padding: 4px 12px;
  font-weight: 600;
  background-color: #002c6a;
  color: #fff;
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
}


.l_solution .popup .inner > .content .result{
  border: solid 1px #a5a5a5;
  padding: 16px;
  margin-top: 24px;
  font-size: 16px;
  line-height: 1.7;
  color:#002c6a;
  font-weight: 600;
  letter-spacing: .075em;
  text-align: left;
}

.l_solution .popup .inner > .content .result ul{
  /* padding-left: 1.2em; */
  list-style: disc;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.l_solution .popup .inner > .content .result ul li{
  list-style: none;
  margin-left: 16px;
  padding-left: 16px;
  position: relative;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  letter-spacing: .075em;
  text-align: left;
}
.l_solution .popup .inner > .content .result ul li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #000;
}

/* ページネーション（ドット） */
.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background-color: #ccc; /* 非アクティブ時は薄グレー */
  opacity: 1;
  border-radius: 50%;
  margin: 0 6px;
  transition: background-color 0.3s ease;
}

.swiper-pagination-bullet-active {
  background-color: #002c6a; /* アクティブは濃紺 */
}

/* ナビゲーションボタン */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 42px;
  right: 0;
  color: #002c6a;
  width: 40px;
  height: 40px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: solid 1px #002c6a;
  background-color: #e6f0fa;
}
.swiper-button-next:after, .swiper-button-prev:after{
  color: #002c6a;
  font-size:15px;
  font-weight: 600;
}
/* Swiperデフォルトの矢印記号を再表示 */


/* 非アクティブ時 */
.swiper-button-disabled {
  opacity: 0;
}

/* ページネーション位置 */
.swiper-pagination {
  position: relative;
  bottom: 0;
  margin-top: 20px;
  text-align: center;
}

/* ボタン位置調整 */
.swiper-button-prev {
  left: initial;
  right: 48px;
}

.swiper-button-next {
  right: 0px;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_solution{
    padding: 40px 0;
  }
  .l_solution .heading-gr{
    margin-bottom: 24px;
  }
  .l_solution .content .desc{
    font-size: 14px;
    margin-bottom: 16px;
    line-height: 1.6;
  }
  .l_solution .content .items{
    justify-content: space-between;
    gap: 24px 0;
  }
  
  .l_solution .content .items li{
    width: 33.33333%;
  }
  
  .l_solution .content .items li .icon{
    width: 75%;
  }
  
  .l_solution .content .items li h3{
    font-size: 12.5px;
    margin-top: 8px;
  }
  .l_solution .popup .inner > .content{
    position: relative;
    padding: 56px 16px;
    width: calc(100% - 16px);
    border-radius: 10px;
    height: calc(100vh - 40px);
  }
  
  .l_solution .popup .inner > .content .cross{
    top: 24px;
    right: 24px;
    width: 32px;
    height: 32px;
  }
  
  .l_solution .popup .inner  .content .upper{
    margin-top: 24px;
  }
  
  .l_solution .popup .inner  .content .upper .industry{
    gap: 14px;
    font-size: 17px;
  }
  
  .l_solution .popup .inner > .content .upper .industry .icon{
    padding: 6px;
    width: 32px;
    height: 32px;
  }
  
  .l_solution .popup .inner > .content .upper .outline{
    margin-top: 16px;
    font-size: 18px;
    padding: 8px;
  }
  .l_solution .popup .inner > .content .upper .who{
    margin-top: 12px;
    gap: 4.8px;
  }
  
  .l_solution .popup .inner > .content .upper .who .department{
    font-size: 12.5px;
    padding: 5px 12px;
  }
  
  .l_solution .popup .inner > .content .upper .who .age{
    font-size: 14px;
  }
  
  .l_solution .popup .inner > .content .about{
    margin-top: 12px;
  }
  
  .l_solution .popup .inner > .content .about > .c-heading{
    font-size: 18px;
    margin-bottom: 4px;
  }
  
  .l_solution .popup .inner > .content .about > .c-heading > span{  
    font-size: 12.5px;
  }
  
  .l_solution .popup .inner > .content .about .problem{
    margin-top: 12px;
    font-size: 14px;
  }
  
  .l_solution .popup .inner > .content .about .problem .box{
    position: relative;
    margin-bottom: 12px;
    padding-left: 16px;
    display: block;
    font-size: 18px;
  }
  .l_solution .popup .inner > .content .about .problem .box::before{
    top: 8px;
    width: 8px;
    height: 8px;
  }
  
  .l_solution .popup .inner > .content .about .after{
    margin-top: 12px;
    font-size: 13px;
    padding: 40px 16px 16px;
  
  }
  .l_solution .popup .inner > .content .about > .after > .c-heading{
    font-size: 15px;
    padding: 2.4px 8px;
  }
  
  
  .l_solution .popup .inner > .content .result{
    padding: 16px;
    margin-top: 12px;
    font-size: 15px;
  }
  
  .l_solution .popup .inner > .content .result ul li{
    margin-left: 0px;
    padding-left: 12px;
    font-size: 14px;
  }
  .l_solution .popup .inner > .content .result ul li::before{
    top: 9px;
    width: 5.5px;
    height: 5.5px;
  }
  
  /* ページネーション（ドット） */
  .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 4px;
  }
  
  /* ナビゲーションボタン */
  .swiper-button-prev,
  .swiper-button-next {
    top: 47px;
    width: 30px;
    height: 30px;
  }
  .swiper-button-next:after, .swiper-button-prev:after{
    font-size:13.5px;
  }
  
  /* ボタン位置調整 */
  .swiper-button-prev {
    right: 35px;
  }
}



/* 
========================
l_curriculum
========================
*/
.l_curriculum{
  padding: 56px 0;
}
.l_curriculum .heading-gr{
  margin-bottom: 40px;
}
.l_curriculum .content .training{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.l_curriculum .content .training .training__left{
  width: 180px;
  display: flex;
  flex-direction: column;
}

.l_curriculum .training__left {
  width: 200px;
  display: flex;
  flex-direction: column;
}
.l_curriculum .training__right{
  width: calc(100% - 200px);
  margin-left: 40px;
}

.l_curriculum .step {
  padding: 40px 0;
  position: relative;
  /* border-top: solid 7px #fff; */
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e6f0fa;
  color: #002c6a;
  font-weight:600;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  transition: height 0.4s ease;
}

.l_curriculum .step::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 40px;
  clip-path: polygon(50% 50%, 0 0, 100% 0);
  z-index: -1;
  transform: translateY(99%);
}

.l_curriculum .step span{
  display: inline-block;
  transform: translateY(8px);
}

.l_curriculum .step--knowledge {
  z-index: 3;
  background: #e6f0fa;
  /* background-color: red; */
 }
 .l_curriculum .step--knowledge::after {
  background-color: #e6f0fa;
 }
.l_curriculum .step--skill { 
  z-index: 2;
  background: #8095b4; color: #fff;
 }
 .l_curriculum .step--skill::after {
  background-color: #8095b4;
 }
.l_curriculum .step--habit { 
  z-index: 1;
  background: #002c6a; color: #fff;
 }
.l_curriculum .training__right {
  flex: 1;
  margin-left: 40px;
}

.l_curriculum .accordion{
  padding: 24px;
  overflow: hidden;
  border-bottom:solid 1px #707070 ;
}
.l_curriculum .accordion:last-of-type{
  /* margin-top: 12px; */
  background-color: #e6f0fa;
}
.l_curriculum .accordion__head{
  position: relative;
  /* padding: 24px ; */
  font-size: 20px;
  font-weight: 600;
  color: #002c6a;
  letter-spacing: .075em;
  cursor: pointer;
}

.l_curriculum .accordion__head .txt{
  display: block;
  width: calc(100% - 112px);
}

.l_curriculum .accordion__head::after {
  position: absolute;
  right: 0;
  top: 7px;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f067";
  margin-left: 0;
  transition: transform 0.3s ease;
}
.l_curriculum .accordion.is-active .accordion__head::after {
  content: "\f068";
}

.l_curriculum .accordion.is-active+.accordion:last-of-type{
  margin-top: 16px;
}
.accordion:last-of-type.is-active{
  /* margin-top: 16px; */
  padding-bottom: 16px;
}

.l_curriculum .accordion__body{
  /* padding: 24px ; */
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  letter-spacing: .075em;
  transition-duration: .3s;
}
.l_curriculum .accordion__body ul{
  padding-top: 20px;
  padding-left: 24px;
  display: flex;
  flex-direction: column;
  gap: 6.4px;
}
.l_curriculum .accordion__body ul li{
  padding-left: 16px;
  position: relative;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}
.l_curriculum .accordion__body ul li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #002c6a;
}
.l_curriculum .what{
  margin-left: auto;
  margin-right: auto;
  /* max-width: 1000px; */
  margin-top: 40px;
  padding: 32px 40px;
  border-radius: 20px;
  border: solid 1px #777;
  background-color: #fafafa;
}
.l_curriculum .what .c-heading-gr{
  margin-bottom: 16px;
  display: flex;
  align-items: center;
}
.l_curriculum .what .c-heading-gr .icon{
  width: 56px;
  aspect-ratio: 1 / 1;
}
.l_curriculum .what .c-heading-gr .txt{
  margin-left: 12px;
  display: block;
  width: calc(100% - 80px);
}
.l_curriculum .what .c-heading-gr .txt span{
  font-size: 16px;
}
.l_curriculum .what .c-heading-gr .txt h3{
  font-size: 24px;
  font-weight: 600;
  color: #000;
}

.l_curriculum .what .c-content{
  width: calc(100% - 16px);
  margin-left: auto;
  margin-right: auto;
}
.l_curriculum .what .c-content .desc{
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}
.l_curriculum .what .c-content .images{
  margin-top: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  /* gap: 16px; */
}
.l_curriculum .what .c-content .images .image{
  width: 33%;
  /* aspect-ratio: 16/9; */
  background-color: #ddd;
}

.l_curriculum .what .c-content .todo{
  margin-top: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.l_curriculum .what .c-content .todo .lr{
  display: flex;
  /* align-items: center; */
  justify-content: space-between;
  width: 100%;
}
.l_curriculum .what .c-content .todo .lr .left{
  width: 48.75%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.l_curriculum .what .c-content .todo .lr .right{
  width: 48.75%;
  display: flex;
  flex-direction: column;
  gap: 8px;

}
.l_curriculum .what .c-content .todo .lr .left .box{
  padding: 8px;
  text-align: center;
  font-weight: 600;

  letter-spacing: .1em;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  width: 100%;
  background-color: #fff;
  /* border: solid 1px #777; */
}
.l_curriculum .what .c-content .todo .lr .left .box:first-of-type{
  background-color: #000;
  color: #fff;
}
.l_curriculum .what .c-content .todo .lr .right .box{
  padding: 8px;
  text-align: center;
  font-weight: 600;
  letter-spacing: .1em;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  width: 100%;
  background-color: #e9e9e9;
  /* border: solid 1px #777; */
}
.l_curriculum .what .c-content .todo .lr .right .box:first-of-type{
  background-color: #000;
  color: #fff;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .l_curriculum{
    padding:40px 0;
  }
  .l_curriculum .heading-gr{
    margin-bottom: 24px;
  }
  .l_curriculum .content .training .training__left{
    width: 80px;
  }
  
  .l_curriculum .training__left {
    width: 80px;
  }
  .l_curriculum .training__right{
    width: calc(100% - 80px);
    margin-left: 24px;
  }
  
  .l_curriculum .step {
    padding: 24px 8px;
    font-size: 14px;
  }
  
  .l_curriculum .step::after {
    height: 24px;
  }
  
  
  .l_curriculum .training__right {
    flex: 1;
    margin-left: 8px;
  }
  
  .l_curriculum .accordion{
    padding: 12px;
  }
  .l_curriculum .accordion__head{
    font-size: 15px;
  }
  
  .l_curriculum .accordion__head .txt{
    display: block;
    width: calc(100% - 15.7px);
  }
  
  .l_curriculum .accordion__head::after {
    top: 3.5px;
  }
  .l_curriculum .accordion.is-active+.accordion:last-of-type{
    margin-top: 8px;
  }
  .accordion:last-of-type.is-active{
    padding-bottom: 8px;
  }
  
  .l_curriculum .accordion__body{
    font-size: 13px;
  }
  .l_curriculum .accordion__body ul{
    padding-top: 12px;
    padding-left: 4px;
    gap: 6.4px;
  }
  .l_curriculum .accordion__body ul li{
    padding-left: 16px;
    font-size: 13px;
  }
  .l_curriculum .accordion__body ul li::before{
    top: 8px;
  }
  .l_curriculum .what{
    margin-top: 24px;
    padding: 24px 16px;
    border-radius: 10px;
  }
  .l_curriculum .what .c-heading-gr{
    margin-bottom: 4px;
    align-items: flex-start;
  }
  .l_curriculum .what .c-heading-gr .icon{
    width: 32px;
  }
  .l_curriculum .what .c-heading-gr .txt{
    margin-left: 12px;
    display: block;
    width: calc(100% - 32px);
  }
  .l_curriculum .what .c-heading-gr .txt span{
    font-size: 12.5px;
    line-height: 1.3;
    display: block;
    margin-bottom: 4px;
  }
  .l_curriculum .what .c-heading-gr .txt h3{
    font-size: 18px;
  }
  
  .l_curriculum .what .c-content{
    width: calc(100% - 8px);
  }
  .l_curriculum .what .c-content .desc{
    font-size: 14px;
  }
  .l_curriculum .what .c-content .images{
    margin-top: 16px;
    gap: 4px;
    overflow-x: auto;
  }
  .l_curriculum .what .c-content .images .image{
    width: 100%;
  }
  
  .l_curriculum .what .c-content .todo{
    margin-top: 12px;
    gap: 25px;
  }
  .l_curriculum .what .c-content .todo .lr{
    display: block;
  }
  .l_curriculum .what .c-content .todo .lr .left{
    margin-bottom: 16px;
    width: 100%;
    gap: 4.8px;
  }
  .l_curriculum .what .c-content .todo .lr .right{
    width: 100%;
    gap: 4.8px;
  
  }
  .l_curriculum .what .c-content .todo .lr .left .box{
    padding: 4.8px;
    font-size: 14px;
  }
  
  .l_curriculum .what .c-content .todo .lr .right .box{
    padding: 4.8px;
    font-size: 14px;
  }
}

/* 
========================
l_aimanager
========================
*/
.l_aimanager{
  padding: 56px 0;
  background-color: #e9f4ff;
}
.l_aimanager .heading-gr{
  margin-bottom: 40px;
}

.l_aimanager .content .topdesc{
  margin-bottom: 32px;
  text-align: center;
  font-size: 18px;
  line-height: 1.8;
  color: #000;
  font-weight: 600;
}

.l_aimanager .content .about{
  margin-bottom: 40px;
}
.l_aimanager .content .about .lr{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.l_aimanager .content .about .lr .left{
  width:42.75%;
}
.l_aimanager .content .about .lr .left .image{
  width: 100%;
}
.l_aimanager .content .about .lr .left .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_aimanager .content .about .lr .right{
  width:52.75%;
}
.l_aimanager .content .about .lr .right .list{
  display: flex;
  flex-direction: column;
}
.l_aimanager .content .about .lr .right .list li{
  position: relative;
  padding: 16px 0 16px 24px;
  font-size: 18px;
  line-height: 1.5;
  color: #000;
  font-weight: 600;
  border-bottom: solid 1px #000;
}
.l_aimanager .content .about .lr .right .list li::before{
  content: "";
  position: absolute;
  left: 12px;
  top: 24.7px;
  width: 13px;
  height: 12px;
  z-index: 1;
  background-image: url(../image/l_aimanager/icon-down-arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(-90deg)  translateY(-50%);
}

.l_aimanager .content .detail{
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.l_aimanager .content .detail .block .lr{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
} 
.l_aimanager .content .detail .block .lr .left{ 
  width: 50.75%;
}
.l_aimanager .content .detail .block .lr .left .c-heading{
  font-size: 24px;
  font-weight: 600;
  color: #fc445d;
  border-bottom: solid 2.7197px #fc445d;
  letter-spacing: .075em;
  margin-bottom: 16px;
  padding-bottom: 8px;
}
.l_aimanager .content .detail .block .lr .left .c-heading strong{
  margin-right: 8px;
  background-color: #fc445d;
  color: #fff;
  padding: 4px 12px;
}
.l_aimanager .content .detail .block .lr .left .desc{
  font-size: 16px;
  line-height: 1.6;
  color: #000;
  letter-spacing: .075em;
}
.l_aimanager .content .detail .block .lr .left .desc strong{
  color: #fc445d;
}
.l_aimanager .content .detail .block .lr .right{
  width: 42.75%;
}
.l_aimanager .content .detail .block .lr .right .image{
  width: 100%;
}
.l_aimanager .content .detail .block .lr .right .image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 768px) {
  .l_aimanager{
    padding: 40px 0;
  }
  .l_aimanager .heading-gr{
    margin-bottom: 24px;
  }
  
  .l_aimanager .content .topdesc{
    margin-bottom: 16px;
    text-align:left;
    font-size: 14px;
  }
  
  .l_aimanager .content .about{
    margin-bottom: 24px;
  }
  .l_aimanager .content .about .lr{
    flex-direction: column;
  }
  .l_aimanager .content .about .lr .left{
    width:100%;
  }
  .l_aimanager .content .about .lr .right{
    margin-top:0;
    width:100%;
  }
  .l_aimanager .content .about .lr .right .list li{
    padding: 12px 0 12px 28px;
    font-size: 15px;
  }

  .l_aimanager .content .about .lr .right .list li:first-of-type{
    padding-top: 12px;
  }

  .l_aimanager .content .about .lr .right .list li::before{
    left: 12px;
    top: 17px;
    width: 13px;
    height: 12px;
  }
  
  .l_aimanager .content .detail{
    gap: 24px;
  }
  .l_aimanager .content .detail .block .lr{
    flex-direction: column;
  } 
  .l_aimanager .content .detail .block .lr .left{ 
    width: 100%;
  }
  .l_aimanager .content .detail .block .lr .left .c-heading{
    font-size: 18px;
    margin-bottom: 8px;
    padding-bottom: 8px;
  }
  .l_aimanager .content .detail .block .lr .left .c-heading strong{
    margin-right: 4.8px;
    padding: 4px 8px;
  }
  .l_aimanager .content .detail .block .lr .left .desc{
    font-size: 14px;
  }
  .l_aimanager .content .detail .block .lr .right{
    margin-top: 16px;
    width: 100%;
  }
}

/* 
========================
l_supervisor
========================
*/
.l_supervisor {
  padding: 56px 0 0;
  background-color: #fff;
}
.l_supervisor .heading-gr {
  margin-bottom: 40px;
}

.l_supervisor .content .intro{
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}

.l_supervisor .content .intro .lr {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.l_supervisor .content .intro .lr .left {
  width: 40%;
}
.l_supervisor .content .intro .lr .left img {
  display: block;
}
.l_supervisor .content .intro .lr .left .sub {
  margin-top: 3px;
}
.l_supervisor .content .intro .lr .left .sub img {
  width: 100%;
  height: 100%;
}
.l_supervisor .content .intro .lr .right {
  width: 55.75%;
}

.l_supervisor .content .intro .lr .right .txt-gr .upper{
  /* margin-bottom: 24px; */
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .only-txt {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  letter-spacing: .075em;
  width:50%;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .only-txt span {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  letter-spacing: .075em;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .name {
  margin-top: 16px;
  font-size: 32px;
  font-weight: 600;
  color: #000;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .box {
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  background-color: #e9f4ff;
  border-radius: 10px;
  border: solid 1px #002c6a;
  padding: 24px;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .box ul {
  padding-left: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.l_supervisor .content .intro .lr .right .txt-gr .upper .box ul li {
  font-size: 16px;
  font-weight: 600;
  color: #002c6a;
  list-style: disc;
  letter-spacing: .075em;
}

.l_supervisor .content .intro .lr .right .txt-gr .list{
  margin-bottom: 16px;
  list-style: none;
}
.l_supervisor .content .intro .lr .right .txt-gr .list li {
  padding: 8px 0;
  font-size: 14px;
  font-weight: 600;
  color: #000;
  border-bottom: solid 2px #ddd;
  list-style: none;
  letter-spacing: .075em;
}


.l_supervisor .content .videos{
  margin-top: 24px;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
  background-color: #e9f4ff;
  padding: 32px 24px;
}

.l_supervisor .content .videos .items {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.l_supervisor .content .videos .items li {
  width: 32%;
}
.l_supervisor .content .videos .items li iframe {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 768px) {
  .l_supervisor {
    padding: 40px 0 0;
  }
  .l_supervisor .heading-gr {
    margin-bottom: 24px;
  }
  
  .l_supervisor .content .intro{
    width: 100%;
  }
  
  .l_supervisor .content .intro .lr {
    flex-direction: column;
  }
  .l_supervisor .content .intro .lr .left {
    width: 100%;
  }
  .l_supervisor .content .intro .lr .left img {
    display: block;
  }
  .l_supervisor .content .intro .lr .right {
    width: 100%;
  }
  
  .l_supervisor .content .intro .lr .right .txt-gr .upper{
    margin-top: 24px;
    display: block;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .only-txt {
    font-size: 14px;
    width:100%;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .only-txt span {
    font-size: 14px;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .name {
    margin-top: 8px;
    font-size: 24px;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .box {
    margin-top: 8px;
    width: 100%;
    gap: 16px;
    padding: 12px 16px;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .box ul {
    padding-left: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .upper .box ul li {
    font-size: 14px;
  }
  
  .l_supervisor .content .intro .lr .right .txt-gr .list{
    margin-top: 16px;
    margin-bottom: 16px;
    list-style: none;
  }
  .l_supervisor .content .intro .lr .right .txt-gr .list li {
    font-size: 14px;
  }
  
  
  .l_supervisor .content .videos{
    margin-top: 12px;
    width:100%;
    padding: 24px 12px;
  }
  
  .l_supervisor .content .videos .items {
    gap: 12px;
  }
  .l_supervisor .content .videos .items li {
    width: 100%;
  }
}

/* 
========================
l_teachers
========================
*/
.l_teachers {
  padding: 56px 0;
  background-color: #fff;
}
.l_teachers .heading-gr {
  margin-bottom: 40px;
}
.l_teachers .content .items {
  margin-left: auto;
  margin-right: auto;
  width: 85%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2%;
}
.l_teachers .content .items li {
  width: 48.75%;
  background-color: #e9f4ff;
  border-radius: 10px;
  padding: 24px;
  box-shadow: 3px 3px 0px 0 #002c6a;
}
.l_teachers .content .items li .image {
  width: 50%;
  border-radius: 50%;
  overflow: hidden; 
  margin-bottom: 16px;
  margin-left: auto;
  margin-right: auto;
}
.l_teachers .content .items li .image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}


.l_teachers .content .items li .name-gr {
  margin-bottom: 16px;
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  color: #000;
  letter-spacing: .075em;
}
.l_teachers .content .items li .name-gr span {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .0;
  color: #606060;
}
.l_teachers .content .items li .name-gr h3 {
  font-size: 24px;
  font-weight: 600;
  color: #002c6a;
  letter-spacing: .0em;
}
.l_teachers .content .items li .work {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.l_teachers .content .items li .work .heading {
  font-size: 18px;
  font-weight: 600;
  color: #002c6a;
  width: 100px;
  text-align: center;
  display: inline-block;
}
.l_teachers .content .items li .work .desc {
  padding-left: 16px;
  width: auto;
  font-size: 16px;
  font-weight: 600;
  color: #000;
  letter-spacing: .075em;
}
.l_teachers .content .items li .bottom {
  margin-top: 16px;
  font-size: 16px;
  color: #000;
}
.l_teachers .content .items li .bottom strong {
  color: #002c6a;
  font-weight: 600;
}

@media (max-width: 768px) {
  .l_teachers {
    padding: 40px 0;
  }
  .l_teachers .heading-gr {
    margin-bottom: 24px;
  }
  .l_teachers .content .items {
    width: 100%;
  }
  .l_teachers .content .items li {
    width: 80%;
    padding: 24px 16px;
  }
  .l_teachers .content .items li .image {
    width: 50%;
    margin-bottom: 12px;
  }

  .l_teachers .content .items li .name-gr {
    margin-bottom:8px;
    font-size: 18px;
  }
  .l_teachers .content .items li .name-gr span {
    font-size: 11px;
  }
  .l_teachers .content .items li .name-gr h3 {
    font-size: 19px;
  }
  
  .l_teachers .content .items li .work .heading {
    font-size: 16px;
    width: auto;
    background-color: #002c6a;
    color: #fff;
    padding: 4px 12px;
  }
  .l_teachers .content .items li .work .desc {
    margin-top: 4px;
    padding-left:0px;
    font-size: 14px;
    text-align: center;
  }
  .l_teachers .content .items li .bottom {
    margin-top: 8px;
    font-size: 14px;
  } 
}

/* 
========================
l_flow
========================
*/
.l_flow{
  padding: 56px 0;
  background-color: #e6f0fa;
}

.l_flow .heading-gr {
  margin-bottom: 40px;
}
.l_flow .topdesc{
  text-align: center;
}

.l_flow .content .items{
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.l_flow .content .items li {
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  padding: 40px 24px 32px;
}
.l_flow .content .items li::after{
  content: "";
  position: absolute;
  bottom: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 19px;
  height: 16px;
  z-index: -1;
  background-image:url(../image/l_flow/icon-arrow.svg);
  z-index: 2;
}
.l_flow .content .items li:last-of-type::after{
  display: none;
}
.l_flow .content .items li .lr {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.l_flow .content .items li .lr .left {
  width: 109px;
  text-align: center;
}
.l_flow .content .items li .lr .left img {
  margin-left:auto;
  margin-right: auto;
  display: block;
  width: 80%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.l_flow .content .items li .lr .right {
  border-left: solid 1px #002c6a;
  margin-left: 32px;
  padding-left: 32px;
  width: calc(100% - 109px);
  display: flex;
  align-items: center;
}
.l_flow .content .items li .lr .right .txt-gr {
  padding-right: 24px;
  width: calc(100% - 250px);
}
.l_flow .content .items li .lr .right .txt-gr h3 {
  font-size: 24px;
  font-weight: 600;
  color: #002c6a;
  margin-bottom: 12px;
}
.l_flow .content .items li .lr .right .txt-gr .p {
  font-size: 16px;
  color: #000;
  line-height: 1.8;
}
.l_flow .content .items li .lr .right .txt-gr .p strong {
  color: #002c6a;
  font-weight: 600;
}
.l_flow .content .items li .lr .right .txt-gr a {
  border-bottom: solid 1px;
}
.l_flow .content .items li .lr .right .txt-gr .p strong {
  color: #002c6a;
}
.l_flow .content .items li .lr .right .txt-gr .caution{
  margin-top: 8px;
  display: block;
  font-size: 16px;
  font-weight: 400;
  color: #000;
  line-height: 1.8;
  margin-top: 12px;
}
.l_flow .content .items li .lr .right .box {
  margin-top: 16px;
  flex-wrap: wrap;
  border: solid 1px #000;
  padding: 16px 40px;
}
.l_flow .content .items li .lr .right .box .lr {
  margin-top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* flex-wrap: wrap; */
  gap: 16px;
}
.l_flow .content .items li .lr .right .box .lr .left,
.l_flow .content .items li .lr .right .box .lr .right {
  width: 50%;
  margin: 0;
  text-align: left;
  font-weight: 600;
  border: none;
  padding: 0;
}
.l_flow .content .items li .lr .right .image {
  width: 250px;
}
.l_flow .content .items li .lr .right .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 768px) {
  .l_flow{
    padding: 40px 0;
  }
  
  .l_flow .heading-gr {
    margin-bottom: 24px;
  }

  .l_flow .topdesc{
    font-size: 14px;
    text-align: left;
  }
  
  .l_flow .content .items{
    margin-top: 16px;
    gap: 32px;
  }
  .l_flow .content .items li {
    padding: 20px 16px 20px;
  }
  .l_flow .content .items li::after{
    bottom: -23px;
    width: 15px;
    height: 12px;
  }

  .l_flow .content .items li .lr {
    align-items: flex-start;
  }
  .l_flow .content .items li .lr .left {
    padding-right: 12px;
    width: 64px;
    text-align: center;
  }
  .l_flow .content .items li .lr .left img {
    width: 100%;
  }
  .l_flow .content .items li .lr .right {
    margin-left: 0px;
    padding-left: 12px;
    width: calc(100%);
    display: block;
  }
  .l_flow .content .items li .lr .right .txt-gr {
    padding-right: 0;
    width: calc(100%);
  }
  .l_flow .content .items li .lr .right .txt-gr h3 {
    font-size: 20px;
    margin-bottom: 12px;
  }
  .l_flow .content .items li .lr .right .txt-gr .p {
    font-size: 13px;
  }
  .l_flow .content .items li .lr .right .txt-gr .caution{
    margin-top: 8px;
    display: block;
    font-size: 14px;
    margin-top: 8px;
  }
  .l_flow .content .items li .lr .right .box {
    margin-top:8px;
    padding: 8px 16px;
  }
  .l_flow .content .items li .lr .right .box .lr {
    gap: 8px;
    font-size: 13px;
    display: block;
  }
  .l_flow .content .items li .lr .right .box .lr .left,
  .l_flow .content .items li .lr .right .box .lr .right {
    width: 100%;
    margin-top: 4px;
    text-align: left;
  }
  .l_flow .content .items li .lr .right .image {
    margin-top: 12px;
    width: 100%;
  }
}

/* 
========================
l_faq
========================
*/

.l_faq{
  padding: 56px 0;
  background-color: #fff;
}

.l_faq .heading-gr {
  margin-bottom: 40px;
}

.l_faq .content .cat .heading{
  margin-top: 56px;
  margin-bottom: 32px;
  border-bottom: solid 2px #002c6a;  
  font-size: 24px;
  font-weight: 600;
  color: #002c6a;
  letter-spacing: .1em;
  padding-bottom: 8px;
  display: block;
  width: 100%;
}

.l_faq .content .cat .qa {
  padding: 32px 40px;
  margin-top: 24px;
  display: block;
  width: 95%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 50px;
  background-color: #e6f0fa;
  /* transition-duration: .5s; */
}
.l_faq .content .cat .qa.is-open {
  /* border-radius: 0; */
  transition-duration: .2s;
  background-color: #fff7eb;
}
.l_faq .content .cat .qa:hover {
  cursor: pointer;
}

.l_faq .content .cat .qa h4 {
  padding-left: 64px;
  position: relative;
  font-size: 20px;
  font-weight: 600;
  color: #002c6a;
  letter-spacing: .075em;
  display: block;
  width: calc(100% - 56px);
}
.l_faq .content .cat .qa h4::before{
  content: "";
  position: absolute;
  left: 0;
  top: -11px;
  width: 51px;
  height: 51px;
  background-image: url(../image/l_faq/txt-q.svg);
  background-size: contain;
}
.l_faq .content .cat .qa h4::after{
  position: absolute;
  right: -56px;
  top: 7px;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f067";
  margin-left: 0;
  transition: transform 0.3s ease;
}

.l_faq .content .cat .qa.is-open h4::after{
  content: "\f068";
}
.qa .desc {
  display: none;
  transition: all 0.3s ease;
  padding: 10px 63px;
}

.qa.is-open .desc {
  display: block;
  transition-duration: .2s;
}

@media (max-width: 768px) {
  .l_faq{
    padding: 40px 0;
  }
  
  .l_faq .heading-gr {
    margin-bottom: 24px;
  }
  
  .l_faq .content .cat .heading{
    margin-top: 28px;
    margin-bottom: 16px;
    font-size: 18px;
    padding-bottom: 4px;
  }
  
  .l_faq .content .cat .qa {
    padding: 8px 8px;
    margin-top: 16px;
    width: 100%;
    border-radius: 0px;
  }
  
  .l_faq .content .cat .qa h4 {
    padding-left: 28px;
    position: relative;
    font-size: 15px;
    width: calc(100% - 32px);
  }
  .l_faq .content .cat .qa h4::before{
    top: 0px;
    width: 22px;
    height: 22px;
  }
  .l_faq .content .cat .qa h4::after{
    right: -32px;
    top: 4px;
  }
  .qa .desc {
    font-size: 13px;
    padding: 10px 32px;
  }
}

/* 
========================
footer
========================
*/
.footer {
  padding: 56px 0;
  background-color: #002c6a;
  text-align: center;
}
.footer .logo{
  width: 100%;
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
}
.footer .logo img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.footer .name{
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  letter-spacing: .1em;
}
.footer .copyright{
  margin-top: 16px;
  font-size: 11px;
  color: #fff;
  display: block;
}

@media (max-width: 768px) {
  .footer {
    padding: 28px 0;
  }
  .footer .logo{
    max-width: 100px;
  }
  .footer .name{
    font-size: 12.5px;
  }
  .footer .copyright{
    margin-top: 12px;
    font-size: 10px;
  }
}


.privacy-popup{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1000;
  transition: all 0.3s ease; 
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
}
.privacy-popup.is-active{
  visibility: visible;
  opacity: 1;
  transition: all 0.3s ease;
}
.privacy-popup .inner{
  max-width: 800px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.privacy-popup .inner .content{
  position: relative;
  padding: 64px 32px;
  overflow-y: auto;
  height: calc(100vh - 80px);
  background-color: #fff;
}
.privacy-popup .inner .content .cross{
  position: absolute;
  top: 32px;
  right: 32px;
  width: 20px;
  height: 20px;
  cursor: pointer;
}
.privacy-popup .inner .content .cross span{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000;
}
.privacy-popup .inner .content .cross span:first-of-type{
  transform: rotate(45deg);
}
.privacy-popup .inner .content .cross span:last-of-type{
  transform: rotate(-45deg);
}
.privacy-popup .inner .content .privacy-policy h2{
  font-size: 15px;
  font-weight: 600;
  color: #000;
  margin-bottom: 4px;
}
.privacy-popup .inner .content .privacy-policy p{
  font-size: 12px;
  color: #000;
  line-height: 1.7;
  margin-bottom: 8px;
}
