@charset "utf-8";
/*
Theme Name: Theme name
Author: Author
Author URI:
*/

/********************************************
philosophy
********************************************/
#gcp{
	padding:50px 0px;
	text-align:center;
}
#gcp h2.gcp{
	font-weight:600;
	color:#666666;
	font-family: Meiryo;
}
.philosophy{
	padding:30px 0px 60px;
	font-family: Meiryo;
	font-size:1.3em;
	color:#888888;
}
.philosophy_in{
	padding:15px 0px 25px;
	font-size:0.7em;
}

/********************************************
Common
********************************************/
img{
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
}
body{
    min-width: 1000px;
    color: #333;
    line-height: 1.8;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
ul{
    margin: 0;
}
a{
    text-decoration: none;
    color: #640125;
}
a:hover{
    text-decoration: underline;
    color: #640125;
}
h1,h2,h3,h4,h5{
    margin: 0;
}
h2{
    font-size: 22px;
}
h3{
    font-size: 18px;
}
th{
    width: 150px;
    background: #EEE;
    text-align: right;
}
th,td{
    padding: 12px !important;
    vertical-align: middle !important;
}
iframe{
    width: 100%;
}
.brown{
    color: #640125;
}
.orange{
    color: #ffa500;
}
.green{
    color: #22b573;
}
.blue{
    color: #006ab4;
}
.white{
    color: #FFF;
}
.bold{
    font-weight: bold;
}
.pleft20{
    padding-left: 20px;
}
.pc{
    display:block;
}
.mobile{
    display:none;
}
.shadow{
    -webkit-box-shadow: 1px 1px 4px #666;
    -moz-box-shadow: 1px 1px 4px #666;
    box-shadow: 1px 1px 4px #666;
    behavior: url(PIE.htc);
}
.round5{
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius:5px;
    border-radius: 5px;
    behavior: url(border-radius.htc);
}
.top10{
    margin-top:10px;
}
.top20{
    margin-top:20px;
}
.top30{
    margin-top:30px;
}
.top40{
    margin-top:40px;
}
.top50{
    margin-top:50px;
}
.top80{
    margin-top:80px;
}
.bot10{
    margin-bottom:10px;
}
.bot20{
    margin-bottom:20px;
}
.bot30{
    margin-bottom:30px;
}
.bot40{
    margin-bottom:40px;
}
.bot50{
    margin-bottom:50px;
}
.left{
    float:left;
}
.right{
    float:right;
}
.margin0{
    margin: 0;
}
.padding0{
    padding: 0;
}
.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }
.text-center{
    text-align: center;
}
.border01{
    border: 1px solid #CCC;
}
#wrapper{
    width: 1000px;
    margin: 0 auto;
}
#main{
	  margin-top: 40px;
    width: 730px;
    float: right;
		background-color: white;
}

body#home #main{
    margin-top: 20px;
}
#sidebar{
    width: 250px;
    float: left;
    margin-top: 40px;
}
body#example #main,
body#ps #main,
body#home #main{
    width: 100%;
}
.heading01{
	border-bottom: 2px solid #640125;
    padding: 40px 0;
    font-size: 24px;
    line-height: 24px;
    margin-bottom: 30px;
}
.heading01 a{
    color: #333;
}
.cap{
    font-size: 16px;
    line-height: 24px;
    color: #aaaaaa;
    margin-left: 20px;
    vertical-align: middle;
    zoom: 1;
}
.view_list{
    font-size: 14px;
    display: inline-block;
    float: right;
    background: url(images/listArrow.png) no-repeat;
    padding-left: 30px;
    background-size: 20px;
    background-position: left center;
}
.title_h1{
    font-size: 24px;
    font-weight: bold;
    padding: 10px 0 10px 20px;
    border-left: 5px solid #640125;
    margin-bottom: 25px;
}
body#ps .title_h1{
    font-size: 20px;
}
.title_h2{
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
}
.title_h3{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}
.title_red{
    font-size: 22px;
    font-weight: bold;
    color: #FFF;
    background: #640125;
    padding: 25px 20px 20px 20px;
    vertical-align: middle;
}
.title_orange{
    color: #ffa500;
    font-size: 24px;
    font-weight: bold;
}
.tile_title{
    font-size: 13px;
    background: #333;
    text-align: center;
    color: #FFF;
    padding: 10px;
}
.title01{
    background: #ffa500;
    text-align: center;
    color: #FFF;
    margin-bottom: 10px;
    padding: 5px;
    font-weight: bold;
}
.faq{
    border-bottom: 2px solid #333;
    padding-bottom: 10px;
    margin-bottom: 20px;
    color: #333;
    font-weight: bold;
}
.caption{
    font-weight: bold;
}
.col-sm-3 .tile_title{
    font-size: 11px;
}
.tile a{
    text-decoration: none;
}
.box00{
    border: 1px solid #CCC;
    border-right: none;
    padding: 15px;
}
.box00:last-child{
    border-right: 1px solid #CCC;
}
.box01{
    background: #F9F9F9;
    padding: 20px;
}
.box02{
    border: 15px solid #fcf3e2;
    padding: 15px;
}
.box03{
    border: 15px solid #cdf9e4;
    padding: 15px;
}
.box04{
    background: orange;
    padding: 15px;
}
.hr01{
    background: none;
    border: none;
    margin: 40px 0;
    border-bottom: 1px dashed #CCC;
}
.jigyo_link{
    border: 1px solid #333;
    text-align: center;
}
.jigyo_link a:hover{
    color: #333;
    background: #fff;
}
.jigyo_link a{
    padding: 10px;
    background: #333;
    color: #FFF;
    display: block;
    text-decoration: none;
}



