/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    /* 16px*/
    line-height: 2;
}

a {
    transition: color 0.3s ease;
}


/*altタグ内の改行 &#13;&#10; を有効にする*/

img {
    white-space: pre;
}

h1 {
    font-size: 36px;
    /* IE8以下とAndroid4.3以下用フォールバック */
    font-size: calc(2.4rem + ((1vw - 0.64rem) * 2.1429));
    /* 24px~36pxで可変*/
    line-height: 1.3;
}

h2 {
    font-size: 24px;
    /* IE8以下とAndroid4.3以下用フォールバック */
    font-size: calc(2rem + ((1vw - 0.64rem) * 0.7143));
    /* 20px~24pxで可変*/
    line-height: 1.3;
}

a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (min-width: 1200px) {
    /* 1200px以上*/
    h1 {
        font-size: 3.6rem;
        /* 36px*/
    }
    h2 {
        font-size: 2.4rem;
        /* 24px*/
    }
}

@media screen and (max-width: 640px) {
    /* 640px以下*/
    body {
        line-height: 2;
    }
    h1 {
        font-size: 2.4rem;
        /* 24px*/
    }
    h2 {
        font-size: 2rem;
        /* 20px*/
    }
}

body {
    padding-top: 0;
}

body {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
}

li {
    list-style-type: none;
}

h2 {
    font-weight: bold;
    letter-spacing: 0.6rem;
    margin-top: 50px;
    margin-bottom: 20px;
    text-align: center;
}


/* hr {
    border-color: #f00;
    border-width: 5px;
    width: 90%;
} */


/* 汎用クラス */

.b {
    font-weight: bold;
}

.bg_white {
    background: #fff;
}

.bg_blue {
    background: #def4ff;
    padding: 50px 0;
    margin-bottom: 30px;
    /* margin: 50px 0; */
}

.bg_grey {
    background: #e9eef0;
    padding: 50px 0;
    margin: 50px 0;
}

.orange {
    color: #f60;
}

.red {
    color: #f45434;
}

.blue {
    color: #1c9cc4;
}

.light-blue {
    color: #00abe1;
}

.light-purple {
    color: #5d99ff;
}

.btn_blue {
    background: #1ea5e8;
    border: solid 1px #1ea5e8;
    border-radius: 30px;
    color: #fff;
    display: inline-block;
    font-weight: bold;
    padding: 15px 50px;
}

.circle {
    background: #fff;
    border: solid 1px #ccc;
    border-radius: 10px;
}

.gray_circle {
    background: #ebf0f2;
    border: solid 1px #eee;
    border-radius: 10px;
}

.fs_large {
    font-size: 3.5rem;
    font-weight: bold;
}

.fs_xlarge {
    font-size: 5rem;
    font-weight: bold;
}

.mb50 {
    margin-bottom: 50px;
}

.mb100 {
    margin-bottom: 100px;
}


/* 汎用クラス ここまで */


/* グローバルメニュー ここから */


/* ロゴ */

#logo {
    max-width: 60px;
}

@media (min-width: 960px) {
    /* 992px以上*/
    #logo {
        max-width: 220px;
    }
}

@media all and (-ms-high-contrast:none) {
    .foo {
        color: green
    }
    /* IE10 */
    #logo {
        max-width: 70px;
    }
}

.navbar-light .navbar-nav .nav-link {
    color: #fff;
    padding: 1rem;
}

.navbar-light .navbar-toggler-icon {
    height: 30px;
    width: 30px;
}

.img-box {
    position: relative;
}


/* 電話問い合わせ */

#icon_tel {
    max-width: 290px;
}


/* フォーム問い合わせ */

#icon_form {
    max-width: 111px;
}


/* ボタンのホバー設定 */

.img-box .active {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: 0.5s; // ゆっくり
}

.img-box:hover .active {
    opacity: 1;
}

.img-box:hover .btn_off {
    opacity: 0!important;
}

.navbar-inverse {
    background-color: rgba(28, 156, 196, 0.6) !important;
    padding: 0;
}

nav .container {
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
}

ul.navbar-nav li a {
    color: #fff;
    display: inline-block;
    padding: 10px;
}

ul.navbar-nav li:last-child a {
    margin-right: 0;
}

#nav-item a:hover {
    opacity: 1;
}

#nav-item {
    background-color: white!important;
    margin-bottom: 1px!important;
}


/* #navbarSupportedContent{
  background-color: rgba(28, 156, 196, 0.6);
} */


