@charset "UTF-8";
:root {
    --main-font-color: #fff;
    --sub-color: #333333;
    --gray-dark: #555555;
    --gray-bright: #717171;
    --accent-color: #B4AC97;
    --bg-color: #1E1E1E;
}
/*--------------------------------
 レイアウト
---------------------------------*/
/*--------------------------------
 header
---------------------------------*/
/*--------------------------------
 footer
---------------------------------*/
/*--------------------------------
 index_共通
---------------------------------*/
@media screen and (max-width: 752px) {
    .top-ourstyle .top-hgroup {
        margin-bottom: 50px;
    }
}
/*--------------------------------
 index_メインビジュアル
---------------------------------*/
.index .main-visual-text .main {
    font-size: 34px;
    margin-bottom: 27px;
}
.index .main-visual-text .sub {
    font-size: 16px;
}
/*--------------------------------
 index_ourstyle
---------------------------------*/
@media screen and (max-width: 870px) {
    .top-ourstyle .img-anime {
        width: 46%;
    }
}
@media screen and (max-width: 752px) {
    .top-ourstyle .img-anime {
        top: 38%;
    }
}
@media screen and (max-width: 650px) {
    .top-ourstyle .img-anime {
        position: static;
        width: 100%;
    }
    .top-ourstyle .img-anime2 {
        width: 100%;
    }
}
/*--------------------------------
 index_work
---------------------------------*/
.top-work-card .date,
.top-work-card .title {
    padding: 0 5%;
}
.top-work-card .date {
    margin-top: 18px;
}
/*--------------------------------
 index_award
---------------------------------*/
.top-flex .img-box {
    flex: auto;
}
.top-flex {
    column-gap: 30px;
}
.top-flex .text-box p {
    line-height: 1.8;
}
@media screen and (max-width: 650px) {
    .top-flex {
        flex-direction: column-reverse;
    }
    .top-flex .img-box {
        width: auto;
        margin-left: auto;
    }
}
/*--------------------------------
 index_voice
---------------------------------*/
@media screen and (max-width: 650px) {
    .top-voice .top-flex {
        flex-direction: column;
    }
    .top-voice .top-flex .img-box {
        width: auto;
        margin-right: auto;
        margin-left: auto;
    }
}
/*--------------------------------
 index_news
---------------------------------*/
@media screen and (max-width: 950px) {
    .news-tab-box {
        flex-direction: column;
    }
    .list-box,
    .tab-panel {
        width: 100%;
    }
    .list-box .tab-list {
        display: flex;
        column-gap: 2em;
        margin-bottom: 1.5em;
    }
    .top-news .btn01 a {
        margin-left: auto;
    }
    .no-posts {
        padding: 0;
    }
}
/*--------------------------------
 index_company.recruit
---------------------------------*/
@media screen and (max-width: 890px) {
    .top-company .flex {
        flex-direction: column;
    }
    .img-big {
        width: 100%;
    }
}
/*--------------------------------
 下層_共通レイアウト
---------------------------------*/
/* 画像なし */
.lower-main-visual {
    /* padding: 180px 0 100px;
    padding: 80px 0 50px; */
    padding-top: clamp(6.25rem, -5.512rem + 26.85vw, 11.25rem);
    padding-bottom: clamp(3.125rem, -4.226rem + 16.78vw, 6.25rem)
}
/* 画像あり */
.lower-main-visual .lower-mv-img {
    /* margin-top: 100px;
    margin-top: 45px; */
    margin-top: clamp(2.813rem, -5.274rem + 18.46vw, 6.25rem);
}
.table-base th {
    width: 25%;
}
.table-base th {
    padding: 32px 20px 32px 12px;
}
@media screen and (max-width: 901px) {
    .lower-section-heading {
        margin-bottom: 25px;
    }
}
/*--------------------------------
 下層_NEWS一覧
---------------------------------*/
.lower-news .list-box,
.lower-news .tab-panel {
    width: 100%;
}
.lower-news .list-box .tab-list .tab-item {
    margin-bottom: 0;
}
.lower-news .category-box {
    /* margin-bottom: 70px;
    margin-bottom: 35px; */
    margin-bottom: clamp(2.188rem, -2.958rem + 11.74vw, 4.375rem);
}
/*--------------------------------
 下層_NEWS詳細
---------------------------------*/
/*--------------------------------
 下層_Works詳細
---------------------------------*/
/*--------------------------------
 下層_Works一覧
---------------------------------*/
.works-flex {
    column-gap: 20px;
    row-gap: 50px;
}
/*--------------------------------
 下層_company
---------------------------------*/
.greeting-flex {
    /* gap: 90px;
    gap: 30px; */
    gap: clamp(1.875rem, -0.322rem + 5.01vw, 5.625rem);
}
.history-slide .swiper-slide .data {
    /* font-size: 60px;
    font-size: 40px; */
    font-size: clamp(2.5rem, -2.525rem + 10.05vw, 3.75rem);
}
.history-slide .swiper-slide {
    /* padding-top: 127px;
    padding-top: 80px; */
    padding-top: clamp(5rem, -6.809rem + 23.62vw, 7.938rem);
}
@media screen and (max-width: 799px) {
    .history-slide .swiper-slide {
        /* padding-top: 100px;
        padding-top: 80px; */
        padding-top: clamp(5rem, 1.206rem + 10.1vw, 6.25rem);
        /* padding-right: 30px;
        padding-right: 15px; */
        padding-right: clamp(0.938rem, -1.908rem + 7.58vw, 1.875rem);
        padding-left: clamp(0.938rem, -1.908rem + 7.58vw, 1.875rem);
    }
}
.swiper-controller {
    /* margin-top: 60px;
    margin-top: 50px; */
    margin-top: clamp(3.125rem, 2.181rem + 2.51vw, 3.75rem);
}
.history .history-slide p {
    line-height: 1.5;
}
/*--------------------------------
 下層_匠takumi
---------------------------------*/
.takumi-mv-text img {
    /* width: 60%; */
}
.takumi .takumi-desc .desc-area {
    width: 50%;
}
.takumi-sec1-flex {
    flex-direction: column;
    gap: 0;
}
.takumi-sec1-flex .contents-right {
    margin-top: 0;
    width: 60%;
}
.takumi .takumi-sec1 h2,
.takumi .takumi-sec2 h2 {
    margin-bottom: 30px;
}
.xMoveLists__listItem {
    width: 300px;
}
/*--------------------------------
 下層_ourstyle
---------------------------------*/
.ourstyle-lead .img-leftbox {
    display: none;
}
.ourstyle-lead .text-area {
    margin: auto;
    padding-left: 10%;
    max-width: none;
}
.ourstyle-lead .img-rightbox {
    width: auto;
    /* right: 0;
    right: -162px; */
    right: clamp(-10.125rem, -33.943rem + 54.36vw, 0rem);
}
.feature-top .title img {
    width: 120px;
}
.feature-top .flex {
    gap: 10px;
}
.feature-top .title h2 {
    font-size: 24px;
}
.card-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.card-container>li:nth-of-type(1) {
    grid-area: 1 / 1 / 2 / 2;
}
.card-container>li:nth-of-type(2) {
    grid-area: 1 / 2 / 2 / 3;
}
.card-container>li:nth-of-type(3) {
    grid-area: 2 / 1 / 3 / 3;
}
.zeh .zeh-bgarea img {
    max-width: 800px;
}
.schedule .schedule-title {
    /* font-size: 29px;
    font-size: 21px; */
    font-size: clamp(1.313rem, 0.131rem + 2.69vw, 1.813rem);
}
.mastery .ourstyle-flex .text-box {
    padding: 50px 0px 50px 40px;
}
.mastery .ourstyle-flex .img-box {
    height: 500px;
}

.zeh .zeh-flex {
    flex-direction: column;

}

.zeh .zeh-list,
.zeh .zeh-table {
    width: 100%;
}


/*--------------------------------
 下層_contact
---------------------------------*/
@media screen and (max-width: 820px) {
    #add_text {
        width: 76%;
    }

}