@media only screen and (max-width:767px){
    .pc{
        display:none;
    }
    .mobile{
        display:block;
    }
    #wrapper{
        width: 95%;
        margin: 0 auto;
				background-color: white;
    }
    #main, #sidebar{
        float: none;
        width: 100%;
    }
    th,td{
        display: block;
        width: 100%;
        text-align: left;
    }
    .box00{
        border: none;
        height: auto !important;
    }
}



@media only screen and (max-width:767px){
}


/********************************************
Header
********************************************/
#top_slide .slide_item{
    margin: 0 10px;
}
#top_slide .slick-prev:hover,
#top_slide .slick-prev:focus,
#top_slide .slick-next:hover,
#top_slide .slick-next:focus
{
    color: #FFF;
    outline: none;
    background: transparent;
}
#top_slide .slick-prev:hover:before,
#top_slide .slick-prev:focus:before,
#top_slide .slick-next:hover:before,
#top_slide .slick-next:focus:before
{
    opacity: 1;
}
#top_slide .slick-prev.slick-disabled:before,
#top_slide .slick-next.slick-disabled:before
{
    opacity: .25;
}

#top_slide .slick-prev:before,
#top_slide .slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    font-weight: bold;
    line-height: 1;

    opacity: .75;
    color: #FFF;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#top_slide .slick-prev
{
    left: 0px;
    z-index: 100;
}
[dir='rtl'] #top_slide .slick-prev
{
    right: 0px;
    left: auto;
}
#top_slide .slick-prev:before
{
    content: '<';
}
[dir='rtl'] #top_slide .slick-prev:before
{
    content: '<';
}

#top_slide .slick-next
{
    right: 0px;
}
[dir='rtl'] #top_slide .slick-next
{
    right: auto;
    left: 0px;
}
#top_slide .slick-next:before
{
    content: '>';
}
[dir='rtl'] #top_slide .slick-next:before
{
    content: '>';
}
#top_slide{
    position: relative;
}
#top_slide .slick-prev{
    left: -30px;
}
#top_slide .slick-next{
    right: -30px;
}
#top_slide .slick-prev,
#top_slide .slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    margin-top: -10px;
    padding: 0;

    cursor: pointer;

    color: #8fd600;
    border: none;
    outline: none;
    background: transparent;

    z-index: 1000;
}
#top_slide02 .slide_item{
    margin: 0 10px;
}
#top_slide02 .slick-prev:hover,
#top_slide02 .slick-prev:focus,
#top_slide02 .slick-next:hover,
#top_slide02 .slick-next:focus
{
    color: #FFF;
    outline: none;
    background: transparent;
}
#top_slide02 .slick-prev:hover:before,
#top_slide02 .slick-prev:focus:before,
#top_slide02 .slick-next:hover:before,
#top_slide02 .slick-next:focus:before
{
    opacity: 1;
}
#top_slide02 .slick-prev.slick-disabled:before,
#top_slide02 .slick-next.slick-disabled:before
{
    opacity: .25;
}

