
/* ==========================================================================
//サイト共通
========================================================================== */
/* 上マージン */
.mt_0{ margin-top: 0 !important; }
.mt_5{ margin-top: 5px !important; }
.mt_10{ margin-top: 10px !important; }
.mt_15{ margin-top: 15px !important; }
.mt_20{ margin-top: 20px !important; }
.mt_25{ margin-top: 25px !important; }
.mt_30{ margin-top: 30px !important; }
.mt_35{ margin-top: 35px !important; }
.mt_40{ margin-top: 40px !important; }
.mt_50{ margin-top: 50px !important; }
.mt_60{ margin-top: 60px !important; }
/* 下マージン */
.mb_0{ margin-bottom: 0 !important; }
.mb_5{ margin-bottom: 5px !important; }
.mb_10{ margin-bottom: 10px !important; }
.mb_15{ margin-bottom: 15px !important; }
.mb_20{ margin-bottom: 20px !important; }
.mb_25{ margin-bottom: 25px !important; }
.mb_30{ margin-bottom: 30px !important; }
.mb_35{ margin-bottom: 35px !important; }
.mb_40{ margin-bottom: 40px !important; }
.mb_50{ margin-bottom: 50px !important; }
.mb_60{ margin-bottom: 60px !important; }
/* 右マージン */
.mr_0{ margin-right: 0 !important; }
.mr_5{ margin-right: 5px !important; }
.mr_10{ margin-right: 10px !important; }
.mr_15{ margin-right: 15px !important; }
.mr_20{ margin-right: 20px !important; }
.mr_25{ margin-right: 25px !important; }
.mr_30{ margin-right: 30px !important; }
.mr_35{ margin-right: 35px !important; }
.mr_40{ margin-right: 40px !important; }
.mr_50{ margin-right: 50px !important; }
.mr_60{ margin-right: 60px !important; }
/* 左マージン */
.ml_0{ margin-left: 0 !important; }
.ml_5{ margin-left: 5px !important; }
.ml_10{ margin-left: 10px !important; }
.ml_15{ margin-left: 15px !important; }
.ml_20{ margin-left: 20px !important; }
.ml_25{ margin-left: 25px !important; }
.ml_30{ margin-left: 30px !important; }
.ml_35{ margin-left: 35px !important; }
.ml_40{ margin-left: 40px !important; }
.ml_50{ margin-left: 50px !important; }
.ml_60{ margin-left: 60px !important; }

/* テーブル */
.free-table01{
   width: 100%;
   border-left: solid 1px #CCC;
   border-top: solid 1px #CCC;
   margin-bottom: 1em;
}
.free-table01 th,
.free-table01 td{
   padding: .75em;
   text-align: center;
   border-right: solid 1px #CCC;
   border-bottom: solid 1px #CCC;
}
.free-table01 th{
   background-color: #f3f2f2;
}
.free-table01.clm3 td{
   width: 33.3333%;
}
.free-table01.clm4 td{
   width: 25%;
}

.small{
   font-size: .85em;
}
.mb50{
   margin-bottom: 50px;
}


/* ==========================================================================
//フリーレイアウト
========================================================================== */
.free-layout .section p{
	margin-bottom: 1.35em;
	line-height: 1.65;
}
.free-layout ul:not(.ul01):not(.ul02):not(.ul_nav){
	list-style: disc !important;
   margin: 1em 0 1em 1.5em;
}
.free-layout ol:not(.ol01){
   list-style: decimal !important;
   margin: 1em 0 1em 1.5em;
}

.free-layout .freespace_wrap {
   margin-bottom: 50px;
}

.inner h3.tit03 {
    background-color: #0003CB;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    padding: 0.5em 1em;
    border-radius: 2px;
    margin-bottom: 20px;
}