/* 問い合わせメニュー */

ul#contact {
    display: flex;
    max-width: 335px;
    padding-left: 0;
}

@media screen and (min-width: 768px) {
    ul#contact {
        display: flex;
        margin-bottom: 0;
        max-width: 100%;
    }
}


/* ハンバーガーメニューアイコン */


/*.navbar-toggler-icon {
    background-image: url("");
}*/


/* グローバルメニュー ここまで */


/* メインビジュアル ここから */

#doctortrust_for_stress_checks_sp {
    /* margin-bottom: 20px; */
    width: 90%;
    display: block;
    margin: 45px auto 0 auto;
}

#doctortrust_for_stress_checks {
    display: none;
    width: 100%;
}

@media screen and (min-width: 600px) {
    #doctortrust_for_stress_checks_sp {
        display: none;
        margin: 45px auto 0 auto;
    }
    #doctortrust_for_stress_checks {
        display: block;
    }
}


/* メインビジュアル ここまで */


/* ニュースリリース */

#news_wrapper {
    padding: 40px 0;
    margin: 0 auto;
}

#news_wrapper h1 {
    color: #c0d3e8;
    font-size: 4rem;
    font-weight: bold;
}

#news_item:hover {
    background-color: #d9efff;
    transition: background-color 0.3s ease;
}

#news_item {
    transition: background-color 0.3s ease;
}

#news_wrapper a {
    transition: color 0.3s ease;
    text-decoration: none;
    color: black;
}

#news_item {
    border-top: 1px solid #afc0ce;
    padding: 20px 0;
}

@media screen and (max-width: 640px) {
    /* 640px以下*/
    #news_item {
        flex-direction: column;
        justify-content: flex-start!important;
    }
}

#news_date {
    color: #1ea5e8;
    font-weight: bold;
}


/* ニュースリリース */


/* ストレスチェック意味あるの？ */

#stresscheck_imi {
    margin: 20px auto 0 auto;
    text-align: center;
}

#stresscheck_imi img {
    width: 35%;
}

@media screen and (max-width: 840px) {
    /* 640px以下*/
    #stresscheck_imi img {
        width: 80%;
    }
}

#stresscheck_imi img:hover {
    opacity: 0.7;
}


/* ストレスチェックとは */

.top-img {
    position: relative;
}

#about_stresscheck {
    display: none;
}

#about_stresscheck-sp {
    display: block;
}

@media screen and (min-width: 768px) {
    #about_stresscheck {
        display: block;
    }
    #about_stresscheck-sp {
        display: none;
    }
}


/* 詳しくはこちらボタン */

a.to_law_btn {
    background: #fff;
    border: solid 3px #1ea5e8;
    border-radius: 5px;
    color: #1ea5e8;
    display: block;
    font-size: 2rem;
    margin: 0px auto 50px auto;
    max-width: 300px;
    padding: 5px 0;
    text-align: center;
    font-weight: bold;
}

a.to_law_btn:hover {
    text-decoration: none;
    background: #1ea5e8;
    border: solid 3px #1ea5e8;
    color: #fff;
}


/* 資料請求フォームへリンク ここから */

a.to_form_btn {
    background: #f45434;
    border: solid 1px #f45434;
    border-radius: 50px;
    color: #fff;
    display: block;
    font-size: 3rem;
    margin: 0px auto 50px auto;
    max-width: 500px;
    padding: 20px 0;
    text-align: center;
}

a.to_form_btn_blue {
    background: #1ea5e8;
    border: solid 1px #1ea5e8;
    border-radius: 50px;
    color: #fff;
    display: block;
    font-size: 2rem;
    margin: 0px auto 50px auto;
    max-width: 500px;
    padding: 20px 0;
    text-align: center;
    line-height: 1.3;
    font-weight: bold;
}

img.img_one_minute {
    display: block;
    margin: 0 auto 20px;
    width: 200px;
}

img#point_for_select {
    display: block;
    margin: 20px auto 0;
    width: 90%;
}


/* 資料請求フォームへリンク ここまで */


/*実績 ここから */

#performance {
    margin-bottom: 100px;
}

#performance>.row {
    margin: 50px 0;
}

img.performance {
    display: block;
    margin: 0 auto;
    max-width: 300px;
    width: 100%;
}

img#energy {
    display: block;
    margin: 0 auto 30px;
    max-width: 500px;
    width: 100%;
}