#top_slide02 .slick-prev:before,
#top_slide02 .slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    font-weight: bold;
    line-height: 1;

    opacity: .75;
    color: #FFF;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#top_slide02 .slick-prev
{
    left: 0px;
    z-index: 100;
}
[dir='rtl'] #top_slide02 .slick-prev
{
    right: 0px;
    left: auto;
}
#top_slide02 .slick-prev:before
{
    content: '<';
}
[dir='rtl'] #top_slide02 .slick-prev:before
{
    content: '<';
}

#top_slide02 .slick-next
{
    right: 0px;
}
[dir='rtl'] #top_slide02 .slick-next
{
    right: auto;
    left: 0px;
}
#top_slide02 .slick-next:before
{
    content: '>';
}
[dir='rtl'] #top_slide02 .slick-next:before
{
    content: '>';
}
#top_slide02{
    position: relative;
}
#top_slide02 .slick-prev{
    left: -30px;
}
#top_slide02 .slick-next{
    right: -30px;
}
#top_slide02 .slick-prev,
#top_slide02 .slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    margin-top: -10px;
    padding: 0;

    cursor: pointer;

    color: #8fd600;
    border: none;
    outline: none;
    background: transparent;

    z-index: 1000;
}

#top_line_wrap{
    background: #FFF;
    padding: 5px 0;
}
#top_line{
    text-align: right;
    line-height: 30px;
    vertical-align: middle;
    width: 1000px;
    margin: 0 auto;
}
#top_line > a{
    font-size: 35px;
    vertical-align: middle;
    color: #333;
}
#top_line > a:hover{
    color: #640125;
}
#top_line form{
    display: inline;
}
#nav_wrap{
    background: #640125;
}
#nav{
    vertical-align: middle;
    width: 1000px;
    margin: 0 auto;
    position: relative;
}
#nav #logo{
    padding: 10px 0;
    width: 365px;
    float: left;
}
ul#menu-gnav:after{
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}
ul#menu-gnav{
    position: absolute;
    right: 0;
    bottom: 0;
    background: url(images/line01.png) repeat-y;
    background-position: right center;
    padding-right: 4px;
    text-align: right;
}
#menu-gnav li{
    float: left;
    line-height: 40px;
    width: 155px;
    text-align: center;
    background: url(images/line01.png) repeat-y;
    background-position: 0;
}
#menu-gnav li.current-page-ancestor,
#menu-gnav li.current_page_item,
#menu-gnav li:hover{
    background: #FFF url(images/line01.png) repeat-y;
    background-position: 0;
}
#menu-gnav li.current-page-ancestor a,
#menu-gnav li.current_page_item a,
#menu-gnav li:hover a{
    color: #640125;
}
#menu-gnav li a{
    color: #FFF;
    display: block;
    text-decoration: none;
}
#service_wrap{
    background: rgba(0,0,0,0.5);
    padding: 10px 0 20px 0;
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
}
#top_service{
    width: 1000px;
    margin: 10px auto 0 auto;
}
#top_service li{
    float: left;
    width: 12.5%;
}
#search_form{
    display: inline-block;
    position: absolute;
    right: 0;
    top: 5px;
}

@media only screen and (max-width:767px){
    #top_line{
        width: 95%;
        margin: 0 auto;
        text-align: center;
    }
    #search_form{
        display: none;
    }
    #nav{
        width: 100%;
        margin: 0 auto;
        position: relative;
        height: 65px;
    }

    #nav #logo{
        float: left;
        width: 240px;
        margin-left: 10px;
    }
    ul#menu-gnav{
        background: #FFF;
        padding-right: 0;
    }
    #menu-gnav{
        width:100%;
        margin:0 auto;
        display:none;
        position:absolute;
        top: 65px;
        z-index:100;
   }
    #menu-gnav li{
