/* CSS Document */

.sp_none,
.slick-slide img.sp_none{display:none!important;}

.txt50sp{font-size:50%!important;}
.txt60sp{font-size:60%!important;}
.txt70sp{font-size:70%!important;}
.txt80sp{font-size:80%!important;}
.txt90sp{font-size:90%!important;}
.txt100sp{font-size:100%!important;}
.txt110sp{font-size:110%!important;}
.txt120sp{font-size:120%!important;}
.txt130sp{font-size:130%!important;}
.txt140sp{font-size:140%!important;}
.txt150sp{font-size:150%!important;}
.txt160sp{font-size:160%!important;}
.txt170sp{font-size:170%!important;}
.txt180sp{font-size:180%!important;}
.txt190sp{font-size:190%!important;}
.txt200sp{font-size:200%!important;}
.txt240sp{font-size:240%!important;}
.txt280sp{font-size:280%!important;}

.sp_mb0{margin-bottom:0!important;}
.sp_mb05{margin-bottom:5px!important;}
.sp_mb10{margin-bottom:10px!important;}
.sp_mb20{margin-bottom:20px!important;}
.sp_mb30{margin-bottom:30px!important;}
.sp_mb40{margin-bottom:40px!important;}
.sp_mb50{margin-bottom:50px!important;}

.sp_mt0{margin-top:0!important;}
.sp_mt10{margin-top:10px!important;}
.sp_mt20{margin-top:20px!important;}
.sp_mt30{margin-top:30px!important;}
.sp_mt40{margin-top:40px!important;}
.sp_mt50{margin-top:50px!important;}
.sp_mt60{margin-top:60px!important;}
.sp_mt80{margin-top:80px!important;}

.sp_ml0{margin-left:0!important;}
.sp_ml10{margin-left:10px!important;}
.sp_ml20{margin-left:20px!important;}
.sp_ml30{margin-left:30px!important;}
.sp_ml40{margin-left:40px!important;}
.sp_ml50{margin-left:50px!important;}

.sp_mr0{margin-right:0!important;}

.sp_pt0{padding-top:0!important;}
.sp_pt10{padding-top:10px!important;}
.sp_pt20{padding-top:20px!important;}
.sp_pt30{padding-top:30px!important;}
.sp_pt40{padding-top:40px!important;}
.sp_pt50{padding-top:50px!important;}

.sp_pb0{padding-bottom:0!important;}
.sp_pb10{padding-bottom:10px!important;}
.sp_pb20{padding-bottom:20px!important;}
.sp_pb30{padding-bottom:30px!important;}
.sp_pb50{padding-bottom:50px!important;}

.sp_lh160p{
	line-height:1.6;}

.t_align_left_sp{
	text-align:left;}
.t_align_center_sp,
.sp_txt_center{
	text-align:center!important;}
	
.sp_w80{width:80%;}
.sp_w100{width:100%;}

.sp100px{
width: 100px;
}
.sp200px{
width: 200px;
}
.sp_mw300px{
    max-width: 300px;
}

.sp_mw450px{
    max-width: 450px;
}
.sp_mw_none{
    max-width: none;
}


.sp_block{
    display: block!important;
}
	
.sp_w100{
    width: 100%!important;
}

.fl_r_pic,
.fl_l_pic{
    margin-bottom: 30px;
}


.anchor_point{
    padding-top: 10px;
    margin-top: -10px;
}


/*------------------------------*/
html{
    font-size: 57.5%;
}
body{
    line-height: 1.5;
font-size:1.6rem!important;
	}



/*------------------------------*/
.header_width {
    padding: 0 120px 0 0;
}

.uk-offcanvas-bar {
    left: -350px;
    width: 350px;
}

.footer_iso{
}

.footer_iso img {
    width: 100px;
}

.footer_link_nav_01,
.footer_link_nav_02{
    justify-content: center;
}
.footer_link_nav_01 >*, .footer_link_nav_02 >* {
    margin-right: 0;
    padding: 0 10px 10px;
}

.footer_copy{
    text-align: center;
}

.footer_logo{
    text-align: center;
}
.footer_logo img{
    width: 200px;
}

.footer_bottom_body {
    background: #676767;
    padding: 40px 0 40px;
}

.footer_contact_flex {
    flex-wrap: wrap;
}
.footer_contact_flex_left,
.footer_contact_flex_right{
    width: 100%;
}
.footer_contact_flex_left{
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.3);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.footer_contact_box {
    padding-left: 0;
    padding-right: 0;
}

.footer_contact_white_link a {
    padding: 25px 10px;
    font-size: 1.1em;
}

.footer_contact_body {
    padding: 35px 0 ;
}

.toppage_about_illust{
    width: 100%;
    max-width: 420px;
    margin-bottom: -20px!important;
}

.toppage_news_cat_ul{
	display: none;
}

.toppage_img_link_title {
    font-size: 1.3em;
    margin-top: -40px;
    max-width: 260px;
}

.toppage_news_sp_select_body{
	margin-bottom: 20px;
    margin-top: -68px;
}


.toppage_main_lead {
    font-size: 2em;
}

.footer_contact_tel_num {
    font-size: 2em;
    border: 1px solid #fff;
    padding: 15px 10px;
    border-radius: 1000px;
}

.section_padding {
    padding: 50px 0 55px;
}