/* ==========================================================================
// ヘッダ
========================================================================== */
.header-right-bnr a:nth-child(3) {
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.header-right-bnr a:nth-child(4) {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
}
.low-header{
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
}
@media screen and (max-width: 1025px) {
   .header-right-bnr{
      flex-direction: row;
   }
   .header-right-bnr a{
      margin-left: 5px;
   }
   .header-right-bnr a img{
      height: 20px;
   }
}
@media screen and (max-width: 1020px) {
    .header-right-bnr a:nth-child(2) img {
        height: 20px;
    }
}
@media screen and (max-width: 780px) {
    .sp_nav__bnr {
      padding: 0 40px;
    }
}

/* ==========================================================================
// フッタ
========================================================================== */
.footer {
   padding: 50px 20px;
}
@media screen and (max-width: 780px) {
   .sp_nav__bnr a:nth-child(3) {
      -webkit-transform: translateY(0);
      transform: translateY(0);
   }
   .sp_nav__bnr a:nth-child(4) {
      -webkit-transform: translateY(-6px);
      transform: translateY(-6px);
   }
}

/* ==========================================================================
//トップページ
========================================================================== */
.home .mv ul li .txts {
   top: 40%;
}
.home .mv ul li .txts span {
   font-size: 70px;
}
.home .mv {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.home .mv > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}

.top-nb__news .tits{
   margin-bottom: 3em;
}
.top-ser ul {
   margin-bottom: 3em;
}
.top-pro ul {
   margin-bottom: 5em;
}
@media screen and (max-width: 780px) {
   .home .mv ul li .txts {
      top: auto;
      padding: 0 1em;
   }
   .home .mv ul li .txts span {
      font-size: 27px;
      line-height: 1.2;
   }
}

/* ==========================================================================
//企業情報
========================================================================== */
.page-id-10 .low-header:before {
    content:none;
}
.C2-aisatu-catch .tit {
    max-width: calc(100% - 85px);
    margin: -5% auto 0px;
}
.C2-comp .dl01 {
    margin-bottom: 30px;
    padding: 2em 12%;
}
.C2-comp .dl01 > dl > dt {
   width: 250px;
}
.C2-comp .dl01 span.postal{
   display: inline-table;
   width: 100px;
}
.C2-comp .dl01 span.yakuin{
   display: inline-table;
   width: 100px;
}
.C2-comp .dl01 span.staff{
   display: inline-table;
   width: 175px;
}
.C2-comp .dl01 span.num{
   display: inline-table;
   text-align: right;
   width: 35px;
}
.C2-comp .dl01 span.bank{
   display: inline-table;
   width: 140px;
}

@media screen and (max-width: 780px) {
   .C2-aisatu {
      margin-top: 30px;
   }

   .C2-aisatu-catch .tit {
      max-width: calc(100% - 35px);
      padding: 4em 1em;
   }

   .C2-aisatu-catch .tit h2 {
      font-size: 26px;
   }

   .C2-aisatu-catch .tit p {
      font-size: inherit;
   }

   .C2-comp .dl01 {
      margin-bottom: 0;
      padding: 0;
   }

   .C2-comp .dl01 span.postal {
      display: block;
      width: 100%;
   }
}

/* ==========================================================================
//社会貢献
========================================================================== */
.C2-mokuhyo {
    margin: 60px 0 100px;
}

/* ==========================================================================
//スポーツ支援
========================================================================== */
.C3-social-img {
    margin-top: 3em;
}

/* ==========================================================================
//格闘技
========================================================================== */
.C3-social-img.combat .imgs {
    height: 470px;
}
@media screen and (max-width: 780px) {
   .C3-social-img.combat .imgs {
      height: 200px;
   }
}

/* ==========================================================================
//事業案内
========================================================================== */
.C4-flow-list figure{
   margin-bottom: 1em;
}
@media screen and (max-width: 780px) {
    .C4-flow {
        margin-top: 3em;
    }
   .C4-flow ul li:before {
      background-size: 60% !important;
    }
}

/* ==========================================================================
//保有機械・車両
========================================================================== */
.C5-list ul li h4 {
   text-align: center;
}

/* ==========================================================================
//工事経歴
========================================================================== */
.C6-list-tbl table tbody tr td:nth-child(1) {
    width: 36%;
}
.C6-list-tbl table tbody tr td:nth-child(n+2) {
   width: 16%
}
.C6-list-tbl table tbody tr:nth-child(n+2) td:nth-child(1) {
    height: 105px;
}

/* ==========================================================================
//施工事例（詳細）
========================================================================== */
.C8 .tit02 {
   width: 80%;
   margin: 0 auto 70px;
}
.C8-gallery{
   margin-bottom: 5em;
}
.btn_02 a {
   width: 44%;
}
@media screen and (max-width: 780px) {
   .C8 .tit02 {
      width: 100%;
   }
   .C8-gallery{
      margin-bottom: 3em;
   }
   .btn_02 a {
      width: 100%;
   }
}

/* ==========================================================================
//お知らせ
========================================================================== */
.news-child {
    margin: 70px 0 100px;
}
.news-child-left .btn_01 {
    margin-top: 50px;
}

/* ==========================================================================
//お問い合わせ
========================================================================== */
.contact-policy .C11{
   margin-top: 0;
   padding: 0;
}
.confirm_doc .freespace_wrap,
.complete_doc .freespace_wrap{
   text-align: center;
}
@media screen and (max-width: 780px) {
    .page-template-page-contact .tit02 {
        font-size: 26px;
    }
}
/* ==========================================================================
404ページ
========================================================================== */
.error404 main .section{
   text-align: center;
}


/* ==========================================================================
ワードプレス
========================================================================== */
.user_edit a{
   color: #0003CB;
}
.user_edit p{
   margin-bottom: 1.5em;
   line-height: 2;
}
.user_edit::after,
.user_edit p::after{
   content: " ";
   display: block;
   clear: both;
}
.user_edit ul {
   margin-left: 1.25em;
   margin-bottom: 1.25em;
}
.user_edit ol {
   list-style: decimal;
   margin-left: 1.25em;
   margin-bottom: 1.25em;
}
.user_edit table {
   border-top: solid 1px #DDD;
   border-right: solid 1px #DDD;
   margin: 1.5em 0;
}
.user_edit table td {
   border-bottom: solid 1px #DDD;
   border-left: solid 1px #DDD;
   padding: .65em !important;
}