#performance>h2 {
    font-weight: normal;
    letter-spacing: 0;
    margin-bottom: 30px;
}

#performance p {
    font-size: 1.4rem;
    margin: 0 auto;
    padding-left: 179px;
}

@media screen and (max-width: 768px) {
    #performance p {
        padding-left: 0px!important;
    }
}


/*実績 ここまで */


/* 選ばれる理由 ここから */

img.reason {
    display: block;
    margin: 0 auto;
    max-width: 300px;
    width: 100%;
}

img.reason+p {
    font-size: 1.4rem;
    /*font-weight: bold;*/
    line-height: 25px;
    margin-top: 30px;
    text-align: center;
}


/* 選ばれる理由 ここまで */


/* 見積もりシミュレーション ここから */

#simulation_form form {
    position: relative;
}

#ninzu {
    border: solid 1px #fff;
    border-radius: 10px;
    font-size: 2rem;
    height: 55px;
    margin-left: 20px;
    margin-top: -5px;
    padding: 0px 0px 0 0px;
    width: 90%;
}

.radio_wrapper {
    border: solid 1px #fff;
    padding: 10px;
    width: 90%;
    margin-left: 20px;
    background: #fff;
    border-radius: 10px;
}

.form_num {
    font-size: 2.5rem;
    padding-left: 20px;
}

input[type=radio]:checked+label {
    font-weight: bold;
}

#kome {
    text-align: center;
    margin: 0;
}


/*お見積りボタン*/

#mitsumori {
    border: solid 2px #1180ad;
    border-radius: 50px;
    color: #fff;
    display: block;
    font-size: 2.5rem;
    margin: 30px auto;
    max-width: 250px;
    padding: 20px 0;
    width: 100%;
    background: #ffffff;
    /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #20a0d4 10%, #20a0d4 87%, #3face2 94%, #99d2ff 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #20a0d4 10%, #20a0d4 87%, #3face2 94%, #99d2ff 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffffff 0%, #20a0d4 10%, #20a0d4 87%, #3face2 94%, #99d2ff 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#99d2ff', GradientType=0);
    /* IE6-9 */
}

#simulation+p {
    margin: 20px 0 70px;
    text-align: center;
}

#price {
    color: #f45434;
    display: block;
    font-size: 4rem;
    text-align: center;
}

#zeinuki {
    color: #000;
    font-size: 2rem;
}


/* 見積もりシミュレーション ここまで */


/* 料金一覧表 */


/* #price_list_table{
  display: none;
} */

@media screen and (min-width: 992px) {
    /* 768px以上 */
    .table-responsive {
        display: table;
    }
}

#price_list th,
#price_list td {
    border: solid 1px #666;
    padding: 10px;
    text-align: center;
}

#price_list tbody tr:nth-child(even) td {
    background: #eee;
}

.th_red {
    background: #fee;
}

.th_blue {
    background: #eff;
}

.sub_text {
    font-weight: normal;
    margin-top: -3px;
}

#price_list+ul {
    padding: 0;
    margin: 20px 0 40px;
}


/* 料金一覧表 ここまで */


/* 選べる設問数 */

#diff_table th:nth-child(odd) {
    width: 40%;
}

#diff_table th:nth-child(2),
#diff_table td:nth-child(2) {
    background-color: #f6f6f6;
}

#sumaho th:nth-child(1),
#sumahotr td:nth-child(1),
#sumahotr td:nth-child(2),
#sumahotr td:nth-child(3) {
    display: none;
}

@media screen and (max-width: 640px) {
    #diff_table th:nth-child(1) {
        width: 100%;
    }
    .pink {
        background-color: #fee;
    }
    #skyblue {
        background-color: #eff;
    }
    #sumaho th:nth-child(1),
    #sumahotr td:nth-child(1),
    #sumahotr td:nth-child(2),
    #sumahotr td:nth-child(3) {
        display: block;
        width: 100%;
        border: none;
    }
    #sumaho th:nth-child(1) {
        background-color: #eff;
    }
    td::before {
        content: attr(data-label);
        font-size: .875rem;
        color: #666;
        display: block;
        margin-bottom: 0.25rem;
    }
    #question th:nth-child(2),
    #question td:nth-child(2),
    #question th:nth-child(3),
    #question td:nth-child(3) {
        display: none;
    }
}

#diff_wrapper {
    background: #fff;
    /* border: solid 1px #666; */
    padding: 20px;
}

