@charset "UTF-8";

/*********************************
	変数
*********************************/
:root {
    /*------　カラー -------*/
	--color-black: #3c3c3c;  /*黒（文字）*/
	--color-black-light: #646464;  /*薄い黒（文字）*/
	--color-gray: #ECECEC;   /*グレー*/
    --color-gray-table: #E4E4E4;   /*グレー（テーブル）*/
	--color-blue: #4661B6; /*青（濃い）*/
    --color-blue-light: #F0F3FF; /*青（薄い）*/
    --color-orange-2: #E35300;  /*オレンジ（濃い）*/
	--color-orange-1:#F37932;   /*オレンジ（薄い）*/
    --color-orange-light:#ffe8da;   /*オレンジ（薄い）*/
    --border-gray: #cacaca; /*グレー(線)*/
    --color-red: #d73636;  /*赤(濃い)*/
    --color-red-light: #FADBDA; /*赤(薄い)*/
}

/*********************************
	共通CSS
*********************************/
*{
    min-height: 0vw;
}

html,body{
    margin: 0;
    padding: 0;
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    overflow-x: hidden;
}

ul{
    list-style-type: none;
    padding: 0;
}

ol{
    list-style-type: none;
    padding: 0;
}

a{
    text-decoration: none;
    letter-spacing: 0.05em;
    text-align: center;
}

input[type=radio], input[type=checkbox] {
    display: none;
}

p,li{
    letter-spacing: 0.05em;
}


/*------　h1 -------*/
h1{
    letter-spacing: 0.05em;
    display: inline-block;
    position: relative;
    font-size: var(--font-title2);
}

/* タイトル下の下線 */
h1::before{
    content: '';
    position: absolute;
    left: 50%;
    bottom: -15px; /*下線の上下位置調整*/
    display: inline-block;
    height: 2px; /*下線の太さ*/
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50%); /*位置調整*/
}

/*------　オレンジボタン -------*/
.orange_btn{
    background: linear-gradient(to right,var(--color-orange-1),var(--color-orange-2));
    color: #fff;
    border-radius: 5px;
    background-position: 1% 50%;
    background-size: 200% auto;
    border: none;
    /*アニメーションの指定*/
    transition: all 0.3s ease-out;
}

.orange_btn:hover{
    background-position: 99% 50%;
}


/*------チェックマーク -------*/
.check_li::before{
    content: "";
    position: absolute;
    top: var(--top-check-before);
    left: var(--left-check-before);
    -webkit-transform: rotate(50deg);
    -ms-transform: rotate(50deg);
    transform: rotate(50deg);
    width: var(--width-check-before);
    height: var(--height-check-before);
    border-right: 2px solid var(--color-blue);
    border-bottom: 2px solid var(--color-blue);
    z-index: 2;
}

.check_li::after{
    content: "";
    position: absolute;
    top: var(--top-check-after);
    left: var(--left-check-after);
    width: var(--width-check-after);
    height: var(--width-check-after);
    background-color: var(--color-blue-light);
    border-radius: 50%;
}


/*********************************
	ヘッダーの設定
*********************************/
header{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
}

/*------　ヘッダー（PC） -------*/
.pc_header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    /* padding: 10px; */
    z-index: 999;
}

/*------　ヘッダー （TA,MO）-------*/
.mo_header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    background-color: #fff;
    border: 1px solid var(--border-gray);
    top: 0;
    left: 0;
    right: 0;
    padding: 10px;
    z-index: 999;
}

/*------　ヘッダーロゴ -------*/
header img{
    width: var(--width-logo);
    height: auto;
    margin-left: 10px;
}

/*------　ヘッダーフォント -------*/
.change
,.font{
    font-size: var(--font-header);
}

/*------問い合わせ -------*/
.header_contact{
    font-size: var(--font-header-contact);
}

/*------　ヘッダー背景色変更 -------*/
.change{
    color: #fff;
}

header .change_color{
    background: #fff;
    border-bottom: 1px solid var(--border-gray);
    transition: 0.8s ease-in;
}

.change_color .change{
    color: var(--color-black);
}

.change_color .dropdown.change::after{
    border-top: 7px solid var(--color-black);
}

/*------　Fixed -------*/
/* header.fixed {
    position: fixed;
    background: #fff;
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
    border-bottom: 1px solid var(--border-gray);
} */

/* header.fixed nav ul li
,header.fixed nav ul li a.nav_a{
    color: var(--color-black);
} */



/*********************************
	ファーストビュー
*********************************/
.top{
    background-image: url(../img/top.png);
    background-repeat: no-repeat;
    background-position: top 0 right 0;
    background-size: auto var(--height-first-back);
}

/*------モック画像 -------*/
.top img{
    width: var(--width-first-mock);
}

/*------キャッチコピー -------*/
.main_copy{
    color: var(--color-black);
    font-size: var(--font-catch-copy1);
    font-weight: bold;
}

.main_copy span{
    font-size: var(--font-catch-copy2);
}


.top_right ul li{
    position: relative;
    padding-left: 35px;
    font-size: var(--font-check);
    margin-bottom: 10px;
}

/*------問い合わせボタン -------*/
.top_contact{
    display: block;
    width: var(--width-btn);
    line-height: var(--height-btn);
    font-size: var(--font-btn);
}



