@charset "utf-8";
/* CSS Document */
*{
    margin: 0 0 0 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
}

body{
    font-size: 15px;
    font-family:"Hiragino Kaku Gothic Pro",Osaka,"メイリオ","ＭＳ Ｐゴシック","MS PGothic",Verdana,Arial,sans-serif;
    color: #0b2d46;
    overflow-y: scroll;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.alt-link{
    cursor: pointer;
}

#top_color {
    width: 100%;
    height: 4px;
    background-color: #1288e0;
}

.brand_color {
    width: 100%;
    height: 2px;
    border-bottom: dashed #87CEFA;
}

/* メニュー 800px以上*/
#menu_wrapper{
    width: 100%;
    height: 80px;
    position: fixed;
    z-index: 100;
    background: rgba(255,255,255,0.8);
    opacity: 0;
}

.fade{
    transition: 2s;
    opacity: 1 !important;
}

#menu{
    max-width:1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
    padding-top: 10px;
    text-align: right;
}

#menu li {
    display: inline-block;
    width: 120px;
    list-style: none;
    border-left: 1px solid #DDD;
}

#menu li:first-child{
    margin-right: 1vw;
    float: left;
    min-width: 240px;
    pointer-events: none;
    border: none;
}

#menu li:last-child{
    border-right: 1px solid #DDD;
}

#menu li a {
    display: block;
    padding: 10px 15px;
    text-align: center;
    text-decoration: none;
    color: #0b2d46;
}

#menu li a span {
    display: block;
    margin: 3px 0 0 0;
    color: #AAA;
    text-transform: uppercase;
    font-size: 80%;
    letter-spacing: 1px;
}

#menu li a:hover {
    background: #eeeeee99;
    transition: all 0.5s;
    cursor: pointer;
}

#menu li.active a strong{
    font-size: 15px;
    color: #1288e0;
}

#menu li.active a span{
    text-decoration: underline;
    color: #1288e0;
}

#menu li #logo{
    margin: 0 0 0;
    padding: 0;
}

#menu li #logo img{
    height:56px;
    margin: 0 0 0;
    padding: 0;
}

/* コンテンツ全体の設定 */
.content-panes p{
    font-size: 20px;
    text-align: left;
}

.list_title_wrapper{
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

.list_title{
    height: 48px;
    font-size: 48px;
    text-align: left;
    color: #0e5990;
}

.list_line{
    display: inline-block;
    width: 265px;
    height: 2px;
}

.page_image_wrapper{
    position:relative;
    overflow:hidden;
    width: 100%;
    min-width: 800px;
    height:200px;
    margin-bottom: 0px;
}

.page_image_wrapper img{
    position:absolute;
    top:50%;
    left:50%;
    width:1920px;
    height:200px;
    margin-left:-960px;
    margin-top:-100px;
}

/* TOP */
/*ブランドイメージ*/
#brand_image{
    position: relative;
    overflow: hidden;
    width: 100%;
    min-width: 800px;
    height: 920px;
    margin-bottom: 0px;
}

#brand_image img{
    position:absolute;
    top:50%;
    left:50%;
    width:1920px;
    height:920px;
    margin-left:-960px;
    margin-top:-460px;
}

#brand_image #brand_text img{
    position:absolute;
    top:50%;
    left:50%;
    width:800px;
    height:600px;
    margin-left:-400px;
    margin-top:-260px;
}

/* about 鳴滝 */
#about_wrapper {
    font-size: 20px;
    max-width: 1920px;
    min-width: 800px;
    margin: 0px auto 0px auto;
    padding: 120px 0 120px 0;
    position: relative;
}

#about{
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#about_text{
    width: 66%;
    font-size: 20px;
    margin: 0 1% 0 1%;
}

#about>img{
    width:33%;
}

#about .brand_color_middle {
    margin: 0 0 20px 0;
    display: block;
    text-align: center;
    width: 100%;
    height: 3px;
}

/* TOP 工事リスト */
#work_list_wrapper{
    padding: 0px 0 90px 0;
    max-width: 1920px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#work-list {
    display: block;
    padding-top: 20px;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
    text-align: left;
}

#work-list li{
    overflow: hidden;
    display: inline-block;
    width: 32%;
    margin-left: 1%;
    list-style: none;
    box-sizing : border-box;
    vertical-align: top;
}

#work-list li:last-child{
    margin-right: 1%;
}

#work-list li a {
    display: block;
    text-align: center;
    text-decoration: none;
}

#work-list li a p{
    height: 24px;
    font-size: 24px;
    font-weight: bold;
    margin: 5px 0 0 2px;
}

#work-list img{
    display: block;
    width: 100%;
    height: auto;
    border-radius: 3em;
}

.work-list_text{
    text-align: left;
    font-size: 20px;
    margin: 10px 0 5px 2px;
}

/* TOP 採用・問い合わせリスト */
#ex-list_wrapper{
    padding: 0 0 90px 0;
    max-width: 1920px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#ex-list{
    display: block;
    margin: 0;
    margin-top: 5px;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#ex-list li {
    display: inline-block;
    overflow: hidden;
    width: 48.5%;
    font-size: 20px;
    margin-left: 1%;
    list-style: none;
    vertical-align: top;
    box-sizing: border-box;
}