#diff_or {
    display: inline-block;
    font-size: 5rem;
    margin: 0 30px;
}

#question img#sc86per {
    display: block;
    margin: 0 auto;
    max-width: 900px;
    width: 100%;
}

#question img#stresscheck_image {
    display: block;
    margin: 50px auto;
    width: 80%;
}

#show_diff {
    background: #0cf;
    border: 0;
    border-radius: 30px;
    color: #fff;
    display: block;
    font-weight: bold;
    letter-spacing: .3rem;
    margin: 0 auto;
    max-width: 300px;
    padding: 10px 50px;
    text-align: center;
}

#diff_table {
    margin: 30px auto;
    text-align: center;
}

@media screen and (min-width: 992px) {
    /* 992px以上 */
    #diff_table {
        display: block;
    }
}

#diff_table p {
    background: #fee;
    margin-top: 20px;
    padding: 10px;
    text-align: left;
}

#diff_table p#p57 {
    background: #eff;
}

#question table {
    background: #fff;
    width: 100%;
}

#question tr,
#question th,
#question td {
    border: solid 1px #666;
    font-weight: normal;
    padding: 20px;
}

#question th span {
    display: block;
    font-size: 3rem;
    margin-bottom: -2rem;
}


/* overwrite bootstrap */

h3#recommend {
    background: #ffffff;
    /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dddddd', GradientType=0);
    /* IE6-9 */
    border: solid 1px #ccc;
    border-radius: 5px;
    color: #0f490c;
    font-weight: bold;
    margin: 50px 0 30px;
    padding: 10px 10px 10px 15px;
}

h3#recommend:before {
    content: '';
    border-left: solid 5px #328Bf9;
    border-radius: 10px;
    margin-right: 10px;
}

h4 {
    font-size: 2.5rem;
    font-weight: bold;
    margin: 20px 0;
    text-shadow: 2px 2px 0px #dbebf8;
    text-align: center;
}

h5 {
    border: solid 1px #c3d9ff;
    background: #c3d9ff;
    border-radius: 30px 0px 0px 30px;
    font-size: 2rem;
    font-weight: bold;
    padding: 10px;
}

h5:before {
    content: '●';
    color: #fff;
    margin-right: 10px;
}

h5+.card {
    border-bottom: dashed 1px #666;
    margin-bottom: 50px !important;
}

img.nayami {
    max-width: 150px;
}

h6 {
    /* color: #ea5654; */
    font-size: 2rem;
    font-weight: bold;
}

.fa-lightbulb {
    color: #f8f62f;
    display: inline-block;
    margin-right: 10px;
    text-shadow: 2px 2px 0px #dbebf8;
}


/* #diff_wrapper {
    background: #fff;
    border: solid 1px #666;
    padding: 20px;
}

#diff_or {
    display: inline-block;
    font-size:
    5rem;
    margin: 0 30px;
}

#question img#sc86per {
    display: block;
    margin: 0 auto;
    max-width: 900px;
    width: 100%;
}

#question img#stresscheck_image {
    display: block;
    margin: 50px auto;
    width: 80%;
}

#show_diff {
    background: #0cf;
    border: 0;
    border-radius: 30px;
    color: #fff;
    display: block;
    font-weight: bold;
    letter-spacing: .3rem;
    margin: 0 auto;
    max-width: 300px;
    padding: 10px 50px;
    text-align: center;
}

#diff_table {
    margin: 30px auto;
}

@media screen and (min-width: 992px) { /* 992px以上 */

#diff_table {
    display: block;
}


}
#diff_table p {
    background: #fee;
    margin-top: 20px;
    padding: 10px;
    text-align: left;
}
#diff_table p#p57 {
    background: #eff;
}
#diff_table th:nth-child(odd) {
    /* width: 40%; */
}
#question table {
    background: #fff;
    width: 100%;
}
#question tr,
#question th,
#question td {
    border: solid 1px #666;
    font-weight: normal;
    padding: 20px;
    text-align: center;
}
#question th:nth-child(2),
#question td:nth-child(2) {
    background: #f6f6f6;
}
#question th span {
    display: block;
    font-size: 3rem;
    margin-bottom: -2rem;
}

