@media (max-width: 767px) {
.el_area_main_text {
    min-height: auto;
  font-size:16px;
}
  
  #offcanvas-toggler {
    display: block;
}
  #sp-menu{
        position: fixed;
    right: 10px;
  }
  
 #sp-header {
   background: #fff;
    padding-bottom: 10px;
    border-bottom: 1px solid #3991cb;
} 
 #sp-header-right {
    width: 100%;
    margin-right: 0;
}
  #sp-topbar-text{
    font-size: 2.6vw;
}
.main_contents_text {
    text-align: center;
    padding: 10px 0;
    font-weight: bold;
    font-size: 12px;
}  
  
/*  #sp-menu{
    width: auto;
    margin: 54px 0 0;
  } 
  */
   #sp-menu{ 
      width: auto;
    margin: 0;
    position: absolute!important;
    bottom: 6px;
    padding: 0;
  }  
  
#offcanvas-toggler >i {
    color: #fff;
    background: #7b0013;
    padding: 9px;
}
#offcanvas-toggler {
    float: right;
    line-height: 36px;
    margin-left: 15px;
    font-size: 20px;
  margin-top:8px;
}  
 
  
.toparea02, .toparea03, .toparea04, .toparea05, .toparea06, .toparea07, .toparea08, .toparea09, .toparea10, .toparea11, .toparea12, .toparea14, #sp-footer-top .container, #sp-logo-area .container {
    margin: 0 auto;
    width:100%;
    padding: 20px 10px;
    
} 
 .customtoparea05 {
    width: 100%;
    margin: 0 auto;
} 
  
#sp-header .container {
    width: 100%;
}  
  
.contact_inspection_bnr01 {
    float: left;
    width: 80%;
    margin-right: 0;
    margin: 0 10% 20px;
}
  
.contact_inspection_bnr02 {
    float: left;
    width: 80%;
    margin-right: 0;
    margin: 0 10% 0px;
}  
  
.sp-megamenu-parent {
    width: auto!important;
    display: none!important;
}  
  
  .customtoparea09{
    padding-bottom:30px;
  }
  
.customtoparea04, .customtoparea07, .customtoparea09, .customtoparea12, .customtoparea14 {
    width: 100%;
    margin: 0 auto;
}  
  
  #sp-logo{
width: 50%;
    float: left;
  }
  
#sp-topbar-text {
    line-height: 1.5em;
    margin: 7px 1%;
    float: left;
    width: 48%;
}
#sp-header-right a:hover{
  opacity: 1;
}
.pc-custom{
	display: none;
}
.sp-custom{
	display: block;
}
.header_contact {
    float: left;
    width: 31.33%;
    margin: 0 1% 10px;
    text-align: center;
}  
  .header_voice{
    float: left;
    width: 31.33%;
    margin: 0 1% 10px;
    text-align: center;    
  }
.header_voice a{
	background-color: #7b0013;
	color: #fff;
	font-size: 4vw;
	font-weight: bold;
	display: block;
	line-height: 3;
	text-align: center;
}
.header_voice a:hover{
	background-color: #7b0013;
}
.header_contact a{
	background-color: #7b0013;
	color: #fff;
	font-size: 4vw;
	font-weight: bold;
	display: block;
	line-height: 3;
	text-align: center;
}
.header_contact a:hover{
	background-color: #7b0013;
}
.header_estimate {
    float: left;
    width: 31.33%;
    margin: 0 1% 10px;
    text-align: center;
}
.header_estimate a{
	background-color: #7b0013;
	color: #fff;
	font-size: 4vw;
	font-weight: bold;
	display: block;
	line-height: 3;
	text-align: center;
}
.header_estimate a:hover{
	background-color: #7b0013;
}
.header_tel {
    float: right;
    width: 100%;
    text-align: center;
}  
.header_tel a{
    display: block;
    border: 2px solid #7b0013;
  	background-color: #ffffff;
    padding: 5px 0;
    margin: 0 1%;
    
} 
.header_contact img, .header_estimate img,.header_tel img{
    display: initial;
} 
.merit_img02, .merit_img05 {
    padding: 0;
}  
 
