/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

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

body {
    font-size: 16px;
    line-height:1.7em;
    font-family: "ヒラギノ角ゴ ProN" , sans-serif;
    color: #333;
}
body img {
    display: block;
}

a{color:#002b8a;text-decoration:none;}
a:hover{color:#002b8a;text-decoration:none;}
a:hover img {opacity: 0.5;}
a,a img { transition: opacity 0.5s ease-out;}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.mb10{ margin-bottom:10px;}
.mb20{ margin-bottom:20px;}
.mb30{ margin-bottom:30px;}
.mb50{ margin-bottom:50px !important;}

.center{
   display:block;
   margin:0 auto;
}
.small{
  font-size:80% !important;
}
.x-small{
  font-size:50% !important;
}
.large{
  font-size:140% !important;
}
.bold{
   font-weight:bold;
}
.sp_display{ display:none;}
.textbg {
    background: linear-gradient(transparent 60%, #ffff66 60%);
}

/*==================================
    hover move
==================================*/
.linkMove{
    transition: .15s ease-in-out;
}
.linkMove:hover{
    transform: scale(1.1);
}

/*==================================
    header
==================================*/

/*header */
#header_top{
    margin: 0 auto;
    color: #fff;
    width: 100%;
}
    #header_top #header_top_wrap{
        padding: 0.5em;
        box-sizing: border-box;
        margin: 0 auto;
        width: 100%;
    }
        #header_top_right{
            width: 100%;
            margin-left: auto;
            margin-right: auto;
        }
        #header_top_left{
            width: 100%;
        }
            #header_top #header_top_wrap #logo{
                width: 100%;
                max-width: 250px;
                margin-bottom: 1em;
                margin-left: auto;
                margin-right: auto;
            }
                #header_top #header_top_wrap #logo a{
                    padding-bottom: 30px;
                    display: block;
                    width: 100%;
                    height: auto;
                    background-image: url(../images/logo_under.png);
                    background-repeat: no-repeat;
                    background-size: 100%;
                    background-position: 50% bottom;
                }
                
                
                    #header_top #header_top_wrap #logo a img{
                        display: block;
                        width: 100%;
                        height: auto;
                    }
                #header_top #header_top_wrap h1{
                    display: block;
                    width: 100%;
                    height: auto;
                    font-size: 0.7em;
                    text-align: center;
                    color: #333;
                }


    
/*==================================
    gm
==================================*/
nav ul.gm{
    padding: 0;
    box-sizing: border-box;
    width: 100%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:flex-start; /* Safari */
    justify-content: flex-start;
}
    nav ul.gm li{
        width: 32%;
        margin-right: 2%;
        margin-bottom: 0.5em;
    }
    nav ul.gm li:nth-child(3n){
        margin-right: 0;
    }
         ul.gm li a{
            padding: 1em 0.2em;
            box-sizing: border-box;
            width: 100%;
            height: auto;
            display: inline-block;
            color: #000;
            line-height: 100%;
            position: relative;
            background-color: #F0F0F0;
            text-align: center;
            border-radius: 5px;
            font-size: 0.7rem;
        }
    

/*==================================
    main
==================================*/
#mainImg {
    /*background-image: url(../images/bg_main.png);*/
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}
    #mainImg_wrap {
        padding: 0 0 0;
        box-sizing: border-box;
        margin: 0 auto;
        width: 100%;
        position: relative;
    }
        #mainImg_wrap #mainImg_logoArea{
            margin: 0 auto;
            width: 100%;
            margin: 0 auto;
            position: absolute;
            top: 0;
            left: 0;
                background-image: url(../images/bg_dot02.png);
        }
            #mainImg_wrap #mainImg_logoArea_wrap{
                box-sizing: border-box;
                padding: 4rem 0 0;
                text-align: center;
                width: 90%;
                height: 350px;
                margin: 0 auto;
            }
                #mainImg_wrap #mainImg_logoArea_wrap img{
                    width: 100%;
                    display: block;
                    margin: 0 auto;
                }
                #mainImg_wrap #mainImg_logoArea #mainImg_logoArea_wrap span{
                    padding: 0.8em 0 0;
                    box-sizing: border-box;
                    display: block;
                    text-align: center;
                    color: #FFF;
                    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
                    font-size: 1.5rem;
                }
    .bxslider{
        width: 100%;
    }
        .bxslider li{
            width: 100%;
            height: 350px;
        }
            .bxslider li img{
                width: 100%;
                height: 350px;
                display: block;
                object-fit: cover;
            }
            
            
            
    
    #mainImg_menuArea {
        margin: 0 auto;
        width: 100%;
        background-color: #45443E;
    }
    #mainImg_menuArea2 {
        width: 100%;
    }
        #mainImg_menuArea_wrap {
            padding: 1rem 0 0.5rem;
            box-sizing: border-box;
            margin: 0 auto;
            width: 100%;
        }

