@charset "utf-8";
/* -- menu -------------------------------------------------------------------------------- */
ul#menu {/* position: relative; */
list-style: none;
border-top: 1px solid;
margin-top: 20px;
/* left: -37px; */width: 240px;
border-image: linear-gradient(to right, #bbb 0%, rgba(255, 255, 255, 0.5) 100%);
border-image-slice: 1;
display: block!important;
}
ul#menu li {
    line-height: 2.7;
    border-bottom: 1px solid;
    font-size: 17.5px;
    font-weight: bold;
    border-image: linear-gradient(to right, #bbb 0%, rgba(255, 255, 255, 0.5) 100%);
    border-image-slice: 1;
    background-image: url(../img/list_menu.png);
    background-repeat: no-repeat;
    background-position: 40px center;
}
ul#menu li:hover {
    background-image: url(../img/list_menu_h.png);
}

ul#menu li a {
    padding-left: 60px;
}
ul#menu li a:hover {
 
}

.pc-menu_position {
    position: absolute;
    left: 54px;
    top: 46px;
    font-family: serif;
    font-size: 15px;
    line-height: 1.7;
}
.pc-menu_position h1 {
    font-size: 42px;
    font-weight: bold;
    line-height: 1.6;
    margin-left: 40px;
}
.pc-menu_position .tel {
    font-size: 22px;
    margin-left: 40px;
}
.pc-menu_position .tel span{
    font-size: 22px;
    margin-left: 0px;
}
.pc-menu_position span {
    font-size: 30px;
    margin-left: 10px;
}
.pc-menu_position .txt_area {
    position: absolute;
    left: 80px;
    top: 50px;
}
.pc-menu_position .keyword {
    margin-left: 40px;
}
.pc-menu_position .facebook_bth img {
    width: 30px;
    margin-left: 40px;
    margin-top: 15px;
}

.pc-menu_position .menu_bottom{
    padding: 20px 40px 0;
}

.pc-menu_position .menu_bottom h3{
    font-size: 22px;
    margin-bottom: 
    10px;
}

/* -- content -------------------------------------------------------------------------------- */
div#content{
    background-image: url(../img/bc_left.png);
    width: 1020px;
    height: auto;
    background-repeat-x: no-repeat;
    background-repeat: no-repeat;
    min-height: 3470px;
    padding-left: 180px;
}
.header img {
    display: block;
    margin-left: 50px;
    width: 100%;
}
@media only screen and (min-width: 1360px){
#side_img {
background-image: url(../img/index_bc2.png);
    width: 112px;
    height: auto;
    background-repeat-x: no-repeat;
    min-height: 2900px;
    position: absolute;
    top: 0;
    right: 0;
    background-size: 124px;
}
}
div.content_warp {
    font-size: 15px;
    width: 940px;
    margin: 0 auto;
    padding-top: 10px;
}
div.content_warp h3.title{
	text-indent: -9999px;
	background-repeat: no-repeat;
    position: absolute;
    width: 22px;
    height: 300px;
    background-size: 100%;
    margin-left: 44px;
	margin-top: -14px;
}
div.content_warp::before {
    content: "";
    border-top: 1px solid black;
    width: 100%;
    height: 11px;
    display: block;
}
#sesion1.content_warp h3.title {
    background-image: url(../img/title_top_03.png);
}
#sesion2.content_warp h3.title {
    background-image: url(../img/title_top_06.png);
}

#sesion2 .left-box{
    float: left;
    width: 61%;
    display: inline-block;
    margin: 0;
}

#sesion2 .left-box img{
    width: 100%;
}

#sesion2 .left-box div a{
    display: block
}

#sesion2 .right-box{
    float: left;
    width: 39%;
    display: inline-block;
}

#sesion2 .right-box div{
    width: auto;
}
#sesion2 .right-box div img{
    max-width: 361px;
    padding-bottom: 6px;
    padding-left: 7px;
}

#sesion2 .right-box div a{
    display: block
}

#sesion3.content_warp h3.title {
    background-image: url(../img/title_top_08.png);
}
#sesion4.content_warp h3.title {
    background-image: url(../img/title_top_11.png);
    background-position: 0px -1px;
}