/*********************************
	システム概要
*********************************/
.title_about{
    display: flex;
    align-items: center;
    color: var(--color-blue);
    font-weight: bold;
}

.title_about div{
    display: flex;
    align-items: flex-end;
    width: 70%;
}

/*------「とは？」 -------*/
.title_about div p{
    font-size: var(--font-logo);
    margin-bottom: 5px;
    margin-left: 10px;
}

/*------タイトルのロゴ -------*/
.title_about div img{
    width: var(--width-title-logo);
    height: auto;
}

.about_content_p{
    font-size: var(--font-sentence);
    line-height: 2;
}



/*********************************
	悩み
*********************************/
.trouble{
    background-color: var(--color-gray);
    margin-top: 100px;
    padding-top: 70px;
    position: relative;
}

/*------背景下矢印 -------*/
.trouble::after{
    content: "";
    position: absolute;
    top: 95%;
    left: 50%;
    transform: translate(-50%);
    box-sizing: border-box;
    border-right: var(--width-arrow) solid transparent;
    border-left: var(--width-arrow) solid transparent;
    border-top: var(--width-arrow-top) solid var(--color-gray);
    z-index: -1;
}

/*------「地盤調査業務の中で、こんなお悩みありませんか」-------*/
.trouble_title{
    text-align: center;
    font-weight: bold;
    font-size: var(--font-title1);
    color: var(--color-black);
}

.trouble_title span{
    color: var(--color-blue);
    font-size: var(--font-title2);
    display: block;
}

/*------各吹き出しのcss -------*/
.trouble_content div{
    width: var(--width-hukidashi);
    text-align: center;
}

.trouble_content div img{
    width: 90%;
}

.center{
    text-align: center;
}