#ex-list li:last-child {
    margin-right: 1%;
}

#ex-list li a {
    display: block;
    text-align: center;
    text-decoration: none;
}

#ex-list img {
    display: block;
    padding-top: 20px;
    width: 100%;
    height: auto;
}

.ex-list_text{
    padding: 5px 0px 5px 2px;
    white-space: pre-wrap;
}

/* WORK 事業内容 */
#work-content_wrapper{
    max-width: 1280px;
    min-width: 800px;
    margin: 65px auto 65px auto;
}

.item_title{
    margin: 25px 0 15px 0;
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #DDD;
}

.work_text{
    font-size: 20px;
    text-align: left;
    margin: 8px 0 5px 2px;
}

#paint{
    display: block;
    margin: 0;
    margin-top: 5px;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#paint li{
    display: inline-block;
    overflow: hidden;
    width: 32%;
    list-style: none;
    vertical-align: top;
    box-sizing : border-box;
    margin-left: 1%;
}

#paint li:last-child{
    margin-right: 1%;
}

#paint li a p{
    height: 20px;
    margin: 5px 0 0 2px;
    font-size: 18px;
    font-weight: bold;
}

.before{
    color: #f380af;
}

.during{
    color: #c09ef5;
}

.after{
    color: #76c3f3;
}

#paint img{
    display: block;
    width: 100%;
    height: auto;
}

#scaffold{
    display: block;
    margin: 0;
    margin-top: 5px;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#scaffold li{
    display: inline-block;
    overflow: hidden;
    width: 32%;
    margin-left: 1%;
    list-style: none;
    vertical-align: top;
    box-sizing : border-box;
}

#scaffold li:last-child{
    margin-right: 1%;
}

#scaffold li a p{
    height: 20px;
    margin: 5px 0 0 2px;
    font-size: 18px;
    font-weight: bold;
}

#scaffold img{
    display: block;
    width: 100%;
    height: auto;
}

#waterproof{
    display: block;
    margin: 0;
    margin-top: 5px;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#waterproof li{
    display: inline-block;
    overflow: hidden;
    width: 32%;
    margin-left: 1%;
    list-style: none;
    vertical-align: top;
    box-sizing : border-box;
}

#waterproof li:last-child{
    margin-right: 1%;
}

#waterproof li a p{
    height: 20px;
    font-size: 18px;
    margin: 5px 0 0 2px;
    font-weight: bold;
}

#waterproof img{
    display: block;
    width: 100%;
    height: auto;
}

/* COMPANY 会社概要 */
#company-content_wrapper{
    max-width: 1280px;
    min-width: 800px;
    margin: 65px auto 65px auto;
}

#company-table{
    display: block;
    width: 800px;
}

#company-table .company-table_cell{
    margin: 25px 0 0 0;
    border-bottom: 1px solid #DDD;
}

#company-table .table-item{
    font-size: 24px;
    font-weight: bold;
}

#company-table .table-desc{
    font-size: 20px;
    /*font-weight: lighter;*/
    margin-left: 54px;
}

/*CONTACT 問い合わせ*/
#contact-content_wrapper{
    max-width: 1280px;
    min-width: 800px;
    min-height: 480px;
    margin: 65px auto 0 auto;
}

#contact-list{
    margin: 10px 0 0 0;
    display: block;
    width: 800px;
}

#contact-list p{
    margin: 25px 0 10px 0;
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #DDD;
    min-width: 450px;
}

#contact-list span{
    font-size: 20px;
    display: block;
    margin: 5px 0 60px 54px
}

/* フッター */
.line{
    width:100%;
    height:2px;
    background-color: #DDD;
}

#footer{
    margin-top: auto;
}
#footer_wrapper{
    max-width: 1920px;
    min-width: 800px;
    color: white;
    margin: 0px auto 0px auto;
    padding: 15px 0 5px 0;
    background-color: #0e5990;
}

#footer_inner{
    display: flex;
    max-width: 1280px;
    min-width: 800px;
    margin: 0px auto 0px auto;
}

#footer_img{
    display: inline-block;
    width: 55%;
    vertical-align: bottom;
    box-sizing : border-box;
}

#footer_adress{
    display: inline-block;
    width: 45%;
    text-align: right;
    font-size: 14px;
    padding-bottom: 3px;
    box-sizing : border-box;
    margin-right: 1%;
}

/* 画像拡大用 簡易LightBox */
.lb {
    display: flex;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,.7);
    opacity: 0;
    transition: .3s opacity ease;
    z-index: -1;
}

.lb img {
    width: auto !important;
    max-height: 100%!important;
    transform: scale(.7);
    transition: .4s transform ease;
    pointer-events: none;
}

.lb:target {
    opacity: 1;
    z-index: 103;
}

.lb:target img {
    transform: scale(1);
}

/* 閉じるボタン */
.lb::before,.lb::after {
    display: block;
    position: fixed;
    content: "";
    width: 24px;
    height:3px;
    top: 24px;
    right: 12px;
    background: #fff;
    border-radius: 4px;
}
.lb::before {
    transform: rotate(-315deg);
}
.lb::after {
    transform: rotate(315deg);
}