@charset "utf-8";
/*
Theme Name:　仲山鉄工
*/

/* タブCSSの読み込み
-------------------------------------------------------------- */
@import url("js/ui.tabs.css");


/* 初期設定
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body {
    margin: 0;
    font: 13px/1.6;
    font-family: "メイリオ", Meiryo, sans-serif;
    font-size: 0.8em;
    color: #333;
    background: #fff;
    padding: 0;
}
p{line-height: 1.8em;}
strong{font-weight: bold;}

img{ max-width: 100%; height: auto; }

*, ::after, ::before {box-sizing: border-box; }

/* clearfix
-------------------------------------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}



/* リンク
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#06C;
}

a:hover, a:active{outline: none; text-decoration: underline;}

table.linktable{ width: 100%; }
table.linktable a{
    display: inline-block;
    background: #75ACE2;
    color: #fff;
    font-weight: bold;
    font-size: 1.2em;
    padding: 10px 20px;
    text-align: center;
    border-radius: 2px;
    margin: 5px 0;
}
table.linktable a:hover{background: #06C; text-decoration: none;}



/* 画像装飾
------------------------------------------------------------*/
.frame {
	display: inline-block;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}



/* 汎用　table　クラス
------------------------------------------------------------*/
table.general{border:#ccc 1px solid; margin:20px 0; width: 100%;}
table.general th,table.general td{padding:5px; border:#ccc 1px solid; table-layout: fixed; }
table.general th{ font-weight: bold; }



/* 汎用　クラス
------------------------------------------------------------*/
.border{ border: #CCC 1px solid; box-sizing:border-box; }
.fix{ max-width: 100%; height: auto; }
.pl20{ padding-left: 20px; }
.product_name{
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1rem;
}

/* レイアウト確認用　※消してください
-------------------------------------------------------------- */
.inner{/*background:#FFC;*/}

/*ヘッダー*/
#header{ /*background:#FCC;*/}

/*メインコンテンツ*/
#maincol{	/*background:#FC3;*/}

/*サイド*/
#side{	/*background:#699;*/}

/*フッター*/


/* レイアウト
-------------------------------------------------------------- */
.inner{margin:0 auto; width:min(980px, 100%);}
#header{overflow:hidden;}
#main_top {padding:30px 0;}
#main{padding: 0 0 30px;}
#main_content{width:980px;}
#main_contentt_kaso{margin:0 auto; width:min(710px, 100%);}
#side{float:right; width:230px;}
#footer{clear:both;}
@media screen and (max-width: 979px) {
    .inner{margin:0 auto; width: calc(100% - 40px);}
    #main_content{width:100%;}
    #main_contentt_kaso{float:none; width:100%;}
    #side{float:none; width:100%;}
}
@media screen and (min-width: 980px) {
    #main_contentt_kaso{float:left;}
}

/* ヘッダー
-------------------------------------------------------------- */
#header{border-top:#00ccff 5px solid; padding:10px 20px 20px;}
#header .inner{position:relative; display: flex;flex-direction: row; width: 100%; justify-content: space-between; flex-wrap: nowrap; align-items: center;}
#logoarea {width: calc(100% - 50px);}
#he_info{position:absolute; right:30px; top:0;}

/*　インターシップ用　※表示をなくしたら消してください　*/
#top_logo{padding-top: 10px;}
#top_logo .d-flex{flex-direction: column;}

.d-flex {display: -ms-flexbox!important; display: flex!important; }
.align-items-center {align-items: center!important;}

/*アニバーサリー*/
.d-inline-block{display: inline-block; }
.top_logoann{width: 120px; height: auto; padding-left: 20px; }
#top_logo h1 {font-side: 10px;}

@media screen and (min-width: 980px) {
    #header{border-top:#00ccff 5px solid; padding:10px 0 20px;}
    .inner {display: block;}
    #logoarea { width: 100% ; max-width: 1000px; margin-inline: auto;}
    #top_logo {padding-top: 10px;}
    #top_logo .d-flex {flex-direction: row; align-items: center;}
    #top_logo h1 {padding-left: 20px; font-side: 13px; padding-left: 20px;}
}

/* フッター
-------------------------------------------------------------- */
#footer{background:#e5e3cf;}

#pagetop {position: fixed; bottom: 1%; right: 1%; z-index: 9999;	font-size: 77%;}

#footer_link{background:#f5f7f9; padding:20px 0;}
#footer_link ul {width: 100%;}
#footer_link ul li{padding:10px 0;}
#footer_link a{padding:0 0 0 10px; background:url(images/arr01.png) no-repeat 0 50%; }
#footer_link .inner.flex {flex-direction: column;}
#footer_info{border-top:#CCC 1px solid; padding:20px 0; background:#afc0d1;}

#copyright{background:#002e73; color:#FFF; text-align:center; margin-bottom:0;}

@media screen and (min-width: 980px) {
    #footer_link ul {width: auto;}
    #footer_link ul li{padding:1px 0;}
    #footer_link ul {float:left;}
    #footer_link ul.l2{padding:0 90px 0;}
    #footer_info{padding:20px 0;}
    #footer_link .inner.flex {flex-direction: row;}
}

/* ・Gナビ
-------------------------------------------------------------- */
.gnavi-logowrap {display: none;}
/*画像置き換え*/
@media screen and (min-width: 990px) {
    .gnavi ul li a.gnavi_bg {
        background: url(images/gnavi.gif) top left no-repeat;
        display: block;
        text-indent: -9999px;
        height: 50px;
        cursor:pointer;
        float:left;
        zoom:1;
    }

.gnavi ul li a#top{background-position: 0 0; width:163px;}
.gnavi ul li a#about{background-position: -163px 0; width:163px;}
.gnavi ul li a#navi_important{background-position: -326px 0; width:165px;}
.gnavi ul li a#product{background-position: -491px 0; width:163px;}
.gnavi ul li a#customer{background-position: -654px 0; width:163px;}
.gnavi ul li a#contact{background-position: -817px 0; width:163px;}


.gnavi ul li a#top:hover {background-position: 0 -50px;}
.gnavi ul li a#about:hover {background-position: -163px -50px;}
.gnavi ul li a#navi_important:hover {background-position: -326px -50px;}
.gnavi ul li a#product:hover {background-position: -491px -50px;}
.gnavi ul li a#customer:hover {background-position: -654px -50px;}
.gnavi ul li a#contact:hover {background-position: -817px -50px;}

.gnavi ul li a#top.current {background-position: 0 -50px;}
.gnavi ul li a#about.current {background-position: -163px -50px;}
.gnavi ul li a#navi_important.current {background-position: -326px -50px;}
.gnavi ul li a#product.current {background-position: -491px -50px;}
.gnavi ul li a#customer.current{background-position: -654px -50px;}
.gnavi ul li a#contact.current {background-position: -817px -50px;}

.hamburger-menu {
        display: none;
    }
    #he_info {
        display: block;
    }
    .nav-sp-only {
        display: none;
    }
    .nav-pc-only {
        display: block;
    }
}
@media screen and (max-width: 989px) {
    .nav-sp-only {
        display: block;
    }
    #he_info {
        display: none;
    }
    .nav-sp-only {
        display: block;
    }
    .nav-pc-only {
        display: none !important;
    }
    .gnavi-logowrap {
        display: block;
        width: 100%;
        background: #0993E3;
        z-index: 10;
    }
    a.gnavi-logo-link {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: flex-end;
        padding: 10px 20px;
        width: 100%;
        height:auto;
        color: #FFF;
    }
    .gnavi-logo-image {
        display:block;
        padding:5px 3px 0 8px;
        background: #FFF;
    }
    .gnavi-logo-image img {
        max-width: 140px;
    }
    .gnavi-logo-text {
        margin-top: 5px;
        line-height: 1.8;
    }
    .hamburger-menu {
        display: block;
        position: relative;
        top: -10px;
        right: -10px;
        margin: 0;
        width: 50px;
        height: 50px;
        border: none;
        background: transparent;
        appearance: none;
        padding: 0;
        cursor: pointer;
    }
    .hamburger-menu.close {
        height: 40px;
        top: -20px;
    }
    .hamburger-menu__bar {
        display: inline-block;
        width: 44%;
        height: 3px;
        background: #0893e3;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        transition: .5s;
        z-index:11;
        }
        .hamburger-menu__bar:first-child {
            top: 16px;
        }
        .hamburger-menu__bar:nth-child(2) {
            top: 24px;
        }
        .hamburger-menu__bar:last-child {
            top: 32px;
        }
        .close .hamburger-menu__bar {
            top: 50%;
        }
        .close .hamburger-menu__bar:first-child {
            transform: translateX(-50%) translateY(-50%) rotate(45deg);
            background: #FFF;
        }
        .close .hamburger-menu__bar:last-child {
            transform: translateX(-50%) translateY(-50%) rotate(-45deg);
            background: #FFF;
        }
        .close .hamburger-menu__bar:nth-child(2) {
            display: none;
        }

    .gnavi {
        overflow: hidden;
        position: fixed;
        top: 0;
        right: -100%;
        width: 0;
        height: 100dvh;
        opacity: 0;
        z-index: -9999;
        transition: .2s all;
        background: #0993E3;
    }
    .active .gnavi {
        z-index: 10;
        width: 90%;
        right: 0;
        opacity: 1;
        transition: .2s all;
        overflow: auto;
    }
    .gnavi ul {
        width: 100%;
        list-style: none;
        margin: 0 ;
    }
    .gnavi ul > li {
        width: 100%;
        border-top: #7AC3ED 1px solid;
    }
    .gnavi ul > li:last-child {
        border-bottom: #7AC3ED 1px solid;
    }
    .gnavi li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 30px;
        width: 100%;
        font-weight: 300;
        text-decoration: none;
        transition: .5s;
        color: #FFF;
        text-align: left;
        font-weight: bold;
        font-size: 16px;
    }
    .gnavi li a::after {
        content: "";
        display: inline-block;
        height: 6px;
        width: 6px;
        border-right: #fff 2px solid;
        border-bottom: #fff 2px solid;
        transform: translateX(-25%) rotate(-45deg);
    }
    .gnavi ol li a {
        padding: 0 30px 15px;
        text-align: left;
    }
    .gnavi-child-item {position: relative; padding: 0 0 0 20px;}
    .gnavi-child-item::before {
        content: "";
        position: absolute;
        top: 12px;
        left: 35px;
        padding: 0;
        display: block;
        height: 1px;
        width: 10px;
        background: #FFF;
    }
    .gnavi_area {
        width: 100%;
        position: relative;
    }
    .scroll-prevent {
        position: fixed;
        z-index: -1;
        width: 100%;
        height: 100%;
    }
}