.contents_merit_img01_top {
    float: left;
    width: 100%;
    padding-bottom: 0;
}
  
 .merit_img01, .merit_img02, .merit_img03, .merit_img04, .merit_img05, .merit_img06 {
    margin-bottom: 10px;
    width: 100%;
    text-align: center;
} 
  
.merit_img01 img, .merit_img02 img, .merit_img03 img, .merit_img04 img, .merit_img05 img, .merit_img06 img{
    display: initial;
}  
  
  
.toparea07 {
    background: url(../../../../images/top/04_option/bnr_background.jpg)no-repeat center;
    float: left;
    width: 100%;
    clear: both;
    margin-top:0;
}
  
.company_img01,.company_img02,.company_text {
    width: 100%;
}  
  
.contents_support_img {
    width: 100%;
    float: left;
    margin: 0;
} 
.contents_support_text_area {
    width: 100%;
    float: left;
    margin: 0;
}  
  
 .company_img01 {
    text-align: center;
   margin-bottom:20px;
} 
  .company_img01 img{
    display: initial;
}  
  
.contents_bldg_area_bloc {
    width: 46%;
    float: left;
    margin: 2%;
}  
  .contents_bldg_area_img{
      text-align: center;  
} 
 .contents_slide_img01 ,.contents_slide_img02{
    width: 100%;
} 
  .about_img01,.about_img02{
        width: 100%;
  }
  .contact_tel{
      width: 100%;
  }
  .contact_address{
    width: 90%;
    margin: 10px 5%;
    font-size: 3.6vw;
  }
.contact_costdown_bnr01{
    width: 80%;
    float: left;
    margin: 0 10% 20px;
}  
.contact_costdown_bnr02{
    width: 80%;
    float: left;
    margin: 0 10%;
} 
.option_img01{
    width:100%;
    margin-bottom:7px;
  }  
.option_img02{
    width:100%;
  }  
.contents_voc01{
    width:80%;
    margin:10px 10%;
  }  
.contents_voc02{
    width:80%;
    margin:10px 10%;
  }  
.contents_voc03{
    width:80%;
    margin:10px 10%;
  } 
.customtoparea02{
    padding:10px 0
  }  
  .contents_merit_img01{
    padding: 20px 0 20px;
  }  
.toparea06 .sp-module-content {
    margin: 10px 0;
}  
.toparea08 .sp-module-content {
    margin: 10px 0;
}
.toparea10 .sp-module-content {
    margin: 10px 0;
}
.contents_company_area{
    margin:10px 0;
  }  
  .main_bloc .main_img{
    width: 80%;
    margin: 0 10%;
    margin-bottom: 20px;
    text-align: center;
    float: none;
  }
  .main_img img{
    float:none;
    display:initial;
  }
  .main_img{
    text-align:center;
  }
  .main_bloc .main_text{
    width:100%;
    margin:0  
  }  
  .main_bloc2{
    width:100%;
  }  
  .renewal_text01{
    width:100%;
    margin-bottom:10px;
  }
  .renewal_text02{
    width:100%;  
  }
  .main_text{
    padding-bottom:10px;
  }
.renewal_img3 {
    width: 100%;
    margin-left:10%;
}  
.company_bloc li {
    width: 100%;
    margin: 1% 0;
}  
.access_area {
    width: 100%;  
  }  
  .maker_elevator{
    width: 50%;
  }  
  .blog_nikkei_article .item {
    width: 100%;
  }  
.nikkei_article_img {
    width: 80%;  
  }  
  .head .header_tel img{
    width:auto;
  }
  
  