.subpage_main_title_h1 {
    font-size: 2em;
    padding-bottom: 15px;
}


.grid_link_box_txt,
.grid_link_box_02_txt{
    margin-top: 12px;
    padding-left: 30px;
}
.grid_link_box_txt:before,
.grid_link_box_02_txt:before{
    top: -2px;
    width: 20px;
    height: 20px;
	font-size: 1em;
}

.grid_link_box_02_txt_s {
    padding-left: 30px;
}


.common_title {
	font-size: 1.5em;
}
.common_title_02{
	font-size: 1.3em;
}
.common_title_03{
	font-size: 1.1em;
}


.link_nav_body {
    padding: 60px 0;
    margin-top: 40px;
}


.img_modal .uk-modal-dialog {
    width: 450px;
}
.img_modal_flex{
	display: block;
}
.img_modal_flex_left{
	width: 100%;
	height: 300px;
}
.img_modal_flex_right{
	width: 100%;
}
.img_modal_flex_right_content{
	padding: 15px 20px 20px;}

.img_modal .uk-close {
    width: 50px;
    height: 50px;
    margin-right: -25px;
    margin-top: -25px;
    font-size: 40px;
	box-shadow: 0 0 0 #000;
}


.img_modal_btn a{
    width: 50px;
    height: 50px;
    margin-right: -25px;
    margin-top: -25px;
    font-size: 40px;
}

.service_map_section_title {
    font-size: 1.5em;
    top: 25px;
}

.service_map_section_title:after{
	width: 30px;
	height: 3px;
	margin-top: 4px;
	
}


.data_page_content_body {
    padding: 50px 0 60px;
}


.trouble_main_body img{
	width: 520px;

}


.trouble_main_body{
	font-size: 1.35em;}

.trouble_single_page_slider_arrow_body {
    width: calc(100% + 30px);
    left: -15px;
}



.trouble_single_page_illust_box{
	padding-left: 0;
}
.trouble_single_page_illust_box_left{
	position: relative;
	left: auto;
	width: 100%;
	text-align: center;
}
.trouble_single_page_illust_box_left img{
	width: 120px;
}

.trouble_single_page_illust_box_right{
	padding-top: 0;
}
.trouble_single_page_illust_box_right h2{
	font-size: 1.2em;
	margin-top: 20px;
	text-align: center;
}

.trouble_single_page_illust_box_02{
	margin-top: 80px;
}
.trouble_single_page_illust_box_02 .trouble_single_page_illust_box_right{
	padding-top: 0;
}
.trouble_single_page_illust_box_02 .trouble_single_page_illust_box_left img{
	width: 85px;
}

.trouble_single_page_title_h1 {
    font-size: 1.6em;
}


.rec_table{
	margin-bottom:50px;
	border-collapse:collapse;
	}
.rec_table th,.rec_table td{
	display:block;
	padding:10px;
	}
.rec_table th{
	padding: 5px 10px;
	margin-top:20px;
	border-bottom:none;}
.rec_table tr:first-child th{
	margin-top:0;}
	
.rec_table td{}
.rec_table tr td:nth-child(1){
	border-top:none;}


.form_table{
	font-weight: .9em;
}
.form_table th,
.form_table td{
	padding: 15px;
	display: block;
}
.form_table td input,
.form_table td textarea{
	width: 240px;
	border: 1px solid #888;
	font-size: 1.1em;
	padding: 5px 10px;
	
}
.form_table th{
	background: #eff5fd;
	font-size: 1.1em;
	line-height: 1.6;
	white-space: nowrap;
	border-bottom: none;
	padding-top: 8px;
	padding-bottom: 8px;
}
.form_table th .label.label-important{
	margin-left: 10px;
}
.form_table td{
	margin-bottom: 30px;
}

.form_table td input.input-xlarge,
.form_table td textarea.input-xlarge {
    width: 300px;
}

.submit {
    margin-top: 20px;
    font-size: 1.4em;
}
.submit .btn {
    padding: 7px 30px;
}


.wp_sikaku_box{
	padding: 30px;
}

.toppage_about_section {
    padding: 20px 0 50px;
}

.toppage_works_section_title {
    font-size: 3em;
}

.vision_grid_box {
    padding: 40px 15px 40px;
}

.vision_grid_box_txt_yellow {
    font-size: 1.15em;
}

.sisin_grid_box_img {
    max-width: 200px;
}



.rinen_section {
    padding: 50px 0 70px;
}
.rinen_section_title {
    font-size: 1.9em;
    margin-bottom: 25px;
    padding-bottom: 12px;
}
.rinen_section_txt {
    font-size: 1.25em;
}


.gaiyou_tbl th,
.gaiyou_tbl td{
	padding: 15px 10px;
	display: block;
	border: none;
}

.gaiyou_tbl th{
	padding-top: 8px;
	padding-bottom: 8px;
	background: #eee;
}

.gaiyou_tbl td{
	padding-top: 8px;
}


.enkaku_tbl_body {
    padding: 30px;
}


.sitemap_grid{
	font-size: 1em;
}

.hikari_kouka_box {
    max-width: 530px;
	padding: 20px;
}

.hikari_kouka_box_flex_left,
.hikari_kouka_box_flex_right{
	width: 100%;
	text-align: center;
}

.hikari_kouka_box_grid{
	padding-left: 20px;
	margin-top: 5px;
	display: inline-block;
	text-align: left;
}