/* 投稿
-------------------------------------------------------------- */
table.post{
width: 100%;
border-collapse: collapse;
}
table.post th{
padding: 6px;
text-align: center;
vertical-align: middle;
color: #333;
background-color: #eee;
border: 1px solid #b9b9b9;
}
table.post td{
padding: 6px;
background-color: #fff;
border: 1px solid #b9b9b9;
text-align: center;
vertical-align: middle;
}
.single_header_subtaitle {
    margin: 20px auto;
    padding: 18px 20px;
    height: auto;
    width: 100%;
}
.single_header_subtaitle.kan{
    background-color: #424242;
}
.single_header_subtaitle.mod{
    background-color: #084F8A;
}
.single_header_subtaitle.sp{
    background-color: #409554;
}
.single_header_subtaitle_title {
    padding: 0!important;
    font-size: 0.9rem!important;
    font-weight: bold!important;
    color: #FFF!important;
    letter-spacing: 2px;
    line-height: 1;
}
.single_header_subtaitle_text {
    margin-top: 10px;
    color: #FFF;
}
@media screen and (max-width: 781px) {
    .wp-block-image img {
        width: 100%;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column p {
        padding-left: 20px !important;
    }
    .point_area .wp-block-columns {
        padding-bottom: 20px;
    }
}

/* TOP
-------------------------------------------------------------- */
/*メインimg*/
#main_img{overflow: hidden;}
#main_img #rotate {position: relative; width: 100%;}
.hover_nav:hover{
    cursor: pointer;
    opacity: .7;
    -webkit-opacity: .7;
    -moz-opacity: .7;
    filter: alpha(opacity=70);  /* IE lt 8 */
    -ms-filter: "alpha(opacity=70)"; /* IE 8 */
    -webkit-transition: opacity .5s ease-out;
    -moz-transition: opacity .5s ease-out;
    -ms-transition: opacity .5s ease-out;
    transition: opacity .5s ease-out;
}
@media screen and (min-width: 768px) {
    #main_img{
        background:url(images/main_img_bk.png) repeat-x;
        padding-top:5px;
    }
    #main_img #rotate {
        width: 100%;
    }
    #main_img #rotate .fragment-link{
        position: absolute;
        left:0;
        top: 0;
        display: block;
        width: 100%;
        height: auto;
    }
    #main_img #rotate .fragment-image-btn{
        position: absolute;
        left:20px;
        top: min(180px, 18.36vw);
    }
    #main_img #rotate .fragment-link:hover .fragment-image-btn {opacity: .6; transition: .5s all;}
}
@media screen and (min-width: 980px) {
    #main_img #rotate .fragment-image-btn{
        top: 180px;
    }
}
/*メインコンテンツ*/
#main_contant{width:980px;}
#rotate picture {
    display: block;
    width: 100%;
    height: auto;
}
#main_img a,
#main_img a:hover {
    color: #000000;
    text-decoration: none;
    display: block;
    width: 100%;
}