/*==================================
    menu
==================================*/

ul.menu01{
    margin: 0 auto;
    width: 96%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:space-between; /* Safari */
    justify-content: space-between;
}
    ul.menu01 li{
        margin-bottom: 0.8rem;
    }
    ul.menu01 li:nth-child(1){ width: 49%;}
    ul.menu01 li:nth-child(2){ width: 49%;}
    ul.menu01 li:nth-child(3){ width: 32%;}
    ul.menu01 li:nth-child(4){ width: 32%;}
    ul.menu01 li:nth-child(5){ width: 32%;}

        ul.menu01 li a{
            width: 100%;
            height: 70px;
            padding: 0.5rem 1rem;
            box-sizing: border-box;
            display: block;
            text-align: center;
            background-color: #FFF;
            color: #333;
            border-radius: 5px;
            box-shadow: 0px 5px 0px 0px #CCCCCC;
        }
        
            ul.menu01 li a img{
                margin: 0 auto 0.2em;
                box-sizing: border-box;
                display: block;
                width: 30px;
                height: auto;
            }
                ul.menu01 li a span{
                    text-align: center;
                    font-size: 1em;
                    line-height: 100%;
                    font-weight: bold;
                }
        

/* menu02 */

.menu02Area{
    padding: 1.5em 0;
    background-color: #CCCCCC;
}
    .menu02Area_wrap{
        margin: 0 auto;
        width: 1000px;
        display:-ms-flexbox;/*--- IE10 ---*/
        display:-webkit-flex;/*--- safari---*/
        display:flex;
        -ms-flex-wrap:wrap;/*--- IE10 ---*/
        -webkit-flex-wrap:wrap;/*--- safar---*/
        flex-wrap:wrap;
        -webkit-justify-content:space-between; /* Safari */
        justify-content: space-between;
    }
        .menu02Area_wrap a{
            width: 24%;
            display: block;
            padding: 1.5em 2em;
            box-sizing: border-box;
            display: block;
            text-align: center;
            background-color: #FFF;
            color: #333;
            border-radius: 10px;
            box-shadow: 0px 5px 0px 0px #CCCCCC;
        }
            .menu02Area_wrap a img{
                margin: 0 auto 0.5em;
                box-sizing: border-box;
                display: block;
                width: auto;
                height: 50px;
            }
            .menu02Area_wrap a span{
                text-align: center;
                font-size: 1.3em;
                font-weight: bold;
            }

ul.menu02{
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:space-between; /* Safari */
    justify-content: space-between;
}
    ul.menu02 li{
        width: 24%;

    }
        ul.menu02 li a{
            padding: 1.5em 2em;
            box-sizing: border-box;
            display: block;
            text-align: center;
            background-color: #FFF;
            color: #333;
            border-radius: 10px;
            box-shadow: 0px 5px 0px 0px #CCCCCC;
        }

        ul.menu02 li a img{
            margin: 0 auto 0.5em;
            box-sizing: border-box;
            display: block;
            width: 70px;
            height: auto;
        }
            ul.menu02 li a span{
                text-align: center;
                font-size: 1.3em;
                font-weight: bold;
            }
        
        
/*==================================
    ページング
==================================*/



.pageNationAreaa{
    padding: 2em 0;
    margin-bottom: 5em;
}
.pageNationAreaa_wrap{
    margin: 0 auto;
    width: 100%;
}

.pageNationAreaa .pageNationAreaa_wrap .pagination .page-numbers{
    width: 100%;
    text-align: center;
}
    .pageNationAreaa .pageNationAreaa_wrap .pagination .page-numbers li{
        padding: 0.5em;
        display: inline-block;
        margin-right: 1%;
    }
        .pageNationAreaa .pageNationAreaa_wrap .pagination .page-numbers li a{
            padding: 0.5rem;
            display: block;
            text-align: center;
            border: 1px solid #197FC3;
            line-height: 100%;
            border-radius: 5px;
            color: #197FC3;
        }
        .pageNationAreaa .pageNationAreaa_wrap .pagination .page-numbers li span{
            padding: 0.5em;
            display: block;
            text-align: center;
            border: 1px solid #197FC3;
            line-height: 100%;
            background-color: #197FC3;
            color: #FFF;
            border-radius: 5px;
        }





/*.pageNation{
    width: 100%;
    text-align: center;

}
    .pageNation li{
        display: inline-block;
        margin-right: 1%;
    }
        .pageNation li a{
            padding: 0.5em;
            display: block;
            text-align: center;
            border: 1px solid #2B5CAB;
            line-height: 100%;
        }*/

        
/*==================================
    グーグルマップ
==================================*/

