/* ---------------------------------------- 
 - BASE
---------------------------------------- */
h2{
    font-family:var(--font_en);
    font-weight: normal;
    letter-spacing: 0.12em;
}
p,a{
     letter-spacing: 0.12em;
}
/* ---------------------------------------- 
 - BASE終了
---------------------------------------- */
/* ---------------------------------------- 
 - 共通パーツ
---------------------------------------- */

/* ページ内ボタン(btn) */
   .btn{
        margin: 0 auto;
        border: 1px solid var(--color_border);
        height: 40px;
        width: 80%;
        max-width: 270px;
        margin-top: 40px;
   }
    .btn a{
        width: 100%;
        height: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        column-gap: 15px;
        color: var(--color_text);
        font-size: 12px;
    }
    .btn_arrow{
        width: 20px;
    }
@media screen and (min-width: 768px) {

}
@media screen and (min-width: 1024px) {
    .btn{
        width: 270px;
        height: 48px;
        margin-top: 60px;
    }
    .btn a{
        font-size: 14px;
    }
}
/* ---------------------------------------- 
 - 共通パーツ終了
---------------------------------------- */
/* ---------------------------------------- 
 - TOP
---------------------------------------- */
.top_area {
    width: 100vw;
    height: 47vh;
    padding-top: 80px;
}

.top_video{
    width: 100%;
    height: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.top_video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media screen and (min-width: 768px) {

}
@media screen and (min-width: 1024px) {
    .top_area{
    width: 100vw;
    height: 100vh;
}
}
/* ---------------------------------------- 
 - TOP終了
---------------------------------------- */

/* ---------------------------------------- 
 - About
---------------------------------------- */
#about{
    background-color: var(--color_bg_blue);
}
.about_area{
    padding: 100px 0;
    width: 90%;
    margin: 0 auto;

}
.about_ttl h2{
    text-align: center;
    color: var(--color_text_white);
        font-family: var(--font_jp_top);
        font-weight: bold;
        letter-spacing: 0.12em;
        font-size: 18px;
}
.about_ttl h3{
    text-align: center;
    color: var(--color_text_white);
    font-family: var(--font_en_top);
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.12em;
    margin-top: 15px;
}
.about_txt p{
    font-size: 12px;
    text-align: center;
    color: var(--color_text_white);
    font-family: var(--font_jp_top);
    letter-spacing: 0.15em;
    line-height: 250%;
    margin-top: 30px;
}

