: oot {
    --body-color: white;
    --ac-color: black;
    --grean-color: #74A880;
    --gray-color-01: #DFDFDF;
    --blur-color-01: #44699A;
    --font-48_250-mob: clamp(3rem, -0.218rem + 13.2vw, 15.625rem);
    --font-32_128-mob: clamp(2rem, 0.471rem + 6.27vw, 8rem);
    --font-20_68-mob: clamp(1.25rem, 0.485rem + 3.14vw, 4.25rem);
    --font-15_50-mob: clamp(0.938rem, 0.38rem + 2.29vw, 3.125rem);
    --font-64-mob: 4em;
    --font-40_128-mob: clamp(2.5rem, 1.098rem + 5.75vw, 8rem);
    --font-24_32-mob: clamp(1.5rem, 1.373rem + 0.52vw, 2rem);
    --font-24_78-mob: clamp(1.5rem, 0.64rem + 3.53vw, 4.875rem);
    --font-16_48-mob: clamp(1em, 0.49rem + 2.09vw, 3rem);
    --font-16_32-mob: clamp(1em, 0.745rem + 1.05vw, 2rem);
    --font-15_32-mob: clamp(0.938rem, 0.667rem + 1.11vw, 2rem);
    --font-15_24-mob: clamp(0.938rem, 0.794rem + 0.59vw, 1.5rem);
    --font-14_40-mob: clamp(0.875rem, 0.461rem + 1.7vw, 2.5rem);
    --font-14_32-mob: clamp(0.875rem, 0.588rem + 1.18vw, 2rem);
    --font-14_18-mob: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
    --font-12_16-mob: clamp(0.75rem, 0.686rem + 0.26vw, 1em);
    --font-8-mob: 0.5em;
    --font-12_24-mob: clamp(0.75rem, 0.559rem + 0.78vw, 1.5rem);
    --font-10_24-mob: clamp(0.625rem, 0.402rem + 0.92vw, 1.5rem);
    --font-10_18-mob: clamp(0.625rem, 0.498rem + 0.52vw, 1.125rem);
    --border-lli-110: 6.1vw;
    --border--li-120: 6.25vw;
    --border-li-116: 6.04vw;
    --border-li-29: 1.51vw;

    --ff-default: "Avenir", "Helvetica Neue", "Helvetica", "Arial",
        "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo",
        "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック";
}


@font-face {
    font-family: "gill-sans-bold";
    src: url("./font/gill-sans-ultra-bold.ttf");
    font-display: swap;
}

.messege_box .ceo_message h1,
.top_ti h1 {
    font-family: "gill-sans-bold", sans-serif;
    font-style: normal;
}

.messege_box .ceo_message p,
.top_ti p {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 400;
    font-style: normal;
}

.messege_box .ceo_message p,
.top_ti p {
    font-size: clamp(1em, 0.745rem + 1.05vw, 2rem);
    display: flex;
    flex-direction: column;
    line-height: 1;
    letter-spacing: 0.4rem;
    font-size: var(--font-14_32-mob);
}

.messege_box .ceo_message h1,
.top_ti h1 {
    position: relative;
    font-size: var(--font-40_128-mob);
    color: #000;
    text-align: left;
    display: inline-block;
    z-index: 10;
    letter-spacing: 0.4rem;
}

.messege_box .ceo_text {
    letter-spacing: 0.1em;
    font-size: 16px;
    /* font-family: "Zen Maru Gothic", serif; */
    font-family: "FP-ヒラギノ角ゴ StdN W2", var(--ff-default), sans-serif;
    font-weight: 200;
    font-style: normal;
    line-height: 2em;
}




/*株式会社概要*/
.top_im_t_set {
    display: flex;
    flex-direction: row;
    align-items: center;
}


.top_ti {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 8% 0;
}

.top_ti.ceo_message {
    align-items: flex-start;
    margin-bottom: 4%;
}

.top_ti.about_com {
    align-items: flex-start;
}

.top_ti p {
    color: var(--ac-color);
    z-index: 10;
    line-height: 1;
    margin-bottom: 0px;
}

.top_ti h1 {
    position: relative;
    text-align: left;
    display: inline-block;
    z-index: 10;
    line-height: 1;
    letter-spacing: 0.4rem;
}

.top_ti:has(.kg_h1) {
    margin-bottom: 5%;

}

.tes_teeee {
    position: relative;
    text-align: left;
    margin-left: 23%;
}

.tes_teeee .top_ti {
    display: inline-block;
    position: relative;
    text-align: center;
}


.top_ti .kg_text {
    font-size: clamp(0.75rem, 0.623rem + 0.52vw, 1.25rem);
}

.top_ti .kg_h1 {
    font-size: clamp(2.5rem, 1.831rem + 2.75vw, 5.125rem);
}