/*        overflow:hidden;
        position:relative;*/
        height:60px;
        width: 100%;
        float:none;
        background:#FFF;
        border-bottom:1px solid #EAE8DF;
    }
    #menu-gnav li:hover{
        background: #FFF;
    }
    #menu-gnav li a{
        color: #333;
        text-decoration: none;
        display:block;
        height:60px;
        line-height: 60px;
    }
    #sp_menu{
        width: 42px;
        height: 42px;
        line-height: 52px;
        float: right;
        text-align: center;
        padding: 10px 0;
        margin-right: 10px;
    }
    #sp_menu img{
        width: 70px;
    }
    #sp_menu_icon{
        color: #FFF;
        font-size: 3em;
    }
    .slide_btn{
        position: relative;
        z-index: 200;
    }
    #top_service{
        width: 80%;
        margin: 0 auto;
    }
    #top_service li{
        width: 25%;
    }
}


/********************************************
Fotoer
********************************************/
#footer_wrap{
    background: #eeeeee;
}
#footer{
    width: 1000px;
    margin: 0 auto;
    padding: 50px 0;
}
#footer span{
    margin-right: 30px;
    display: inline-block;
}
#footer span:last-child{
    margin-right: 0;
}
#menu-fnav a,
#footer a{
    color: #333;
}
#fnav_wrap{
    margin-top: 50px;
    background: #640125;
    padding: 5px 0;
}
.flogo{
    width: 168px;
    margin-bottom: 10px;
}
#menu-fnav {
    width: 1000px;
    margin: 0 auto;
    text-align: right;
}
#menu-fnav li a{
    color: #FFF;
}
#menu-fnav li{
    display: inline-block;
    margin-left: 30px;
    background: url(images/fnav.svg) no-repeat;
    background-size: 6px 9px;
    background-position: 0 7px;
    padding-left: 10px;
}
ul#menu-fnav:after{
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}
#copy{
    text-align: center;
    padding-bottom: 10px;
}
.fgroup_wrap{
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px dashed #CCC;
}
.frelation{
    font-size: 1.3em;
    font-weight: bold;
}
#f_info{
    width: 1000px;
    margin: 0 auto;
    font-size: 8px;
    padding: 20px 0;
}
.f_info{
    text-align: left;
    margin-bottom: 20px;
}

@media only screen and (max-width:767px){
     #f_info{
        width: 100%;
     }
   #menu-fnav{
        width: 95%;
        margin: 0 auto;
        text-align: center;
    }
    #menu-fnav li{
        display: inline-block;
        float: none;
        margin: 0;
        margin-right: 20px;
    }
    #footer{
        width: 95%;
        margin: 0 auto;
    }
    #footer .fgroup{
        display: block;
        margin: 0;
    }
}


/********************************************
Home
********************************************/
.whatsnew a{
    color: #333;
}
.whatsnew li{
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px dashed #CCC;
}
.whatsnew li:last-child{
    margin-bottom: 0;
}
.whatsnew .date{
    display: inline-block;
    margin-right: 30px;
}
.whatsnew .title{
    display: inline-block;
}
@media only screen and (max-width:767px){
}


/********************************************
Sidebar
********************************************/
#sidebar a{
    text-decoration: none;
}
#sidebar .sub-menu > li{
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
}
#sidebar .menu{
    border-bottom: 1px solid #CCC;
}
#sidebar .menu > li a{
    color: #FFF;
    font-size: 18px;
    display: block;
    padding: 15px 0 10px 30px;
    background: #333 url(images/menu_li.svg) no-repeat;
    background-position: 95% center;
    background-size: 20px;
}
#sidebar .sub-menu > li a{
    background: #FFF;
    color: #333;
    font-size: 12px;;
    border-bottom: 1px dashed #CCC;
    display: block;
    padding-right: 30px;
    background: url(images/sub-menu_li.svg) no-repeat;
    background-position: 93% center;
    background-size: 10px;
}
#sidebar .sub-menu > li:last-child a{
    /*margin-bottom: 40px;*/
    border-bottom: none;
}
#sidebar .sub-menu > li.current-menu-item a,
#sidebar .sub-menu > li a:hover{
    background: #F0F0F0 url(images/sub-menu_li.svg) no-repeat;
    background-position: 93% center;
    background-size: 10px;
}
#sidebar .title_side{
    font-size: 22px;
    font-weight: bold;
    background: url(images/title01.png) no-repeat;
    background-position: left 16px;
    background-size: 22px;
    padding: 18px 0 18px 35px;
    border-bottom: 2px solid #640125;
    line-height: 1.1;
}
/*#sidebar .menu li{
    border-bottom: 1px solid #EEE;
    font-size: 12px;
}
#sidebar .menu li a{
    display: block;
    color: #333;
    text-decoration: none;
    padding: 20px 0 20px 20px;
}
#sidebar .menu li:hover a,
#sidebar .menu li.current-menu-item a{
    color: #FFF;
}
#sidebar .menu li:hover,
#sidebar .menu li.current-menu-item{
    background: #CCC;
}
#sidebar .title_side{
    font-size: 22px;
    font-weight: bold;
    background: url(images/title01.png) no-repeat;
    background-position: left 16px;
    background-size: 22px;
    padding: 18px 0 18px 35px;
    border-bottom: 2px solid #640125;
    line-height: 1.1;
}*/
@media only screen and (max-width:767px){
    #sidebar{
        margin-top: 40px;
    }
}


