/*
Theme Name: http://www.kozuki-bankin.com/
Description: kozuki-bankin
Theme URI: 上月鈑金工業所
Version: 1.0
License: kozuki-bankin
License URI: http://www.kozuki-bankin.com/
*/

@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);


/****************************************

          リセットCSSここから

*****************************************/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html {
    box-sizing: border-box;
    font-size:62.5%; /*1em=10px */
    overflow-y: scroll; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    margin:0;
    padding:0;
    border:0;
    outline:0;
    vertical-align:baseline;
    background:transparent;
}

body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    font-family: メイリオ, Meiryo, Lato, "Noto Sans JP", "游ゴシック Medium", 游ゴシック体, "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height:1.6;
}

h1,h2,h3,h4,h5,h6 {
    font-weight:normal;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,main {
    display:block;
}

ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

img{
    vertical-align: top;
}

/****************************************

          body設定

*****************************************/
body{
    color: #333;
}

/****************************************

          トップページ共通

*****************************************/

#wrapper{
    width: 100%;
    min-width: 1000px;
    min-height:100%;
    float: none;
    margin: 0 auto;
    overflow: hidden;
}

@media print, screen and (max-width: 767px) {
    #wrapper{
        width: 100%;
        min-width: 0;
        min-height:100%;
        float: none;
        margin: 0 auto;
        overflow: hidden;
    }
}


/****************************************

          フォント指定

*****************************************/
li,tt,tr,dt,dd,p{
    font-size: 1.4rem;
}

h1{
    color: #666;
    font-weight: bold;
    font-size: 1rem;
}
h2{
    font-size: 2.4rem;
    font-weight: bold;
    color: #1F2B17;
}
h3{
    font-size: 1.8rem;
    font-weight: bold;
    color: #4C6A1E;
}
h4{
    font-size: 1.4rem;
    font-weight: bold;
    color: #FF780A;
}
h5{
    font-size:1.4rem;
    color:#585858;
    font-weight:bold;
}

/****************************************

          リンク指定

*****************************************/


a:link,a:visited{
    font-weight: normal;
    text-decoration: none;
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}
a:hover,a:active {
    font-weight: normal;
    text-decoration: none;
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}



/****************************************

         オンマウス時のアクション

*****************************************/

a:hover img.img_opacity {
    opacity: 0.75;
    filter: alpha(opacity=75);
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}
a img.img_opacity {
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}


/****************************************

spヘッダー

*****************************************/

@media print, screen and (max-width: 767px) {
    #pc_header,#pc_header_box,#pc_header_page{display: none;}
    img{width: 100%; height: auto;}

    #sp_header{
        display: block;
        width:100%;
        width:100%;
        background: url(images/header_line.gif) repeat-x;
        position: relative;
    }

    .sp_header_box{
        padding: 20px 0;
    }

    .sp_logo{
        width: 185px;
        margin: 0 auto;
    }

    .sp_logo img{
    max-width: 100%;
    margin: 0 auto;
    }

    #sp_slider{
    position: relative;
    width: 190%;
    left: -45%;
    }

    #sp_slider .metaslider {
    width: 100%;
    position: relative;
    left: 0;
    margin-left: 0;
}

    .sp_pagetop{
        width: 50px;
        position: fixed;
        right: 0;
        bottom: 0;
    }

    #sp_teaser img{
    position: relative;
    width: 190%;
    left: -45%;
    }

    #toggle {
        position:absolute; /*bodyに対しての絶対位置指定です*/
        right:15px;
        top:25px;
        width:30px;
        height:25px;
        cursor:pointer;
        z-index: 9999;
    }

    #toggle div {
        position:relative;
    } /*spanの絶対位置指定の親にします*/
    #toggle span {
        display:block;
        position:absolute; /*#navToggle div に対して*/
        width:100%;
        height: 4px;
        background: #999;
        border-radius: 4px;
        -webkit-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
    }
    #toggle span:nth-child(1) {
        top:0;
    }
    #toggle span:nth-child(2) {
        top:11px;
    }
    #toggle span:nth-child(3) {
        top:22px;
    }

    .open_navi #toggle{
        position: fixed;
    }

    .open_navi #toggle span:nth-of-type(1) {
        -webkit-transform: translateY(11px) rotate(-315deg);
        transform: translateY(11px) rotate(-315deg);
    }
    .open_navi #toggle span:nth-of-type(2) {
        opacity: 0;
    }
    .open_navi #toggle span:nth-of-type(3) {
        -webkit-transform: translateY(-11px) rotate(315deg);
        transform: translateY(-11px) rotate(315deg);
    }


    #sp_navi {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 100vw;
        overflow-y: scroll;
        text-align: left;
        background-color: rgba(0,0,0,.9);
        z-index: 999;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        -webkit-transition:.7s ease-in-out;
        transition: .7s ease-in-out;
    }


    .open_navi #sp_navi {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition:.7s ease-in-out;
        transition: .7s ease-in-out;
    }


    .open_navi #wrapper {
        -webkit-transform-origin: left center;
        transform-origin: left center;
        -webkit-filter: blur(3px);
        filter: blur(3px);
        -webkit-transition:.7s ease-in-out;
        transition: .7s ease-in-out;
    }



    #sp_navi .menu {
        padding-top: 80px;
        text-align: center;
    }

    #sp_navi .menu .menu-item{
        width:100%;
        text-align:center;
        border:#666 1px solid;
        cursor:pointer;
        color: #FFF;
        margin: 0 auto;
        font-size: 1.4rem;
        box-sizing: border-box;
    }


    #sp_navi .menu-item a,
    #sp_navi .menu-item span{
        display: block;
        padding: 15px 0 14px;
    }

    #sp_navi .menu-item a:link,
    #sp_navi .menu-item a:visited,
    #sp_navi .menu-item a:hover,
    #sp_navi .menu-item a:active,
    #sp_navi .sub-menu li a:link,
    #sp_navi .sub-menu li a:visited,
    #sp_navi .sub-menu li a:hover,
    #sp_navi .sub-menu li a:active{
        color: #FFF;
        text-decoration: none;
    }

    #sp_navi .sub-menu{
        width:100%;
        text-align:center;
        display:none;
    }
    #sp_navi .sub-menu li{
        width:100%;
        text-align:center;
        border-top:#666 1px solid;
    }

    #sp_navi .sub-menu li a{
        display: block;
        padding: 11px 0 10px;
        color: #ccc;
        background: rgba(0,102,203,0.6);;
    }
    #sp_navi .sub-menu li a:hover{
        color: #ccc;
        background:none;
    }


    .menu-item-has-children{
        position: relative;
    }

    .menu-item-has-children::before{
        content: '';
        width: 14px;
        height: 14px;
        border: 0px;
        border-top: solid 3px #ddd;
        border-right: solid 3px #ddd;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transition:.2s ease-in-out;
        transition: .2s ease-in-out;
        position: absolute;
        top: 14px;
        right: 20px;
    }
    .menu-item-has-children.menu_open::before{
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transition:.2s ease-in-out;
        transition: .2s ease-in-out;
        top:22px;
    }
}