/*********************************
	解決
*********************************/
.resolution{
    background: linear-gradient(to bottom, #fff, var(--color-blue-light)); 
    text-align: center;
    margin-top: 150px;
    padding-bottom: 100px;
}

/*------「１GEN３」で解決します！ -------*/
.re_title{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    color: var(--color-blue);
    font-weight: bold;
}

.re_title p{
    font-size: var(--font-logo);
    margin-left: 10px;
}

.re_p{
    font-size: var(--font-sentence);
    margin: 50px auto;
    line-height: 1.7;
    color: var(--color-black);
}

/*------各機能３つ -------*/
.resolution ul{
    margin: 50px auto 0;
}

.resolution_content{
    background-color: #fff;
    box-shadow: 3px 3px 6px #00000029;
    border-radius: 20px;
}

.resolution_content img{
    width: 60%;
    height: auto;
}

.re_content_title{
    color: var(--color-blue);
    font-size: var(--font-resolution-title);
    font-weight: bold;
}

.re_content_sentence{
    color: var(--color-black);
    font-size: var(--font-resolution-sentence);
}


/*------運用イメージ -------*/
.figure{
    width: var(--width-figure);
    margin: 100px auto 0;
}

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


/*********************************
	特徴
*********************************/
.feature{
    margin: 100px auto 0;
    width: 80%;
}

/*------各特徴のcss -------*/
.feature_content{
    margin-bottom: 70px;
}

.feature_content img{
    width: var(--width-feature-img);
    height: auto;
}

.feature_content div{
    width: var(--width-feature-content);
}


/*------特徴01～04 -------*/
.f_index{
    color: var(--color-blue);
    font-weight: bold;
    font-size: var(--font-logo);
    display: flex;
    align-items: center;
}

.f_index span{
    display: block;
    /* font-family: franklin-gothic-urw-cond, sans-serif; */
    font-weight: 700;
    font-size: var(--font-feature-index);
    margin-left: 10px;
}

/*------各特徴タイトル -------*/
.f_title{
    font-size: var(--font-feature-title);
    font-weight: bold;
    color: var(--color-black);
    line-height: 1.5;
}

/*------各特徴説明文 -------*/
.f_sentence{
    color: var(--color-black);
    font-size: var(--font-feature-sentence);
    line-height: 1.5;
}



/*********************************
	動画
*********************************/
.movie{
    text-align: center;
    margin-top: 100px;
}

.movie h1{
    color: var(--color-black);
    display: inline-block;
    position: relative;
    font-size: var(--font-title2);
}

.movie h1::before{
    width: 15%; /*下線の幅*/
    background-color: var(--color-blue); /*下線の色*/
}

.movie div{
    width: var(--width-movie);
    margin: 50px auto;
}

.movie div video{
    width: 100%;
}



/*********************************
	利用料金
*********************************/
/*------IT導入補助金 -------*/
.it_subsidy{
    background-color: #fff;
    border: 4px solid var(--color-blue);
    border-radius: 20px;
    margin-top: 50px;
}

.it_title{
    color: var(--color-blue);
    font-weight: bold;
    text-align: center;
    font-size: var(--font-title1);
}

.it_flex div{
    color: var(--color-black);
    font-size: var(--font-it-sentence);
}

.it_donyuhojokin{
    background-color: var(--color-gray-table);
    padding: 10px 20px;
    border-radius: 5px;
    margin-top: 15px;
}

.it_hp{
    text-decoration: underline;
}

.border_p{
    display: flex;
    align-items: center;
    /* justify-content: center; */
}

.border_p::after{
    border-top: 1px solid var(--border-gray);
    content: "";
    width: 100px; 
    margin-left: 10px;
}

.price{
    background-color: var(--color-gray);
    margin-top: 100px;
    padding: 50px 0 150px;
}

.section_width{
    margin: 0 auto;
}


/*------「料金プラン」 -------*/
.center_h1{
    text-align: center;
}

.price h1{
    color: var(--color-black);
}

.price h1::before{
    width: 30%; /*下線の幅*/
    background-color: var(--color-blue); /*下線の色*/
}


/*------各料金css -------*/
.price_course{
    margin: 50px auto;
}

/*------※-------*/
.kome{
    margin: 10px 0 5px;
    font-size: var(--font-small);
    color: var(--color-black-light);
}

/*------オプション料金 -------*/
.option_title{
    color: var(--color-black);
    font-weight: bold;
    font-size: var(--font-title1);
    margin-top: 80px;
}

.price table{
    border-collapse: collapse;
    white-space: nowrap;
}

.price th{
    background-color: var(--color-gray-table);
    color: var(--color-black);
    font-weight: 500;
    line-height: 3;
    font-size: var(--font-table-header);
    border: 1px solid var(--border-gray);
}

.price td{
    background-color: #fff;
    color: var(--color-black);
    line-height: 3.5;
    padding: 0 20px;
    border: 1px solid var(--border-gray);
    font-size: var(--font-table-body);
}

.price_td{
    text-align: right;
}

.price_td span{
    font-size: var(--font-small);
}

/*------推奨スペック -------*/
.width_20{
    width: 20%;
}

/*********************************
	申し込み・お問い合わせ
*********************************/
.contact{
    padding-top: 100px;
    background-image: url(../img/back.png);
    min-height: 100vh;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    padding-bottom: 100px;
}

/*------ 申し込み・お問い合わせ -------*/
.contact h1{
    color: #fff;
}

.contact h1::before{
    width: 15%; /*下線の幅*/
    background-color: #fff; /*下線の色*/
}

.input_area{
    background-color: #fff;
    margin: 30px auto;
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 30px;
}

.input_content{
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
}

.input_content label{
    color: var(--color-black);
    margin-bottom: 5px;
    font-size: var(--font-label);
}

/*------入力エラー -------*/
label.error{
    color: var(--color-red);
}

input.error{
    background-color: var(--color-red-light);
}

/*------テキストcss -------*/
input,textarea{
    border-radius: 5px;
    border: 2px solid var(--border-gray);
    color: var(--color-black);
    font-family: 'Noto Sans JP', sans-serif;
    font-size: var(--font-text);
}

input{
    padding: 0 10px;
}

textarea{
    padding: 10px 10px;
    height: 100px;
}

.input_content input[type="text"]
,.input_content input[type="tel"]
,.input_content input[type="email"]{
    line-height: 3;
}

/*------------------ラジオボタン ---------------------*/
.radio{
    box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    padding: 12px 12px 12px 42px;
    border-radius: 8px;
    background-color: #fff;
    vertical-align: middle;
    cursor: pointer;
    border: 2px solid var(--border-gray);
}

.radio:hover{
    background-color: var(--color-orange-light);
}

.radio:hover:after{
    border-color: var(--color-orange-1);
}

.radio:after{
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    top: 50%;
    left: 15px;
    display: block;
    margin-top: -10px;
    width: 16px;
    height: 16px;
    border: 2px solid var(--border-gray);
    border-radius: 6px;
    content: '';
}
  
.radio:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    top: 50%;
    left: 20px;
    display: block;
    margin-top: -5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--color-orange-1);
    content: '';
    opacity: 0;
}

input[type=radio]:checked + .radio:before {
    opacity: 1;
}
/* ----------------------------------- */

/*------必須マーク -------*/
.required::after {
    content: "必須";
    background: linear-gradient(to right,var(--color-orange-1),var(--color-orange-2));
    color: #fff;
    font-size: var(--font-required);
    min-width: 10px;
    padding: 3px 7px;
    margin: 0px 8px;
    line-height: 1.5;
    vertical-align: middle;
    white-space: nowrap;
    text-align: center;
    border-radius: 3px;
    display: inline-block;
}

.input_btn{
    margin-top: 50px;
    display: block;
    width: 100%;
    line-height: 4;
    font-size: var(--font-btn);
}




/*********************************
	フッターの設定
*********************************/
footer{
    padding: 30px 0;
    text-align: center;
}

/*------フッターロゴ -------*/
footer img{
    width: var(--width-logo);
    height: auto;
}

/*------フッターナビ -------*/
footer ul{
    margin-top: 30px;
}

footer ul li a{
    color: var(--color-black);
    font-size: var(--font-footer-menu);
}

footer ul li a:hover{
    text-decoration: underline;
}

/*------コピーライト -------*/
footer p{
    margin-top: 50px;
    color: var(--color-black-light);
    font-size: var(--font-small);
}


/*********************************
	問い合わせ完了
*********************************/
.mail_complete{
    text-align: center;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:100%;
}

.top_back{
    margin: 40px auto;
    display: block;
    width: 300px;
    line-height: 3;
    font-size: var(--font-btn);
}

.tel{
    color: #E35300;
    font-size: var(--font-btn);
    font-weight: bold;
}


