/*基本背景色*/
/*基本的なフォント指定*/
/*サイト特有のフォント設定*/
/*ヘッダー・ナビゲーション・フッター関連*/
/*ブロック関連*/
/*パーツ関連*/
/*プラグイン関連*/
/*レスポンシブ関連*/

/*━━━━━━━━━━━━━━基本背景色━━━━━━━━━━━━━━*/

.content,
.content .container,
.full_width {
    background-color:#FAFAFA;
}

.vc_row.wpb_row.section.vc_row-fluid.grid_section,
.vc_row.wpb_row.section.vc_row-fluid {
    background-color:#FFFFFF;
}


/*━━━━━━━━━━━━━━基本的なフォント指定━━━━━━━━━━━━━━*/

body {
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

/*明朝*/

.mincho {
    font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.gothic {
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}


/*Bridgeテーマデフォルト仕様による大文字の禁止*/

.qbutton,
body,
h1,
h2,
h3,
h4,
h5 {
    text-transform:none !important;
}


/*基本の文字色*/
body,
h1,
h2,
h3,
h4,
h5,
h6 {
    color:#222222;
}

/*基本の文字色-白*/
.white p,
.white h1,
.white h2,
.white h3,
.white h4,
.white h5,
.white h6,
body .white {
    color:#FFFFFF;
}


/*見出しタグ*/
h1 {
    font-size:34px;
}
h2 {
    font-size:23px;
    margin-bottom:10px !important;
    font-weight:600;
    margin-top:18px;
    background:#354394;
    color:#FFFFFF;
    padding:5px;
    border-radius:3px;
}
h3 {
    font-size:19px;
    margin-bottom:10px !important;
    padding:0.1em 0 0.1em 0.25em;
    border-left:10px solid #8AA3F2;
    margin-top:13px;
}
.normal h3 {
    font-size:19px;
    margin-bottom:10px !important;
    padding:0.1em 0 0.1em 0;
    border-left:none;
    margin-top:18px;
}

h3.normal {
    font-size:19px;
    margin-bottom:10px !important;
    padding:0.1em 0 0.1em 0;
    border-left:none;
    margin-top:18px;
}

h3.main_small {
    font-size:30px;
    margin-bottom:15px !important;
    font-weight:400;
}

/* 会社概要 */
.vision h3 {
    font-size:19px;
    margin-bottom:10px !important;
    margin-top:27px;
}

.vision h:first-child3 {
    font-size:19px;
    margin-bottom:10px !important;
    margin-top:10px;
}

.vision h4 {
    text-indent:1em;
}

h4 {
    font-size:17px;
    margin-top:5px;
    font-weight:600;
    margin-bottom:5px;
}
h4.glay {
    background-color:#EEEEEE;
    padding:3px;
}
h5 {
    font-size:17px;
    margin-top:7px;
    margin-bottom:10px;
}
h6 {
    font-size:15px;
    margin-top:5px;
}

/*基本の文字*/
.vc_figure-caption,
body,
p {
    font-size:14px !important;
    line-height:150%;
    color:#222222;
}

/*段落間隔*/
p,
.wpb_text_column p,
.wpb_text_column p:last-child {
    margin-bottom:1em;
}

/*インデント*/
p.indent {
    padding-left:1em;
}

ul.indent li {
    text-indent:-1em;
    padding-left:1em;
    list-style:none;
}

.indent_block {
    margin-left:1em;
}

/*文中の小サイズ文字*/
.small {
    font-size:0.8em;
}

/*ページタイトル*/
.title h1 {
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.footer_bottom {
    color:#FFFFFF;
}


/*文字選択時の背景*/

::selection {
    background:#D4DCD6;
    /* Safari */
}

::-moz-selection {
    background:#D4DCD6;
    /* Firefox */
}
a,
p a {
    color:#354394;
}

/*━━━━━━━━━━━━━━サイト特有のフォント設定━━━━━━━━━━━━━━*/

h2.blue {
    background-color:#004DA1;
}

.inlinenotice {
    color:#FF0000;
    font-weight:600;
    font-size:30px;
}

/*━━━━━━━━━━━━━━ヘッダー関連━━━━━━━━━━━━━━*/
/*ロゴ画像の高さの調整*/
/*ナビゲーションテキスト-デフォルト*/

.light.header_style_on_scroll nav.main_menu>ul>li>a:hover,
.light.header_style_on_scroll nav.main_menu>ul>li:before,
.light:not(.sticky):not(.scrolled) nav.main_menu>ul>li>a,
.light:not(.sticky):not(.scrolled) nav.main_menu>ul>li>a:hover,
.light:not(.sticky):not(.scrolled) nav.main_menu>ul>li.active>a,
.light:not(.sticky):not(.scrolled) nav.main_menu>ul>li:before,
le_on_scroll nav.main_menu>ul>li.active>a {
    color:#000000;
}


/*ヘッダー電話番号領域*/

.header-tel-box {
    float:right;
    height:50px;
    padding:5px;
    border-radius:3px;
    background-color:#465891;
    color:#FFFFFF;
    margin-top:10px;
    margin-left:30px;
}

.header-tel-box .contact-box {
    font-size:16px;
    font-weight:600;
}

.header-tel-box .tel {
    font-size:25px;
    font-weight:600;
    color:#FFFFFF !important;
}

.content_bottom {
    padding-bottom:20px;
}


/*ナビゲーションテキスト*/

nav.main_menu>ul>li>a {
    font-size:14px;
    font-weight:600;
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

nav.main_menu ul li#nav-menu-item-15660 {
    background-color:#004DA1;
}


/*メインナビゲーションのナビ間隔*/

nav.main_menu>ul>li>a {
    padding:0 10px;
}

/* ドロップダウンメニュー━━━━━━━━━━━━━━ */
/* ドロップダウンの背景色指定 */

.bg-black a {
    color:#FFFFFF;
    background:#465891;
    pointer-events:none;
}

.drop_down .second .inner ul li.bg-black a,
.drop_down .second .inner ul li.bg-black a:hover {
    color:#FFFFFF !important;
}

.drop_down .second .inner ul li a {
    color:#000000;
}

.drop_down .second .inner>ul>li>a:hover {
    background:#AFC2FF;
}

/*メインナビゲーションのフォント指定*/

nav.main_menu {
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}


/*ヘッダー（上部）*/


/*ヘッダートップテキスト*/

header .header_top .header-widget .textwidget {
    font-size:14px;
    font-weight:600;
    color:#FFFFFF;
    font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

header .header_top {
    background:#090909!important;
}

.light.header_style_on_scroll nav.main_menu>ul>li.active>a {
    color:#333333 !important;
}


/*━━━━━━━━━━━━━━フッター関連━━━━━━━━━━━━━━*/


/*フッター（上部）*/

.footer_top_holder {
    background-color:#262626;
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}


/*フッター（上部）*/

.footer_top .textwidget,
.footer_top a,
.footer_top li,
.footer_top p,
.footer_top span {
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    color:#EEEEEE;
    font-size:14px;
}

.footer_top h5 {
    color:#FFFFFF;
    margin:0 0 22px;
}

.footer_top .widget_meta>ul>li,
.footer_top .widget_nav_menu ul li,
.footer_top .widget_pages ul li,
.footer_top .widget_recent_comments>ul>li,
.footer_top .widget_recent_entries>ul>li {
    padding:0 0 2px;
    position:relative;
}

/*━━━━━━━━━━━━━━ブログ関連━━━━━━━━━━━━━━*/

.blog_single.blog_holder article .post_text .post_text_inner {
    border:1px solid #000000;
    border-radius:3px;
    background-color:#FFFFFF;
    margin-top:10px;
    padding:20px;
}

.latest_post_holder .post_infos .dots {
    padding:0 7px;
    display:none;
}

.post_info .time,
.post_info .post_author {
    display:none;
}

/*━━━━━━━━━━━━━━ブロック関連━━━━━━━━━━━━━━*/

.indent_1em {
    margin-left:1em;
}

/*ブロック内上下パディング設定*/

.grid_section,
section.parallax_section_holder,
.boxed .section .section_inner {
    padding-top:10px;
    padding-bottom:10px;
}

div.section {
    padding-top:10px;
    padding-bottom:10px;
}


/*full widthテンプレートではブロック内のパディングを広く*/
.page-template-full_width div.section {
    /*  padding-top: 100px; */
    /*  padding-bottom: 100px; */
    padding-top:10px;
    padding-bottom:10px;
}


/*パディング無し設定*/
div.section.pb-0 {
    padding-bottom:0;
}


/*シングルイメージ下部パディング設定*/
.wpb_single_image .vc_single_image-wrapper {
    margin-bottom:10px;
}

/*Parallax背景画像を横幅100%に*/
.parallax_section_holder {
    background-size:cover !important;
}


/*━━━━━━━━━━━━━━パーツ関連━━━━━━━━━━━━━━*/

a.dh-button {
    background:#354394;
    border-radius:10px;
    color:#FFFFFF;
    padding:4px;
    padding-right:10px;
    padding-left:10px;
}

a.dh-button:hover {
    background:#8AA3F2;
    color:#FFFFFF;
    font-weight:bold;
}

.dh-button,
.dh-button::before,
.dh-button::after {
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
            box-sizing:border-box;
    -webkit-transition:all 0.3s;
            transition:all 0.3s;
}

/* ページ内アンカーの高さ調整 */
#message_ceo,
#vision,
#about,
#gallery,
#komatsu,
#shimojo,
#kobayashi,
#shuji,
#ootsu,
#supermarket,
#drugstore,
#sannchoku,
#bucust,
#kiosk {
    margin-top:-85px;
    padding-top:85px;
}


/* ページ内アンカーの高さ調整 スマホでは解除 */
@media screen and (max-width: 599px) {
    #message_ceo,
    #vision,
    #about,
    #gallery,
    #komatsu,
    #shimojo,
    #kobayashi,
    #shuji,
    #ootsu,
    #supermarket,
    #drugstore,
    #sannchoku,
    #bucust,
    #kiosk {
        margin-top:10px;
        padding-top:10px;
    }
}

/* 画像の枠 */
.imageBorder img {
    border:1px solid #8AA3F2;
}

/* コンテンツ下部コンタクトボックス ━━━━━━━━━━━━━━ */
.content-bottom-box {
    border-radius:3px;
    text-align:center;
    padding:10px;
    background-color:#465891;
    color:#FFFFFF;
    margin-bottom:20px;
    margin-top:20px;
}

.content-bottom-box .tel,
.content-bottom-box .tel a {
    font-weight:600;
    font-size:34px;
    color:#FFFFFF !important;
}

.content-bottom-box h4 {
    font-weight:600;
    color:#FFFFFF;
}
/* コンテンツ下部コンタクトボックス-スマホ ━━━━━━━━━━━━━━ */

@media screen and (max-width: 599px) {
    .content-bottom-box .tel,
    .content-bottom-box .tel a {
        font-size:20px;
        color:#FFFFFF !important;
    }
    .content-bottom-box a.qbutton.big_large {
        font-size:15px;
        padding-right:10px !important;
        padding-left:10px !important;
    }
    .content-bottom-box a.qbutton.big_large i {
        display:none;
    }
}
/* END コンテンツ下部コンタクトボックス━━━━━━━━━━━━━━ */


/* 社員紹介ボックス */

.staff-box {
    border-radius:3px;
    border:#354394 1px solid;
    /* padding:10px;*/
    margin-right:10px;
    margin-left:10px;
    margin-bottom:20px !important;
}

.staff-box h3 {
    font-size:22px;
    font-weight:600;
    margin-bottom:10px !important;
    padding:0;
    border-left:none;
}

.staff-box .staff h3 {
    font-size:16px;
    margin-bottom:10px !important;
    padding:0.1em 0 0.1em 0.25em;
    border-left:10px solid #8AA3F2;
}



/* フルサイズボタン */

a.qbutton.big_large_full_width {
    width:100%;
    height:90px;
    line-height:90px;
    font-size:20px;
    padding:0;
    text-align:center;
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
        -ms-box-sizing:border-box;
         -o-box-sizing:border-box;
    osition:relative;
    display:inline-block;
    background-color:#EA5E3D;
    border:none;
}

.wpb_single_image.tree .vc_single_image-wrapper {
    margin-bottom:0;
}

/* 表━━━━━━━━━━━━━━ */
.info-table {
    margin:0;
}
.info-table ul {
    margin:0;
    list-style:none;
}
.info-table ul li {
    padding:1em 0;
    border-bottom:1px solid #8AA3F2;
}
/* タイトル部分 */
.info-table .info_line .info_title {
    display:inline-block;
    width:120px;
    font-weight:bold;
    vertical-align:top;
    margin-right:20px;
}
/* 内容部分 */
.info-table .info_line .info_detail {
    display:inline-block;
    vertical-align:top;
}

/* 表-スマホ━━━━━━━━━━━━━━ */

@media screen and (max-width: 599px) {
    /* タイトル部分 */
    .info-table .info_line .info_title {
        display:block;
        font-weight:bold;
        vertical-align:top;
        margin-bottom:10px;
    }
}
/* END表━━━━━━━━━━━━━━ */

/* Bridgeテーマ テーブルCSSのリセット */
table.basic {
    border:1px solid #CCCCCC;
}

table.basic td,
table.basic th {
    text-align:left;
    border:1px solid #CCCCCC;
}

table.basic tr th {
    background-color:#EEEEEE;
}

table.basic caption {
    text-align:left;
}
/* END Bridgeテーマ テーブルCSSのリセット */



/* ━━━━━━━━━━━━━━ボタン━━━━━━━━━━━━━━ */

.button_basic {
    display:inline-block;
    width:100%;
    text-align:center;
    text-decoration:none;
    outline:none;
    padding:10px;
    /*装飾*/
    background-color:#C1CDF2;
    border:1px solid #465891;
    border-radius:3px;
    color:#354394;
}

.button_basic:hover {
    background-color:#354394;
    border-color:#465891;
    color:#FFFFFF;
}

.button_basic::before,
.button_basic::after {
    position:absolute;
    z-index:-1;
    display:block;
    content:"";
}

.button_basic,
.button_basic::before,
.button_basic::after {
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
            box-sizing:border-box;
    -webkit-transition:all 0.3s;
            transition:all 0.3s;
}


/* ━━━━━━━━━━━━━━END ボタン━━━━━━━━━━━━━━ */

/* ━━━━━━━━━━━━━━プラグイン━━━━━━━━━━━━━━ */

/* コンタクトフォーム7 ━━━━━━━━━━━━━━ */

/* インプット領域のボーダー等 */
input.wpcf7-form-control.wpcf7-date,
input.wpcf7-form-control.wpcf7-number,
input.wpcf7-form-control.wpcf7-quiz,
input.wpcf7-form-control.wpcf7-text,
select.wpcf7-form-control.wpcf7-select,
textarea.wpcf7-form-control.wpcf7-textarea {
    border:1px solid #666666;
    margin:0;
    color:#222222;
    font-size:16px;
}

.table-bordered {
    border:1px solid #ECEEEF;
}
.table-bordered td,
.table-bordered th {
    border:1px solid #ECEEEF;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color:#F9F9F9;
}

.table-contactform7 {
    overflow:hidden;
    table-layout:fixed;
    width:100%;
}

.required-contactform7 {
    padding:5px;
    background:#DE8686;
    color:#FFFFFF;
    border-radius:3px;
    margin-right:3px;
}

.unrequired-contactform7 {
    padding:5px;
    background:#BDBDBD;
    color:#FFFFFF;
    border-radius:3px;
    margin-right:3px;
}

.table-contactform7 th {
    font-weight:bold;
    text-align:left;
}

.table-contactform7 td {
    text-align:left;
}

.table-contactform7 input,
.table-contactform7 textarea {
    max-width:90% !important;
    margin:20px 10px 20px 5px;
    border:#000000;
}

.address-100 input {
    max-width:90% !important;
    margin:5px 10px 10px 5px;
}

.message-100 textarea {
    width:100%;
    margin:5px 10px 10px 5px;
}

@media screen and (min-width: 900px) {
    .table-contactform7 th {
        width:28%;
    }
}

@media screen and (max-width: 900px) {
    .table-contactform7 {
        display:block;
    }

    .table-contactform7 tbody,
    .table-contactform7 tr {
        display:block;
        width:100%;
    }
    .table-contactform7 th {
        width:100%;
        display:block;
        margin:0 auto;
        border:none;
    }
    .table-contactform7 td {
        display:list-item;
        list-style-type:none;
        margin:0;
        padding:0;
        width:100%;
        border-top:none !important;
        text-align:left;
    }
}

/* ラジオボタン/セレクトボックスの縦位置調整 */

span.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox input[type=checkbox],
span.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-radio input[type=radio] {
    top:0;
}

.wpcf7 .text-xs-center {
    text-align:center;
}

/* 変換中の文字指定 */
::-moz-selection {
    color:#000000 !important;
}

::selection {
    color:#000000 !important;
}
/* 確認用ボタン */
input.wpcf7-form-control.wpcf7-submit,
input.wpcf7-form-control.wpcf7-confirm,
input.wpcf7-form-control.wpcf7-back {
    position:relative;
    display:inline-block;
    width:auto;
    height:39px;
    line-height:36px;
    margin:5px;
    padding:0 23px;
    font-size:13px;
    font-weight:700;
    font-family:Raleway,sans-serif;
    text-align:left;
    text-decoration:none;
    cursor:pointer;
    white-space:nowrap;
    outline:0;
    font-style:normal;
    text-transform:uppercase;
    letter-spacing:1px;
         -o-border-radius:4px;
       -moz-border-radius:4px;
    -webkit-border-radius:4px;
        -ms-border-radius:4px;
            border-radius:4px;
    text-shadow:none;
    background-color:transparent;
    -webkit-transition:all 0.1s linear;
       -moz-transition:all 0.1s linear;
        -ms-transition:all 0.1s linear;
         -o-transition:all 0.1s linear;
            transition:all 0.1s linear;
    -webkit-box-sizing:initial;
       -moz-box-sizing:initial;
            box-sizing:initial;
}

input.wpcf7-form-control.wpcf7-submit:not([disabled]):hover,
input.wpcf7-form-control.wpcf7-confirm:not([disabled]):hover,
input.wpcf7-form-control.wpcf7-back:not([disabled]):hover {
    background-color:#354394;
    border-color:#354394;
    color:#FFFFFF;
    text-decoration:none;
}
/* END コンタクトフォーム7 ━━━━━━━━━━━━━━ */

/*━━━━━━━━━━━━━━(プラグイン)Revolution Slider━━━━━━━━━━━━━━*/

.hebe.tp-bullets:before {
    margin-left:-10px;
    margin-top:-10px;
    background:#FFFFFF;
    border-radius:5px !important;
}


/*━━━━━━━━━━━━━━ページ毎の処理━━━━━━━━━━━━━━*/




/*━━━━━━━━━━━━━━レスポンシブ関連━━━━━━━━━━━━━━*/
/* タブレット */
@media only screen and  (max-width:1380px) {
    .header-tel-box {
        display:none;
    }
    /* モバイルメニュー関連 */
    nav.mobile_menu ul li h3 {
        font-size:16px;
        margin-bottom:0 !important;
        padding:0;
        border-left:none;
        margin-top:0 !important;
    }
    nav.mobile_menu ul li a,
    nav.mobile_menu ul li h3 {
        padding:0.5em 0 0.5em 0;
    }
    nav.mobile_menu ul li a,
    nav.mobile_menu ul li h3 {
        font-size:16px;
        font-weight:600;
        color:#FFFFFF;
        padding:10px 0;
        display:block;
        position:relative;
        text-transform:none;
        line-height:26px;
        letter-spacing:0;
        border-left:none;
    }
    nav.mobile_menu ul li a:hover,
    nav.mobile_menu ul li.active>a {
        color:#FFFFFF;
        font-weight:bold;
    }
    nav.mobile_menu ul>li.has_sub>span.mobile_arrow i {
        display:inline;
        color:#FFFFFF;
        font-size:33px;
        font-weight:bold;
        line-height:43px;
    }
    ul.sub_menu li {
        background:#9EAFE3;
    }
    ul.sub_menu li a {
        padding-left:3px !important;
    }
    ul.sub_menu #mobile-menu-item-33,
    ul.sub_menu #mobile-menu-item-34 {
        background:#7085C4;
        padding-left:3px;
    }
    /* ENDモバイルメニュー関連 */

    /* モバイルボタン */
    .mobile_menu_button span {
        width:19px;
        height:17px;
        font-size:50px;
        z-index:50;
        display:table-cell;
        position:relative;
        cursor:pointer;
        vertical-align:middle;
    }
    .mobile_menu_button span .fa {
        padding:2px;
        border:1px solid;
        border-radius:3px;
    }

    .mobile_menu_button {
        float:right;
        height:100px;
        margin:0 20px 0 0;
    }
    nav.mobile_menu {
        background-color:#465891;
        padding-left:3px;
        border-radius:3px;
    }

    /* ロゴを左寄せに */
    .logo_wrapper {
        left:10%;
    }
    /* スライド矢印を小さく */
    .hesperiden.tparrows {
        width:20px;
        height:20px;
    }
    .hesperiden.tparrows:before {
        line-height:20px;
    }
}
/* End タブレット */

/* スマートフォン */

@media screen and (max-width: 599px) {
    .databox {
        width:auto;
    }
    h3.main_small {
        font-size:16px;
        margin-bottom:15px !important;
    }
    /* 会社概要等のタブspace */
    .tab_space {
        display:inline-block;
        width:120px;
        font-weight:bold;
        display:block;
        color:#6B9602;
    }
    .info_line {
        font-size:90%;
        border-bottom:dotted 1px #666666;
        /*margin-bottom:10px;*/
    }
    header .header_top {
        display:none !important;
    }

    /* ロゴを左寄せに */
    .logo_wrapper {
        left:30%;
    }

    /* 社員紹介 */
    .staff-box {
        padding:5px;
        margin-right:-10px;
        margin-left:-10px;
    }
}


/* End スマートフォン */

@media screen and (max-width: 500px) {
    .databox {
        width:auto;
    }
    h3.main_small {
        font-size:16px;
        margin-bottom:15px !important;
    }
    .header-tel-box {
        display:none;
    }
    /* 会社概要等のタブspace */
    .tab_space {
        display:inline-block;
        width:120px;
        font-weight:bold;
        display:block;
        color:#6B9602;
    }
    .info_line {
        font-size:90%;
        border-bottom:dotted 1px #666666;
        /*margin-bottom:10px;*/
    }
    header .header_top {
        display:none !important;
    }

    .margin-pc {
        display:none;
    }
}
