@charset "utf-8";
/* CSS Document */

/*■01.RESET HTML*/
img { margin:0px; padding:0px; border:0px;transition:All 0.3s ease; -webkit-transition:All 0.3s ease; -moz-transition:All 0.3s ease; -o-transition:All 0.3s ease; }
.ov_hover:hover img { opacity:0.7; filter:alpha(opacity=70); -ms-filter: "alpha( opacity=70)"; }
a { color: #333; text-decoration:underline; }
a:hover { text-decoration: none; }
html {overflow-y:auto;}
body { font-size:14px; font-family: "Meiryo","メイリオ","MS PGothic","MS Pゴシック",sans-serif; color: #232323; min-width: 1000px; overflow: hidden;}


/*■02.CLEAR FLOAT*/
.clearfix:after { clear: both; display: block; content: " "; height: 0px; visibility: hidden; }
.clearfix { display: inline-block; }
/* Hide these rules from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
.hidden{display: none;}


/*■03.USE MEDIA*/
.pull-left { float:left; }
.pull-right { float:right; }
.media, .media-body { overflow:hidden; }
.media-text:after { clear: both; display: block; content: ""; height: 0px; visibility: hidden; }


/*■04.LAYOUT*/
.container { position: relative; width: 1000px; margin: 0 auto; }

/*■05.FLEX*/
.dis_flex{
    display: flex;
    display: -webkit-flex; /* Safari */
    display: -moz-flex; /* Firefox */
    display: -ms-flex; /* IE */
}

/*justify-content*/
.flex_jus_start{
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    -ms-justify-content: flex-start;
}
.flex_jus_end{
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
}
.flex_jus_center{
    justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
}
.flex_jus_between{
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
}
.flex_jus_around{
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -moz-justify-content: space-around;
    -ms-justify-content: space-around;
}
.flex_jus_ini{
    justify-content: initial;
    -webkit-justify-content: initial;
    -moz-justify-content: initial;
    -ms-justify-content: initial;
}

/*align-items*/
.flex_align_item_start{
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    -ms-align-items: flex-start;
}
.flex_align_item_end{
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
}
.flex_align_item_stretch{
    align-items: stretch;
    -webkit-align-items: stretch;
    -moz-align-items: stretch;
    -ms-align-items: stretch;
}
.flex_align_item_baseline{
    align-items: baseline;
    -webkit-align-items: baseline;
    -moz-align-items: baseline;
    -ms-align-items: baseline;
}
.flex_align_item_center{
    align-items: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
}
.flex_align_item_ini{
    align-items: initial;
    -webkit-align-items: initial;
    -moz-align-items: initial;
    -ms-align-items: initial;
}
.flex-container {
	-webkit-flex-wrap: wrap; 
    -moz-flex-wrap: wrap; 
    -ms-flex-wrap: wrap; 
	flex-wrap: wrap;
}
.flex_bg{
    width: 100%;
    margin-right: -100%;
}
.flex_content{
    width: 100%;
    position: relative;
}


/* Lay out */
header .SEO h1 {
    line-height: 27px;
    color: #cccccc;
    font-weight: normal;
    font-size: 10px;
    text-align: right;
}
header .h_contact .h_tel{
    margin-right: 15px;
}
header nav.header__nav{
    border-bottom: solid 8px #970707;
    margin-top: 19px;
}
header nav.header__nav ul li{
    background: url(../common_img/hnav_soc.png) no-repeat top left;
    text-align: center;
    padding: 0 1px;
    position: relative;
}
header nav.header__nav ul li:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 8px;
    background: #c81414;
    left: 0;
    bottom: -8px;
}
header nav.header__nav ul li:hover:after{
    content: "";
    position: absolute;
    width: 100%;
    height: 8px;
    background: url(../common_img/hnav_mt.png) no-repeat bottom center;
    left: 0;
    bottom: -16px;
}
header nav.header__nav ul li p.hnav_000{
    position: absolute;
    top: 13px;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 1;
}
header nav.header__nav ul li p.hnav_FFF{
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
}
header nav.header__nav ul li:last-child{
    background: url(../common_img/hnav_soc.png) no-repeat top left, url(../common_img/hnav_soc.png) no-repeat top right;
}
header nav.header__nav ul li a{
    display: block;
    height: 47px;
    background: none;
}
header nav.header__nav ul li:hover p.hnav_FFF{
    opacity: 1;
}
header nav.header__nav ul li:hover p.hnav_000{
    opacity: 0;
}
header nav.header__nav ul li a:hover{
    background: url(../common_img/hnav_bg01.jpg) no-repeat top left, url(../common_img/hnav_bg02.jpg) no-repeat top right #c81414;
}
header nav.header__nav ul li:nth-child(1){
    width: 140px;
}
header nav.header__nav ul li:nth-child(2){
    width: 225px;
}
header nav.header__nav ul li:nth-child(3){
    width: 160px;
}
header nav.header__nav ul li:nth-child(4){
    width: 160px;
}
header nav.header__nav ul li:nth-child(5){
    width: 156px;
}
header nav.header__nav ul li:nth-child(6){
    width: 159px;
}
footer{
    margin-top: 60px;
}
footer .footer__nav{
    background: #970707;
}
footer .footer__nav ul li{
    padding: 20px 0;
}
footer .footer__nav ul li a{
    display: block;
    font-size: 13px;
    padding: 0 27px;
    border-left: solid 1px #FFF;
    line-height: 1.0;
    text-decoration: none;
    color: #FFF;
}
footer .footer__nav ul li a:hover{
    color: #add6f8;
}
footer .footer__nav ul li:last-child a{
    border-right: solid 1px #FFF;
}
footer .footer__h{
    margin-top: 30px;
    margin-bottom: 40px;
}
footer .footer__h .f_tel{
    margin-right: 25px;
}
footer .page_up {
    position: fixed;
    bottom: 200px;
    right: 30px;
    /* margin-right: -600px; */
    z-index: 100;
    display: none;
}