/**改修・保守・点検**/ 
.el_area_m04_img00 {
    width: 46%;
}
.el_area_06_bloc_left{
   width:100%;
}
.el_area_06_bloc_img{
   margin-top:0;
}
.el_area_06_bloc_center{
   width: 100%;
}  
.el_area_06_bloc_img{
    width: 100%;
    float: left;
    text-align: center;    
    position:initial;
    margin-top:0;
}  
.el_area_06_bloc_right{
   float:left;
   width:100%;
}  
.el_area_ma01_bloc_left {
    width: 100%;
    margin-right: 0;
}
.el_area_ma01_bloc_right{
    width: 100%;
    margin-left:0;
}
.el_area_ma01_bloc_right_img {
    position: initial;
}
.el_area_application_title{
    font-size: 19px;
    line-height: 23px;
    letter-spacing:0;
}
.el_area_application_bloc{
    padding: 15px 0;
}
.el_area_application_bloc_left {
    width: 100%;
    margin-right: 0;
}
.el_area_application_bloc_left_details{
    font-size: 6vw;
}
.el_area_application_bloc_right {
    width: 100%;
    margin-left: 0;
    text-align: center;
}
  .el_area_application_bloc_right a{
    font-size: 10vw;
    line-height: 1.6;
  }
  .el_area_application_bloc_right a i{
    font-size: 10vw;
  }
.el_area_application_bloc_left {
    text-align: center;
}
.el_area_00_title{
    font-size: 15px;
}
.el_area_02_bloc_left{
    width: 100%;
    margin:0;
}
.el_area_02_bloc_right{
    width: 100%;
    margin:0;
    margin-top: 2%;
}
.el_area_02_bloc_list ul {
    margin: 0px;
}  
.el_area_title2{
    font-size: 21px;
    margin: 10px 0 5px;
}
.el_area_main_bloc{
    position: initial;
    margin: 10px 10% 0;
    background:none;
}

.el_area_main_bloc01 {
    width: 100%;
    margin: 1%;
    background: rgba(0,0,0,0.5);
    padding: 2%;
}
.el_area_ma01_img {
    margin: 25px 0;
}
.el_area_02_bloc_list ul {
    padding: 0;
}
.el_area_02_bloc_title{
    font-size: 19px;
    margin: 5px 0;
}   
.el_area_allpage_gray{
    padding:0;
}  
.el_area_application_tel {
    width: 100%;
    margin: 0;
}  
.el_area_m01_bloc_left {
    width: 100%;
    margin-right: 0;
}
.el_area_m01_bloc_right {
    width: 100%;
    margin-left: 0;
}
.el_area_04_left {
    width: 100%;
    margin: 0;
}
.el_area_04_right {
    width: 100%;
    margin: 0;
}
.el_area_04_img00 {
    width: 33.33%;
}
.el_area_05_bloc_left {
    width: 100%;
    margin-right: 0;
}
.el_area_05_bloc_right {
    width: 100%;
    margin-left: 0;
}
.el_area_05_bloc_img {
    text-align: center;
}
.el_area_05_bloc_title{
    font-size: 17px;
}  
/**RENEWAL**/  
.space_area {
    min-height: 30px;
}
.renewal_01 {
    width: 90%;
    padding: 0;
    margin: 0 5% 5%;
}
.renewal_01_text {
    margin: 20px 0 10px;
}
.renewal_01_left{
    width: 100%;  
}  
.renewal_01_right{
    width: 100%;     
}
.renewal_02{
    padding:0;  
}
.renweal_03_details {
    padding: 0;
    margin: 25px 0 0;;
}
.renewal_03_right{
    width: 100%;    
}
.renewal_03 {
    float: left;
    padding: 20px 0 0;
    position: initial;
}
.renewal_03_left {
    width: 90%;
    margin: 0 5%;
}
.renewal_town_img {
    position: initial;
}
.renweal_03_right_details{
   padding:20px 0;    
}  
.renweal_03_right_details tbody {
    font-size: 14px;
}  
.renweal_04_left {
    width: 90%;
    margin: 20px 5%;
    padding:0;
}  
.renweal_04_right {
    float: left;
    width: 90%;
    margin: 0 5%;
} 
.renweal_04_right_title{
    font-size: 15px;   
}
.renewal_04{
    position: initial;    
}
.renewal_04_right_img {
    position: initial;
}  
.renewal_05 {
    padding: 20px 0;
}  
.renweal_05_left_detail {
    width: 90%;
    padding: 0;
    margin: 20px 5%;
}  
.renweal_05_right {
    width: 100%;
    padding: 0;
}  
.renewal_06_area {
    margin: 20px 0 0;
}  
  .renewal_06{
        padding: 20px 2%;
  }  