/* overwrite bootstrap */
.card {
    border: none;
}
img.card-img {
    display: block;
    margin: 0 auto;
    max-width: 100px;
}
h3.card-title {
    font-size: 2rem;
    font-weight: bold;
}
h3#recommend {
    background: #ffffff;
    /* Old browsers */
    
    background: -moz-linear-gradient(top, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* FF3.6-15 */
    
    background: -webkit-linear-gradient(top, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* Chrome10-25,Safari5.1-6 */
    
    background: linear-gradient(to bottom, #ffffff 0%, #f7f7f7 50%, #efefef 50%, #dddddd 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dddddd', GradientType=0);
    /* IE6-9 */
    
    border: solid 1px #ccc;
    border-radius: 5px;
    color: #0f490c;
    font-weight: bold;
    margin: 50px 0 30px;
    padding: 10px 10px 10px 15px;
}
h3#recommend:before {
    content: '';
    border-left: solid 5px #328Bf9;
    border-radius: 10px;
    margin-right: 10px;
}
h4 {
    font-size: 2.5rem;
    font-weight: bold;
    margin: 20px 0;
    text-shadow: 2px 2px 0px #dbebf8;
    text-align: center;
}
h5 {
    border: solid 1px #c3d9ff;
    background: #c3d9ff;
    border-radius: 30px 0px 0px 30px;
    font-size: 2rem;
    font-weight: bold;
    padding: 10px;
}
h5:before {
    content: '●';
    color: #fff;
    margin-right: 10px;
}
h5+.card {
    border-bottom: dashed 1px #666;
    margin-bottom: 50px !important;
}
img.nayami {
    max-width: 150px;
}
h6 {
    color: #ea5654;
    font-size: 2rem;
    font-weight: bold;
}
.fa-lightbulb {
    color: #f8f62f;
    display: inline-block;
    margin-right: 10px;
    text-shadow: 2px 2px 0px #dbebf8;
}

/* 選べる設問数 ここまで */

/* アコーディオン */
.accordion-wrap {}
.accordion-item {
    width: 70%;
    margin: 0 auto;
    cursor: pointer;
    margin-top: 30px;
    border-bottom: 1px solid #ddba4d;
}
.accordion-header {
    transition: ease-in-out 100ms;
}
.accordion-text {
    width: 70%;
    display: none;
    padding-top: 5px;
    padding-bottom: 20px;
    margin: 0 auto;
}
.fa {
    transition: ease-in-out 300ms;
}
.rotate-fa {
    transform: rotate(180deg);
}
.accordion-header .fa {
    float: right;
    line-height: 35px;
}
.accordion-gold {
    color: #ddba4d;
}
.accordion-no-bar {
    border-bottom: 0;
}

/* テスト */
#accordion img {
    width: 100%;
}
#accordion img:hover {
    opacity: 0.5;
}
.acd-check,
.acd-check_h {
    display: none;
}
.acd-label {
    display: block;
    margin-bottom: 1px;
    padding: 10px;
}
.acd-content {
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}

/* 短い解答 */
.acd-check:checked+.acd-label+.acd-content {
    height: 80px;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}

/* 長い解答 */
.acd-check_h:checked+.acd-label+.acd-content {
    height: 150px;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}

/* 追加ここから */
.cp_actab {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    color: #00a0e4;
}
.cp_actab input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
.cp_actab label {
    font-weight: bold;
    line-height: 3;
    position: relative;
    display: block;
    padding: 0 0 0 1em;
    cursor: pointer;
    margin: 0;
    /* background: #00a0e4; */
    
    border-bottom: 1px solid #3fb8eb;
    border-collapse: collapse;
}

/* 濃い色　#1c9cc4; */
.cp_actab .cp_actab-content {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.35s;
    transition: max-height 0.35s;
    color: #333333;
    background: #fff;
}
.cp_actab .cp_actab-content p {
    margin: 1em;
}

/* :checked */
.cp_actab input:checked~.cp_actab-content {
    max-height: 20em;
    -webkit-transition: all ease-in-out 1s;
    transition: all ease-in-out 1s;
    transition-duration: 3s ease-in-out;
}

/* Icon */
.cp_actab label::after {
    line-height: 3;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 3em;
    height: 3em;
    -webkit-transition: all 0.35s;
    transition: all 0.35s;
    text-align: center;
}
.cp_actab input[type=checkbox]+label::after {
    font-family: "Font Awesome 5 Free";
    content: '\f077';
    font-weight: 900;
}
.cp_actab input[type=checkbox]:checked+label::after {
    transform: rotate(180deg);
}
.cp_actab-content {
    transition: all 3s;
    margin-left: 13px;
}