/****************************************

pcヘッダー

*****************************************/

@media screen and (min-width: 768px) {

    #sp_header,#sp_navi,#toggle{display: none;}

}

#pc_header{
    width:100%;
    background: url(images/header_line.gif) repeat-x;
}

#pc_header_box{
    width: 1000px;
    margin: 0 auto;
    padding: 18px 0 29px 0;
}

.header_description{
    color: #333333;
    font-size: 1.2rem;
    text-align: right;
    margin-bottom: 35px;
}

.pc_logo{
    float: left;
}

.header_info{
    width: 427px;
    float: right;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/header_info.jpg) no-repeat right top;
}

/****************************************

          横ナビ

*****************************************/

#g_navi{
    width: 100%;
    height: 51px;
    margin: 0 auto;
    background: url(images/nav_bg.gif) repeat-x;
    position: relative;
}

#g_navi_box{
    width: 1000px;
    margin: 0 auto;
}

#g_navi .menu{
    *zoom: 1;
    width: 1000px;
    list-style-type: none;
    margin:0 auto;
}
#g_navi .menu:before, #g_navi .menu:after{
    content: "";
    display: table;
}
#g_navi .menu:after{
    clear: both;
}

#g_navi .menu li{
    position: relative;
    width: 250px;
    float: left;
    text-align: center;
    line-height:0;
}

#g_navi .menu li a{
    display: block;
    margin: 0;
    color: #fff;
    font-size: 1.4em;
    line-height: 1;
    text-decoration: none;
}
#g_navi .menu li ul{
    list-style: none;
    position: absolute;
    z-index: 9999;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 0;
}
#g_navi .menu li ul li{
    width: 100%;
}

#g_navi .menu li ul li a{
    width:240px;
    padding:13px 5px;
    border-top: 1px solid #ccc;
    font-size:1.2rem;
    background: #0066CB;
    text-align: center;
    opacity: 0.95;
    filter: alpha(opacity=95);
}

#g_navi .menu li ul li a:hover{
    background:#FFF;
    color:#0066CB;
    -webkit-transition:0.2s linear;
    transition:0.2s linear;
}

#g_navi .menu li ul{
    visibility: hidden;
    opacity: 0;
    -webkit-transition:0.3s;
    transition: 0.3s;
}
#g_navi .menu li:hover ul{
    visibility: visible;
    opacity: 0.95;
}
#g_navi .menu li ul li a{
    visibility: hidden;
    opacity: 0;
    -webkit-transition:.5s;
    transition: .5s;
}
#g_navi .menu li:hover ul li a{
    visibility: visible;
    opacity: 1;
}

/****************************************

          ティーザー

*****************************************/

#slider{
    width: 100%;
    position:relative;
    overflow:hidden;
}

.metaslider{
    width:1920px;
    position:relative;
    left:50%;
    margin-left:-960px;
}

#teaser{
    width: 100%;
    position:relative;
    overflow:hidden;
    height: 230px;
}

.teaser_box {
    width: 1920px;
    position:relative;
    left:50%;
    margin-left:-960px;
}


/****************************************

          content 共通設定

*****************************************/
#top_main {
    width: 100%;
    margin: -40px auto;
    background: url(images/top_main_bg.jpg) no-repeat center top;
    overflow: hidden;
}