.main_text_hob .ab_text {
    padding: 0 30%;
}

.top_img {
    width: 50%;
}

.top_img img {
    width: 100%;
    /* height: auto; */
    object-fit: cover;
    border-radius: 0px 70px 70px 0px;
    height: auto;
    object-fit: cover;
}

.top_text {
    width: 50%;

}

.sec_22 {
    overflow: hidden;
    margin-top: 20%;
}

.sec_02 {
    display: flex;
    flex-direction: row;
    margin: 5%;
    align-items: center;
    position: relative;
    margin-bottom: 10%;
}

.sec_02 .im_ceo {
    width: auto;
    height: clamp(15rem, 7.703rem + 29.93vw, 43.625rem);
}

.sec_02 .im_ceo img {
    width: 100%;
    height: 100%;
}

.sec_02 .im_ceo_2 {
    display: none;
}

.messege_box {
    position: relative;
    margin-left: 10%;
    width: 811px;
    display: flex;
    flex-direction: column;
}

.sec_02 .back_g_box {
    position: absolute;
    z-index: -10;
    width: clamp(22.543rem, 12.639rem + 20.12vw, 36.782rem);
    right: 10%;
    bottom: 0px;
}

.main_text_hob p {
    font-size: var(--font-14_18-mob);
    letter-spacing: 0.1em;
    display: inline-block;
    font-family: "FP-ヒラギノ角ゴ StdN W2", var(--ff-default), sans-serif;
    font-weight: 300;
    font-style: normal;
    color: var(--ac-color);
    z-index: 10;
    line-height: 2;
}

.messege_box h1 {
    position: relative;
    font-size: var(--font-40_128-mob);
    font-family: "Work Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    color: #000;
    text-align: left;
    display: inline-block;
    z-index: 10;
    line-height: 1;
}

.ceo_name {
    display: flex;
    flex-direction: column;
    margin-top: 5%;
}

.ceo_name p {
    line-height: 1em;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: var(--font-12_24-mob);
    letter-spacing: .5rem;
}

.img_line,
.border_duble {
    text-align: center;
    padding-bottom: 10%;

}

.border_duble img {
    width: clamp(14.185rem, 3.94rem + 42.03vw, 54.375rem);
    height: auto;
}

.sec_22_mob {
    display: none;
}



/*section13*/
.about_box {
    position: relative;
    padding-top: 5%;
}

.about_tect_set {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    padding-bottom: 2%;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
        "slnt" 0;
    font-size: var(--font-14_18-mob);
}

.about_tect_set .line_2 {
    border-bottom: 1px solid white;
    width: 80%;
    color: var(--body-color);
    font-weight: 300;
}

.about_tect_set .line_2.wrapper {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;

}

.about_tect_set .line_2.wrapper p {
    /* width: 50%; */

}

.about_tect_set .left_1 {
    margin-right: 8.65%;
    border-bottom: 1px solid black;
    width: 16.56%;
    text-align: right;
    font-weight: 700;
    font-size: var(--font-15_24-mob);
}

.pas_img {
    position: absolute;
    top: 0px;
    left: 23%;
    z-index: -1;
    height: calc(100% + 150px);
    width: calc(100% + 500px);
}

.pas_img img {
    color: #477E9B;
    width: -webkit-fill-available;
    height: 100%;
}

.pas_img_2 {
    display: none;
}

.ensen {
    text-align: right;

    margin-right: 0;
}

.ensen_block {
    display: inline-block;
    text-align: left;
    margin-bottom: 10%;
    margin-top: 5%;
}

.en_text {
    display: flex;
    text-align: left;
    flex-direction: row;
    font-size: var(--font-14_18-mob);
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
        "slnt" 0;
    padding-right: 100px;
}

.ensen .top_border {
    border-top: 1px solid;
    border-bottom: 1px solid;
}

.e_t_title {
    font-size: 24px;
    line-height: 0;
}

.ensen .top_border div:first-child {
    margin-top: 4%;
}

.en_text .day {
    width: 40%;
}

.en_text p {
    width: 60%;
}

.sec_04 {
    position: relative;
    background-color: #6AB47A;
    padding-top: 5%;
    padding-bottom: 5%;
}

.access_img {
    position: absolute;
    top: 0;
    right: 0;
}

.access_img img {
    width: 100%;
    height: auto;
}

.map_set {
    margin: 0;
    display: flex;
    flex-direction: row;
    align-items: center;

}

.sec_04 .top_ti p,
.sec_04 .top_ti h1 {
    color: white;

}

iframe {
    height: clamp(8.25rem, 5.988rem + 9.28vw, 17.125rem);
    border-radius: 20px;
    width: 59.84%;
    margin: 0 5%;
    z-index: 1;
}