/* アコーディオン */

/* 含まれるサービス */
#accordion {
    padding: 50px 0;
}
.anri_section {
    border: solid 1px #1ea5e8;
    border-radius: 30px;
    text-align: center;
    padding: 35px 80px 35px 35px;
}
@media screen and (max-width: 640px) {
    /* 640px以下*/
    
    .anri_section {
        padding: 10px;
    }
}
#service_support_pont {
    height: 30px;
}
#service_support_pont img {
    width: 100px !important;
    position: relative;
    top: -67px;
    left: 94%;
}
@media screen and (max-width: 640px) {
    /* 640px以下*/
    
    #service_support_pont img {
        width: 55px!important;
        top: -36px;
        left: 83%;
    }
}
#service h2 {
    margin-bottom: 0;
}
#anri_detail {
    display: block;
    margin: 20px auto 0;
    text-align: center;
}
#service .row div {
    text-align: center;
}
@media screen and (min-width: 992px) {
    /* 992px以上 */
    
    #service .row div:last-child {
        text-align: left;
    }
}
#service p {
    font-size: 3rem;
    font-weight: bold;
    line-height: 4rem;
    position: relative;
    top: 15.5rem;
}
@media screen and (max-width: 450px) {
    /* 450px以下 */
    
    #service p {
        font-size: 2rem;
        font-weight: bold;
        line-height: 3rem;
        top: 14rem;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
    /* 768px～991px */
    
    #service p {
        font-size: 2rem;
        font-weight: bold;
        line-height: 3rem;
        top: 10.5rem;
    }
}
#service ul {
    margin-top: 30px;
    padding-left: 0;
}
@media screen and (min-width: 768px) and (max-width: 991px) {
    /* 768px～991px */
    
    #service ul {
        margin-top: 70px;
    }
}
@media screen and (min-width: 992px) {
    /* 992px以上 */
    
    #service ul {
        margin-top: 95px;
    }
}
@media screen and (min-width: 1200px) {
    /* 1200px以上 */
    
    #service ul {
        margin-top: 137px;
    }
}
#service ul li {
    margin-bottom: 49.5px;
}
#service img {
    width: 100%;
}
@media screen and (min-width: 992px) {
    /* 992px以上 */
    
    #service ul li img {
        /*width: 70%;*/
    }
}

/* 含まれるサービス ここまで */

/* 実施までの流れ */
#flow {
    margin-bottom: 40px;
}
#flow h3 {
    margin-bottom: 20px;
    text-align: center;
}
#flow img {
    width: 100%;
}
#flow ol {
    counter-reset: item;
    list-style-type: none;
    padding-left: 0;
}
#flow li:before {
    color: #fff;
    counter-increment: item;
    content: counter(item);
    font-size: 2rem;
    font-weight: bold;
    left: 3rem;
    position: absolute;
    top: 0rem;
}

/* 実施までの流れ ここまで */

/* ココがすごい */
@media screen and (min-width: 992px) {
    #midashi04 {
        background: url(../img/DTSC_midashi04.png) no-repeat;
        background-position: center center;
        background-size: contain;
        height: 110px;
        margin-top: 30px;
    }
}
#analyze h2 {
    margin: 0;
    letter-spacing: .3rem;
    position: relative;
    top: 25%;
}
#bunseki {
    font-size: 3.3rem;
    margin: 20px auto 30px;
    text-align: center;
}
#bunseki>span {
    display: inline-block;
    font-weight: bold;
    font-size: 4rem;
    margin-left: 8px;
    position: relative;
}
#bunseki>span:after {
    border-bottom: solid 20px #ff6;
    border-radius: 5px;
    bottom: 0;
    content: '';
    left: 0;
    margin: 5px -10px;
    position: absolute;
    right: 0;
    z-index: -1;
}
#bunseki+p {
    font-size: 1.5rem;
    line-height: 3rem;
    margin-bottom: 100px;
    text-align: center;
}

/* ココがすごい ここまで */