.breadcrumb_area {
    width: 100%;
    height: auto;
    margin:0 auto 24px;
}

.breadcrumb{
    width: 990px;
    margin:0 auto 20px;
    padding-top: 10px;
}

.breadcrumb a{
    color: #000000;
    text-decoration: none;
}

.breadcrumb a:hover{
    color: #000000;
    text-decoration: underline;
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}

@media print, screen and (max-width:767px){
.breadcrumb_area{
    width: auto;
    height: auto;
    padding: 10px 2%;
    }

}

.breadcrumb p{
    font-size:1.2rem;
    color:#33261F;
}

#left_box {
    width: 710px;
    float: left;
}

/****************************************

          contentトップ用

*****************************************/

.home_box01{
    width: 1305px;
    margin: 0 auto;
    padding: 110px 0 85px 0;
    position: relative;
    z-index: 2;
}

.home_box01:after{
    content:'';
    background: #fff;
    width: 1305px;
    height: 422px;
    position: absolute;
    opacity: 0.5;
    top:0;
    z-index: -1;
}

.home_box01_inner{
    width: 1000px;
    margin: 0 auto;
}

.home_box01_title{
    color: #0066cb;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 3rem;
    line-height: 1.3;
    margin-bottom: 20px;
    position: relative;
}

.home_box01_title:after{
    content:'';
    border-bottom: 1px solid #0066cb;
    width: 930px;
    height: 1px;
    position: absolute;
    top:92px;
    left: -460px;
}

.home_box01_subtitle{
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/we_are_the_answer.png) no-repeat;
    position: relative;
    left: -130px;
}

.home_box01_inner .left_box{
    float: left;
    width: 616px;
}

.home_box01_inner figure{
    float: right;
}

.home_box02{
    width: 100%;
    padding: 60px 0 70px 0;
    position: relative;
    z-index: 2;
}

.home_box02:after{
    content:'';
    width: 100%;
    height: 100%;
    background: #003365;
    background-blend-mode: multiply;
    opacity: 0.9;
    position: absolute;
    top: 0;
    z-index: -1;
}

.home_box02_inner{
    width: 1000px;
    margin: 0 auto;
}

.home_box02_title{
    text-align: center;
    color: #fff;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    display: block;
    position: relative;
    padding-bottom: 15px;
    font-size: 3rem;
}

.home_box02_title::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 2px solid #fff;
    width: 58px;
    margin: 0 auto;
}

.home_box02_subtitle{
    display: block;
    text-align: center;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/service.png) no-repeat center top;
    margin-top: 9px;
}

.home_box02_inner01_title{
    background: url(images/policy.png) no-repeat left top;
    color: #fff;
    font-family: 'Noto Sans JP', sans-serif;
    width: 402px;
    margin: 0 auto 40px;
    font-weight: 300;
    font-size: 2.4rem;
    padding-left: 98px;
    border-bottom: 1px solid #8095ab;
}

.home_box02_inner figure{
    float: left;
    border:1px solid #fff;
}

.home_box02_inner .right_box{
    float: right;
    width: 469px;
}

.home_box02_inner .right_box p{
    color: #fff;
}

.banner_box{
    width: 1000px;
}

.home_box02 .left_banner{
    float: left;
}

.home_box02 .right_banner{
    float: right;
}

.home_box02_inner01{
    margin-bottom: 50px;
}

.home_box02_btn{
    display: inline-block;
    width: 320px;
    padding: 6px 0;
    margin-top: 21px;
    box-sizing: border-box;
    cursor: pointer;
    background: #fff;
    border-radius:3px;
    float: right;
    box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -webkit-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -moz-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
    text-align: center;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-decoration: none;
    outline: none;
    color: #0066cb;
}

.home_box02_btn::before,
.home_box02_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.home_box02_btn,
.home_box02_btn::before,
.home_box02_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.home_box02_btn:hover{
    color: #fff;
    background: #0066cb;
}

.home_box03{
    width: 100%;
    padding: 70px 0 100px 0;
}

.home_box03_inner{
    width: 1000px;
    margin: 0 auto;
}

.home_box03_title{
    text-align: center;
    color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    display: block;
    position: relative;
    padding-bottom: 15px;
    font-size: 3rem;
}

.home_box03_title::after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 2px solid #000000;
    width: 58px;
    margin: 0 auto;
}

.home_box03_subtitle{
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    text-align: center;
    background: url(images/access.png) no-repeat center top;
    margin-top: 9px;
}

.home_box03_inner .left_box{
    background: rgba(105,130,155,.8);
    width: 500px;
    box-sizing: border-box;
    float: left;
    padding: 22px 20px 25px 20px;
}

.company_info p{
    color: #fff;
}

.google_map{
    float: right;
    width: 500px;
    height: 240px;
}

.home_box03_btn{
    display: inline-block;
    width: 320px;
    padding: 6px 0;
    margin-top: 21px;
    box-sizing: border-box;
    cursor: pointer;
    background: #fff;
    border-radius:3px;
    box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -webkit-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -moz-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
    text-align: center;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-decoration: none;
    outline: none;
    color: #0066cb;
}

.home_box03_btn::before,
.home_box03_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.home_box03_btn,
.home_box03_btn::before,
.home_box03_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.home_box03_btn:hover{
    color: #fff;
    background: #0066cb;
}