@media screen and (max-width: 979px) {
    #main_contant{width:100%;}
}
@media screen and (max-width: 767px) {
    #rotate picture {position: static;}

    #fragment-1 a .fragment-title{color: #1a8ed3}
    #fragment-2 a .fragment-title{color: #278a00}
    #fragment-3 a .fragment-title{color: #d86060}
    #fragment-4 a .fragment-title{color: #0056d7}

    .fragment-image {
        display: block;
        width: 100%;
        height: auto;
        object-fit: cover;
        aspect-ratio: 600 / 336;
    }
    .fragment-title,
    .fragment-text {display: block; font-size: 3.46vw;padding: 0 20px;}
    .fragment-image-btn {padding:0 20px; width: 100%;}
}
@media screen and (min-width: 768px) {
    .fragment-image {position: absolute; opacity:1;}
    .fragment-title, .fragment-text {display: none;}
}

/*製品紹介*/
.concrete-cutter .section-header {background-color: #48B4CF;}
.electric-concrete-cutter .section-header {background-color: #B1A910;}
.top_product_box {display:flex; flex-wrap:wrap;row-gap: 30px;column-gap: 10px;}
.top_product_box ul li{float:left; margin-bottom:0px; margin-left:6px;}
.top_product_box ul li.l2{clear:both;}
.top_product_box ul li.col2{/*margin-left:10px;*/}
.top_product_box ul li img{ border:#CCC 1px solid;}
.top_product_box a:hover ,
.top_product_box a:active {text-decoration: none;}
.top_product_item {width: 100%;}
.top_product_item.small {width: calc(50% - 5px);}
.top_product_link {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 0;
    width: 100%;
    height: auto;
}
.top_product_item_header {display: flex; flex-direction: column; gap: 16px; width: auto; align-items: flex-start; word-}
.top_product_item_header_title {position: relative; height: 24px; letter-spacing: .3rem; color: #123b7b; font-weight: bold; font-size: 24px;word-break: keep-all;}
.top_product_item_header_text {display: inline-block; padding: 5px; height: 24px; border: #515151 1px solid; color: #515151; font-size: 14px; line-height: 1;}
.top_product_image {
    display: block;
    margin: 0 auto;
    width: min(100%, 280px);
    height: auto;
    aspect-ratio: 1/1;
    object-fit: cover;
}
.small .top_product_image {width: min(100%, 140px);}
.top_product_mainview figcaption .top_product_summary,
.top_product_mainview figcaption .top_product_summary li {
    color: #515151;
    line-height: 1.6;
}
.top_product_mainview figcaption .top_product_summary li::before {content: "●"; padding-right: 5px;}
.top_product_logobox {position: absolute; top: 0; right: 0; display: flex; align-items: center; gap: 20px; width:33%;}
.top_product_logo {display: block; height: auto; width: 100%;}
.top_product_tag {background-color: #48B4CF; color: #FFF; font-weight: bold; width: auto; text-align: center; padding:5px 10px; line-height: 1;}
.top_product_tag.bule {background-color: #31a6cd;}
.top_product_tag.yellow {background-color: #e6de53; color:#515151;}
.top_product_tag.light-green {background-color: #bce0c4; color:#515151;}

@media screen and (min-width: 768px) {
    .top_product_box {gap: 10px;}
    .top_product_item { border: #CCC 1px solid; box-sizing:border-box;}
    .top_product_link {flex-direction: column; justify-content: center;align-items: flex-start; min-height: 280px; width:100%; gap: 10px;padding-right: 20px;}
    .top_product_item_header {flex-direction: row; margin-left: 300px;align-items: flex-start; height: 24px; width: calc(100% - 280px - 20px);}
    .top_product_item_header_title {display: flex; flex-direction: row; align-items: center;}
    .top_product_item_header_title::before {content: url(images/arr01.png); padding: 0 8px 0 0;line-height: 18px;        height: 100%;
        line-height: 12px;display: block;}
    .top_product_mainview figcaption .top_product_summary {display: flex; flex-direction: column; margin-left: calc(280px + 20px);}
    .top_product_image {width: 280px; position: absolute; top: 0; left: 0;}
    .small .top_product_link {justify-content: flex-start;min-height: 180px; padding-top:20px;}
    .small .top_product_item_header ,.small .top_product_mainview figcaption .top_product_summary {margin-left: 200px;}
    .small .top_product_image {width: min(100%, 180px);}
    .top_product_logobox {top: auto; bottom:10px; right: 20px; width:40%;}
    .top_product_link:hover { opacity: .7}
    .top_product_link:hover img { z-index:-1}
    .top_product_logo {height: 100px; width: auto;}
    .top_product_logo.small {height: 70px;}
}
@media screen and (min-width: 980px) {
    .small .top_product_link {min-height: 240px;}
    .small .top_product_item_header ,.small .top_product_mainview figcaption .top_product_summary {margin-left: calc(240px + 10px);}
    .small .top_product_image {width: min(100%, 240px);}
}

/*トピック*/
h1#top_performance_ttl{background:url(images/topics_ttl.gif) no-repeat; text-align:right; height:60px; padding-top:20px; margin-top:20px;}
h1#top_performance_ttl a{background:url(images/arr01.png) no-repeat 0 50%; display:inline-block; padding-left:15px;}

#top_topics ul { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 30px; }
#top_topics ul li{ margin-bottom:20px; width: calc(50% - 15px); }
@media screen and (min-width: 980px) {
    #top_topics ul {gap: 38px;}
    #top_topics ul li{width: 22%; }
}
/*.top_topics_box{width:440px; padding:0;}*/
/*.top_topics_box.right{padding-left:70px;}*/

/*.top_topics_box img{float:left; width:190px;}
.top_topicstxt{float:right; width:230px;}*/
.top_topicstxt h2{font-weight:bold; padding:1rem 0 .8rem; font-size: .9rem; }


/*サイドバー*/
#blog {z-index:999;}
#blog h1{height:55px;}
#blog #blog_content{background:url(images/news_waku.gif) no-repeat bottom ; padding:20px;}
#blog #blog_content dt{font-family: 'Special Elite', cursive,"メイリオ", Meiryo, sans-serif; padding-bottom:10px;}
#blog #blog_content dd{border-bottom:#999 1px dotted; margin-bottom:30px;}
#blog #blog_content dd h2{font-weight:bold; padding-bottom:10px;}
#blog #blog_content dd p{padding-bottom:20px;}
#blog #blog_content dd.last{ border:none; margin-bottom:20px;}
#blog #blog_content dd.last p{padding-bottom:0;}



/* 下層ページ　共通設定
-------------------------------------------------------------- */
/*パンくずエリア*/
#pan{position: relative; background-color:#eeeff0; padding:27px 0 30px;}
#pan::before{content: ""; position: absolute; top:0; background:url(images/ttl_bk_top.gif) repeat-x 0 0; display:block; width:100%; height: 4px;}
#pan::after{content: ""; position: absolute; bottom:0; background:url(images/ttl_bk_bottom.gif) repeat-x 0 0; display:block; width:100%; height: 10px;}
#pan .inner{display: flex; justify-content: space-between; align-items: center; width: min(980px, calc(100% - 40px)); margin: 0 auto;}
.ttl_area{width:100%; text-align:left; font-size:1.2em; font-weight:bold;}
.pan_area{width:50%; text-align:right; font-size:0.8em;}
@media screen and (max-width: 979px) {
    .pan_area{display: none;}
}
@media screen and (min-width: 980px) {
    .ttl_area{width:50%;}
}
/*パラグラフ*/
.section{ padding:30px 0; margin:0;}
.section h1{color:#00ccff; font-weight:bold; font-size:1.2em; padding:20px 0 20px;}



/*=========================================
サイドバー
=========================================*/
#pro_local_navi dd {
    position: relative;
}
#pro_local_navi dd span{
    position: absolute;
    display: inline-block;
    top: 20%;
    left: 0;
    color: #fff;
    padding: 2px 10px;
    background: #b70000;
}
@media screen and (min-width: 980px) {
    #side{background:url(images/side_line.jpg) no-repeat bottom left;}
}
#login{background:url(images/side_btn_login_bk.gif) no-repeat 0 0; width:230px; height:240px; padding-top:145px; text-align:center;}
#login a.entry{background:url(images/side_btn_login_arr.gif) no-repeat 0 50%; padding-left:15px;}
@media screen and (max-width: 979px) {
    #main > .inner {overflow: hidden; position: relative; padding-top: 120px;}
    #main > .inner:has(aside.pc-only-block) {padding-top: 0;}
    aside{
        position: absolute;
        top: 0;
        display: block;
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }
    #side,#side ul{width: 100%;}
}
@media screen and (min-width: 980px) {
    #side{background:url(images/side_line.jpg) no-repeat bottom left; padding-left:5px;}
}


#local_navi{font-weight:bold; font-size:0.9em;
	/* border-left:#849abb 1px solid; border-right:#849abb 1px solid;*/
	/*box-shadow: 0 0 3px rgba(0, 0, 0, .4);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, .4);
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .4);*/
}
#local_navi ul {display: flex; flex-wrap: wrap; margin-top: 10px; border-top: #f5f5f5 1px solid;}
#local_navi ul li {width: 50%;}
#local_navi ul li:nth-child(odd) {border-right: #f5f5f5 1px solid}
#local_navi ul li a{ display:flex; align-items: center; justify-content: center; padding:20px 5px; border-bottom:#f5f5f5 1px solid; gap: 8px; font-size: 1.2em;}
#local_navi ul li a::before{ content: url(images/arr_side.png); display:inline-block; transform:rotate(90deg);transform-origin: center center;}
#local_navi ul li a:hover{background: #849abb;	color:#FFF; text-decoration:none; text-shadow: 1px 1px 3px #667d9f;}
#local_navi ul li.l a{border-right: #f5f5f5 1px solid;}
@media screen and (min-width: 980px) {
    #local_navi { border-bottom:#849abb 1px solid;}
    #local_navi ul li{width: 100%;}
    #local_navi ul li.l a{border-right: #849abb 1px solid;}
    #local_navi ul {border-top: none; margin-top: 0;}
    #local_navi ul li.l a{border:none;}
    #local_navi ul li a{ display:block; padding:20px; border-bottom:#849abb 1px solid; background:url(images/arr_side.png) no-repeat 8px 50%; text-align: left; font-size: 1em;}
    #local_navi ul li a::before{content: none;}
    #local_navi ul li:nth-child(odd) {border-right: none;}
    #local_navi ul li.cr a{background:url(images/arr_side_cr.png) no-repeat 8px 50% /*#849abb*/ ; color:#FFF; text-shadow: 1px 1px 3px #667d9f;  }
    #local_navi ul li.cr {
        background: url(images/side_bk.jpg) no-repeat 0 0 !important;
    }
}



/*テキスト*/
#main_contentt_kaso p{font-size:1.15em; padding:10px 0 10px;}


/* 私たちについて
-------------------------------------------------------------- */
table#gaiyou {border-collapse:  collapse; border: solid 1px #7c7c7c; }
table#gaiyou th{width:100px; font-weight:bold; color:#666; background: #f5f5f5;}
table#gaiyou th , table#gaiyou td{padding:5px 15px; border: solid 1px #d2d2d2;}

table#enkaku th{width:150px; font-weight:bold; color:#666; }
table#enkaku th,table#enkaku td{padding:5px 0; border-bottom:#DFDFDF 1px dashed;}



/* 私たちが大切にしているもの
-------------------------------------------------------------- */
#important{ margin:30px 0; border:#DFDFDF 6px solid; padding:10px; width:680px;}
.important_reasons {display: flex; flex-wrap: wrap; flex-direction: row;align-items: flex-start;}
.important_reasons:has(+ .important_reasons) {margin-bottom:30px;}
.important_intro_title,
.important_intro_summary{font-family: 'Noto Serif JP', serif;}
.important_intro_title{font-size: 28px;}
.important_intro_summary{font-size: 18px;}
.important_intro_image {width: 100%; height:auto;}
.important_intro_wrap{width:100%; flex-direction: column; align-content: space-between;align-items: flex-end; font-size: 13px!important;}
.important_intro_text {font-weight:300;}
.important_intro_icon {width:min(158px, 30%); aspect-ratio: 158 / 111; object-fit: contain;}
@media screen and (min-width: 768px) {
    .important_reasons:has(+ .important_reasons) {margin-bottom:60px;}
    .important_intro_textwrap {width:calc(100% - 178px);}
    .important_intro_wrap {font-size: 18px; font-weight: bold; flex-direction: row;align-items: flex-start;justify-content: space-between;}
}

.important_reason_header{position: relative; padding-left: 50px; width: 100%; margin-bottom: 10px;}
.important_reason_title{display: flex; width: 100%; color: #093577; font-weight: bold; letter-spacing: .2rem; font-size: 21px; line-height: 30px;}
.important_reason_title_english {display: dlock;font-size: 12px; line-height:20px; color: #D0D0D0;}
.important_reason_header {display:flex; flex-direction: row; flex-wrap: wrap;}
.important_reason_header::before {
    position:absolute;
    top: 5px;
    left: 0;
    display: block;
    width: 40px;
    height:40px;
    background-color: #093577;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    font-size: 21px;
    line-height: 40px;
}
.important_reason_header +  {content:"1";}
.reason01 .important_reason_header::before {content:"1";}
.reason02 .important_reason_header::before {content:"2";}
.reason03 .important_reason_header::before {content:"3";}
.important_reason_text { margin: 0 0 10px; padding: 0;}
.reason01 .important_reason_text,
.important_reason_image { width: 100%;}
.box-70  { width: 100%; flex: 1 1 auto;}
@media screen and (min-width: 768px) {
    .box-70  { width: calc(70% - 20px); flex: 1 1 auto;}
    .box-30.important_reason_image {width: min(30%, 200px);object-fit: cover;}
    .box-small.important_reason_text,
    .box-small.important_reason_image { width: calc(50% - 10px);}
    .box-small.important_reason_image { margin-left: 20px;}
    .important_reason_header{padding-left: 80px;}
    .important_reason_header{margin-bottom: 30px;}
    .important_reason_header::before {
        top: 0;
        width: 50px;
        height:50px;
        font-size: 24px;
        line-height: 50px;
    }
}

/* 製品紹介（一覧）
-------------------------------------------------------------- */
.product .section{border:none !important;}
.product_box {border-bottom:#CCC 1px dotted; padding:10px 0;}
.product_box img{display: block; margin: 0 auto; width:310px;}
.product_box .info{margin: 0 auto; width:min(370px, 100%);}
.product_box .info img{ width: 369px; height: 17px;}
.product_box h2{font-size:1.3em; font-weight:bold; margin-top:20px;}

/*個別*/
.cc .product_box h2 a{background:url(images/cc_arr.gif) no-repeat 0 50%; padding-left:15px; color:#31b7d9;}
.el .product_box h2 a{background:url(images/el_arr.gif) no-repeat 0 50%; padding-left:15px; color:#c7bd00;}
.sp .product_box h2 a{background:url(images/sp_arr.gif) no-repeat 0 50%; padding-left:15px; color:#519e64;}
.mod .product_box h2 a{background:url(images/mod_arr.gif) no-repeat 0 50%; padding-left:15px; color:#1f5f95;}
.kan .product_box h2 a{background:url(images/kan_arr.gif) no-repeat 0 50%; padding-left:15px; color:#434343;}
.product_box .info input {display: none;}
@media screen and (max-width: 767px) {
    .product_box .info {
        position: relative;
        overflow: hidden;
        height: 160px;
    }

    .label-readmore {
        text-align: center;
        width: 100%;
        height: 200px;
        bottom: 0;
        left: 0;
        position: absolute;
        z-index: 1;
        cursor: pointer;
        background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 40%);
    }
    .label-readmore:after {
        content:' 続きをよむ';
        z-index: 2;
        width: 100%;
        max-width: 120px;
        padding: 10px;
        color: #ffffff;
        background-color: #31B7D9;
        border-radius: 30px;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, 0);
    }
    .product_box .info:has(input:checked + .label-readmore) {
        height: auto;
        background-image: none;
        padding-bottom: 60px;
    }
    .product_box .info input:checked + .label-readmore {
        bottom: 0;
        height: 40px;
        background-image: none;
    }
    .product_box .info input:checked + .label-readmore:after {
        content: ' 閉じる';
        color: #31B7D9;
        background-color: #FFF;
        border: #31B7D9 1px solid;
    }

}
@media screen and (min-width: 980px) {
    .product_box img{float:left; width:310px; margin: 0;}
    .product_box .info{float:right; width:370px;}
}


/* 製品紹介（single-product.php）
-------------------------------------------------------------- */
.pro_single h1{
	font-size:2.0em;
	font-family:Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}
#color_line{width: 410px; overflow: hidden; float: left;}
.pro_single #pdf{text-align:right; padding-top: 10px; padding-bottom:50px; float: right; width: 300px; }
.pro_single #body_txt{clear: both;  }

.pro_single h3{background:url(images/pro_icn_h3.gif) no-repeat 0 50% ; padding-left:25px; font-size:1.6em; font-weight:bold; margin:0 0 20px;}
.pro_single h4{font-size:1.3em; font-weight:bold; color:#00ccff; padding: 20px 0 10px}

.pro_single #size{ padding:0 15px 0; }
.pro_single #size img{padding:20px 0;}

.product-single_list li{
    padding-left: 15px;
    font-size: 1.6em;
    font-weight: bold;
    margin: 0 0 20px;
    border-left: #2196F3 5px solid;
}

.product-single .d-grid{ display: grid; align-items: center; grid-template-columns: 200px 0 1fr; gap:0; margin-bottom: 15px; background: #e8f6ff;}
.product-single .d-grid h4{ padding: 0; }
.product-single .d-grid > div{ padding: 15px; }

/*仕様table*/
.wp-block-table{
    width: 100%;
    border-collapse: collapse;
}
.wp-block-table th{
    /* width: 25%; */
    min-width: 9em;
    padding: 6px;
    text-align: left;
    vertical-align: top;
    color: #333;
    background-color: #eee;
    border: 1px solid #b9b9b9;
    word-break: keep-all;
}
@media screen and (max-width: 767px) {
    .wp-block-table th{
        width: 25%;
    }
}
.wp-block-table td{
    padding: 6px;
    background-color: #fff;
    border: 1px solid #b9b9b9;
}
.wp-block-table th ,.wp-block-table td{
    font-size: 16px;
    word-break: keep-all;
}
table th{
    word-break: keep-all;
}

.stan {width: 100%; height: auto;}
.stan th{
    /* width: 25%; */
    padding: 6px;
    text-align: left;
    vertical-align: top;
    color: #333;
    background-color: #eee;
    border: 1px solid #b9b9b9;
    word-break: keep-all;
    font-size: 13px;
}
.stan td{
    padding: 6px;
    background-color: #fff;
    border: 1px solid #b9b9b9;
    word-break: keep-all;
    font-size: 13px;
}
.stan td a{ display: inline-block; background: #75ACE2; color: #fff; font-weight: bold; font-size: 1.2em; padding: 10px 0 ; width: 70px; text-align: center; border-radius: 2px; margin:5px 0;}
.stan td a:hover{background: #06C; text-decoration: none;}
.scroll-x {overflow-x: scroll;}

/*PDFリンク*/
.stan.link th , .stan.link td{ border: none; }
.stan.link a{ width: 100%; }

/*製品紹介のピックアップ*/
.point_area .wp-block-columns{
    margin-bottom: 20px;
    background: #e8f6ff;
}
.point_area .wp-block-columns figure{
    margin-bottom: 0;
}

@media screen and (max-width: 979px) {
    .stan th , .stan td{padding-right: 1em;}
}


/* 仕様比較（page-comparison.php）
-------------------------------------------------------------- */
table.compar{margin: 0 auto; width: min(980px, 100%);}
table.compar td.ph{vertical-align: middle; text-align: center;}


/* 低騒音型建設機械指定状況
-------------------------------------------------------------- */
.certificate_table tr th:nth-of-type(4),
.certificate_table tr th:last-of-type{
    min-width: unset;
}
.certificate_table tr th:last-of-type,
.certificate_table tr td:last-of-type{
    text-align: center;
}


/* パーツリスト（WordPress固定ページに投稿）
-------------------------------------------------------------- */
table.parts-list{border-top:#ccc 1px solid; margin:20px 0; width: min(710px, 100%);}
table.parts-list th{background-color: #EAF2F2;}
table.parts-list th,table.parts-list td{padding:10px; border-bottom:#ccc 1px solid; table-layout: fixed; vertical-align: middle; }
table.parts-list.trouble_table th,table.parts-list.trouble_table td{padding:0 10px;}
/*table.parts-list a{
    display:block;
    background: #ddd;
    color: #0f0f0f;
    padding: 15px;
    position: relative;
    text-decoration:none;
    cursor: pointer;
}
table.parts-list a::after{
    border-left: 10px solid #9E9E9E;
    border-bottom: transparent 7px solid;
    border-top: transparent 7px solid;
    content: "";
    margin: 0 0 0 10px;
    height: 0px;
    right: 19px;
    position: absolute;
    top: 10px;
    width: 0px;
    cursor: pointer;
}
table.parts-list a:hover {
    background: #bbb;
    color: #fff;
    cursor: pointer;
}*/

/* お問い合わせ（WordPress固定ページに投稿）
-------------------------------------------------------------- */
table.contact{margin: 0 auto; width: 100%;}
table.contact th{background: #e9e9e9;}
table.contact th, table.contact td{padding: 15px; vertical-align: middle;}
table.contact span.hissu{display: inline-block; padding-left: 10px; font-size: 12px; color: #f00;}
label{display: block; padding: 5px 0;}
select{font-size: 14px; padding:5px; height: 30px; line-height: 20px;}
input,textarea{
	font-size: 13px;
	line-height: 25px;
	padding:8px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	border: #ccc 1px solid;;
}
input:focus ,textarea:focus{
	border:solid 1px #99bdf7;
}

select, input, textarea, button {
     vertical-align:middle;
     position:relative;
     margin: 0 4px 2px 0;
     *margin-right:3px;
     top:-1px;
}
input {
     /*height: 16px;*/
     line-height: 16px;
}

button, input[type="button"] {
     overflow:visible;
     height:22px;
     padding:0 3px;
}

input[type="checkbox"]{
     border:none;
     top:-2px;
     top:0\9;
     margin-right:2px;
     margin-right: 0\9;
}

#sub{text-align: center;}
#sub input{
	padding:10px 35px;
	border:solid 1px #99bdf7;
	background: #4facf1;
	color: #fff;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
#sub input:focus,#sub input:hover{background: #0066CC; cursor: pointer;}
@media screen and (min-width: 980px){
    table.contact{margin: 0 auto; width:710px;}
}
@media screen and (max-width: 978px){
    table.contact body {display: block;width: 100%;}
    table.contact tr{display: flex;flex-direction: column;width: 100%;}
    table.contact th, table.contact td {width: 100%;}
    input, textarea {width: 100%;}
    .wpcf7-checkbox span {display: block; width: 100%;}
    .wpcf7-checkbox .wpcf7-list-item {margin: 0;}
    label {
        display: flex;
        padding: 5px 0;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
        width: 100%;
    }
    input[type="checkbox"] {
        width: 15px;
    }
}

/* 施工実績・ニュース共通（single.php）
-------------------------------------------------------------- */
.performance_single p.date{border-top:#E8E8E8 1px solid; font-size:0.8em !important;}



/* ----------------------------------------------------

    汎用CSS

---------------------------------------------------- */
.bor{ border: #ccc 1px solid; padding:10px 20px; }

@media screen and (min-width: 980px){
    .sp-only-block {
        display: none;
    }
    .sp-only-flex {
        display: none;
    }
    .pc-only-block {
        display: block;
    }
    .pc-only-flex {
        display: flex;
    }
}
@media screen and (max-width: 979px){
    .sp-only-block {
        display: block;
    }
    .sp-only-flex {
        display: flex;
    }
    .pc-only-block {
        display: none;
    }
    .pc-only-flex {
        display: none;
    }
}
.section-header {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
}
.section-header-button {
    position: relative;
    color: #FFF;
    line-height: 1;
}
.section-header-button::after {
    content: ">";
    color: #FFF;
    padding: 0 5px;
}
.button-readmore-wrap {
    width: 100%;
    text-align: center;
}
.button-readmore-link {
    display: flex;
    width: auto;
    align-items: center;
    justify-content: center;
}
.button-readmore-link::before {
    content: url(images/arr01.png);
    display: inline-block;
    padding: 0 8px 4px 0;
}
.button_to_external-site {
    display: flex;
    align-items: center;
    justify-content: center;
    border: #D8D8D8 2px solid;
    padding: 5px 10px;
    align-items: center;
    justify-content: center;
    color: #515151;
    height: 35px;
    width: auto;
    word-break: break-all;
    transition: .2 all;
}
.button_to_external-site::before {
    content: url(images/arr01.png);
    display: inline-block;
    padding: 0 8px 4px 0;
}
a.button_to_external-site:hover {
    text-decoration: none;
    opacity: .7;
    transition: .2 all;
}

@media screen and (max-width: 768px){
    .button_to_external-site {
        height: 70px;
        line-height: 1.6;
    }
}

.flex {display: flex;}
.flex-row {flex-direction: row;}
.flex-colmun {flex-direction: colmun;}
.flex-nowrap {flex-wrap: nowrap;}
.flex-wrap {flex-wrap: wrap;}


/* ----------------------------------------------------

    text

---------------------------------------------------- */


/* <div class="js-scrollable entry-container">
    <h2>動物について</h2>
    <table class="dataframe animal-table">
        <thead> */

.js-scrollable table{
    width: 1300px;
    border-collapse: collapse;
}

.js-scrollable td,
.js-scrollable th {
    white-space: wrap;
    background-color: transparent;
    width: 250px;
}
.js-scrollable tr td:first-of-type{
    width: 120px;
}

.js-scrollable table {
    margin-bottom: 30px;
}
.js-scrollable {
    margin-bottom: 30px;
}

.syuuryo{
    margin-left: calc(240px + 10px);
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: #b70000;
}
.content-title {
    border-top: #6682AB 3px solid;
    padding: 20px 0;
    font-weight: bold;
    font-size: 18px;
}
.section-header-title {
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
}
.ac {text-align: center !important;}
.ar {text-align: right !important;}
.al {text-align: left !important;}

.bold{font-weight:bold !important;}

.font10{font-size:10px !important;}
.font11{font-size:11px !important;}
.font12{font-size:12px !important;}
.font13{font-size:13px !important;}
.font14{font-size:14px !important;}
.font15{font-size:15px !important;}
.font16{font-size:16px !important;}
.font17{font-size:17px !important;}
.font18{font-size:18px !important;}
.font19{font-size:19px !important;}
.font20{font-size:20px !important;}
.font21{font-size:21px !important;}
.font22{font-size:22px !important;}
.font23{font-size:23px !important;}
.font24{font-size:24px !important;}

/* ----------------------------------------------------

    margin

---------------------------------------------------- */

.mt00 { margin-top:  0px !important; }
.mt05 { margin-top:  5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }

.mr00 { margin-right:  0px !important; }
.mr05 { margin-right:  5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }

.mb00 { margin-bottom:  0px !important; }
.mb05 { margin-bottom:  5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }

.ml00 { margin-left:  0px !important; }
.ml05 { margin-left:  5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml0 { margin-left: 0 !important; }

/* ----------------------------------------------------

    padding

---------------------------------------------------- */

.pt00 { padding-top:  0px !important; }
.pt05 { padding-top:  5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }

.pr00 { padding-right:  0px !important; }
.pr05 { padding-right:  5px !important; }
.pr07 { padding-right:  7px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }

.pb00 { padding-bottom:  0px !important; }
.pb05 { padding-bottom:  5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }
.pb60 { padding-bottom: 60px !important; }
.pb70 { padding-bottom: 70px !important; }

.pl00 { padding-left:  0px !important; }
.pl05 { padding-left:  5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }


/*---------------------------------------------------------*/
.left5 { margin-left:5px; }
.left10 { margin-left:10px; }
.left15 { margin-left:15px; }
.left20 { margin-left:20px; }
.left25 { margin-left:25px; }
.left30 { margin-left:30px; }
.left40 { margin-left:40px; }
.left60 { margin-left:60px; }
.left70 { margin-left:70px; }
.left80 { margin-left:80px; }
.left90 { margin-left:90px; }
.left100 { margin-left:100px; }
.left150 { margin-left:150px; }
.left600 { margin-left:590px; }
/*---------------------------------------------------------*/
.right5 { margin-right:5px; }
.right10 { margin-right:10px; }
.right15 { margin-right:15px; }
.right20 { margin-right:20px; }
/*---------------------------------------------------------*/
.lineH18 { line-height:18px; }
.lineH20 { line-height:20px; }
.lineH23 { line-height:30px; }
.lineH25 { line-height:25px; }
.lineH28 { line-height:28px; }
.lineH30 { line-height:30px; }


img.fix{ max-width:100%;}