/********************************************
役員紹介
********************************************/
.yakuin{
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px dashed #CCC;
}
.yakuin-name{
    font-size: 22px;
    margin-bottom: 10px;
    font-weight: bold;
}
.yakuin-academic,
.yakuin-biography{
    margin-left: 20px;
}
.officer .summary{
    width: 25%;
    float: left;
}
@media only screen and (max-width:767px){
}


/********************************************
グループオフィス
********************************************/
.group{
    margin-bottom: 50px;
}
.group:last-child{
    margin-bottom: 0;
}
@media only screen and (max-width:767px){
}


/********************************************
主要取引先
********************************************/
.client_list li{
    background: url(images/fnav.svg) no-repeat;
    background-size: 6px 9px;
    background-position: 0 7px;
    padding-left: 10px;
    float: left;
    width: 50%;
}
@media only screen and (max-width:767px){
    .client_list li{
        width: 100%;
    }
}


/********************************************
Q&A
********************************************/
.interview dt{
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
}
.interview dd{
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px dashed #CCC;
}
@media only screen and (max-width:767px){
}


/********************************************
FAQ
********************************************/
.faq_list{
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px dashed #CCC;
}
.faq_list dt{
    font-weight: normal;
    font-size: 14px;
}
@media only screen and (max-width:767px){
}


/********************************************
検索
********************************************/
.search_list{
    margin-bottom: 40px;
}
@media only screen and (max-width:767px){
}


/********************************************
事業内容
********************************************/
.service_item{
    padding: 40px 0;
}
.service_list li{
    margin-bottom: 10px;
}
.service_item .caption{
    font-size: 0.9em;
}
.service_item h2{
    font-size: 30px;
    margin-bottom: 25px;
    line-height: 50px;
}
.service_item h2 span{
    font-weight: bold;
    border-bottom: 3px solid #333;
    padding-bottom: 5px;
}

@media only screen and (max-width:767px){
    .service_item h2 span{
        font-size: 25px;
        line-height: 45px;
    }
}


/********************************************
建設業
********************************************/
#service_wrap {
    padding: 10px 10px 20px 10px;
}
.text01{
    font-size: 1.6em;
}
@media only screen and (max-width:767px){
    .text01{
        font-size: 1.1em;
    }
}


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

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

@media only screen and (max-width:767px){
}


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

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

@media only screen and (max-width:767px){
}


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

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

@media only screen and (max-width:767px){
}


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

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

@media only screen and (max-width:767px){
}


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

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

@media only screen and (max-width:767px){
}


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

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

@media only screen and (max-width:767px){
}