.home_box03_inner01{
    margin-bottom: 40px;
}

.contact_box{
    height: 150px;
    padding: 10px 15px;
    background: url(images/contact_box_bg.jpg) no-repeat center top;
    box-sizing: border-box;
/*
    box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -webkit-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
  -moz-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
*/
}

.contact_box h3{
    color: #fff;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}

.contact_box .font30{
    font-size: 3rem;
}

.contact_box .font24{
    font-size: 2.4rem;
}

.contact_box .text{
    font-size: 1.6rem;
    color: #fff;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    margin-bottom: 15px;
}

.contact_box .tel{
    width: 369px;
    height: 32px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/contact_box_tel.png) no-repeat left top;
    float: left;
    margin: 5px 20px 0 0;
}

.contact_box_btn{
    width: 336px;
    display: inline-block;
    padding: 6px 8px 6px 58px;
    float: left;
    background: url(images/mail_icon.png) no-repeat 8px center,#0066cb;
    border-radius:3px;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-decoration: none;
    outline: none;
}

.contact_box_btn::before,
.contact_box_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.contact_box_btn,
.contact_box_btn::before,
.contact_box_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.contact_box_btn:hover{
    color: #fff;
    background: url(images/mail_icon.png) no-repeat 8px center,#0080FF;
}


/****************************************

          content下層用

*****************************************/

#contents_wrapper{
    background: url(images/gradient.jpg) no-repeat center top;
}

#contents{
    margin-bottom: 50px;
}

#page_main{
    width: 1000px;
    margin: 0 auto;
    padding: 0 0 96px 0;
}

.line_up_box01 .left_box{
    float: left;
    width: 485px;
    margin-right: 25px;
}

.line_up_box01 .figure{
    float: right;
}

.line_up_box01 .parts{
    margin-bottom: 30px;
}

.line_up_box01 .parts:last-child{
    margin-bottom: 50px;
}

.line_up_box02{
    padding-bottom: 55px;
}

.line_up_box03{
    margin-bottom: 58px;
}

.line_up_box03 figure{
    float: left;
}

.line_up_box03 .right_box{
    float: right;
    width: 448px;
}

.top_text{
    width: 710px;
    padding: 16px 19px 18px 19px;
    box-sizing: border-box;
    border:3px solid #97C1EA;
    margin-bottom: 30px;
    color: #000;
    background: #fff;
}

.dress_up_box01 figure{
    float: left;
}

.dress_up_box01 .right_box{
    float: right;
    width: 464px;
}

.dress_up_box02 .text{
    margin-bottom: 55px;
}

.dress_up_box01{
    margin-bottom: 50px;
}

.publicity_box{
    background: url(images/publicity_box_bg.jpg) no-repeat center center;
    padding: 17px 98px;
    box-sizing: border-box;
    width: 710px;
    position: relative;
}

.publicity_box:after{
    content: "";
    display: block;
    position: absolute;
    left: 8px;
    right: 8px;
    top: 8px;
    bottom: 8px;
    border: 1px solid #fff;
    padding: 3px;
    margin: -5px;
    z-index: 2;
}

.publicity_box p{
    font-size: 2.2rem;
    color: #0066CB;
    font-weight: 600;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
}

.publicity_box .orange{
    font-size: 2.6rem;
    color: #FF7F00;
    font-weight: 600;
}

.ad_box{
    height: 125px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/tow_truck_ad.jpg) no-repeat center center;
    margin-bottom: 40px;
}

.tow_truck_box_inner01{
    margin-bottom: 30px;
}

.tow_truck_box_inner01 .left_box{
    float: left;
    width: 490px;
    color: #000;
}

.tow_truck_box_inner01 figure{
    float: right;
}

.notice{
    width: 710px;
    margin-bottom: 50px;
    box-sizing: border-box;
    background: #F5F5F5;
    border:3px solid #E0E0E0;
    padding: 17px 17px 25px 17px;
}

.notice figure{
    float: left;
}

.notice .right_box{
    float: right;
    color: #000;
    margin-right: 40px;
}

.tow_truck_box01 .list p{
    font-size: 1.7rem;
    color: #003365;
    font-weight: 600;
    font-family: 'Noto Sans JP', sans-serif;
}

.tow_truck_box01 .text{

}

.tow_truck_box01 .list li{
    border-bottom: 1px dotted #999999;
    padding: 22px 0 15px 0;
}

.tow_truck_box01 .list li:first-child{
    padding: 0 0 15px 0;
}

.tow_truck_box01 .list{
    margin-bottom: 10px;
}

.flow_parts{
    padding-bottom: 65px;
    background: url(images/arrow.png) no-repeat center 230px;
}

.flow_parts .left_box{
    float: left;
}

.flow_parts .right_box{
    float: right;
    width: 465px;
    color: #000;
}

.flow_parts01 .left_box{
    width: 465px;
    float: left;
    color: #000;
}

.flow_parts01 figure{
    float: right;
}

.flow_parts01{
    padding-bottom: 65px;
    background: url(images/arrow.png) no-repeat center 230px;
}

.flow_parts01:last-child{
    padding-bottom: 50px;
    background: none;
}

