@charset "UTF-8";
/*-----------------------------------------
	ヘッダー
-----------------------------------------*/
header { z-index: 8500; position: fixed; top: 0; border-bottom: 1px solid #c3bcac; background: none; width: 100%; }

#head_menu { width: 100%; margin: 0 auto; }
#head_menu img { backface-visibility: hidden; -webkit-backface-visibility: hidden; }
#head_menu .hd_text { margin: 20px auto 10px auto; padding: 0 100px; line-height: 1.2; font-size: 11px; font-weight: 500; max-width: 1500px; }
#head_menu .pc_no { display: none; }
#head_menu #hm_wrap { margin: 0 auto 23px auto; padding: 0 100px; display: flex; width: 100%; max-width: 1500px; align-items: center; }
#head_menu #hm_wrap #hm_left { flex: 1; }
#head_menu #hm_wrap #hm_left .logo { width: 294px; }
#head_menu #hm_wrap #hm_right #hm_r_box ul.tel_contact { line-height: 0; font-size: 0; }
#head_menu #hm_wrap #hm_right #hm_r_box ul.tel_contact li { display: inline-block; vertical-align: middle; font-size: 15px; }
#head_menu #hm_wrap #hm_right #hm_r_box ul.tel_contact li.tel { width: 176px; line-height: 40px; }
#head_menu #hm_wrap #hm_right #hm_r_box ul.tel_contact li.contact { margin: 0 0 0 25px; width: 40px; line-height: 40px; font-size: 15px; }
#head_menu #hm_wrap #hm_right #hm_r_box ul.tel_contact li.sp_btn { display: none; }

/*----- スクロール時のheaderの動作 -----*/
header.filter { transition-property: background; transition-duration: 1s; }
header.filter.filter_on { background-image: url("../img/back.png"); background-size: 300px auto; }
header.filter.filter_off { background-image: url("../img/back.png"); background-size: 300px auto; }

/*-----------------------------------------
　フッター
-----------------------------------------*/
footer { padding: 0 0 50px 0; border-top: 1px solid #c3bcac; /*FIXナビ*/ /*ページトップへ*/ }
footer .ft_frm .ft_menu { padding: 45px 10px 50px 10px; border-bottom: 1px solid #c3bcac; background: #fff; }
footer .ft_frm .ft_menu .frm { margin: 0 auto; display: flex; width: 100%; max-width: 1100px; }
footer .ft_frm .ft_menu .frm > div { padding: 0 20px 0 0; width: 25%; }
footer .ft_frm .ft_menu .frm > div p { padding: 0 0 22px 24px; line-height: 1.4; background: url("../img/foot_site_icon.png") no-repeat left top 7px; background-size: 13px auto; font-size: 18px; }
footer .ft_frm .ft_menu .frm > div ul li { margin: 18px 0 0 0; line-height: 1.4; font-size: 14px; }
footer .ft_frm .ft_menu .frm > div ul li:first-of-type { margin: 0; }
footer .ft_frm .ft_menu .frm > div ul li a:link, footer .ft_frm .ft_menu .frm > div ul li a:visited { color: #000; }
footer .ft_frm .ft_menu .frm > div ul li a:active, footer .ft_frm .ft_menu .frm > div ul li a:hover { color: #3281a9; }
footer .ft_frm .ft_menu .frm > div ul + p { margin: 50px 0 0 0; }
footer .ft_frm .ft_codata { margin: 0 auto; padding: 35px 10px 30px 10px; display: block; width: 100%; max-width: 1120px; }
footer .ft_frm .ft_codata address { font-style: normal; }
footer .ft_frm .ft_codata address .sign { margin: 0 0 20px 0; display: flex; }
footer .ft_frm .ft_codata address .sign > span { width: 112px; }
footer .ft_frm .ft_codata address .sign > span img { display: block; max-width: 112px; }
footer .ft_frm .ft_codata address .sign p { margin: 0 0 0 20px; flex: 1; -webkit-flex: 1; }
footer .ft_frm .ft_codata address .sign p span.co { margin: 0 0 2px 0; display: block; line-height: 1.2; font-size: 13px; }
footer .ft_frm .ft_codata address .sign p span.main { display: block; line-height: 1.4; font-size: 27px; }
footer .ft_frm .ft_codata address .data ul { display: flex; display: -webkit-flex; width: 100%; font-size: 14px; flex-wrap: wrap; }
footer .ft_frm .ft_codata address .data ul li { line-height: 1.4; }
footer .ft_frm .ft_codata address .data ul li.add { margin: 0 0 5px 0; width: 100%; }
footer .ft_frm .ft_codata address .data ul li.tel span, footer .ft_frm .ft_codata address .data ul li.fax span { display: inline-block; line-height: 0; vertical-align: middle; font-size: 0; }
footer .ft_frm .ft_codata address .data ul li.tel span.cap, footer .ft_frm .ft_codata address .data ul li.fax span.cap { margin: 0 5px 0 0; line-height: 1.2; font-size: 14px; }
footer .ft_frm .ft_codata address .data ul li.tel span.no, footer .ft_frm .ft_codata address .data ul li.fax span.no { line-height: 1.2; font-size: 14px; }
footer .ft_frm .ft_codata address .data ul li.tel::after { margin: 0 3px 0 -2px; position: relative; top: 2px; line-height: 1.2; content: ' / '; }
footer #copyright { padding: 4px 10px; width: 100%; color: #fff; background: #000; text-align: center; font-size: 11px; }
footer #copyright.noFixnavi { margin: 0 0 20px 0; }
footer #side_fix { display: none; position: fixed; bottom: 0; width: 100%; background-color: #524b49; z-index: 10000; }
footer #side_fix ul { margin: 0 auto; display: flex; display: -webkit-flex; width: 100%; max-width: 1100px; }
footer #side_fix ul li { border-left: 1px solid #fff; display: flex; display: -webkit-flex; width: 25%; text-align: center; }
footer #side_fix ul li a { display: flex; display: -webkit-flex; width: 100%; height: 50px; line-height: 1.2; color: #fff; background-color: #524b49; font-size: 14px; font-weight: 500; text-decoration: none; flex-direction: column; -webkit-box-orient: vertical; -webkit-box-direction: normal; justify-content: center; -webkit-box-pack: center; }
footer #side_fix ul li a:hover { background-color: #3281a9; color: #fff; }
footer #side_fix ul li:first-of-type { border-left: none; }
footer #side_fix ul li:nth-of-type(1) a img { max-width: 18px; }
footer .not_fixlink { display: none; }
footer #pagetop { position: fixed; display: none; background: url("../img/arrow_top.png") center center no-repeat #9b8f74; background-size: 22px auto; right: 20px; bottom: 100px; width: 60px; height: 60px; color: #fff; text-align: center; cursor: pointer; z-index: 8000; }
footer #pagetop:hover { background-color: #524b49; }
footer #pagetop.pagetop_active { display: block; }

/*# sourceMappingURL=hf_block.css.map */