div.content_warp h4.sub_title {
    margin-left: 100px;
    margin-top: 28px;
    margin-bottom: 28px;
    font-size: 23px;
    letter-spacing: 3px;
}
#sesion3.content_warp h4.sub_title {
}
div.content_warp .content_warp_inner {
    display: flex;
    flex-flow: wrap;
    margin-bottom: 40px;
}
div.content_warp .content_warp_inner div{
	width:50%;
}
div.content_warp .content_warp_inner div:nth-child(odd){
	margin-right:1%;
	width:49%;
}
div.content_warp h5 {
    font-weight: bold;
    font-size: 17px;
    margin-bottom: 4px;
    padding: 0 16px;
}
#sesion1.content_warp p{
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 12px;
    padding: 0 10px;
}
#sesion3.content_warp p{
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 22px;
    padding: 0 10px;
    letter-spacing: 0px;
}
div#sesion4 {
    min-height: 450px;
}
#sesion4 .map_warp_inner {
	display:flex;
	flex-wrap:wrap;
    margin-top: 20px;
	position:relative;
}
#sesion4 .g_map img {
    width: 220px;
}
#sesion4 .g_map.top {
    position: absolute;
    top: 175px;
    left: 95px;
}

#sesion4 .g_map {
    position: absolute;
    top: 274px;
    left: 95px;
}


#sesion4 .map {
    position: absolute;
    right: 0;
}

#sesion4 .map img{
    max-width:600px; 
}

#address {
    width: 870px;
    margin: 0px auto 70px;
    position: relative;
    min-height: 100px;
    font-family: serif;
}
#address .ad_content {
    width: 100%;
}
.ad_top, .ad_bottom {
    display: flex;
}
#address .ad_top {
    border-bottom: 1px solid #000000;
    padding-bottom: 7px;
    margin-bottom: 17px;
    padding-left: 50px;
    padding-right: 0px;
}

#address .ad_top .keyword {
    font-size: 14px;
    position: relative;
    text-align: right;
    width: 100%;
    margin-top: 3px;
}

#address .ad_top .small{
    font-size: 12px;
}


#address .ad_top h2:before {
    background-image: url(../img/logo_03.png);
    content: "";
    width: 180px;
    height: 150px;
    position: absolute;
    left: 0px;
    top: 4px;
    background-repeat: no-repeat;
    background-size: 28%;
}
#address .ad_top h2{
    font-size: 38px;
    letter-spacing: 0px;
    width: 430px;
    margin-left: 5px;
    font-weight: bold;
}
#address .ad_top h2 span{
	font-size: 20px;
    margin-left: 10px;
}
#address .ad_bottom {
    font-size: 15px;
    letter-spacing: 1px;
    position: relative;
}
#address .ad_bottom .address_tel {
    position: absolute;
    right: 35px;
    top: -6px;
    font-size: 20px;
    letter-spacing: 1px;
}

#address .ad_bottom .address_tel .small {
    font-size:14px;
}

#address .ad_bottom .address_tel2 {
    position: absolute;
    right: 35px;
    top: 19px;
    font-size: 20px;
    letter-spacing: 1px;
}

#address .ad_bottom .address_tel2 .small {
    font-size:14px;
}

#address .ad_bottom .facebook_bth img {
    width: 25px;
    position: absolute;
    right: 0;
    top: -3px;
}
#address .ad_bottom .address_fax {
    position: absolute;
    right:37px;
    top: 45px;
}

#address .ad_bottom .address_area th{
    padding:0 8px 4px 0px;
    font-size:13px;
    letter-spacing: 0;
    vertical-align: top;
}

#address .ad_bottom .address_area td{
    padding:0 4px 4px 4px;
    font-size:13px;
    letter-spacing: 0;
}

.xs-visible{
    display: none;
}

.xs-hidden{
    display: inherit;
}

.footer{
    font-size: 15px;
    width: 870px;
    margin: 0 auto;
}
.footer_img{
    border-bottom: 1px solid black;
    margin-bottom: 10px;
    padding-bottom: 40px;
}
.footer p{
	text-align:center;
	font-size: 13px;
}
/* -- 調整CSS Edge -------------------------------------------------------------------------------- */
@supports (-ms-ime-align: auto) {
  /* Edge のみ適用される */
#address .ad_top h2{
margin-top:7px;
}
#address .ad_top{
padding-bottom:15px;
}
#address .ad_bottom .address_tel{
top:-8px;
}
}
/* -- 調整CSS IE11 -------------------------------------------------------------------------------- */
@media all and (-ms-high-contrast: none){
#address .ad_top h2{
margin-top:7px;
}
#address .ad_top{
padding-bottom:15px;
}
#address .ad_bottom .address_tel{
top:-8px;
}
}