.ggmap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
    .ggmap iframe,
    .ggmap object,
    .ggmap embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.ggmap02 {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
    .ggmap02 iframe,
    .ggmap02 object,
    .ggmap02 embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    
    
/*==================================
    bottom area
==================================*/

.pageBottom{
    margin: 0 auto;
    color: #fff;
    width: 100%;
    z-index: 99;
    background-color: #27a7e1;
}
    .pageBottom .wrap{
        margin: 0 auto;
        width: 1000px;
    }


/*==================================
    footer
==================================*/
footer{}
    footer #footer01::before{
        content: "";
        width: 100%;
        height: 40px;
        display: block;
        background-image: url(../images/bg_footer_top.svg);
        background-repeat: repeat-x;
        background-size: cover;
        position: absolute;
        top:-50px;
        left:0px;
    }
    footer #footer01{
        border-top:10px solid #E6E4D9;
        background-color: #45443E;
        color: #FFF;
        position: relative;
    }
        footer #footer01_wrap{
            box-sizing: border-box;
            padding: 1em 0 0;
            margin: 0 auto;
            width: 100%;

        }
            footer #footer01_wrap #footer01_wrap_left{
                width: 90%;
                margin-left: auto;
                margin-right: auto;
            }
                footer #footer01_wrap #footer01_wrap_left h2{
                    margin-bottom: 1em;
                }
                footer #footer01_wrap #footer01_wrap_left p{
                    font-size: 0.8rem;
                    text-align: center;
                    margin-bottom: 1em;
                    line-height: 120%;
                }
                footer #footer01_wrap #footer01_wrap_left #footerDl{
                    margin-bottom: 1rem;
                    width: 100%;
                    display:-ms-flexbox;/*--- IE10 ---*/
                    display:-webkit-flex;/*--- safari---*/
                    display:flex;
                    -ms-flex-wrap:wrap;/*--- IE10 ---*/
                    -webkit-flex-wrap:wrap;/*--- safar---*/
                    flex-wrap:wrap;
                    -webkit-justify-content:space-between; /* Safari */
                    justify-content: space-between;
                }
                    footer #footer01_wrap #footer01_wrap_left #footerDl dt{
                        width: 25%;
                        padding: 0.4em;
                        box-sizing: border-box;
                        border: 1px solid #FFF;
                        font-size: 0.7em;
                        line-height: 1;
                        align-self: flex-start;
                        text-align: center;
                        margin-bottom: 0.5em;
                    }
                    footer #footer01_wrap #footer01_wrap_left #footerDl dd{
                        padding: 0.05em 0;
                        box-sizing: border-box;
                        width: 70%;
                        align-self: flex-start;
                        font-size: 0.8em;
                        margin-bottom: 0.5em;
                    }
                        footer #footer01_wrap #footer01_wrap_left #footerDl dd a{
                            color: #FFF;
                            font-size: 1.7em;
                            line-height: 100%;
                            display: block;
                        }
            footer #footer01_wrap #footer01_wrap_right{
                width: 100%;
            }
    footer #footer02{
        box-sizing: border-box;
        padding: 1em 0;
        background-color: #333333;
        color: #FFF;
    }
        footer #footer02_wrap{
            margin: 0 auto;
            width: 100%;
        }
        
        #footerLink01{
            margin: 0 auto 1em;
            width: 96%;
            display:-ms-flexbox;/*--- IE10 ---*/
            display:-webkit-flex;/*--- safari---*/
            display:flex;
            -ms-flex-wrap:wrap;/*--- IE10 ---*/
            -webkit-flex-wrap:wrap;/*--- safar---*/
            flex-wrap:wrap;
            -webkit-justify-content:space-between; /* Safari */
            justify-content: space-between;
        }
            #footerLink01 li{
                width: 100%;
                margin-bottom: 0.5em;
            }
            #footerLink01 li:last-child{
                margin-bottom: 0;
            }
                #footerLink01 li a{
                    padding: 1rem 0.3em;
                    box-sizing: border-box;
                    display: block;
                    width: 100%;
                    font-size: 1rem;
                    line-height: 120%;
                    text-align: center;
                    background-color: #555555;
                    border-radius: 5px;
                    color: #FFF;
                }
        #footerLink02{
            margin: 0 auto;
            width: 96%;
            display:-ms-flexbox;/*--- IE10 ---*/
            display:-webkit-flex;/*--- safari---*/
            display:flex;
            -ms-flex-wrap:wrap;/*--- IE10 ---*/
            -webkit-flex-wrap:wrap;/*--- safar---*/
            flex-wrap:wrap;
            -webkit-justify-content:space-between; /* Safari */
            justify-content: space-between;
        }
            #footerLink02 li{
                width: 49%;
                margin-bottom: 0.5em;
            }
            #footerLink02 li:nth-last-child(-n+2){
                margin-bottom: 0;
            }
                #footerLink02 li a{
                    padding: 1rem 0.3em;
                    box-sizing: border-box;
                    display: block;
                    width: 100%;
                    font-size: 0.8rem;
                    line-height: 120%;
                    text-align: center;
                    border: 1px solid #FFF;
                    border-radius: 5px;
                    color: #FFF;
                }
        
        
    footer #footer03{
        box-sizing: border-box;
        padding: 1em 0;
        background-color: #2B5CAC;
        color: #FFF;
    }
        footer #footer03_wrap{
            margin: 0 auto;
            width: 100%;
            text-align: center;
        }