/********************************************
Contact Form
********************************************/
.submit input{
    width: 100%;
    height: 35px;
}
.submit{
    width: 120px;
    margin: 30px auto 0;
}
.frame {
    border: 1px solid #c8c9ca;
    font-size: 12px;
    padding: 10px;
}
.wpcf7-submit{
    height:30px;
    width:70px;
}
.wpcf7 span.wpcf7-not-valid-tip {
    display: none;
}
.wpcf7 .wpcf7-not-valid {
    background: pink;
}
.wpcf7 .wpcf7-response-output {
    margin: 10px 0 0;
    padding: 8px 35px 8px 14px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.wpcf7 .wpcf7-validation-errors {
    color: #B94A48;
    background-color: #F2DEDE;
    border: 1px solid #EED3D7;
}
.wpcf7 .wpcf7-mail-sent-ok {
    color: #3A87AD;
    background-color: #D9EDF7;
    border: 1px solid #BCE8F1;
}
.odenwa{
    line-height: 1.4;
    text-align: right;
    font-size: 26px;
    height: 200px;
    border: 15px solid #F8F7F3;
    padding: 15px;
    padding-top: 27px;
    background: url(images/odenwa_bg.jpg) no-repeat;
    background-position: left bottom;
}
.big_font{
    font-weight: bold;
    font-size: 37px;
    margin-left: 5px;
    display: inline-block;
}
@media only screen and (max-width:767px){
    .odenwa{
        background: none;
        font-size: 22px;
        text-align: center;
        height: auto;
    }
    .big_font{
        font-size: 30px;
    }
}


/********************************************
Sitemap
********************************************/
.wsp-pages-list{
    margin-bottom: 40px;
}
.wsp-pages-list li{
    margin-left: 20px;
    background: url(images/fnav.svg) no-repeat;
    background-size: 6px 9px;
    background-position: 0 7px;
    padding-left: 10px;
}
.wsp-pages-list > li.page_item{
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dashed #CCC;
}
.wsp-pages-title{
    display: none;
}
@media only screen and (max-width:767px){
}


/********************************************
Bootstrap
********************************************/
.container-fluid {
    max-width: 100%;
    padding: 0px;
}

/*↓カラム間のガター幅が60px、カラムの左右の余白が30pxになる*/
.o-3-column .col-sm-4 { padding: 5px 10px;}
.o-3-column {margin: 0 -10px;}

.o-4-column .col-sm-3 { padding: 0px 5px;}
.o-4-column {margin: 0 -10px;}

input[type=checkbox], input[type=radio]{
    margin-top: 0;
}

@media only screen and (max-width:767px){
    .o-4-column .col-sm-3 { padding: 5px 10px;}
}


/********************************************
Slider
********************************************/
body,html{
    height: 100%;
    min-width: 100%;
}
#top_slide,
#top_slide02{
    width: 100%;
    height: 80%;
}
/*#supersized-loader { position:absolute; top:50%; left:50%; z-index:0; width:60px; height:60px; margin:-30px 0 0 -30px; text-indent:-999em; background:url(img/progress.gif) no-repeat center center;}*/

#supersized {  display:block; position:absolute; left:0; top:0; overflow:hidden; z-index:-999; height:100%; width:100%; }
#supersized img { width:auto; height:auto; position:relative; display:none; outline:none; border:none; max-width: none;}
#supersized.speed img { -ms-interpolation-mode:nearest-neighbor; image-rendering: -moz-crisp-edges; }
#supersized.quality img { -ms-interpolation-mode:bicubic; image-rendering: optimizeQuality; }

#supersized li { display:block; list-style:none; z-index:-30; position:absolute; overflow:hidden; top:0; left:0; width:100%; height:100%; background:#111; }
#supersized a { width:100%; height:100%; display:block; }
#supersized li.prevslide { z-index:-20; }
#supersized li.activeslide { z-index:-10; }
/*#supersized li.image-loading { background:#111 url(img/progress.gif) no-repeat center center; width:100%; height:100%; }*/
#supersized li.image-loading img{ visibility:hidden; }
#supersized li.prevslide img, #supersized li.activeslide img{ display:inline; }


@media only screen and (max-width:767px){
}