/************************************************************************
//////////////////////////////////PC/////////////////////////////////////
************************************************************************/
@media screen and (min-width: 960px){

    /*********************************
        変数
    *********************************/
    :root {
        /*------　フォントサイズ -------*/
        --font-header: 18px;   /* ヘッダー */
        --font-header-contact: 16px;   /* ヘッダー問い合わせボタン */
        --font-catch-copy1: 35px;   /* キャッチコピー１行目 */
        --font-catch-copy2: 50px;   /* キャッチコピー２行目 */
        --font-check: 20px;   /* チェックマーク横テキスト */
        --font-btn: 20px;   /* お問い合わせ、確認画面へ進むボタン */
        --font-logo: 25px;   /* ロゴ横のテキスト */
        --font-sentence: 20px;   /* 説明文 */
        --font-title1: 25px;   /* タイトル１ */
        --font-title2: 30px;   /* タイトル２ */
        --font-resolution-title: 20px;   /* 解決タイトル */
        --font-resolution-sentence: 16px;   /* 解決テキスト */
        --font-feature-index: 60px;   /* 特徴数字*/
        --font-feature-title: 30px;   /* 特徴タイトル */
        --font-feature-sentence: 18px;   /* 特徴説明 */
        --font-it-sentence: 15px;   /* IT導入補助金説明文 */
        --font-small: 13px;   /* 小さい文字 */
        --font-table-header: 15px;   /* テーブルヘッダー */
        --font-table-body: 15px;   /* テーブル明細 */
        --font-label: 15px;   /* ラベル */
        --font-text: 17px;   /* テキスト */
        --font-required: 13px;   /* 必須 */
        --font-footer-menu: 15px;   /* フッターメニュー */


        /*------　width -------*/
        --width-btn: 80%;   /* お問い合わせ、確認画面へ進むボタン */
        --width-title-logo: 60%;   /* セクションタイトルのロゴ */
        --width-logo: 10%;   /* ロゴ（header,footer） */
        --width-first-mock: 55%;   /* ファーストビューモック画像 */
        --width-check-before: 0.2em;   /* チェックマーク */
        --width-check-after: 1em;   /* チェックマーク */
        --width-hukidashi: 30%;   /* 悩み吹き出し */
        --width-feature-img: 50%;   /* 特徴画像 */
        --width-feature-content: 50%;   /* 特徴セクション幅 */
        --width-arrow: 30vw;    /* 悩み下部にある矢印（幅） */
        --width-arrow-top: 100px;   /* 悩み下部にある矢印（高さ） */
        --width-figure: 60%;   /* １GEN３運用イメージ */
        --width-movie: 60%;   /* 動画 */

        /*------　height -------*/
        --height-btn: 3;   /* お問い合わせ、確認画面へ進むボタン */
        --height-first-back: 90%;  /* ファーストビュー写真 */
        --height-check-before: 0.4em;   /* チェックマーク */

        /*------top -------*/
        --top-check-before: .50em;   /* チェックマーク */
        --top-check-after: 0.35em;   /* チェックマーク */

        /*------left -------*/
        --left-check-before: .3em;   /* チェックマーク */
        --left-check-after: 0;   /* チェックマーク */
    }


    /*********************************
	ファーストビュー
    *********************************/
    .top{
        display: flex;
        flex-direction: row-reverse;
        justify-content: left;
        align-items: flex-end;
        height: 90vh;
    }

    .top_right{
        padding-bottom: 80px;
        margin-left: 130px;
    }

    /*------問い合わせボタン -------*/
    .top_contact{
        margin-top: 50px;
    }



    /*********************************
	    システム概要
    *********************************/
    .about{
        margin-top: 100px;
        overflow-x: hidden;
        display: flex;
        align-items: center;
        width: 98%;
    }

    .about_mock{
        width: 70%;
        height: auto;
        margin-left: -300px; /* 左に見切れさせる */
    }

    .about_content{
        width: 45%;
    }

    .title_about{
        margin-bottom: 70px;
    }



    /*********************************
	   悩み
    *********************************/
    .trouble_title span{
        margin-top: 10px;
    }

    /*------各吹き出しのcss -------*/
    .trouble_content{
        display: flex;
        justify-content: center;
    }

    /*------1つ目、3つ目の吹き出しを下に下げる -------*/
    #t_content_1
    ,#t_content_3{
        margin-top: 70px;
    }

    .trouble_human{
        width: 8%;
        margin-top: -50px;
    }



    /*********************************
	   解決
    *********************************/
    /*------「１GEN３」で解決します！ -------*/
    .re_title img{
        width: 20%;
    }

    .re_title p{
        margin-bottom: 15px;
    }

    .re_p{
        width: 50%;
    }

    /*------各機能３つ -------*/
    .resolution ul{
        display: flex;
        align-items: center;
        justify-content: center;
        column-gap: 20px;
        width: 90%;
    }

    .resolution_content{
        width: 25%;
        padding: 50px 30px;
    }


    /*********************************
	   特徴
    *********************************/
    /*------各特徴のcss -------*/
    .feature_content{
        display: flex;
        justify-content: center;
    }

    /*------偶数行、奇数行に対して指定 -------*/
    .feature_content:nth-child(even){
        flex-direction: row-reverse;
    }

    .feature_content:nth-child(even) div{
        margin-right: 30px;
    }
    
    .feature_content:nth-child(odd) div{
        margin-left: 30px;
    }


    /*********************************
	    料金プラン
    *********************************/
    /*------IT導入補助金 -------*/
    .it_subsidy{
        padding: 50px;
    }

    .it_flex{
        display: flex;
        align-items: center;
        /* column-gap: 40px; */
        justify-content: space-between;
    }

    .it_flex img{
        width: 40%;
    }

    .section_width{
        width: 70%;
    }

    .flex_width{
        width: 55%;
    }

    /* 各料金css */
    .price_course{
        display: flex;
        align-items: center;
        column-gap: 10px;
        margin: 50px auto;
    }

    .price_content{
        width: 50%;
    }

    .price_content img{
        width: 100%;
    }

    /*------オプション料金 -------*/
    .price table{
        width: 100%;
    }



    /*********************************
        申し込み・お問い合わせ
    *********************************/
    .input_area{
        width: 40%;
        padding: 60px 80px;
    }

    

    /*********************************
        フッターの設定
    *********************************/
    /*------フッターナビ -------*/
    footer ul{
        display: flex;
        justify-content: center;
        align-items: center;
    }

    footer ul li a{
        margin: 0 20px;
    }

    footer ul li + li{
        border-left: 2px solid var(--border-gray);
    }

}