/* 集団分析 */
.bar_denkyu {
    height: 25px;
    background-image: url(../img/bar_denkyuu.png);
    background-repeat: no-repeat;
    padding-left: -1px;
    /* line-height: 30px; */
    
    text-indent: 1.7em;
    font-size: 18px;
    font-weight: bold;
    color: #7C5F4C;
    padding-bottom: 40px;
}
#analysis_topbanner {
    margin-top: 28px;
}
#dl-fukidashi {
    margin: 0 auto;
}
#dl-fukidashi img {
    display: block;
    margin: 0px auto;
    width: 60%;
}
@media screen and (max-width: 640px) {
    /* 640px以下*/
    
    #dl-fukidashi img {
        width: 90%;
    }
}
#sc-shinka {
    margin: 0 auto;
    width: 73%;
    padding-right: 16px;
}
#sc-txt {
    padding: 10px;
    font-size: 14px;
}
#syudanbunseki {
    text-align: right;
    margin: 45px auto;
    padding-top: 10px;
}
#syudanbunseki img {
    width: 100px;
}
#necessary {
    padding: 30px 0px;
    width: 80%;
}
#necessary h3 {
    color: #001959;
    font-weight: bold;
}
#necessary p {
    width: 80%;
}
.sample-section {
    padding: 45px 0px;
}
#sample {
    /* padding: 20px;
  width: 84%; */
    
    margin: 0 auto;
}
#sample-col {
    padding: 0;
}
#sample img {
    width: 90%;
    border: solid 2px gray;
    /* margin:20px 0 10px 0; */
}
#point_txt {
    background-color: #f6fcff;
    border: solid 1px #b3d7ff;
    padding-top: 10px;
}
#point_txt img {
    width: 100px;
}

/* ボタン */
.btn-primary {
    background-color: #00a7c4;
}
.btn-primary:hover {
    background-color: #0098b3;
}
.btn-primary:focus {
    background-color: #0098b3;
    color: white;
}
.btn-primary:active {
    background-color: #467370 !important;
}

/* 集団分析 */

/* お悩み */
#nayami img {
    display: block;
    margin: 20px auto;
    width: 50%;
}
#nayami .nayami_bg {
    border: solid 1px #1ea5e8;
    margin: 10px auto;
    padding: 0px;
    width: 80%;
}
@media screen and (min-width: 768px) {
    #nayami .nayami_bg:not(: first-child) {
        border-left: none;
    }
}
#nayami p {
    padding: 0 20px;
}

/* お悩み ここまで */

/* 解決 */
#kaiketsu {
    background: url('../img/DTSC_midashi05.png') no-repeat;
    background-size: contain;
    background-position: center center;
    height: 150px;
    margin: 70px auto 250px;
}
#kaiketsu h2 {
    line-height: 5rem;
    margin-bottom: 100px;
    margin-top: 20px;
    position: relative;
    text-shadow: #fff 3px 3px 1px, #fff -3px 3px 1px, #fff 3px -3px 1px, #fff -3px -3px 1px;
    top: 20px;
}
#kaiketsu a {
    display: block;
    margin: 0 auto;
    text-align: center;
}
@media screen and (min-width: 992px) {
    #kaiketsu a {
        font-size: 3rem;
        width: 55%;
    }
}

/* 解決 ここまで */

/* FaQ */
#faq_row {
    /* border-left: solid 1px #666; */
}
#faq_item {
    /* display: table-cell; */
    /* border: solid 1px #666; */
    
    border-bottom: solid 1px #666;
    border-right: solid 1px #666;
    border-collapse: collapse;
    text-align: left;
    background-color: #fff;
    line-height: 60px;
    font-size: 15px;
    display: flex;
    justify-content: space-between;
    width: 500px;
}
#faq_item tr:nth-child(1) td {
    border-left: solid 1px #666;
}
.arrow01 img {
    width: 20px;
}
#faq_item:hover {
    background-color: #d9efff;
    transition: background-color 0.3s ease;
}
#faq_item {
    transition: background-color 0.3s ease;
}
#faq_row a {
    transition: color 0.3s ease;
    text-decoration: none;
    color: black;
    display: contents !important;
    /* display: block; */
}
.arrow01 {}
.faq-section {
    padding-bottom: 30px;
    margin: 0 auto;
}

/* FaQ */

/* 取引実績 */
.customer_btn {
    background: #1ea5e8;
    border: solid 1px #1ea5e8;
    border-radius: 50px;
    color: #fff;
    display: block;
    font-size: 3rem;
    margin: 0px auto 0px auto;
    max-width: 400px;
    padding: 20px 0;
    text-align: center;
}
#client {
    margin-bottom: 100px;
    /* padding-bottom: 70px; */
    
    margin-top: 60px;
    /* margin-bottom: 100px;
    padding-bottom: 70px; */
}
#client h2 {
    margin: 50px 0 30px;
}
#client ul {
    text-align: center;
    /* border: solid 2px #ccc;
    height: 400px;
    overflow-y: scroll; */
}
@media screen and (min-width: 992px) {
    #client ul {
        /* width: 50%; */
    }
}
#client #kankoutyou+ul,
#client #company+ul {
    margin: 20px auto;
}