/********************************************
Table
********************************************/
.scroll_pc{
    overflow: auto;
white-space: nowrap;
}
.scroll_pc::-webkit-scrollbar{
 height: 5px;
}
.scroll_pc::-webkit-scrollbar-track{
 background: #F1F1F1;
}
.scroll_pc::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}
.scroll_pc table{
    margin-bottom: 0 !important;
}
.th01{
    width: 100px;
}
@media only screen and (max-width:767px){
    .scroll table td,
    .scroll table th{
        display: table-cell;
        width: auto;
    }
    .scroll th{
        text-align: center !important;
    }
   .scroll{
    overflow: auto;
    white-space: nowrap;
    }
    .scroll::-webkit-scrollbar{
     height: 5px;
    }
    .scroll::-webkit-scrollbar-track{
     background: #F1F1F1;
    }
    .scroll::-webkit-scrollbar-thumb {
     background: #BCBCBC;
    }
    .scroll_pc table td,
    .scroll_pc table th{
        display: table-cell;
        width: auto;
    }
    .scroll_pc th{
        text-align: center !important;
    }
   .scroll_pc{
    overflow: auto;
    white-space: nowrap;
    }
    .scroll_pc::-webkit-scrollbar{
     height: 5px;
    }
    .scroll_pc::-webkit-scrollbar-track{
     background: #F1F1F1;
    }
    .scroll_pc::-webkit-scrollbar-thumb {
     background: #BCBCBC;
    }
    .th01{
        width: 100%;
    }
}
/********************************************
フォーム
********************************************/
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
    vertical-align: middle;
    box-sizing: border-box;
}

select {
    text-transform: none;
}

button {
    overflow: visible;
}

button,
input,
select,
textarea {
    max-width: 100%;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
    opacity: .5;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input[type="checkbox"],
input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 0.4375em;
    padding: 0;
}

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"] {
    -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
input[type="search"].search-field {
    width: 150px !important;
    height: 25px;
}

.search-submit {
    overflow: hidden;
    padding: 0 5px;
    text-align: center;
    height: 25px;
    position: relative;
    left: -4px;
    font-size: 1.3em;
}
button.search-submit{
/*    background: #FFF;
    color: #333;
    margin-left: 3px;*/
}
button,
button[disabled]:hover,
button[disabled]:focus,
input[type="button"],
input[type="button"][disabled]:hover,
input[type="button"][disabled]:focus,
input[type="reset"],
input[type="reset"][disabled]:hover,
input[type="reset"][disabled]:focus,
input[type="submit"],
input[type="submit"][disabled]:hover,
input[type="submit"][disabled]:focus {
    background: #640125;
    border: 0;
    border-radius: 2px;
    color: #fff;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-weight: 700;
    letter-spacing: 0.046875em;
    line-height: 1;
    padding: 5px;
    text-transform: uppercase;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
    background: white;
    color: #640125;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
    outline: thin dotted;
    outline-offset: -4px;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="week"],
input[type="month"],
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea {
    background: #f7f7f7;
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    border: 1px solid #d1d1d1;
    border-radius: 2px;
    color: #686868;
    padding: 5px;
    width: 100%;
    height: 30px;
}
textarea {
    height:120px;
}
input[type="date"]:focus,
input[type="time"]:focus,
input[type="datetime-local"]:focus,
input[type="week"]:focus,
input[type="month"]:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus {
    background-color: #fff;
    border-color: #007acc;
    color: #1a1a1a;
    outline: 0;
}

.post-password-form {
    margin-bottom: 1.75em;
}

.post-password-form label {
    color: #686868;
    display: block;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 13px;
    font-size: 0.8125rem;
    letter-spacing: 0.076923077em;
    line-height: 1.6153846154;
    margin-bottom: 1.75em;
    text-transform: uppercase;
}

.post-password-form input[type="password"] {
    margin-top: 0.4375em;
}

.post-password-form > :last-child {
    margin-bottom: 0;
}

@media only screen and (max-width:767px){
}



/********************************************
pager
********************************************/
.pagenation {
    margin-top: 50px;
    text-align: center;
}
.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.pagenation ul {
    margin: 0;
}
.pagenation li {
    float: left;
    list-style: none outside none;
    margin-left: 3px;
}
.pagenation li:first-child {
    margin-left: 0;
}
.pagenation li.active {
    background-color: #333;
    border-radius: 3px;
    color: #FFFFFF;
    cursor: not-allowed;
    padding: 10px 20px;
}
.pagenation li a {
    background: none repeat scroll 0 0 #CCCCCC;
    border-radius: 3px;
    color: #FFFFFF;
    display: block;
    padding: 10px 20px;
    text-decoration: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
.pagenation li a:hover {
    background-color: #333;
    color: #FFFFFF;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}

@media only screen and (max-width:767px){
}
h2{
	margin: 20px 0px 20px 0px
}
h3{
	margin: 20px 0px 20px 0px
}

#top_banner{
	display:inline-block;
}

.width50{
	width:50%;
}
.bg_wh{
	background-color: white;
}