/************************************************************************
//////////////////////////////////Tablet////////////////////////////////
************************************************************************/
@media screen and (max-width: 960px) and (min-width: 520px){

    /*********************************
        変数
    *********************************/
    :root {
        /*------　フォントサイズ -------*/
        --font-header: 18px;   /* ヘッダー */
        --font-header-contact: 16px;   /* ヘッダー問い合わせボタン */
        --font-catch-copy1: 30px;   /* キャッチコピー１行目 */
        --font-catch-copy2: 50px;   /* キャッチコピー２行目 */
        --font-check: 20px;   /* チェックマーク横テキスト */
        --font-btn: 20px;   /* お問い合わせ、確認画面へ進むボタン */
        --font-logo: 25px;   /* ロゴ横のテキスト */
        --font-sentence: 18px;   /* 説明文 */
        --font-title1: 25px;   /* タイトル１ */
        --font-title2: 30px;   /* タイトル２ */
        --font-resolution-title: 18px;   /* 解決タイトル */
        --font-resolution-sentence: 15px;   /* 解決テキスト */
        --font-feature-index: 60px;   /* 特徴数字*/
        --font-feature-title: 30px;   /* 特徴タイトル */
        --font-feature-sentence: 18px;   /* 特徴説明 */
        --font-it-sentence: 15px;   /* IT導入補助金説明文 */
        --font-small: 13px;   /* 小さい文字 */
        --font-table-header: 15px;   /* テーブルヘッダー */
        --font-table-body: 15px;   /* テーブル明細 */
        --font-label: 15px;   /* ラベル */
        --font-text: 17px;   /* テキスト */
        --font-required: 13px;   /* 必須 */
        --font-footer-menu: 15px;   /* フッターメニュー */


        /*------　width -------*/
        --width-btn: 60%;   /* お問い合わせ、確認画面へ進むボタン */
        --width-title-logo: 45%;   /* セクションタイトルのロゴ */
        --width-logo: 20%;   /* ロゴ（header,footer） */
        --width-first-mock: 90%;   /* ファーストビューモック画像 */
        --width-check-before: 0.3em;   /* チェックマーク */
        --width-check-after: 1.3em;   /* チェックマーク */
        --width-hukidashi: 50%;   /* 悩み吹き出し */
        --width-feature-img: 50%;   /* 特徴画像 */
        --width-feature-content: 40%;   /* 特徴セクション幅 */
        --width-arrow: 40vw;    /* 悩み下部にある矢印（幅） */
        --width-arrow-top: 120px;   /* 悩み下部にある矢印（高さ） */
        --width-figure: 60%;   /* １GEN３運用イメージ */
        --width-movie: 80%;   /* 動画 */

        /*------　height -------*/
        --height-btn: 3;   /* お問い合わせ、確認画面へ進むボタン */
        --height-first-back: 50%;  /* ファーストビュー写真 */
        --height-check-before: 0.6em;   /* チェックマーク */

        /*------top -------*/
        --top-check-before: .4em;   /* チェックマーク */
        --top-check-after: 0.2em;   /* チェックマーク */

        /*------left -------*/
        --left-check-before: .45em;   /* チェックマーク */
        --left-check-after: 0;   /* チェックマーク */
    }


    /*********************************
	    ファーストビュー
    *********************************/
    .top{
        padding-top: 100px;
    }

    .top_right{
        margin: 0 auto;
        width: 100%;
    }

    .top img{
        display: block;
        margin: 0 auto;
    }

    /* キャッチコピー */
    .top_right div{
        text-align: center;
    }

    .top_right ul{
        width: 50%;
        margin: 0 auto;
    }

    /*------問い合わせボタン -------*/
    .top_contact{
        width: 50%;
        margin: 50px auto 0;
    }


    /*********************************
	    システム概要
    *********************************/
    .about{
        margin-top: 100px;
        text-align: center;
    }

    /*------PC画面 -------*/
    .about_mock{
        width: 90%;
        margin: 0 auto;
    }

    .about_content{
        width: 80%;
        text-align: center;
        margin: 0 auto;
    }

    .title_about{
        margin-bottom: 30px;
        justify-content: flex-end;
    }



    /*********************************
	   悩み
    *********************************/
    .trouble_title span{
        margin-top: 10px;
    }

    /*------各吹き出しのcss -------*/
    .trouble_content{
        display: flex;
        justify-content: center;
    }

    /*------1つ目、3つ目の吹き出しを下に下げる -------*/
    #t_content_1
    ,#t_content_3{
        margin-top: 70px;
    }

    .trouble_human{
        width: 10%;
        margin-top: -50px;
    }



    /*********************************
	   解決
    *********************************/
    /*------「１GEN３」で解決します！ -------*/
    .re_title img{
        width: 25%;
    }

    .re_title p{
        margin-bottom: 10px;
    }

    .re_p{
        width: 80%;
    }

    /*------各機能３つ -------*/
    .resolution ul{
        display: flex;
        align-items: center;
        justify-content: center;
        column-gap: 15px;
        width: 95%;
    }

    .resolution_content{
        width: 30%;
        padding: 40px 30px;
    }


    /*------運用イメージ -------*/
    .figure{
        width: 80%;
    }




    /*********************************
	   特徴
    *********************************/
    .feature_content{
        margin-bottom: 70px;
    }

    .feature_content img{
        width: 100%;
    }

    .feature_content div{
        margin-left: auto;
        margin-right: auto;
        width: 90%;
    }

    #feature_content1 div{
        margin-top: -70px;
    }
    #feature_content2 div{
        margin-top: -10px;
    }
    #feature_content3 div{
        margin-top: -40px;
    }
    #feature_content4 div{
        margin-top: -40px;
    }



    /*********************************
	    料金プラン
    *********************************/
    /*------IT導入補助金 -------*/
    .it_subsidy{
        padding: 50px;
    }

    .it_flex{
        width: 90%;
        margin: 0 auto;
    }

    .it_flex img{
        display: block;
        width: 70%;
        margin: 40px auto;
    }

    .section_width{
        width: 80%;
    }

    /* 各料金css */
    .price_course{
        display: flex;
        align-items: center;
        column-gap: 10px;
        margin: 50px auto;
    }

    .price_content{
        width: 50%;
    }

    .price_content img{
        width: 100%;
    }

    /*------オプション料金 -------*/
    .price table{
        width: 100%;
    }



    /*********************************
        申し込み・お問い合わせ
    *********************************/
    .input_area{
        width: 60%;
        padding: 60px 80px;
    }

    

    /*********************************
        フッターの設定
    *********************************/
    /*------フッターナビ -------*/
    footer ul{
        display: flex;
        justify-content: center;
        align-items: center;
    }

    footer ul li a{
        margin: 0 20px;
    }

    footer ul li a:hover{
        text-decoration: underline;
    }

    footer ul li + li{
        border-left: 2px solid var(--border-gray);
    }
}