.top_text01{
    margin-bottom: 30px;
    color: #000;
}

.bankin_box01{
    margin-bottom: 30px;
}

.bankin_box01 .left_box{
    float: left;
    width: 465px;
    color: #000;
}

.bankin_box01 figure{
    float: right;
}

.bankin_box02{
    margin-bottom: 50px;
}

.bankin_box02 figure{
    float: left;
}

.bankin_box02 .right_box{
    float: right;
    width: 465px;
    color: #000;
}

.bankin_parts .title{
    width: 136px;
    padding: 4px 0 4px 14px;
    background: #003365;
    position: relative;
    margin-bottom: 10px;
    font-size: 1.4rem;
    color: #E6F0F9;
}

.bankin_parts .title:after{
    content:'';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 0 15px 20px;
    border-color: transparent transparent transparent #003365;
    position: absolute;
    right: -20px;
    top: 0;
}

.bankin_parts{
    width: 170px;
    float: left;
    margin: 0 10px 20px 0;
}

.bankin_parts figure{
    margin-bottom: 10px;
}

.bankin_parts:nth-child(4n+1){
    margin-right: 0;
}

.bankin_parts .text{
    color: #000;
}

.bankin_case02{
    margin-bottom: 10px;
}

.bankin_case02:last-child{
    margin-bottom: 0;
}

.voice_parts{
    width: 340px;
    float: left;
    margin: 0 30px 30px 0;
}

.voice_parts:nth-child(2n){
    margin-right: 0;
}

.voice_parts:nth-child(2n+1){
    clear: left;
}

.voice_parts .text_box{
    border:3px solid #97C1EA;
    width: 340px;
    box-sizing: border-box;
    padding: 18px 27px 27px 19px;
    color: #000;
}

.staff_box01 .left_box{
    width: 425px;
    float: left;
    color: #000;
}

.staff_box01 figure{
    float: right;
}

.daihyo{
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/daihyo.png) no-repeat right bottom;
    margin-top: 20px;
}

.staff_box01_inner{
    width: 710px;
    padding: 20px 20px 28px 20px;
    margin-bottom: 50px;
    box-sizing: border-box;
    background: url(images/staff_box01_inner.jpg);
    position: relative;
}

.staff_box01_inner:before{
    content: "";
    display: block;
    position: absolute;
    left: 8px;
    right: 8px;
    top: 8px;
    bottom: 8px;
    border: 1px solid #fff;
    padding: 3px;
    margin: -5px;
    z-index: 2;
}

.staff_box02{
    margin-bottom: 20px;
}

.staff_box02_parts{
    width: 340px;
    float: left;
    margin: 0 30px 30px 0;
}

.staff_box02_parts p{
    color: #000;
}

.staff_box02_parts:nth-child(2n+1){
    margin-right: 0;
}

.staff_box02_parts figure{
    float: left;
}

.staff_box02_parts .right_box{
    float: right;
    width: 205px;
}

.staff_box03 ul li{
    float: left;
    margin: 0 17px 17px 0;
}

.staff_box03 ul li:nth-child(3n){
    margin-right: 0;
}


/****************************************

         single.php

*****************************************/

.single_box {
    width: 100%;
}

.single_text {
    width: 100%;
}

.pager{
    clear:both;
    text-align:center;
    padding:30px 0;
}

.pager a{
    color: #000;
    text-decoration: none;
}

.pager a:hover{
    color: #000;
    text-decoration: underline;
}

a.page-numbers,
.pager .current{
    background:rgba(0,0,0,0.02);
    border:solid 1px rgba(0,0,0,0.1);
    border-radius:5px;
    padding:5px 8px;
    margin:0 2px;
}
.pager .current{
    background:rgba(0,0,0,1);
    border:solid 1px rgba(0,0,0,1);
    color:rgba(255,255,255,1);
}
.nav-below{
    margin: 30px 0 20px;
    text-align: center;
}

/****************************************

         footer

*****************************************/


@media print, screen and (min-width: 768px) {
    #sp_footer{
        display: none;
    }
}

.footer_top{
    width: 100%;
    background: #000000;
}

.footer_top_box{
    width: 1000px;
    margin: 0 auto;
    padding: 40px 0 29px 0;
    position: relative;
}

.pagetop{
    position: absolute;
    right: -37px;
    bottom: 127px;
}

.footer_logo{
    float: left;
    margin-right: 29px;
}

.footer_info{
    float: left;
    margin-right: 20px;
}

.footer_info p{
    color: #807f7f;
    font-size: 1.2rem;
}

.footer_mail{
    background: url(images/footer_mail_icon.jpg) no-repeat left center;
    float: left;
    display: inline-block;
    padding-left: 36px;
    margin-top: 36px;
}

.footer_mail a{
    color: #fff;
    text-decoration: none;
    font-size: 1.2rem;
}

.footer_mail a:hover{
    text-decoration: underline;
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}

.footer_bottom{
    width: 100%;
    background: url(images/footer_bottom_bg.gif) repeat left top;
    border-top: 1px solid #4d4d4d;
    padding: 29px 0 50px 0;
}

.footer_navi p{
    color: #8cc6ff;
    font-size: 1.4rem;
    margin-bottom: 4px;
}