.renweal_06_left {
    width: 100%;
    float: left;
}
.renewal_06 tbody {
    font-size: 14px;
}
.renweal_06_right {
    width: 100%;
    padding-left: 0;
    margin: 5% 0 0;
}  
.renewal_07 {
    margin: 20px 0 0;
}
.renewal_07_left {
    width: 100%;
    padding: 20px 0;
}  
.renewal_07_right {
    width: 100%;
    padding: 20px 0;
}  
.renewal_07 ul {
    font-size: 14px;
}  
  
.alltime_allday{
	text-align: center;
  width: 100%;
float: none;
  font-size: 6vw;
 	 margin: 0;
}
.alltime_allday .p-caption{
  	font-size: 3.8vw;
}
.contact_tel a{
 	 font-size: 10vw;
  	 line-height: 1.6;
}
/***/  
.blog .page_liftspot .liftspot_title1{
	font-size: 20px;
	border-bottom: none;
	border-top: none;
	margin-bottom: 3%;
	padding: 3% 0 0 5%;
  }
  .blog .page_liftspot .liftspot_title2{
	font-size: 30px;
	background: none;
	line-height: 1;
	padding: 0 0 0 5%;
	margin-bottom: 5%;
  }
  .blog .page_liftspot .liftspot_box{
	display: block;
	padding: 0 5%;
	margin-bottom: 8%;
  }
  .blog .page_liftspot .liftspot_box .liftspot_left{
	width: 100%;
  }
  .blog .page_liftspot .liftspot_box .liftspot_right{
	width: 100%;
	padding-left: 0;
  } 
}

.res_table table {
  border-collapse: collapse;
}
.res_table table td, .res_table table th {
  width: 100%;
  padding: 8px;
  display: block;
}
.res_table table th {
  background-color: #eee;
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
  #sp-logo{
    padding: 0;
  }
  #sp-topbar-text{
    font-size: 10px;
    margin-top: 5px;
  }
  .header_voice a, .header_estimate a, .header_contact a{
    font-size: 10px;
    margin: 0 3px;
  }
  .alltime_allday{
    text-align: center;
    width: 100%;
    float: none;
    margin: 0;
  }
  .contact_tel{
    width: 100%;
    float: none;
  }
  .contact_tel a{
    line-height: 1.6;
  }
  .el_area_application_tel{
    float: none;
    width: 100%;
    margin: 0;
  }
  .el_area_application_bloc{
    float: none;
  }
  .el_area_application_bloc_left,
  .el_area_application_bloc_right{
    float: none;
    width: 100%;
    text-align: center;
  }
  .el_area_application_bloc_right a{
    line-height: 1.4;
  }
}
@media (max-width: 767px) {
  #sp-bottom1,
  #sp-bottom2,
  #sp-bottom3,
  #sp-bottom4{
      background: #092b65;
      width: 100%;
      padding: 0;
  }
  .footer-sitemap-menu{
	margin: 0 !important;
}
  .footer-sitemap-menu .level0 a{
	font-size: 14px !important;
    padding: 0.5em 1em !important;
  }
  .footer-sitemap-menu .level1 a{
      position: relative;
      font-size: 12px !important;
      padding: 0.4em 0.5em 0.4em 2em !important;
  }
  .footer-sitemap-menu .level1 a::before{
      content: none;
  }
}