/************************************************************************
//////////////////////////////////Mobile////////////////////////////////
************************************************************************/
@media screen and (max-width: 520px){

    /*********************************
        変数
    *********************************/
    :root {
        /*------　フォントサイズ -------*/
        --font-header: 15px;   /* ヘッダー */
        --font-header-contact: 15px;   /* ヘッダー問い合わせボタン */
        --font-catch-copy1: 23px;   /* キャッチコピー１行目 */
        --font-catch-copy2: 33px;   /* キャッチコピー２行目 */
        --font-check: 15px;   /* チェックマーク横テキスト */
        --font-btn: 18px;   /* お問い合わせ、確認画面へ進むボタン */
        --font-logo: 20px;   /* ロゴ横のテキスト */
        --font-sentence: 15px;   /* 説明文 */
        --font-title1: 18px;   /* タイトル１ */
        --font-title2: 23px;   /* タイトル２ */
        --font-resolution-title: 20px;   /* 解決タイトル */
        --font-resolution-sentence: 16px;   /* 解決テキスト */
        --font-feature-index: 50px;   /* 特徴数字*/
        --font-feature-title: 25px;   /* 特徴タイトル */
        --font-feature-sentence: 15px;   /* 特徴説明 */
        --font-it-sentence: 13px;   /* IT導入補助金説明文 */
        --font-small: 13px;   /* 小さい文字 */
        --font-table-header: 15px;   /* テーブルヘッダー */
        --font-table-body: 15px;   /* テーブル明細 */
        --font-label: 13px;   /* ラベル */
        --font-text: 15px;   /* テキスト */
        --font-required: 11px;   /* 必須 */
        --font-footer-menu: 13px;   /* フッターメニュー */


        /*------　width -------*/
        --width-btn: 60%;   /* お問い合わせ、確認画面へ進むボタン */
        --width-title-logo: 60%;   /* セクションタイトルのロゴ */
        --width-logo: 30%;   /* ロゴ（header,footer） */
        --width-first-mock: 90%;   /* ファーストビューモック画像 */
        --width-check-before: 0.3em;   /* チェックマーク */
        --width-check-after: 1.3em;   /* チェックマーク */
        --width-hukidashi: 100%;   /* 悩み吹き出し */
        --width-feature-img: 100%;   /* 特徴画像 */
        --width-feature-content: 90%;   /* 特徴セクション幅 */
        --width-arrow: 100vw;    /* 悩み下部にある矢印（幅） */
        --width-arrow-top: 150px;   /* 悩み下部にある矢印（高さ） */
        --width-figure: 60%;   /* １GEN３運用イメージ */
        --width-movie: 90%;   /* 動画 */

        /*------　height -------*/
        --height-btn: 3;   /* お問い合わせ、確認画面へ進むボタン */
        --height-first-back: 40%;  /* ファーストビュー写真 */
        --height-check-before: 0.6em;   /* チェックマーク */

        /*------top -------*/
        --top-check-before: .4em;   /* チェックマーク */
        --top-check-after: 0.2em;   /* チェックマーク */

        /*------left -------*/
        --left-check-before: .45em;   /* チェックマーク */
        --left-check-after: 0;   /* チェックマーク */
    }

    /*********************************
	    ヘッダー設定
    *********************************/
    .pc_header{
        display: none;
    }


    /*********************************
	    ファーストビュー
    *********************************/
    .top{
        padding-top: 100px;
    }

    .top_right{
        margin: 0 auto;
        width: 100%;
    }

    .top img{
        display: block;
        margin: 0 auto;
    }

    /* キャッチコピー */
    .top_right div{
        text-align: center;
    }

    .top_right ul{
        width: 70%;
        margin: 0 auto;
    }

    /*------問い合わせボタン -------*/
    .top_contact{
        width: 70%;
        margin: 30px auto 0;
    }


    /*********************************
	    システム概要
    *********************************/
    .about{
        margin-top: 100px;
        text-align: center;
    }

    /*------PC画面 -------*/
    .about_mock{
        width: 90%;
        margin: 0 auto;
    }

    .about_content{
        width: 80%;
        text-align: center;
        margin: 0 auto;
    }

    .title_about{
        margin-bottom: 30px;
        justify-content: flex-end;
    }


    .about_human{
        width: 8%;
    }


    /*********************************
	   悩み
    *********************************/
    .trouble_title span{
        margin-top: 10px;
    }

    /*------各吹き出しのcss -------*/
    .trouble_content{
        width: 90%;
        margin: 0 auto;
    }

    .trouble_human{
        width: 20%;
        margin-top: 10px;
    }



    /*********************************
	   解決
    *********************************/
    /*------「１GEN３」で解決します！ -------*/
    .re_title img{
        width: 40%;
    }

    .re_title p{
        margin-bottom: 10px;
    }

    .re_p{
        width: 90%;
    }

    /*------各機能３つ -------*/
    .resolution ul li{
        margin-bottom: 20px;
    }

    .resolution_content{
        width: 70%;
        padding: 40px 30px;
        margin: 0 auto;
    }


    /*------運用イメージ -------*/
    .figure{
        margin-top: 50px;
        width: 100%;
    }

    

    /*********************************
	   特徴
    *********************************/
    .feature_content{
        margin-bottom: 70px;
    }

    .feature_content img{
        width: 100%;
    }

    .feature_content div{
        width: 95%;
        margin: -50px auto 0;
    }

    
    #feature_content1 div{
        margin-top: -40px;
    }
    #feature_content2 div{
        margin-top: -10px;
    }
    #feature_content3 div{
        margin-top: -20px;
    }
    #feature_content4 div{
        margin-top: -20px;
    }



    /*********************************
	    料金プラン
    *********************************/
    /*------IT導入補助金 -------*/
    .it_subsidy{
        padding: 20px;
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }

    .it_flex{
        /* width: 80%; */
        margin: 0 auto;
    }

    .it_flex img{
        display: block;
        width: 70%;
        margin: 40px auto;
    }

    .section_width{
        width: 100%;
    }

    /* 各料金css */
    .price_course{
        width: 80%;
        margin: 50px auto;
    }

    .price_content{
        width: 100%;
        margin-bottom: 50px;
    }

    .price_content img{
        width: 100%;
    }

    /*------オプション料金 -------*/
    .option_title{
        display: block;
        margin-left: 50px;
    }

    .price table{
        width: 100%;
        margin: 0 50px;
    }



    /*********************************
        申し込み・お問い合わせ
    *********************************/
    .input_area{
        width: 80%;
        padding: 50px 30px;
    }

    

    /*********************************
        フッターの設定
    *********************************/
    /*------フッターナビ -------*/
    footer ul li{
        margin-bottom: 15px;
    }


    /*********************************
	　ヘッダーの設定(ハンバーガーメニュー)
    *********************************/
    .pc_header{
        display: none;
    }

    /*------　ハンバーガーボタン　 -------*/
    .hamburger {
        display : block;
        position: fixed;
        z-index : 3;
        right : 13px;
        top   : 14px;
        width : 42px;
        height: 42px;
        cursor: pointer;
    }

    .hamburger span {
        display : block;
        position: absolute;
        width   : 30px;
        height  : 2px ;
        left    : 6px;
        border-radius: 50px;
        background : var(--color-black);
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition   : 0.3s ease-in-out;
        transition        : 0.3s ease-in-out;
    }
    .hamburger span:nth-child(1) {
        top: 10px;
    }
    .hamburger span:nth-child(2) {
        top: 20px;
    }
    .hamburger span:nth-child(3) {
        top: 30px;
    }
    
    /*------ナビ開いてる時のボタン -------*/
    .hamburger.active span:nth-child(1) {
        top : 20px;
        left: 6px;
        -webkit-transform: rotate(-45deg);
        -moz-transform   : rotate(-45deg);
        transform        : rotate(-45deg);
    }
    
    .hamburger.active span:nth-child(2),
    .hamburger.active span:nth-child(3) {
        top: 20px;
        -webkit-transform: rotate(45deg);
        -moz-transform   : rotate(45deg);
        transform        : rotate(45deg);
    }
  
    /*------ナビゲーション -------*/
    nav.globalMenuSp {
        position: fixed;
        z-index : 2;
        top  : 60px;
        left : 0;
        right: 0;
        /* color: var(--color-black); */
        background: #fff;
        transform: translateY(-100%);
        transition: all 0.6s;
        width: 100%;
        box-shadow: 3px 3px 6px #00000029;
    }
      
    nav.globalMenuSp ul {
        margin: 0 auto;
        width: 90%;
    }

    nav.globalMenuSp > ul{
        margin-top: 20px;
    }

    .font{
        color: var(--color-black);
    }

    .dropdown_mo{
        border-bottom: 1px solid var(--border-gray);
    }

    nav.globalMenuSp ul li:last-child {
        padding-bottom: 0;
        border-bottom: none;  
    }

    nav.globalMenuSp ul li .orange_btn{
        margin-bottom: 30px;
        text-align: center;
    }
      
    nav.globalMenuSp ul li a {
        display: block;
        padding: 1.3em 15px;
        text-align: left;
    }

    .dropdown_child_mo li a{
        padding: 1em 15px !important;
    }
      

    /* このクラスを、jQueryで付与・削除する */
    nav.globalMenuSp.active {
        transform: translateY(0%);
    }


    /*------ナビゲーション内ドロップダウン -------*/
    .dropdown_mo ul{
        visibility:visible;/*JSで制御するため一旦表示*/
        opacity:1;/*JSで制御するため一旦表示*/
        display: none;/*JSのslidetoggleで表示させるため非表示に*/
        transition:none;/*JSで制御するためCSSのアニメーションを切る*/
    }

    .dropdown_mo:active > ul{
        visibility: visible;
        opacity: 1;
    }

    /*------矢印の位置と向き -------*/
    .dropdown_mo::after{
        content:'';
        position: absolute;
        border-radius: 1px;
        top: 50px;
        right:40px; 
        width:8px;
        height:7px;
        border-top: 3px solid var(--color-black-light);
        border-right:3px solid var(--color-black-light);
        transform: rotate(135deg); 
    }
    
    .dropdown_mo::after{
        transform: rotate(135deg);
    }
        
    .dropdown_mo.active::after{
        transform: rotate(-45deg);
    }


}