.footer_navi_box:first-child{
    width: 90px;
    box-sizing: border-box;
    padding: 10px 0;
    text-align: center;
}

.footer_navi_box{
    float: left;
    width: 295px;
    border-left: 1px solid #8d8d8d;
    box-sizing: border-box;
    padding: 0 26px;
}

.footer_navi_box:nth-child(3){
    width: 300px;
    height: 42px;
}

.footer_navi_box:last-child{
    width: 313px;
    height: 42px;
    border-right: 1px solid #8d8d8d;
}

.footer_navi_box ul li:first-child{
    padding-left: 0;
}

.footer_navi_box ul li{
    float: left;
    color: #fff;
    font-size: 1.2rem;
    border-right: 1px solid #fff;
    padding: 0 6px;
}

.footer_navi_box ul li:last-child{
    border-right: none;
    padding-right: 0;
}

.footer_navi{
    width: 1000px;
    margin: 0 auto;
}

.footer_navi a{
    color: #8cc6ff;
    text-decoration: none;
}

.footer_navi ul li a{
    color: #fff;
    text-decoration: none;
}

.footer_navi a:hover{
    text-decoration: underline;
    -webkit-transition:0.2s linear;
    -moz-transition:0.2s linear;
    transition:0.2s linear;
}

.copyright{
    text-align: center;
    background: url(images/footer_bottom_bg.gif);
    color: #8a8a8a;
    font-size: 1.2rem;
}


@media print, screen and (max-width: 767px) {

    #pc_footer{
        display: none;
    }

.footer_top_box{
    width: 100%;
    padding: 20px 2%;
    box-sizing: border-box;
}

    .footer_logo{
        width: 262px;
        float: none;
        margin:  0 auto 10px;
    }

    .footer_info{
        float: none;
        margin: 0 auto;
        text-align: center;
    }

    .sp_pagetop{
        width: 50px;
        position: fixed;
        right: 0;
        bottom: 0;
        z-index: 3;
    }

}









/****************************************

         sidebar

*****************************************/

#sidebar{
    width: 250px;
    float: right;
}

#sidebar .banner_list li{
    margin-bottom: 10px;
}

#sidebar .banner_list li:last-child{
    margin-bottom: 30px;
}

#sidebar .btn_list li{
    margin-bottom: 10px;
}

#sidebar .btn_list li:last-child{
    margin-bottom: 30px;
}

.side_bontact_box{
    width: 250px;
    height: 420px;
    box-sizing: border-box;
    background: url(images/side_contact_bg.jpg);
    border:1px solid #C5C5C5;
    padding: 20px 14px;
}

.side_bontact_box .logo{
    height: 43px;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    background: url(images/side_logo.png) no-repeat center center;
    margin-bottom: 16px;
}

.side_bontact_box .info p{
    color: #000;
    font-size: 1.2rem;
}

.side_bontact_box figure{
    margin-bottom: 15px;
}

.side_bontact_box .info{
    margin-bottom: 12px;
}

.contact_box01 .text{
    margin-bottom: 28px;
    color: #000;
}

.site_policy{
    box-sizing: border-box;
    border:3px solid #97C1EA;
    padding: 20px 17px;
}

.site_policy .title{
    font-size: 1.2rem;
    color: #000;
}

.site_policy p{
    font-size: 1.2rem;
    color: #000;
}

.contact_box01{
    margin-bottom: 50px;
}

.side_contact_btn{
    width: 213px;
    display: inline-block;
    padding: 8px 8px 8px 58px;
    background: url(images/side_contact_btn_icon.png) no-repeat 8px center,#fff;
    border-radius:3px;
    color: #0066CB;
    text-align: center;
    font-size: 1.4rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-decoration: none;
    outline: none;
    box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
      -webkit-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
      -moz-box-shadow: 0px 8px 8px -5px rgba(4,0,0,0.6);
}

.side_contact_btn::before,
.side_contact_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.side_contact_btn,
.side_contact_btn::before,
.side_contact_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.side_contact_btn:hover{
    color: #fff;
    background: url(images/side_contact_btn_icon01.png) no-repeat 8px center,#0066cb;
}

.side_contact_btn a{
    color: #0066CB;
}


/****************************************

         タイトル

*****************************************/

.headline{
    background: url(images/headline_icon.png) no-repeat left 4px;
    color: #003365;
    font-size: 2.4rem;
    padding: 0 12px 10px 45px;
    margin-bottom: 30px;
    position: relative;
    border-bottom: 4px solid #D9D9D9;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
}

.headline:after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 22%;
  height: 4px;
  background-color: #003365;
}

.subhead{
    width: 680px;
    background: url(images/subhead_bg.jpg) no-repeat center center;
    font-size: 1.8rem;
    color: #fff;
    padding: 9px 0 8px 30px;
    margin-bottom: 20px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}

.subhead01{
    color: #454545;
    font-size: 1.7rem;
    position: relative;
    border-left: 4px solid #95CE34;
    padding-left: 13px;
    margin-bottom: 25px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
}

.subhead01:after{
    border-bottom: 1px dotted #999999;
    position: absolute;
    left: -4px;
    bottom: -8px;
    content: '';
    width: 100%;
    height: 0;
}