/*==================================
    list
==================================*/
.list01{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:flex-start; /* Safari */
    justify-content: flex-start;
}
    .list01 > li{
        margin-bottom: 1rem;
        width: 100%;
        background-color: #FFF;
        border-radius: 5px;
        overflow: hidden;
        position: relative;
    }
    .list01 > li:nth-child(2n){
        margin-right: 0;
    }
        .list01 > li a{
            background-color: #FFF;
            display: block;
            color: #333;
        }
        .list01 > li a img.thumb{
            display: block;
            width: 100%;
            height: 80px;
            object-fit:  cover;
        }
            .list01 > li a .list01_wrap{
                padding: 1em;
                box-sizing: border-box;
                display: block;
                width: 100%;
                height: auto;
            }
                .list01 li a .list01_wrap hr{
                    border: 0;
                    border-bottom: 1px solid #DDD;
                }
                .list01 li a .list01_wrap h3{
                    margin-bottom: 0.5rem;
                    color: #2B5CAC;
                    line-height: 120%;
                    font-size: 0.9rem;
                    font-weight: bold;
                }
                .list01 li a .list01_wrap .text01{
                    color: #333;
                    font-size: 0.7em;
                    line-height: 150%;
                }
        .list01 li .newicon{
            box-sizing: border-box;
            padding: 0.5em 1em;
            color: #FFF;
            font-size: 0.5em;
            line-height: 100%;
            background-color: #E87541;
            display: inline-block;
            position: absolute;
            top:5px;
            left: 0px;
        }


/*==================================
    汎用wrap
==================================*/
.contents{
    margin: 0 auto;
    width: 100%;
}    
.contentsWrap{
    margin: 0 auto;
    width: 100%;
}    

/*==================================
    汎用タイトル
==================================*/

/* title01 */
    