/************************************************************************
/////////////////////////PC,Tablet共通ヘッダーCSS////////////////////////
************************************************************************/
@media screen and (min-width: 520px){
    /*********************************
	　ヘッダーの設定
    *********************************/
    .mo_header
    ,.globalMenuSp{
        display: none;
    }

    .header_flex{
        display: flex;
        align-items: center;
    }

    .header_flex li{
        margin-right: 30px;
    }

    .dropdown{
        cursor: pointer;
    }
    
    /*------ヘッダー　問い合わせボタン -------*/
    .header_contact{
        display: block;
        width: 150px;
        line-height: 3.5;
    }

    /*------ドロップダウン設定 -------*/
    nav ul li.dropdown{
        position: relative;
        padding-right: 25px;
    }

    nav ul li.dropdown::after{
        content: "";
        position: absolute;
        top: 9px;
        right: 5%;
        border: 6px solid transparent;
        border-top: 7px solid #fff; 
    }

    .dropdown_child {
        display: none;
        position: absolute;
        /* 以下２行：ドロップダウンべろの位置 */
        top: 36px;
        left: 2px;
        width: 12em;
        padding: 20px;
        background: #fff;       /* ドロップダウンの背景色 */
        border: solid 1px var(--border-gray);  /* ドロップダウンの枠線色 */
        border-radius: 0.5em;
        box-shadow: 0px 0px 9px 5px rgba(141, 141, 141, 0.2);
    }

    .dropdown_child li{
        margin: 10px 0;
    }

    .dropdown_child li a{
        display: block;
        text-align: left;
        margin-bottom: 20px;
        color: var(--color-black);
        transition: color .3s;
    }

    .dropdown_child li a:hover{
        color: var(--color-orange-2);
    }
    /*-----------------------------*/
}



/* .link{
    position: relative;
    transition: all .3s;
}

.link:hover{
    color:var(--color-orange-2);
} */

/* .link::after{
    content: ''; */
    /*絶対配置で線の位置を決める*/
    /* position: absolute;
    bottom: -10px;
    left: 10%; */
    /*線の形状*/
    /* width: 80%;
    height: 2px;
    background:var(--color-orange-2); */
    /*アニメーションの指定*/
    /* transition: all .3s; */
    /* transform: scale(0, 1);X方向0、Y方向1 */
    /* transform-origin: center top;上部中央基点 */
/* } */

/*現在地とhoverの設定*/
/* .link:hover::after { */
    /* transform: scale(1, 1);X方向にスケール拡大 */
/* } */