.subhead02{
    background: -moz-linear-gradient(top, #0059B3, #0066CB);
    background: -webkit-linear-gradient(top, #0059B3, #0066CB);
    background: linear-gradient(to bottom, #0059B3, #0066CB);
    font-size: 1.8rem;
    color: #fff;
    padding: 6px 29px;
    margin: 0 0 14px 0;
    position: relative;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}

.subhead02:before{
    content:'';
    position: absolute;
    width: 18px;
    height: 3px;
    background: #fff;
    top: 19px;
    left: 0;
}

/****************************************

         テーブル

*****************************************/

/* 会社概要 */

.overview_box{
    margin-bottom: 50px;
}

.overview_box table{
    width: 465px;
    float: left;
}

@media print,screen and (max-width:767px){
    .overview_box table{
    width: 100%;
    float: none;
}
}

.overview_box tr{
    border-bottom: 1px dotted #999999;
}

.overview_box th{
    width: 25%;
    font-size: 1.4rem;
    color: #003365;
    text-align: left;
    padding: 11px 0 12px;
    font-weight: bold;
}

.overview_box td{
    width: 75%;
    font-size: 1.4rem;
    color: #000;
    padding: 11px 0 12px 12px;
}

.overview_box .right_box{
    width: 100%;
    float: none;
}

.overview_box .right_box li{
    margin-bottom: 10px;
}

.overview_box .right_box li:last-child{
    margin-bottom: 0;
}

.google_map_box iframe{
    width: 100%;
    height: auto;
}





/****************************************

         P

*****************************************/
/* 改行 */
p.line_break{
    padding-top: 20px;
}
/* 改行 */
p.line_break01{
    padding-top: 10px;
}
/* 改行 */
p.line_break02{
    padding-top: 35px;
}
/* 赤文字*/
.red{
    color: #f00;
    font-weight: bold;
}
/* 青文字 */
.blue{
    color: #0066CB;
    font-size: 1.6rem;
    font-weight: bold;
}
/* 強調*/
.big_bold{
    font-size:1.6rem;
    font-weight: bold;
}
.bold{
    font-weight: bold;
}

/* 小文字*/
.small{
    font-size: 1em;
    font-weight: bold;
    color: #384C0E;
}



/****************************************

         Contact Form7

*****************************************/

.wpcf7{
    width:100%;
    float:none;
}

.wpcf7-form textarea{
    width: 650px !important; /*本文*/
}
.wpcf7-form .wpcf7-submit{
    width: 50px !important; /*送信ボタン*/
}
.wpcf7 p {
    line-height: 2.0; /*項目間の隙間*/
    padding-top: 3px;
}
.wpcf7-form input{
    width: auto !important; /*ラジオボタン、チェックボタン*/
}
.contact_p_strong{
    border-top: 1px dotted #999;
    font-weight: bold;
    margin-top: 15px;
    padding-top: 15px !important;
}
.normal{
    font-weight: normal;
}
.wpcf7-submit{
    margin-top:10px;
}

.wpcf7-response-output{
    font-size: 1.3em;
}



@media print, screen and (max-width: 767px) {

.wpcf7-form textarea{
    width: calc(100% - 4px) !important; /*本文*/
}

.wpcf7-form input{
    width: calc(100% - 4px) !important; /*ラジオボタン、チェックボタン*/
}

}



/****************************************

         メディアクエリ

*****************************************/

@media print, screen and (max-width: 767px) {

br{
    display: none;
}

.home_box01{
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 50px 0;
    position: relative;
    z-index: 2;
}

.home_box01:after{
    content:'';
    background: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    opacity: 0.5;
    top:40px;
    z-index: -1;
}

.home_box01_inner {
    width: 100%;
    }

.home_box01_title{
    font-size: 2.4rem;
    border-bottom: 1px solid #0066cb;
    margin-bottom: 5px;
    padding-bottom: 15px;
}

.home_box01_title:after{
    display:none;
}

.home_box01_inner .left_box{
    float: none;
    width: 100%;
    box-sizing: border-box;
    padding: 0 2%;
}

.home_box02_inner{
    width: calc(100% - 30px);
    box-sizing: border-box;
}

.banner_box{
    width: 100%;
}

.home_box02_inner01_title{
    width: 100%;
    padding: 30px 0 0 0;
    font-size: 2rem;
    background: url(images/sp_point.png) no-repeat;
}

.home_box02_inner .right_box{
    width: 100%;
    float: none;
}

.home_box02_inner figure {
    float: none;
    margin-bottom: 10px;
    }

.home_box01_subtitle{
    left: 0;
}

.home_box02 .left_banner{
    float: none;
    margin-bottom: 10px;
}

.home_box02 .right_banner{
    float: none;
}

/* 下層ページ */

    #page_main{
    width:100%;
    padding: 0 2% 50px 2%;
    box-sizing: border-box;
}

    #sidebar{
        display: none;
    }

    #left_box{
        width: 100%;
        float: none;
    }

    .subhead{
        width: 100%;
        box-sizing: border-box;
    }

    .line_up_box01 .left_box{
        float: none;
        width: 100%;
    }

    .line_up_box03 .right_box{
        float: none;
        width: 100%;
    }

    .line_up_box03 figure{
        width: 70%;
        margin: 0 auto;
        float: none;
    }

    .tow_truck_box_inner01 .left_box{
        float: none;
        width: 100%;
    }

    .tow_truck_box_inner01 figure {
    float: none;
}

    .ad_box{
        background-size: contain;
    }

    .notice{
        width: 100%;
    }

    .top_text{
        width: 100%;
    }

    .flow_parts .right_box {
    float: none;
    width: 100%;
    }

    .flow_parts01 .left_box{
        float: none;
        width: 100%;
    }

    .flow_parts01 figure{
        float: none;
    }

    .bankin_box01 .left_box{
        float: none;
        width: 100%;
    }

    .bankin_box01 figure{
        float: none;
    }

    .bankin_box02 .right_box{
        float: none;
        width: 100%;
    }

    .bankin_box02 figure{
        float: none;
    }

    .bankin_parts{
        width: 49%;
        margin: 0 2% 5% 0;
    }

    .bankin_parts:nth-child(2n+1){
        margin-right: 0;
    }

    .staff_box03 ul li{
        width: 49%;
        margin: 0 2% 5% 0;
    }

    .staff_box03 ul li:nth-child(2n){
        margin-right: 0;
    }

    .staff_box03 ul li:nth-child(3){
        margin: 0 2% 5% 0;
    }

    .flow_parts figure{
        width: 70%;
        margin: 0 auto;
    }

    .flow_parts01 figure{
        width: 70%;
        margin: 0 auto;
    }

    .line_up_box01 .parts figure{
        width: 70%;
        margin: 0 auto;
    }

    .dress_up_box01 figure{
        width: 70%;
        margin: 0 auto;
        float: none;
    }

    .dress_up_box01 .right_box{
        width: 100%;
        float: none;
    }

    .contact_box{
        width: 100%;
        height: auto;
        background-size:cover;
    }

    .contact_box .tel{
        margin: 5px 20px 10px 0;
        background-size:contain;
        width: 100%;
    }

    .home_box03_inner{
        width: 100%;
        box-sizing: border-box;
        padding: 0 15px;
    }

/* タイトル */

.subhead{
    background: -moz-linear-gradient(top, #0059B3, #0066CB),url(images/kozuki_bankin.png) no-repeat right bottom;
    background: -webkit-linear-gradient(top, #0059B3, #0066CB),url(images/kozuki_bankin.png) no-repeat right bottom;
    background: url(images/kozuki_bankin.png) no-repeat 98% 90%,linear-gradient(to bottom, #0059B3, #0066CB);
    font-size: 1.8rem;
    color: #fff;
    padding: 6px 29px;
    margin: 0 0 14px 0;
    position: relative;
    }

.subhead:before{
    content:'';
    position: absolute;
    width: 18px;
    height: 3px;
    background: #fff;
    top: 50%;
    left: 0;
}

.home_box03_inner .left_box{
    float: none;
    width: 100%;
}

.google_map {
    float: none;
    width: 100%;
}

.google_map iframe{
    width: 100%;
}

#top_main {
    background-size:cover;
}

.home_box03_inner01 {
        width: calc(100%　-　30px);
    }

.home_box01_inner figure{
    float: none;
    width: 70%;
    margin: 0 auto;
}

.home_box02_btn{
    max-width: 100%;
    font-size: 1.4rem;
}

.home_box03_btn{
    max-width: 100%;
    font-size: 1.4rem;
}

.contact_box_btn{
    max-width: 100%;
    font-size: 1.4rem;
}

.contact_box .font30{
    font-size: 2.6rem;
}

.contact_box .font24{
    font-size: 2rem;
}

.publicity_box{
    width: 100%;
    background-size: cover;
    padding: 2%;
}

.publicity_box p{
    font-size: 1.8rem;
}

.publicity_box .orange{
    font-size: 2.2rem;
}

.staff_box02_parts{
    width: 100%;
    float: none;
}

.staff_box02_parts .right_box{
    width: 100%;
    float: none;
}

.staff_box02_parts figure{
    width: 70%;
    margin: 0 auto;
    float: none;
}

.staff_box01_inner{
    width: 100%;
}

.staff_box01 .left_box{
    width: 100%;
    float: none;
}

.daihyo{
    background-size: contain;
    margin: 20px 0 10px 0;
}

.staff_box01 figure{
    float: none;
}

.voice_parts{
    width: 100%;
    float: none;
}

.voice_parts .text_box{
    width: 100%;
}

 .flow_parts{
    padding-bottom: 35px;
    margin-bottom: 30px;
    background: url(images/arrow.png) no-repeat center bottom;
}

.flow_parts01{
    padding-bottom: 35px;
    margin-bottom: 30px;
    background: url(images/arrow.png) no-repeat center bottom;
}

 .home_box02_title{
    font-size: 2.4rem;
}

.home_box03_title{
    font-size: 2.4rem;
}

}

/****************************************

          clearfix

*****************************************/
.clearfix:after{
    content: ".";
    display: block;
    height: 0;
    font-size:0;
    clear: both;
    visibility:hidden;
}
.clearfix{
    display: inline-block;
}
/* Hides from IE Mac */
* html .clearfix{
    height: 1%;
}
.clearfix{
    display:block;
}

/* End Hack */