.ad_tect_set {
    width: 30%;
    font-size: var(--font-12_24-mob);
    font-family: "Zen Maru Gothic", serif;
    font-weight: 400;
    font-style: normal;
    margin: 4.4%;
}

.ad_tect_set p {
    position: relative;
    margin-bottom: 5%;
    color: white;
    z-index: 1;
}

.top_ti.about_com {
    text-align: left;
}

@media screen and (max-width:721px) {
    .top_01 .top_ti .kg_h1 {
        font-size: 40;
        letter-spacing: .5rem;
    }

    .access_img {
        height: -webkit-fill-available;
        top: auto;
        right: auto;
        bottom: 0;
        left: 0;
    }

    .access_img img {
        object-fit: cover;
        height: -webkit-fill-available;
    }

    .top_im_t_set {
        margin-top: 10%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .top_img {
        width: 80%;

    }

    .top_img img {
        height: 50.78vw;
        border-radius: 0px 30px 30px 0px;
    }

    .top_text {
        margin-top: 20%;
        width: 100%;
    }

    .sec_22 {
        overflow: hidden;
        margin-top: 20%;
    }

    .sec_02 {
        overflow: hidden;
        flex-direction: column;
        margin: 0%;

    }

    .sec_02 .im_ceo {
        display: none;
    }

    .sec_02 .im_ceo_2 {
        display: block;
        width: 100%;
        height: clamp(15rem, 7.703rem + 29.93vw, 43.625rem);
    }

    .sec_02 .im_ceo_2 img {
        width: 100%;
        height: auto;
    }

    .messege_box {
        margin-left: 0;
        width: auto;
        display: flex;
        margin: 10%;
        margin-top: 10%;
    }

    .pas_img {
        display: none;
    }

    .pos_img img {
        display: none;
    }

    .pas_img_2 {
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        z-index: -1;
        padding-right: 20%;
    }

    .about_tect_set .line_2 {
        color: black;
        border-bottom: transparent;
        width: 100%;
        text-align: center;
    }


    .about_tect_set {
        flex-direction: column;
        align-items: center;
        padding: 0 5%;
    }

    .about_tect_set .left_1 {
        margin-right: 0;
        width: -webkit-fill-available;
        text-align: center;
        margin-bottom: 0;
    }

    .en_text {
        flex-direction: column;
        padding-right: 0;
    }

    .about_box .about_tect_set .left_1,
    .about_box .about_tect_set .left_2 {
        font-family: "Inter", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        font-variation-settings:
            "slnt" 0;
    }

    .map_set {
        flex-direction: column;
        margin: 0 5%;
    }

    iframe {
        width: 100%;
        margin: 0 auto;
    }


    .en_text .day {
        width: 100%;
        color: #477E9B;
        margin-bottom: 0;
    }

    .ad_tect_set {
        width: 100%;
        display: flex;
        width: 100%;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        align-items: center;
    }

    .ad_tect_set .access {
        text-align: center;
        width: fit-content;
    }

    .ad_tect_set p {
        margin-bottom: 0;

    }

    .sec_22 {
        display: none;
    }

    .sec_22_mob {
        margin-top: 5%;
        display: flex;
        flex-direction: column;
    }

    .top_ti.ceo_message {
        align-items: center;
        margin-bottom: 4%;
    }

    .sec_02 .back_g_box {
        top: 0px;
        right: -100px;
        bottom: 50%;
    }


    .sec_02 .im_ceo {
        width: 100%;
        height: clamp(15rem, 7.703rem + 29.93vw, 43.625rem);
    }

    .main_text_hob .ab_text {
        padding: 0 20%;
    }

    .messege_box .ceo_text {
        letter-spacing: 0.2em;
        line-height: 2rem;
        margin-right: -1rem;

    }

    .ceo_name {
        text-align: right;
    }

    .ceo_name p {
        letter-spacing: 0.3rem;
    }

    .tes_teeee {
        margin-left: 0;
        text-align: center;
    }

    .top_ti.about_com {
        text-align: center;
    }

    .sec_04 {
        padding-bottom: 0%;
    }

    .about_tect_set .line_2.wrapper {
        display: flex;
        flex-direction: column;
        margin-top: 0rem;
        flex-wrap: nowrap;
    }

    .about_tect_set .line_2.wrapper p {
        width: 100%;
        text-align: center;
    }

    #about_abus {
        display: block;
    }

    .about_box {
        margin-bottom: 10vw;
    }

    .ensen_block {
        display: block;
    }

    .ensen {
        padding: 0 5%;

    }

    .ensen_block p {
        text-align: center;
        width: 100%;
        text-align: left;
    }

    .ensen_block .top_border {}
}