@charset "utf-8";
@media screen and (max-width:1160px) {
    .header-logo a {
        padding: 20px;
    }

    .nav_header-pc {
        font-size: 10px;
    }

    .nav-header-en {
        font-size: 16px;
    }

    .nav-header-contact {
        padding-left: 20px;
    }

    .nav-header-contact:before {
        width: 14px;
        height: 14px;
        top: 10px;
        left: 3px;
    }

}

@media screen and (max-width:1000px) {

    /* ========================================
     * 共通
    ======================================== */
    html {
        scroll-padding-top: 60px;
        /*ヘッダーの高さ分設定*/
    }

    .area_header-menu-pc {
        display: none;
    }

    .area_header-menu-sp {
        display: block;
    }

    /* ========================================
     * ヘッダー
    ======================================== */
    .area_header-menu-sp .header-logo {
        display: block;
        position: fixed;
        top: 9px;
        left: 10px;
        z-index: 2;
    }

    .header-logo a {
        padding: 10px;
        box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
        font-size: 10px;
    }

    .area_header-menu-sp .header-logo img {
        max-width: 120px;
    }

    /* morph-styles */
    .hamburger-morph {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 1000;
        width: 60px;
        height: 60px;
        padding: 8px;
        border: none;
        border-radius: 0 0 0 15px;
        background: #222;
        cursor: pointer;
    }

    .hamburger-morph__icon {
        width: 100%;
        height: 100%;
    }

    .hamburger-morph__line {
        fill: none;
        stroke: #fff;
        stroke-width: 6;
        transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
            stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .hamburger-morph__line:nth-child(1) {
        stroke-dasharray: 60 207;
    }

    .hamburger-morph__line:nth-child(2) {
        stroke-dasharray: 60 60;
    }

    .hamburger-morph__line:nth-child(3) {
        stroke-dasharray: 60 207;
    }

    .hamburger-morph.active .hamburger-morph__line:nth-child(1) {
        stroke-dasharray: 90 207;
        stroke-dashoffset: -134;
    }

    .hamburger-morph.active .hamburger-morph__line:nth-child(2) {
        stroke-dasharray: 1 60;
        stroke-dashoffset: -30;
    }

    .hamburger-morph.active .hamburger-morph__line:nth-child(3) {
        stroke-dasharray: 90 207;
        stroke-dashoffset: -134;
    }

    .nav-morph {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: transparent linear-gradient(119deg, #FFBA02 0%, #EF7700 100%) 0% 0% no-repeat padding-box;
        clip-path: circle(0% at calc(100% - 44px) 44px);
        transition: clip-path 0.7s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: 900;
    }

    .nav-morph.active {
        clip-path: circle(150% at calc(100% - 44px) 44px);
    }

    .nav-morph__wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }

    .nav-morph__list {
        margin: 0;
        padding: 0;
        list-style: none;
        text-align: center;
    }

    .nav-morph__item {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity 0.4s ease, transform 0.4s ease;
    }

    .nav-morph.active .nav-morph__item {
        opacity: 1;
        transform: translateY(0);
    }

    .nav-morph.active .nav-morph__item:nth-child(1) {
        transition-delay: 0.3s;
    }

    .nav-morph.active .nav-morph__item:nth-child(2) {
        transition-delay: 0.4s;
    }

    .nav-morph.active .nav-morph__item:nth-child(3) {
        transition-delay: 0.5s;
    }

    .nav-morph.active .nav-morph__item:nth-child(4) {
        transition-delay: 0.6s;
    }

    .nav-morph.active .nav-morph__item:nth-child(5) {
        transition-delay: 0.7s;
    }

    .nav-morph.active .nav-morph__item:nth-child(6) {
        transition-delay: 0.8s;
    }

    .nav-morph__link {
        display: inline-block;
        padding: 16px;
        font-size: 12px;
        color: #fff;
        transition: .3s;
    }

    .nav-morph__link:hover {
        color: #222;
        transition: .3s;
    }

    .nav-morph__item .btn-contact {
        display: block;
        background-color: #222;
        color: #fff;
        width: 200px;
        border-radius: 20px 0 20px 0;
        transition: .3s;
    }

    .nav-morph__item .btn-contact:hover {
        background-color: #777;
        transition: .3s;
    }

    .nav-morph__link .nav-header-en {
        font-size: 16px;
        display: block;
    }

    /* トップ-MV
    ======================================== */
    .area_mv {
        padding-top: 60px;
    }

    /* トップ-ニュース
    ======================================== */
    .area_top-news_inner {
        grid-template-columns: 1fr;
    }

    /* ========================================
     * 下層ページ共通
    ======================================== */
    .area_sub-visual {
        padding-top: 60px;
    }
}

@media screen and (max-width:968px) {

    /* ========================================
     * 共通
    ======================================== */
    .area_sub-visual .area_title {
        bottom: 20px;
        left: 20px;
    }

    .breadcrumb {
        padding: 20px 0 40px 20px;
    }

    .heading {
        font-size: 26px;
        font-family: futura-pt, sans-serif;
        letter-spacing: .2em;
    }

    .heading-text {
        font-size: 14px;
    }

    /* トップ-MV
    ======================================== */
    .area_catch {
        top: 15%;
        text-shadow: 3px 3px 15px rgba(0, 0, 0, 0.3);
    }

    .area_catch p {
        text-shadow: 3px 3px 10px rgba(0, 0, 0, 1);
    }


    /* トップ-サービス
    ======================================== */
    .list_top-service {
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
        font-size: 14px;
    }

    .area_top-service_heading .heading-text {
        padding: 0 10px;
    }

    .area_top-service_heading::before {
        width: 140px;
        height: 140px;
        top: 16px;
        left: 5%;
    }

    .area_top-service_heading::after {
        width: 140px;
        height: 140px;
        top: 16px;
        right: 5%;
    }

    /* トップ-アバウト
    ======================================== */
    .area_top-about_heading .heading {
        margin-bottom: 16px;
    }

    .area_top-about_heading::after {
        width: 140px;
        height: 140px;
        right: 5%;
    }

    .scroll-infinity__item {
        width: calc(100vw / 3);
    }

    .list_top-about {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .list_top-about_contents {

        padding: 20px 10px;
    }

    /* トップ-ご相談
    ======================================== */
    .area_top-consult h3 {
        font-size: 20px;
        margin-bottom: 40px;
    }

    /* ========================================
     * フッター
    ======================================== */
    .area_footer-menu {
        flex-direction: column-reverse;
        gap: 30px;
        align-items: center;
    }

    .footer-privacy {
        margin: 0 auto;
    }

    .footer-info {
        text-align: center
    }

    /* ========================================
     * リフォーム事業
    ======================================== */
    .renovation-strength_worries .list_worries {
        grid-template-columns: 1fr 1fr;
    }

    .area_renovation-works .scroll-infinity__item {
        width: calc(100vw / 3);
    }

    /* ========================================
     * 施工実績
    ======================================== */
    .tab-container {
        grid-template-columns: repeat(2, 270px);
    }

    /* ========================================
     * 記事一覧
    ======================================== */
    .area_post-list {
        grid-template-columns: 1fr;
    }

    /* ========================================
     * スタッフ
    ======================================== */
    .list_staff-icon {
        grid-template-columns: repeat(3, 140px);
        margin-bottom: 50px;
    }

    .staff-heading .info {
        position: static;
    }

    .staff-heading .staff-number {
        bottom: -20px;
    }

    /* ========================================
     * 採用情報
    ======================================== */
    .area_recruit-people {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .area_recruit-people .area_info {
        padding: 80px 5vw;
    }

    .list_human-resources .item {
        width: 100%;
    }

    .area_recruit-people .area_image img {
        aspect-ratio: 3/2;
        min-height: 100px;
    }

    .area_recruit-flow {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .area_recruit-flow .area_image {
        order: 2;
    }

    .area_recruit-flow .area_image img {
        aspect-ratio: 3/2;
        min-height: 100px;
    }

    .area_recruit-flow .area_info {
        padding: 80px 5vw;
        order: 1;
    }

    .area_recruit-flow .area_info .list_flow .item {
        width: 100%;
    }
}



@media(max-width:768px) {
    body {
        font-size: 14px;
    }

    .pc-br {
        display: contents;
    }

    .sp-br {
        display: block;
    }

    .breadcrumb {
        gap: 0 10px;
    }

    .breadcrumb li {
        font-size: 10px;
    }

    .area_heading_sub {
        margin-bottom: 30px;
    }

    /* トップ-MV
    ======================================== */
    .area_mv .area_image img {
        aspect-ratio: 3 / 4;
        object-fit: cover;
        object-position: top left;
    }

    /* トップ-サービス
    ======================================== */
    .area_top-service {
        margin: 40px 0;
    }

    .area_top-service_heading {
        padding: 20px 0 40px;
        margin-bottom: 40px;
    }

    .area_top-service_heading::before {
        width: 80px;
        height: 80px;
        top: 120px;
    }

    .area_top-service_heading::after {
        width: 80px;
        height: 80px;
        top: 120px;
    }

    .list_top-service {
        margin-bottom: 30px;
    }

    /* トップ-アバウト
    ======================================== */
    .area_top-about {
        padding: 40px 0 80px;
    }

    .area_top-about_heading .heading-text {
        padding-bottom: 50px;
    }

    .area_top-about_heading::after {
        width: 80px;
        height: 80px;
        left: 50%;
        transform: translateX(-50%);
    }

    .area_top-about_heading .heading-text::before {
        margin-right: 20px;
    }

    .area_top-about_heading .heading-text::after {
        margin-left: 20px;
    }

    .list_top-about {
        grid-template-columns: 1fr;
        padding-top: 30px;
    }

    .area_top-about::before {
        width: 100px;
        height: 50px;
    }

    .area_top-about::after {
        width: 100px;
        height: 20px;
    }

    /* トップ-ご相談
    ======================================== */
    .area_top-consult .container {
        padding: 40px 0;
    }

    .area_top-consult h3 {
        text-align: justify;
    }

    .area_top-consult_text {
        font-size: 14px;
        grid-template-columns: 1fr;
    }

    .area_top-consult_text img {
        width: 25vw;
        margin: 0 auto;
    }

    .area_top-consult .container::before,
    .area_top-consult .container::after,
    .area_top-consult .circle::before,
    .area_top-consult .circle::after {
        width: 10px;
        height: 10px;
    }

    /* トップ-お客様のうれしい声
    ======================================== */
    .area_top-voice {
        padding: 40px 0;
    }

    .area_top-voice_heading .heading {
        flex-direction: column;
        gap: 0;
        line-height: 1.5;
    }

    .slider-item {
        padding: 0;
        margin: 0 10px 10px;
    }

    .slider-item_inner {
        padding: 20px;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    /* トップ-スタッフ
    ======================================== */
    .area_top-staff {
        padding: 40px 0;
    }

    .area_top-staff .container {

        grid-template-columns: 1fr;
        gap: 0;
    }

    .area_top-staff_heading {
        display: contents;
    }

    .staff_heading {
        order: 1;
    }

    .area_top-staff_heading .btn {
        order: 3;
        justify-content: center;
    }

    .area_top-staff_image {
        order: 2;
        margin-bottom: 20px;
    }

    /* トップ-ニュース
    ======================================== */
    .list_top-news li {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .area_top-news {
        padding: 40px 0;
    }

    .area_top-news .container {
        padding: 30px 0;
    }

    /* ========================================
     * フッター
    ======================================== */
    .area_footer-link .list_link {
        padding: 40px 0 0;
    }

    .area_footer-link .list_link .item {
        padding: 10px 15px;
    }

    .area_footer-menu {
        padding: 40px 0;
    }

    .nav_footer .layout2 {
        grid-template-columns: 1fr;
    }

    .nav_footer .kenzai-menu,
    .nav_footer .reform-menu {
        padding: 20px;
    }

    /* 下層共通 */
    .breadcrumb {
        padding: 20px 0 30px 10px;
    }

    .area_under {
        padding: 25px;
    }

    .area_under::before {
        width: 100px;
        height: 100px;
        bottom: -20px;
    }

    .area_under::after {
        width: 120px;
        height: 130px;
        bottom: -43px;
    }

    /* ========================================
     * ドローン事業
    ======================================== */
    .bg_drone-inspection {
        margin: 0 0 40px;
        min-height: 200px;
    }

    .bg_drone-inspection p {
        padding: 10px;
    }

    .bg_drone-inspection span {
        padding: 0 5px;
        font-size: 16px;
    }

    .area_drone-merit {
        padding: 40px 0;
    }

    .heading_02 {
        font-size: 16px;
    }

    .heading_02 span {
        font-size: 24px;
        padding: 5px;
    }

    .area_drone-merit .heading-text {
        margin-bottom: 20px;
    }

    .list_drone-merit {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 20px;
    }

    .list_drone-merit li {
        padding: 20px;
    }

    .list_drone-merit .number {
        font-size: 40px;
    }

    .list_drone-merit .item_center img {
        width: 40%;
    }

    .area_drone-merit .layout2 {
        grid-template-columns: 1fr;
        place-content: center;
    }

    .area_drone-merit .layout2 img {
        width: 22vw;
        margin: 0 auto;
    }

    .area_drone-merit .balloon {
        padding: 20px;
    }

    .area_drone-merit .balloon::before {
        top: -15px;
        left: 50%;
        transform: translateX(-50%);
        width: 28px;
        height: 18px;
        clip-path: polygon(0 100%, 50% 0, 100% 100%);
    }

    .area_drone-worries {
        padding: 40px 0;
    }

    .area_drone-worries .heading_02_wrapper {
        flex-direction: column;
        gap: 10px;
        margin-bottom: 30px;
    }

    .worries-contents {
        margin-bottom: 30px;
    }

    .worries-contents .top {
        margin-bottom: 10px;
        flex-direction: column;
        gap: 10px;
        align-items: stretch;
    }

    .worries-contents .bottom {
        flex-direction: column;
        gap: 10px;
        align-items: stretch;
    }

    .worries-contents .bottom .child_02 {
        order: 3;
        margin: 0 auto;
        width: 50%;
    }

    .worries-contents .bottom .child_03 {
        order: 2;
    }

    .text_danger {
        padding: 20px;
    }

    .text_danger .heading_03 {
        flex-direction: column;
        font-size: 16px;
    }

    .text_danger .heading_03 img {
        width: 10%;
    }

    .text_danger p {
        text-align: justify;
    }

    .area_drone-send {
        padding: 40px 0;
    }

    .area_drone-send .heading_02_wrapper {
        gap: 15px;
        margin-bottom: 20px;
    }

    .area_drone-send .heading_02_wrapper .heading_02 {
        text-align: left;
    }

    .send-contents {
        padding: 30px;
    }

    .send-contents .text {
        margin-bottom: 30px;
        text-align: left;
    }

    .send-contents .flow {
        grid-template-columns: 1fr;
    }

    .send-contents .item img {
        margin-bottom: 10px;
    }

    .send-contents .flow .arrow {
        transform: rotate(90deg);
        margin: 0 auto;
        width: 15%;
    }

    .area_drone-safety {
        padding: 40px 0;
    }

    .list_drone-safety {
        grid-template-columns: 1fr;
    }

    .list_drone-safety .item {
        padding: 40px 20px;
    }

    .list_drone-safety .number {
        width: 80px;
        height: 80px;
        left: -8px;
        top: -40px;
        font-size: 35px;
    }

    .area_drone-construction {
        padding: 40px 0;
    }

    .area_drone-construction .heading_02_wrapper {
        gap: 10px;
        justify-content: space-between;
    }

    .area_drone-construction .heading_02_wrapper img {
        height: 100px;
    }

    .area_drone-construction .heading_02_wrapper .heading_02 {
        padding-bottom: 20px;
    }

    .area_drone-construction .text_message {
        grid-template-columns: 1fr;

    }

    .area_drone-construction .text_message img {
        aspect-ratio: 2/1;
        object-position: center 15%;
    }

    /* コンタクトボタン */
    .area_contact {
        margin: 40px auto 50px;
        padding: 40px 10px;
    }

    .area_contact .btn_contact {
        flex-direction: column;
        gap: 15px;
    }

    /* ========================================
     * リフォーム事業
    ======================================== */
    .area_renovation-chatch {
        padding: 0 0 40px;
    }

    .bg_takagi-mark {
        width: 50%;
        min-height: 200px;
    }

    .area_renovation-problems {
        padding: 40px 0;
    }

    .area_renovation-problems .heading_02_wrapper {
        margin-bottom: 0;
    }

    .area_renovation-strength {
        padding: 40px 0 0;
    }

    .area_renovation-strength .text_chatch {
        margin-bottom: 40px;
    }

    .area_renovation-strength .text_chatch span {
        font-size: 16px;
    }

    .list_renovation-strength {
        gap: 20px;
    }

    .heading-strength h4 {
        font-size: 16px;
        text-align: justify;
    }

    .heading-strength h4::before {
        font-size: 50px;
        top: -25px;
        left: -10px;
    }

    .renovation-strength_worries {
        padding: 30px 15px 40px;
        margin-bottom: 50px;
    }

    .renovation-strength_worries h4 {
        font-size: 16px;
    }

    .renovation-strength_worries h4 span {
        font-size: 20px;
    }

    .renovation-strength_worries .list_worries {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .renovation-strength_worries .text {
        text-align: left;
    }

    .renovation-strength_worries img {
        width: 200px;
        bottom: -80px;
    }

    .area_renovation-flow {
        padding: 40px 0;
    }

    .list_renovation-flow .step {
        flex-direction: column;
        align-items: flex-start;
    }

    .list_renovation-flow .step .step-number {
        grid-template-columns: 60px 230px;
        gap: 20px;
    }

    .list_renovation-flow .step .number {
        width: 60px;
        height: 60px;
        font-size: 10px;
    }

    .list_renovation-flow .step .number span {
        font-size: 24px;
    }

    .list_renovation-flow .step .step-number h4 {
        text-align: left;
        font-size: 16px;
    }

    .list_renovation-flow .step .text {
        border-left: 1px solid transparent;
    }

    .area_renovation-works {
        padding: 40px 0;
    }

    .area_renovation-works .scroll-infinity__item {
        width: calc(100vw / 2);
        margin-right: 10px;
    }

    .area_renovation-works .scroll-infinity__wrap {
        margin-bottom: 30px;
    }

    /* ========================================
     * 施工実績
    ======================================== */
    .tab-container {
        grid-template-columns: repeat(1, 270px);
        margin-bottom: 30px;
    }

    .list_case {
        gap: 20px;
        margin-bottom: 30px;
    }

    .case-name {
        padding-bottom: 10px;
        gap: 10px;
    }

    .case-name img {
        width: 30px;
    }

    .case-name h4 {
        font-size: 18px;
    }

    .area_case-contents .case-images {
        flex-direction: column;
        gap: 0;
    }

    .area_case-contents .case-images p {
        padding-top: 0;
    }

    .area_case-contents .case-images .arrow {
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        border-top: 15px solid #FFBA02;
        margin-top: 10px;
    }

    .area_case-contents .case-info {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 4vw;
    }



    /* ========================================
     * 記事一覧
    ======================================== */
    .area_post-list {
        margin-bottom: 50px;
    }

    .post-item_inner {
        grid-template-columns: 1fr;
        align-items: center;
    }

    .post-item_inner .post-image {
        display: grid;
        place-content: center;
    }

    .list_post_contents {
        margin-bottom: 30px;
    }

    .pagination {
        gap: 0 8px;
    }

    .pagination a {
        width: 30px;
        height: 30px;
        font-size: 12px;
    }

    /* ========================================
     * 記事
    ======================================== */
    .area_article {
        grid-template-columns: 1fr;
        margin-bottom: 50px;
    }

    .article-title {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .article-image {
        margin-bottom: 20px;
    }

    .article-text {
        margin-bottom: 30px;
    }

    /* ========================================
     * 会社概要
    ======================================== */
    .area_message {
        grid-template-columns: 1fr;
        margin-bottom: 40px;
        gap: 20px;
    }

    .area_message .message-image {
        display: grid;
        place-content: center;
    }

    .area_message .message-image img {
        aspect-ratio: 2 / 1;
        object-position: center 15%;
    }

    .message-text .text {
        margin-bottom: 10px;
    }

    .list_outline {
        grid-template-columns: 1fr;
        border-top: 1px solid transparent;
        margin-bottom: 20px;
    }

    .list_outline dt,
    .list_outline dd {
        border-bottom: 1px solid transparent;
        padding: 15px 2vw;
    }

    .area_map {
        margin-bottom: 50px;
    }

    .area_map iframe {
        width: 100%;
        aspect-ratio: 4 / 3;
        border-radius: 5px;
    }

    /* ========================================
     * プライバシーポリシー
    ======================================== */
    .area_privacy {
        margin-bottom: 50px;
    }

    .area_privacy .text {
        margin-bottom: 30px;
    }

    .list_privacy-policy dt {
        font-size: 18px;
    }

    .list_privacy-policy dd {
        margin-bottom: 20px;
    }

    .contact_privacy-policy {
        padding-top: 20px;
    }

    .contact_privacy-policy p:first-child {
        font-size: 18px;
    }

    /* ========================================
     * スタッフ
    ======================================== */
    .staff-heading .info {
        padding: 15px 10px 0 90px;
    }

    .staff-heading .staff-number {
        font-size: 70px;
        bottom: -14px;
    }

    .staff-heading .staff-info .staff-name {
        font-size: 20px;
    }

    .staff-heading .staff-info .staff-name span {
        font-size: 11px;
    }

    .area_faq_inner {
        padding: 10px 0;
    }

    .faq-content p {
        padding: 0 0 20px;
    }

    .list_staff {
        gap: 30px;
    }

    /* ========================================
     * 採用情報
    ======================================== */
    .area_recruit {
        margin-bottom: 40px;
    }

    .recruit-item {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .recruit-label {
        padding: 10px 0;
    }

    .recruit-detail {
        border-bottom: 1px solid transparent;
        padding-bottom: 0;
    }

    .area_recruit-people .area_info {
        padding: 40px 5vw;
    }

    .recruit-heading .heading_02,
    .recruit-heading p {
        text-align: center;
    }

    .recruit-heading .heading_02 span {
        font-size: 22px;
    }

    .list_human-resources .item {
        gap: 10px;
    }

    .area_recruit-people .area_info .text span {
        padding-bottom: 2px;
        line-height: 2;
    }

    .area_recruit-flow .area_info {
        padding: 40px 5vw;
    }

    .area_recruit-flow .area_info .list_flow .item {
        grid-template-columns: 60px 1fr;
        align-items: center;
        gap: 14px;
        padding: 20px 30px;
        border-radius: 60px;
        position: relative;
    }

    .area_recruit-flow .text {
        text-align: justify;
    }
	
	
	/* ========================================
	 * お問い合わせ
	======================================== */
	.area_contact-text .contact-form {
    	margin: 30px 0 50px;
	}
	.cf7-form .form-item p {
		grid-template-columns: 1fr;
	}
	.cf7-form .form-acceptance {
    	margin: 30px 0 20px;
	}
}



@media(max-width:500px) {

    /* トップ-MV
    ======================================== */
    .area_catch {
        left: 10vw;
        top: 17%;
    }

    .area_catch h2 {
        margin-bottom: 15px;
    }

    .scroll {
        left: 13vw;
        bottom: 100px;
    }

    /* トップ-サービス
    ======================================== */
    .list_top-service {
        grid-template-columns: repeat(2, 1fr);
    }

    /* トップ-アバウト
    ======================================== */
    .scroll-infinity__item {
        width: calc(100vw / 2);
    }

    /* トップ-ニュース
    ======================================== */
    .area_top-news_instagram {
        width: 280px;
        padding: 20px 30px;
        font-size: 12px;
        margin-top: 20px;
    }

    .area_top-news_instagram::before {
        width: 120px;
        height: 120px;
        left: 0;
        top: -86px;
    }

    .area_footer-copylight p {
        font-size: 10px;
    }

    /* ========================================
     * ドローン事業
    ======================================== */
    .area_drone-construction .heading_02_wrapper .heading_02 {
        line-height: 1.5;
        font-size: 14px;
    }

    .area_drone-construction .heading_02_wrapper .heading_02 span {
        font-size: 18px;
    }

    .area_drone-construction .heading_02_wrapper img {
        height: 68px;
        align-items: flex-end;
    }

    .area_drone-construction .image_company {
        margin: -13px 0 30px;
    }

    /* ========================================
     * リフォーム事業
    ======================================== */
    .area_renovation-strength .text_chatch span {
        display: block;
        width: 180px;
        margin: 0 auto;
    }

    .area_renovation-works .scroll-infinity__item {
        width: calc(100vw / 1.5);
        margin-right: 10px;
    }

    .area_renovation-works .scroll-infinity__item p {
        width: 150px;
    }

    /* ========================================
     * 施工実績
    ======================================== */
    .list_case-info li {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .area_case-contents .case-info .info-heading {
        width: 100%;
    }

    /* ========================================
     * スタッフ
    ======================================== */
    .list_staff-icon {
        grid-template-columns: repeat(3, 90px);
        gap: 3vw;
    }

    .list_staff-icon .count p {
        font-size: 12px;
        bottom: 8px;
    }

    .list_staff-icon .count::after {
        font-size: 50px;
        bottom: -8px;
    }

    .staff-heading .info {
        padding: 15px 0 0 68px;
    }

    .staff-heading .staff-number {
        font-size: 60px;
        bottom: -11px;
    }

    .staff-heading .staff-info .staff-name {
        font-size: 20px;
    }

    .staff-heading .staff-info .staff-name span {
        font-size: 10px;
        padding-left: 10px;
    }

    .area_faq {
        padding: 14px;
    }

    .faq-ttl p::before {
        width: 20px;
        margin-right: 10px;
    }

    /* ========================================
     * 採用情報
    ======================================== */
    .area_recruit-flow .area_info .list_flow .item {
        grid-template-columns: 1fr;
    }

    .area_recruit-flow .area_info .list_flow .item div {
        margin: 0 auto;
    }
}

@media(max-width:350px) {
    .list_renovation-flow .step {
        align-items: center;
        gap: 20px;
    }

    .list_renovation-flow .step .step-number {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .list_renovation-flow .step .number {
        margin: 0 auto;
    }


}