@charset "utf-8";
/*スマホ対応*/
@media (max-width: 670px) {
    /*全体の仕様*/
    .content {
        max-width: 670px;
        padding: 0 0;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
}
    .container {
            margin-left: auto;
            margin-right: auto;
    }
    /*スペースバー*/
    .sp {
            width: 10px;
            height: 15px;
    }
    /*改行(br)のキャンセル*/
    br {
        display: none;
    }
     /*ここからヘッダー*/
    .header {
        border-top: 5px solid #4c74dc;
        height: 102px;
        width: 100%;
    }
     /*ヘッダーの大きさ変更*/
    .header-logo {
        width: 55%;
        margin-top: 30px;
        padding-top: 10px;
        padding-bottom: 10px;
        margin-left: -38px;
    }
    /*メイン画像*/
    .main-visual img {
    width: 100%;
    margin-bottom: 10px;
    }
    /*ヘッダーリストを非表示*/
    #nav-table {
        display: none;
    }
    /*ハンバーガーメニュー*/
        /*ハンバーガーメニュー*/
        .ham-menu {
            width: 40px;
            position: absolute;
            top: 30px;
            left: 270px;
            z-index: 100;
        }
        /*三本線ボタン*/
        .line {
            width: 30px;
            height: 3px;
            background-color: black;
            margin-bottom: 8px;
        }
        /*三本線ボタンの周り*/
        .line-box {
            border: 2px solid black;
            width: 38px;
            height: 34px;
            padding: 8px 0px 0px 7px;
            margin-bottom: 20px;
        }
        #menu-btn-check {
            display: none;
        }
        /*メニューリスト*/
        ul {
            list-style: none;
        }
        .ham-menu-list {
            width: 375px;
            height: 500px;
            padding: 1px 1px 1px 1px;
            background-color: black;
            opacity: 80%;
            transform: translateX(-660px);
        }
        .t-text {
            font-size: 22px;
            color: white;
            padding-left: 20px;
        }
        .b-text {
            font-size: 13px;
            color: white;
            padding-left: 20px;
        }
        .ham-list {
            border-bottom: 1px solid white;
        }
        .ham-menu-list a {
            text-decoration: none;
        }
        #menu-btn-check:checked ~ .ham-menu-list {
            transform: translateX(-270px);
            transition: 0.7s;
        }
    /*２カラムをシングルカラムに*/
    .wrapper {
        display: block;
    }
    /*ホームの画面左側*/
    .main {
        width: 100%;
        padding: 0 0;
        line-height: 10px;
    }
    #text-list {
        position: relative;
        left: 0.5em;
        margin-top: 8px;
        margin-bottom: 10px;
        line-height: 20px;
    }
    #text-list p {
        font-size: 13px;
    }
    #text-list > div {
        border-bottom: 1px solid #cccccc;
        width: 95%;
        padding: 0 0;
    }
    /*過去ログ*/
    .last {
        font-size: 12px;
        position: relative;
        top: 10px;
        left: 280px;
        display: inline-block;
        margin-bottom: 25px;
    }
    .mr {
        margin-right: 0;
        color: #0e36ca;
        letter-spacing: normal;
        display: block;
    }
    .padding-left {
        width: 90%;
        position: relative;
        left: 0.5em;
    }
    /*赤い文章*/
    .main span:not(.mr, #not-red, #inter-red, .arrow, .sample-title, .sample-text, #new) {
        font-weight: bold;
        color: #ff0000;
    }
    #red-text {
        color: red;
        font-weight: bold;
    }
    .main p {
        font-size: 14px;
        line-height: 20px;
        overflow-wrap: break-all;
        color:#666666 ;
    }
    #inter-red {
        color: red;
        font-weight: normal;
    }
    /*バー２種*/
    #b-bar {
        background-color: #0f3bdc;
        height: 24px;
        width: 99.5%;
        border-radius: 8px;
    }
    #b-bar p {
        color: #ffffff;
        font-size: 12px;
        padding: 0 6px;
        margin-left: 5px;
        border-left: none;
        position: relative;
        top: 3px;
    }
    #g-bar {
        background: linear-gradient(0deg, #efefef, #fdfdfd);
        height: 24px;
        width: 99.5%;
        border: 1px solid #cecece;
        border-radius: 8px; 
        display: none;
    }
    #g-bar p {
        color: #666666;
        font-size: 12px;
        line-height: 25px;
        text-indent: 1em;
    }
    /*グレイバーの赤文字バージョン*/
    #g-bar .red {
        color: #ff0000;
        font-size: 1px;
    }
    #new {
        color: white;
        background-color: red;
        margin-bottom: 3px;
        font-size: 8px;
        padding: 0 2px;
        position: relative;
        bottom: 3px;
        display: inline-block;
    }
    /*g-bar-red,g-bar-spの表示切替*/
    #g-bar-red {
        display: none;
    }
    #g-bar-red-sp {
        background: linear-gradient(0deg, #efefef, #fdfdfd);
        height: 36px;
        width: 99.5%;
        padding: 0.5em 0;
        border: 1px solid #cecece;
        border-radius: 8px; 
    }
    #g-bar-red-sp p {
        color: #ff0000;
        font-size: 12px;
        line-height: 18px;
    }
    #g-bar-js {
        display: none;
    }
    #g-bar-sp {
        background: linear-gradient(0deg, #efefef, #fdfdfd);
        height: 40px;
        width: 99.5%;
        border: 1px solid #cecece;
        border-radius: 8px;
        padding-top: 4px;
    }
    #g-bar-sp p {
        color: #666666;
        font-size: 12px;
        line-height: 18px;
        margin:0 0.5em;

    }
    /*フッター上の隙間キャンセル*/
    .sp-wrapper {
        display: none;
    }
    /*画面右側を下に*/
    .side {
        width: 100%;
        padding-top: 35px;
        text-indent: 1em;
        height: 780px;
    }
    /*メニュー全体の取り決め*/
    li:not(#m3-li) {
        list-style-type: none;
        border-bottom: 1px solid #d2d2d2;
        width: 99.5%;
    }
    /*メニュー1,メニュー2*/
    .menu1, .menu2 {
        width: 99.5%;
        padding: 0;
        height: auto;
        border: 1px solid #d2d2d2;
        background: linear-gradient(0deg, #eaeaea, #ffffff);
    }
    .m1-list li, .m2-list {
        height: 24px;
        font-size: 12px;
        width: 99.5%;
    }
    .m1-list a, .m2-list a {
        padding: 0;
        line-height: 24px;
    }
    .menu1 p, .menu2 p {
        font-weight: bold;
        color: #666666;
        font-size: 12px;
        width: 99.5%;
        height: 30px;
        line-height: 30px;
        color: #666666;
        border-top: 2px solid #0e36ca;
        border-bottom: 1px solid #d2d2d2;
    }
    /*メニュー3*/
    .menu3 {
        margin-top: 50px;
        width: 99.5%;
        height: auto;
        padding: 0;
        border: 1px solid #d2d2d2;
        background: linear-gradient(0deg, #eaeaea, #ffffff);
    }
    #m3-li {
        list-style-type: none;
        border-bottom: 1px solid #d2d2d2;
        width: 99.5%;
    }
    /*メニュー4*/
    .menu4 {
        width: 99.5%;
        height: auto;
        padding: 0;
        border: 1px solid #d2d2d2;
        background: linear-gradient(0deg, #eaeaea, #ffffff);
    }
    /*メニュー3，4の上の部分*/
    .menu3-title, .menu4 p:not(.menu-bar-text p) {
        font-weight: bold;
        color: #666666;
        font-size: 12px;
        width: 99.5%;
        height: 30px;
        line-height: 30px;
        border-top: 2px solid #0e36ca;
        border-bottom: 1px solid #d2d2d2;
        background-color: #eeeeee;
    }
    /*メニュー3，4の画像とテキストのセット*/
    .menu-bar {
        display: flex;
        height: 40px;
        padding: 0 0 0.5em 0.5em;
    }
    .menu-bar img {
        width: 40px;
        height: 30px;
    }
    .menu-bar-text {
        margin-left: -10px;
        margin-top: 7px;
    }
    .menu-bar-text h6 {
        font-size: 11px;
        font-weight: normal; 
        color: #666666;   
    }
    li:hover .menu-bar-text h6 {
        color: #0e36ca;
        transition: 0.8s;
    }
    /*会社説明*/
    .com {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        color: #666666;
        width: 70%;
        height: auto;
        padding: 0;
        border: 1px solid #d2d2d2;
        background: linear-gradient(0deg, #eaeaea, #ffffff);
        margin-bottom: 300px;
    }
    .com p {
        font-weight: bold;
        color: #666666;
        font-size: 12px;
        width: 99.5%;
        height: auto;
        line-height: 20px;
        color: #666666;
        border-top: 2px solid #0e36ca;
        border-bottom: 1px solid #d2d2d2;
        background-color: #eeeeee;
    }
    .com h5 {
        margin-top: 4px;
        margin-bottom: 4px;
    }
    .com h6 {
        font-weight: normal;
    }
    .sp-wrapper {
        display: none;
    }
    /*ここからフッター*/
    .footer {
        display: block;
        width: 100%;
        height: 50px;
        padding-top: 8px;
        text-align: center;
        background-color: #0e36ca;
        color: #ffffff;
        font-size: 12px;
        line-height: 20px;
        font-size: 12px;
    }
    /*カンパニーの表*/
    .table {
        color: #666;
        width: 98%;
        margin-left: auto;
        margin-right: auto;
        height: auto;
    } 
    /*表の見出し*/
    .table-index {
    height: auto;
    text-align: center;
    font-size: 14px;
    width: 20%;
    }
    /*表の説明*/
    .table-text{
    width: 80%;
    text-indent: 0em;
    padding-left: 1em;
    letter-spacing: 0.1em;
    height: auto;
    }
    .table-text a:hover{
    text-decoration: none;
    transition: 0.8s;
    }
    /*サービスの左側*/
    /*カード1*/
    .card1 {
    width: 98%;
    height: 110px;
    border: 1px solid #cccccc;
    background: linear-gradient(0deg, #eeeeee, #fefefe);
    position: relative;
    box-shadow: 4px 4px 10px 2px #d0cec6;
    display: flex;
    }
    .card1-img {
        width: 200px;
        height: auto;
        position: absolute;
        top: 20px;
        left: 20px;
    }
    .card1-img img {
        width: 55%;
    }
    .card1-text {
        display: block;
        position: absolute;
        top: 10px;
        left: 146px;
        font-size: 14px;
        color: blue;
        line-height: 45px;
    }   
    .card1-text p {
        font-size: 12px;
    }
    .card1, .card2, .card3:hover{
    background: none;
    transition: 0.8s;
    }
    .card1:hover .card1-text p {
    color: blue;
    transition: 0.8s;
    }
    .card1:hover .arrow1 p {
    background-color: black;
    transition: 0.8s;
    }
    /*カード2*/
    .card2 {
    width: 98%;
    height: 290px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #cccccc;
    background: linear-gradient(0deg, #eeeeee, #fefefe);
    position: relative;
    box-shadow: 4px 4px 10px 2px #d0cec6;
    }
    .card2-wrapper {
        padding: 1em;
    }
    .card2 img {
        width: 30%;
        height: auto;
        float: left;
        margin: 0 1em 0 0;
    }
    .sample-title {
        font-size: 14px;
        display: inline-block;
        margin-bottom: 0.5em;
        margin-top: 1.5em;
        margin-right: 1em;
        color: blue;
    }
    .sample-text {
        display: none;
    }
    .sp-sample-text {
        font-size: 12px;
    }
    .card2:hover .arrow2 p {
    background-color: black;
    transition: 0.8s;
    }
    .card2:hover .sample-text{
    color: blue;
    transition: 0.8s;
    }
    .clear {
    clear: both;
    }
    .arrow1 p, .arrow2 p, .arrow3 p {
    color: white;
    background-color: #7e7e7e;
    padding: 2px 7px;
    border-radius: 3px;
    display: inline-block;
    position: absolute;
    top: 17px;
    left: 310px;
    }
    /*カード3,4*/
    .card3, .card4 {
    width: 98%;
    height: 85px;
    border: 1px solid #cccccc;
    background: linear-gradient(0deg, #eeeeee, #fefefe);
    position: relative;
    box-shadow: 4px 4px 10px 2px #d0cec6;
    }
    .card3-text, .card4-text {
    line-height: 2em;
    font-size: 14px;
    position: absolute;
    top: 10%;
    left: 3%;
    color: blue;
    }
    .card3:hover .arrow3 p {
    background-color: black;
    transition: 0.8s;
    }
    .card3:hover .card3-text p {
    color: blue;
    }
    .td-head {
        height: 30px;
        width: 95%;
        font-size: 14px;
        text-align: start;
        padding-left: 0.5em;
    }
    .td-title {
        height: 52px;
        width: 20%;
        padding-left: 0.5em;
        font-size: 14px;
    }
    .td-text {
        height: 52px;
        width: 80%;
        font-size: 14px;
        text-align: start;
        line-height: 1.5em;
        padding-left: 0.5em;
    }
    .td-link {
        color: #666666;
    }
    .td-link:hover {
        text-decoration: none;
        color: blue;
    }
    /*お問い合わせフォーム*/
    .table {
        width: 98%;
        margin-left: auto;
        margin-right: auto;
    }
    form {
        position: relative;
        width: 98%;
        margin-left: auto;
        margin-right: auto;
    }
    .td-title {
        height: 35px;
        width: 39%;
    }
    .td-text {
        height: 35px;
        width: 63%;
        text-align: start;
        padding-left: 1em;
    }
    .td-info {
        height: 158px;
        text-align: start;
        width: 50%;
        padding-left: 1em;
    }
    #td-name, #td-email {
        width: 93%;
        line-height: 20px;
    }
    #button {
        width: 120px;
        height: 30px;    
        font-size: 15px;
        position: absolute;
        top: 265px;
        left: 130px;
    }
    #td-info {
        width: 93%;
    }
}
    /*g-bar-red,g-bar-spの表示切替*/
    @media (min-width: 671px) {
        #g-bar-red-sp {
            display: none;
        }
        #g-bar-sp {
            display: none;
        }
        #sp-sample-text {
            display: none;
        }
        .ham-menu {
            display: none;
        }
     }