/*@media screen and (min-width: 992px) {
    #client #kankoutyou + ul {
        margin-left: 50px;
    }
}*/
#client li {
    margin-top: 10px;
}
#client h3 {
    border-radius: 10px;
    color: #fff;
    font-weight: bold;
    padding: 10px;
    text-align: center;
}
@media screen and (min-width: 992px) {
    #client h3 {
        margin-left: 50px;
        margin-right: -5px;
    }
}
#kankoutyou {
    background: #1ea5e8;
}
h3#company {
    background: #2ca47c;
    margin-left: 0;
}
@media screen and (min-width: 992px) {
    h3#company {
        margin: 0 20px;
    }
}

/* 取引実績 ここまで */

/* トータルサポートサービス */
#total_support {
    margin-bottom: 50px;
}
#total_support img {
    display: block;
    margin: 0px auto;
    width: 100%
}
@media screen and (min-width: 992px) {
    #total_support img {
        width: 70%;
    }
}
#total_support p {
    line-height: 3rem;
    text-align: center;
}
#sign {
    margin: 30px 0;
    text-align: right;
}
#sign img {
    display: inline-block;
    margin: 0 0 0 20px;
    max-width: 200px;
}

/* トータルサポートサービス ここまで */

/* フッター */
.3marks_DT {
    display: flex;
    flex-direction: row;
}
footer {
    background: #e0f5ff;
    color: #333;
    margin-top: 30px;
    padding: 0;
}
@media screen and (min-width: 992px) {
    .d-flex {
        padding-left: 55px;
    }
}
#copy {
    background: #1ea5e8;
    color: #fff;
    padding: 20px 0 10px;
    text-align: center;
}

/* フッター ここまで */

/* 青背景のスペーサー */
#spacer {
    margin-bottom: 70px;
    padding: 30px;
}

/* 青背景のスペーサー ここまで */
ul.anchor a {
    font-size: 2.2rem;
}
@media (min-width: 1200px) {
    .anchors {
        display: none;
    }
}

/* Page Top ボタン */
#page-top {
    width: 90px;
    height: 90px;
    position: fixed;
    right: 0;
    bottom: 60 !important;
    background: rgba(28, 156, 196);
    opacity: 0.7;
    border-radius: 50%;
}
#page-top a {
    position: relative;
    display: block;
    width: 90px;
    height: 90px;
    text-decoration: none;
}
#page-top a::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -40px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
    transition: all 0.5s;
}
#page-top a::after {
    content: 'PAGE TOP';
    font-size: 13px;
    color: #fff;
    position: absolute;
    top: 45px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}
#page-top a:hover::before {
    bottom: 1rem;
}

/* スマホの問い合わせフォーム*/
#sp-contact {
    display: none !important;
}
@media screen and (max-width: 768px) {
    ul#contact {
        display: flex;
        margin-bottom: 0;
        max-width: 100%;
    }
    
    #sp-icon_tel {
        max-width: 290px;
        position: relative;
        bottom: 0px;
        left: 0px;
        width: 100%;
    }
    
    #sp-icon_mail {
        max-width: 290px;
        position: relative;
        bottom: 0px;
        left: 0px;
        width: 100%;
    }
    
    #sp_mail,
    sp_tel {
        padding: 0;
    }
    
    #sp-contact {
        position: fixed;
        bottom: 0px;
        font-size: 77%;
        width: 100%;
        display: block !important;
        /* background-color: rgba(28, 156, 196, 0.6); */
        margin-left: 0px !important;
    }
    
    #sp-contact a {
        text-decoration: none;
        color: #fff;
        padding: 8px 0 1px 0;
        text-align: center;
        display: block;
        transition: all 0.5s;
    }
    
    #sp-contact a:hover {
        text-decoration: none;
        /* opacity: 0.4; */
        filter: brightness(110%);
        /* background-color: rgba(28, 156, 196, 0.6); */
    }
    
    #sp_tel,
    #sp-tel {
        margin: 0 auto;
        padding: 0 !important;
        /* padding-right: 24px; */
    }
    
    #sp-contact-row {
        margin: 0;
    }
}