.title01{
    box-sizing: border-box;
    padding: 0em 0 0.2em 2.5em;
    line-height: 150%;
    margin-bottom: 20px;
    background-image: url(../images/bg_title01.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: -0.6em 50%;
    width: 100%;
    font-size: 1.5em;
    font-weight: bold;
    color: #333;
}
    .title01 span{
        padding: 0;
        box-sizing: border-box;
        margin-left: 1em;
        font-size: 0.5em;
        line-height: 120%;
        font-weight: bold;
        color: #006DB9;
    }
    
/* title02 */
    
.title02{
    padding: 0.6em 1em;
    background-color: #E7EDF7;
    margin-bottom: 0.5em;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 1.2em;
    border-bottom: 3px solid #2B5CAC;
}
    .title02 .titleCate01{
        box-sizing: border-box;
        padding: 0.3em 0.9em;
        background-color: #2B5CAC;
        /*font-weight: bold;*/
        /*font-size: 0.7em;*/
        color: #FFF;
        display: inline-block;
    }


/* title03 */

.title03{
    padding: 0;
    box-sizing: border-box;
    font-weight: bold;
    border-left: 5px solid #27a7e1;
}
    .title03 span{
        padding: 5px 20px;
        box-sizing: border-box;
        display: block;
        font-size: 1.3em;
        line-height: 120%;
        font-weight: bold;
    }

.title01_sub{}
    .title01_sub span.title{
        padding: 15px 20px 5px;
        box-sizing: border-box;
        font-size: 1.8em;
        font-weight: bold;
        display: block;
        line-height: 100%;
    }
    .title01_sub span.sub{
        padding: 5px 20px 15px;
        box-sizing: border-box;
        font-size: 0.9em;
        display: block;
        line-height: 100%;
    }

.title04{
    box-sizing: border-box;
    padding: 0.5em 0 0.5em 1.3em;
    margin-bottom: 1em;
    box-sizing: border-box;
    font-weight: bold;
    border-left: 3px solid #2B5CAC;
}


/*==================================
    汎用テーブル
==================================*/
.tbl01{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
    border-top: 1px solid #006DB9;
    box-sizing: border-box;
}
.tbl01 tbody,
.tbl01 tbody tr{
    box-sizing: border-box;
    border-collapse: collapse;
    width: 100%;
    display: block;
}
.tbl01 th,
.tbl01 td{
    padding: 15px 20px;
    box-sizing: border-box;
    border-collapse: collapse;
    width: 100%;
    display: block;
}
.tbl01 th{
    background-color: #E7EDF7;
    font-weight: bold;
    border-bottom: 1px solid #006DB9;
    color: #2B5CAC;
    font-weight: bold;
}
.tbl01 td{
    background-color: #FFF;
    border-bottom: 1px solid #006DB9;
}

/* tbl01_w */
    
.tbl01_w{
    width: 100%;
    border-top: 1px solid #DDD;
    border-left: 1px solid #DDD;
    border-right: 1px solid #DDD;
}
    .tbl01_w th,
    .tbl01_w td{
        padding: 10px 20px;
        box-sizing: border-box;
        border-collapse: collapse;
    }
    .tbl01_w th{
        background-color: #EEE;
        font-weight: bold;
        border-bottom: 1px solid #DDD;
    }
    .tbl01_w td{
        border-bottom: 1px solid #DDD;
    }
    
    
/*==================================
    form テーブル
==================================*/

.form_tbl{
    width: 100%;
    border: 1px solid #DDD;
}
    .form_tbl th,
    .form_tbl td{
        padding: 15px 20px;
        box-sizing: border-box;
        border-collapse: collapse;
    }
    .form_tbl th{
        background-color: #EEE;
        font-weight: bold;
        border-bottom: 1px solid #DDD;
        width: 25%;
        text-align: left;
        vertical-align: top;
    }
        .form_tbl th span{
            margin-left: 10px;
            font-size: 0.8em;
            background-color: #FFFFFF;
            border: 2px solid #FF6600;
            color: #FF6600;
            display: inline-block;
            padding: 3px 10px;
            line-height: 100%;
            box-sizing: border-box;
        }
    .form_tbl td{
        border-bottom: 1px solid #DDD;
    }

.formText01{
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #DDD;
    width: 100%;
}
.formSelect01{
    margin-bottom: 10px;
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #DDD;
}
.formTextArea01{
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #DDD;
    width: 100%;
}

.formBtnSend01{
    border: none;
    border-style: none;
    position: relative;
    display: inline-block;
    background: #f90;
    min-width: 120px;
    padding: 10px 20px 10px;
    color: #fff !important;
    text-align: center;
    border-radius: 5px;
    box-shadow: 0 2px 0 #754702;
    box-sizing: border-box;
    font-size: 18px;
    letter-spacing: 1px;
}

/*==================================
    ボタン
==================================*/
.btn_contact{
   position: relative;
   display:inline-block;
   background:#f90;
   min-width: 120px;
   padding: 10px 20px 10px 40px;
   color:#fff !important;
   text-align:center;
   border-radius:5px;
   box-shadow: 0 2px 0 #754702;
   box-sizing: border-box;
   font-size: 18px;
   letter-spacing: 1px;
}
.btn_contact:before{
    position: absolute;
    font-family: "Font Awesome 5 Free";
    content: "\f0a9";
    width: 10px;
    height: 10px;
    left: 12px;
    color: #f8f8f8;
    font-weight: 900;
    font-size: 120%;
    display: block;
}
.btn_contact:hover{
   background:#072b3d;
   color:#ccc;
   box-shadow:none;
   position: relative;
   top:2px;
}

/* 印刷ボタン *******************/

.btn_print{
    display: none;
/*    width: 96%;
    margin-left: auto;
    margin-right: auto;
    display: block;
    background-color: #E87541;
    padding: 0.5rem 0.5em;
    color:#fff;
    text-align:center;
    border-radius:5px;
    box-sizing: border-box;
    font-size: 1rem;
    line-height: 150%;
    letter-spacing: 1px;
    box-shadow: 0 3px 0 #B7592F;*/
}
/*    .btn_print span{
        padding-left: 2em;
        display:inline-block;
        color:#fff;
        text-align:center;
        font-size: 18px;
        letter-spacing: 1px;
        background-image: url(../images/icon_print_white.svg);
        background-repeat: no-repeat;
        background-position: left 50%;
        background-size: 26px;
    }
.btn_print:hover{
    background-color: #4D7BC6;
}*/



/*==================================
    お問い合わせボタンエリア
==================================*/
.contactBtn{
    box-sizing: border-box;
    padding: 0.5rem;
    background-color: #FFF;

}
.contactBtn li{
    width: 100%;
    margin-bottom: 0.5em;
    box-sizing: border-box;
    padding: 1rem 1rem;
    background-color: #F2F2F2;
    border-radius: 0.5em;
}
.contactBtn li h3{
    margin-bottom: 0.5em;
    font-size: 1.2em;
    text-align: center;
    font-weight: bold;
}
.contactBtn li p{
    color: #555;
    font-size: 0.7rem;
    text-align: center;
}

.contactBtn li:nth-child(1) a,
.contactBtn li:nth-child(2) a{
    margin-bottom: 0.5em;
    width: 100%;
    display: block;
    padding: 1em 0.5em;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 1.5rem;
    letter-spacing: 1px;
    font-weight: bold;
    
}
.contactBtn li:nth-child(1) a{ background-color: #2B5CAC; box-shadow: 0 3px 0 #1E427E;}
.contactBtn li:nth-child(2) a{ background-color: #6EBE3D; box-shadow: 0 3px 0 #4B8B24;}

    .contactBtn li:nth-child(1) a span,
    .contactBtn li:nth-child(2) a span{
        padding-left: 1.8em;
        display:inline-block;
        color:#fff;
        text-align:center;
        font-size: 1em;
        letter-spacing: 1px;
        background-repeat: no-repeat;
        background-position: left 50%;
        background-size: 22px;
    }
.contactBtn li:nth-child(1) a:hover,
.contactBtn li:nth-child(2) a:hover{
    background-color: #4D7BC6;
}
    .contactBtn li:nth-child(1) a span{ background-image: url(../images/icon_white_tel.svg);}
    .contactBtn li:nth-child(2) a span{ background-image: url(../images/icon_white_mail.svg);}




/*==================================
    バナー
==================================*/
.topBnrcontactArea{
    box-sizing: border-box;
    padding: 0 0 3em;
    width: 100%;
    display: block;
    background-color: #F7F7F7;
}
    .topBnrcontactAreaWrap{
        margin: 0 auto;
        width: 94%;
    }
    .topBnrcontactAreaWrap a{
        width: 100%;
        display: block;
    }
        .topBnrcontactAreaWrap a img{
            width: 100%;
            display: block;
        }

.topBnr01Area{
    box-sizing: border-box;
    padding: 1rem 0;
    width: 100%;
    display: block;
}
    .topBnr01AreaWrap{
        margin: 0 auto;
        width: 90%;
    }
    .topBnr01AreaWrap a{
        width: 100%;
        display: block;
    }
        .topBnr01AreaWrap a img{
            width: 100%;
            display: block;
        }



/*==================================
    コンテンツ
==================================*/
.sec01{
    padding: 3em 0;
    background-color: #F7F7F7;
}
    .sec01_wrap{
        margin: 0 auto;
        width: 100%;
    }

.sec02{
    padding: 1em 0;
    background-color: #F7F7F7;
}
    .sec02_wrap{
        margin: 0 auto;
        width: 100%;
    }
    
/* 詳細ページ用 *******************/

p.detailMainText{
    margin: 0 auto 1rem;
    width: 100%;
    font-size: 0.8em;
    line-height: 150%;
}
    
/* 詳細ページ用 *******************/

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


/* カテゴリリスト ******************/
.cateList_area{
    box-sizing: border-box;
    padding: 0.3em 0.5em;
    margin-bottom: 1rem;
}
ul.cateList{
    margin-bottom: 0;
    width: 100%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:flex-start; /* Safari */
    justify-content: flex-start;
}
    ul.cateList li{
        margin-right: 0.3em;
        width: auto;
        display: inline-block;
    }
        ul.cateList li a,
        ul.cateList li span{
            box-sizing: border-box;
            padding: 0.6em 0.7em;
            width: 100%;
            height: auto;
            display: block;
            font-size: 0.6em;
            line-height: 100%;
            border-radius: 3px;
        }
    ul.cateList li.cateList01 a{ background-color: #E87541; color: #FFF;}
    ul.cateList li.cateList02 a{ background-color: #2B5CAC; color: #FFF;}
    ul.cateList li.cateList03 a{ background-color: #6EBE3D; color: #FFF;}
    ul.cateList li.cateList04 a{ background-color: #E8E8E8; color: #333;}

    ul.cateList li.cate_item a, ul.cateList li.cate_item span{ background-color: #E8E8E8; color: #333;}
    ul.cateList li.cate_tochi a, ul.cateList li.cate_tochi span{ background-color: #E87541; color: #FFF;}
    ul.cateList li.cate_build a, ul.cateList li.cate_build span{ background-color: #2B5CAC; color: #FFF;}
    ul.cateList li.cate_rent_shop a, ul.cateList li.cate_rent_shop span{ background-color: #6EBE3D; color: #FFF;}
    ul.cateList li.cate_rent_house a, ul.cateList li.cate_rent_house span{ background-color: #EDE290; color: #333;}


    
    

/* 画像のリスト ******************/

ul.imgList01{
    width: 100%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:space-between; /* Safari */
    justify-content: space-between;
}
    ul.imgList01 li{
        width: 48%;
    }
        ul.imgList01 li img{
            width: 100%;
            height: auto;
            display: block;
        }

ul.imgList02{
    margin-left: auto;
    margin-right: auto;
    width: 94%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:flex-start; /* Safari */
    justify-content: flex-start;
}

    ul.imgList02 li{
        margin-top: 1em;
        margin-right: 2%;
        width: 49%;
    }
    ul.imgList02 li:nth-child(-n+2){
        margin-top: 0;
    }
    ul.imgList02 li:nth-child(2n){
        margin-right: 0;
    }
        ul.imgList02 li img{
            width: 100%;
            height: 150px;
            display: block;
            object-fit: cover;
        }
        
/* detailSec ******************/
        
.detailSec01{
    margin-bottom: 1em;
    box-sizing: border-box;
}
.detailSec02{
    margin-bottom: 1em;
    box-sizing: border-box;
    padding: 1em;
    background-color: #FFF;
}

/* detailTbl01 ******************/

.detailTbl01{
    border-top: 1px solid #EFEFEF;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
    .detailTbl01 th,
    .detailTbl01 td{
        box-sizing: border-box;
        padding: 0.5em 1em;
        border-collapse: collapse;
    }
    .detailTbl01 th{
        text-align: left;
        width: 100px;
        border-bottom: 1px solid #FFF;
        background-color: #E7EDF7;
        font-size: 0.8rem;
        line-height: 150%;
    }
    .detailTbl01 td{
        border-bottom: 1px solid #EFEFEF;
        font-size: 0.8rem;
        line-height: 150%;
    }

/* 詳細のレイアウト ******************/

.detailTblArea{
    width: 100%;
    display:-ms-flexbox;/*--- IE10 ---*/
    display:-webkit-flex;/*--- safari---*/
    display:flex;
    -ms-flex-wrap:wrap;/*--- IE10 ---*/
    -webkit-flex-wrap:wrap;/*--- safar---*/
    flex-wrap:wrap;
    -webkit-justify-content:space-between; /* Safari */
    justify-content: space-between;
}
.detailTblArea .detailTblArea01{
    margin-bottom: 1em;
    width: 100%;
}
.detailTblArea .detailTblArea02{
    margin-bottom: 1em;
    width: 100%;
}
.detailTblArea .detailTblArea03{
    width: 100%;
}


    
/*==================================
    リスト
==================================*/
.list_num01{}
    .list_num01 li{
        padding-left: 10px;
        margin-left: 30px;
        margin-bottom: 15px;
        list-style-type: decimal;
        line-height: 120%;
    }

/*==================================
    チェックリストエリア
==================================*/
.checkListArea{
    margin-bottom: 25px;
    padding: 30px;
    box-sizing: border-box;
    border: 3px solid #555;
    border-radius: 5px;
    background-color: rgba(255,255,255,0.8);
}
    .checkListAreaTitle{
        font-size: 2.5em;
        font-weight: bold;
        line-height: 100%;
        text-align: center;
    }
    .checkListArea ul{}
        .checkListArea ul li{
            margin-bottom: 15px;
            padding-left: 4%;
            position: relative;
            font-size: 1.5em;
            line-height: 120%;
        }
        .checkListArea ul li:last-child{
            margin-bottom: 0;
        }
        .checkListArea ul li::after{
           position: absolute;
           font-family: "Font Awesome 5 Free";
           content: "\f14a";
           width: 10px;
           height: 10px;
           left: 0px;
           color: #0e9ddd;
           font-weight: 900;
           font-size: 100%;
       }
       
/*==================================
    会社からのメッセージ
==================================*/
       
#messageArea{
    margin-bottom: 2em;
}
#messageArea #messageAreaWrap{
    margin: 0 auto;
    width: 96%;
}

#messageArea #messageAreaWrap #messageAreaWrapWrap{
    width: 100%;

}
#messageArea #messageAreaWrap #messageAreaWrapWrap h2{
    font-size: 1.2em;
    margin-bottom: 1.2em;
    text-align: center;
}
#messageArea #messageAreaWrap #messageAreaWrapWrap figure{
    width: 50%;
    margin: 0 auto;
    height: auto;
    display: block;
}
    #messageArea #messageAreaWrap #messageAreaWrapWrap figure img{
        width: 100%;
        height: auto;
        display: block;
        margin: 0;
        padding: 0;
    }
#messageArea #messageAreaWrap #messageAreaWrapWrap #txt{
    width: 100%;
    margin-bottom: 1.2em;
}
    #messageArea #messageAreaWrap #messageAreaWrapWrap #txt p{
        width: 100%;
        font-size: 0.8em;
        line-height: 150%;
        letter-spacing: 3px;
    }
#ceo_name{
    box-sizing: border-box;
    padding:0.5em 0.5em 30px;
    background-image: url(../images/img_ceo_name.jpg);
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: 150px;
    text-align: center;
    letter-spacing: 0.2em;
    font-size: 0.5em;
}

/************************************
form
*************************************/

/*
reset
***********************/

button,
option,
select,
textarea,
input[type="button"],
input[type="submit"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="text"],
input[type="select"],
input[type="option"],
input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    border-radius: 0;
    border: none;
    outline: 0;
    margin: 0;
    background: #fff;
}

/* デフォルトのradio、checkboxは非表示 */

input[type=radio],
input[type=checkbox] {
    display: none;
}

/* for firefox */

select {
    text-indent: 0.01px;
    text-overflow: '';
}

/* for ie10 ie11 ie系のプルダウンの矢印を消す ie9は非対応 */

select::-ms-expand {
    display: none;
}

/*
input[type="text"] textarea
input[type="●●●"] 適宜追加
*/

textarea,
input[type="tel"],
input[type="email"],
input[type="number"],
input[type="text"] {
    box-sizing: border-box;
    width: 100%;
    padding: 10px 15px;
    font-size: 14px;
    font-size: 1.4rem;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
}

td.hidden_txt .wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required{
    border: none;
    padding: 0;
}


textarea {
    height: 100px; /* お好みの高さに */
}

/* フォーカス時の色変更 */

textarea:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="text"]:focus {
    border: 1px solid #333;
}

/* ラジオボタン */

.form-radio input[type=radio]+label {
    position: relative;
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    cursor: pointer;
    padding: 9px 5px 8px 28px;
    margin-right: 0px;
}

.form-radio input[type=radio]+label::before,
.form-radio input[type=radio]+label::after {
    position: absolute;
    display: block;
    content: '';
    top: 50%;
    left: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
}

.form-radio input[type=radio]+label::before {
    width: 22px;
    height: 22px;
    margin-top: -12px;
    background: #FFF;
    border: 1px solid #ccc;
}

.form-radio input[type=radio]+label::after {
    left: 6px;
    width: 10px;
    height: 10px;
    margin-top: -6px;
    background: #f4f4f4;
}

.form-radio input[type=radio]:checked+label::after {
    background: #333;
}

/* チェックボックス */

.form-checkbox label {
    position: relative;
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    cursor: pointer;
    padding: 6px 5px 8px 30px;
}

.form-checkbox label::before,
.form-checkbox label::after {
    position: absolute;
    display: block;
    content: '';
    top: 50%;
    left: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.form-checkbox label::before {
    width: 22px;
    height: 22px;
    margin-top: -12px;
    background: #FFF;
    border: 2px solid #ccc;
}

.form-checkbox input[type=checkbox]+label::after {
    width: 24px;
    height: 24px;
    top: 2px;
}

.form-checkbox input[type=checkbox]:checked+label::after {
    position: absolute;
    display: block;
    content: '';
    background: url(../img/icon_check.png) 0 0 no-repeat;
    background-size: 24px 24px;
    left: -1px;
    top: -1px;
}

.wpcf7-form-control.wpcf7-submit {
    width: 100%;
    display: block;
    position: relative;

    text-align: center;
    border: none;
    cursor: pointer;

    
    background:#f90;
    padding: 10px 20px 10px 40px;
    color:#fff;
    border-radius:5px;
    box-shadow: 0 3px 0 #754702;
    box-sizing: border-box;
    font-size: 18px;
    letter-spacing: 1px;
    
}

/************************************
print css
*************************************/
.printOpenArea{
    display: none;
}


/************************************
Privacy
*************************************/
.privacyWrap{
    margin-bottom: 3em;
}
.privacyWrap h3{
    box-sizing: border-box;
    padding: 0.5em 0 0.5em 1.3em;
    margin-bottom: 1em;
    font-weight: bold;
    font-size: 1.3em;
    border-left: 3px solid #2B5CAC;
}
.privacyWrap h4{
    box-sizing: border-box;
    margin-bottom: 0.5em;
    font-weight: bold;
    font-size: 1.1em;
}
.privacyWrap p{
    margin-bottom: 1em;
    font-size: 0.9em;
}
.privacyWrap ul{
    margin-bottom: 3em;
    list-style-type: circle;
    margin-left: 2em;
}
.privacyWrap ul li{
    margin-bottom: 0.3em;
    font-size: 0.9em;
}


/************************************
 2026.02.18 追加
*************************************/
#topBannerTrust
{
	margin:.5em auto 0;
	max-width:1000px;
	width:90%;
}
#topBannerTrust a
{
	background-color:#134c92;
	color:#fff;
	display:block;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:1em;
	line-height:3em;
	text-align:center;
	width:100%;
}