@media screen and (min-width: 768px) {
    .about_area{
        padding: 120px  0;
    }
.about_ttl h2{
    text-align: center;
        letter-spacing: 0.12em;
        font-size: 24px;
}
.about_ttl h3{
    font-size: 18px;
}
.about_txt p{
    font-size: 14px;
}
}
@media screen and (min-width: 1024px) {
    .about_area{
    width: 100%;

    padding: 160px 0;
}
.about_ttl h2{
        font-size: 28px;
}
.about_ttl h3{ 
        font-size: 16px;
        margin-top: 20px;
}
.about_txt{
    margin-top: 60px;
}
.about_txt p{
        font-size: 20px;
    line-height: 250%;
}
.about_txt p{
    line-height: 300%;
}
}
/* ---------------------------------------- 
 - About終了
---------------------------------------- */
/* ---------------------------------------- 
 - Products
---------------------------------------- */
    .products_area{
    width: 85%;
    max-width: 600px;
    margin: 0 auto;
    margin-top: 80px;
    margin-bottom: 80px;
}
.products_ttl h2{
        text-align: center;
    font-size: 18px;
    font-family: var(--font_en_top);
}
.products_li{
        width: 100%;
        margin-top: 40px;
        display: flex;
        flex-wrap: wrap;
        column-gap: 20px;
        row-gap: 30px;
}
.products_li li{
    width:calc(50% - 10px);
}
.products_li li h3{
    margin-top: 10px;
        font-family: var(--font_en);
    font-weight: normal;
    letter-spacing: 0.15em;
    font-size: 14px;
    text-align: center;
}
.products_li li h4{
    margin-top: 5px;
    font-family: var(--font_jp);
    font-weight: normal;
    font-size: 12px;
        text-align: center;
}
@media screen and (min-width: 768px) {
.products_ttl h2{
    font-size: 24px;
}
.products_area{
    margin-top: 100px;
    margin-bottom: 100px;
}
.products_li{
    column-gap: 30px;
    margin-top: 60px;
}
.products_li li {
    width: calc(50% - 15px);
}
}
@media screen and (min-width: 1024px) {
    .products_area{
   margin-top: 140px;
   margin-bottom: 140px;
   max-width: none;
}
.products_ttl h2{
    text-align: center;
    font-size: 28px;
}
    .products_area{
        max-width: 1200px;
    }
        .products_li{
        max-width:none;
        position: relative;
        width: 90%;
        margin: 0 auto;
         margin-top: 60px;
        padding-left: 5%;
        padding-right: 5%;

    }
.products_li li{
    width: 100%;
        padding: 0 20px;
}
    .products_img{
        aspect-ratio: 1/1;
}
.products_img img{
    object-fit: cover;
}
.products_li_slide .slick-prev,
.products_li_slide .slick-next {
  position: absolute;
  border: none;
  bottom: -0px; /* ← スライダーの下位置 調整可能 */
  transform: none;
}
.products_work{
    font-size: 16px;
    height: 40px;
}
.products_li_slide .slick-prev {
    width: 40px;
    height: 40px;
    border-radius: 99px;
    border: none;
  background-color: var(--color_blue);
  left: 0;
    top: 50%;
     transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
   cursor: pointer;


}
.products_li_slide .slick-next {
  right: 0;
  top: 50%;
    width: 40px;
    height: 40px;
    border-radius: 99px;
      background-color: var(--color_blue);
         transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
       cursor: pointer;
}
.products_li_ttl{
    font-size: 16px;
    line-height: 150%;
    margin-top: 10px;
}
.products_border{
    margin-top: 15px;
}
.slick-slide img{
    border-radius: 20px;
}
.products_li_slide .slick-prev img,.products_li_slide .slick-next img{
    width: 30px;
}
.slick-slide h3{
    margin-top: 20px;
    font-size: 16px;

}
}
/* ---------------------------------------- 
 - Products終了
---------------------------------------- */

/* ---------------------------------------- 
 - NEWS
---------------------------------------- */
#news{
    background-color:var(--color_bg_lightblue) ;
}
.news_area{
        padding:80px 0;
}
    .news_li{
       margin: 0 auto;
    }
    
.news_ttl h2{
    text-align: center;
    font-size: 18px;
    font-family: var(--font_en_top);
}
    .news_li{
        width: 85%;
        display: flex;
        flex-wrap: wrap;
        row-gap: 20px;
        margin-top: 40px;
    }
         .news_li li{
        width: 100%;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--color_border);
     }
    .news_li-link{
        color: var(--color_text);
    }
    .news_li p{
        margin-top: 5px;
        font-size: 12px;
    }
    .date{
        font-size: 12px;
    }

@media screen and (min-width: 768px) {
    .news_li{
        max-width: 780px;
    }
    .news_ttl h2{
      font-size: 24px;
    }
}
@media screen and (min-width: 1024px) {
    .news_area{
        padding:140px 0;
    }
    .news_ttl h2{
                font-size: 28px;
    }
    .news_li{
        width: 60%;
        margin-top: 60px;
        display: flex;
        flex-wrap: wrap;
        row-gap: 20px;
    }
         .news_li li{
         padding-bottom: 20px;           
         }
    .news_li-link{
        display: flex;
        flex-wrap: wrap;
        
    }
    .news_li p,.news_li time{
        font-size: 14px;
    }
    .date{
        width: 150px;
    }
}   
/* ---------------------------------------- 
 - NEWS 終了
---------------------------------------- */