@charset "utf-8";
/*------------------------  cont  ------------------------*/


/*-----  title  -----*/
#cont .title_content { padding: 0 5%; }
#cont .title_content .title_block { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 150px; font-weight: 700; line-height: 1.3; text-align: center; z-index: 101; }
#cont .title_content .title { font-size: 32px; }

@media screen and (max-width: 840px) {
 #cont .title_content {}
 #cont .title_content .title_block { height: 84px; }
 #cont .title_content .title { font-size: 24px; }
}



/*-----  overview  -----*/
#cont .overview_content { margin: 0 0 70px; padding: 0 5%; background: url(/images/contact/cont_title.jpg) no-repeat center; background-size: cover; }
#cont .overview_content .overview_block { display: flex; align-items: center; height: 200px; }
#cont .overview_content .txt { font-weight: 700; font-size: 18px; line-height: 1.8; color: #fff; text-shadow: rgb(0,0,0,.4) 0 1px 8px; }

@media screen and (max-width: 840px) {
 #cont .overview_content { margin: 0 0 40px; }
 #cont .overview_content .overview_block { height: 140px; }
 #cont .overview_content .txt { font-size: 15px; line-height: 1.6; }
}



/*-----  cont  -----*/
#cont .cont_content { padding: 0 5% 20px; }
#cont .cont_content .cont_block { display: flex; margin: 0 0 60px; }
#cont .cont_content .cont_block .img_block { flex-basis: 30%; }
#cont .cont_content .cont_block .txt_block { flex: 1; position: relative; padding: 0 0 40px 40px; }
#cont .cont_content .cont_block .txt_block .ttl { margin: 0 0 20px; padding: 0 0 12px; border-bottom: 1px solid #e6e6e6; font-weight: 700; font-size: 24px; line-height: 1.3; }
#cont .cont_content .cont_block .txt_block .txt { margin: 0 0 30px; font-size: 15px; line-height: 1.5; }
#cont .cont_content .cont_block .cont_btn { position: absolute; bottom: 0; right: 0; width: 210px; }

@media screen and (max-width: 840px) {
 #cont .cont_content { padding: 0 5% 20px; }
 #cont .cont_content .cont_block { display: block; margin: 0 0 40px; }
 #cont .cont_content .cont_block .txt_block { padding: 18px 0 0; }
 #cont .cont_content .cont_block .txt_block .ttl { margin: 0 0 12px; padding: 0 0 8px; font-size: 18px; }
 #cont .cont_content .cont_block .txt_block .txt { margin: 0 0 20px; font-size: 14px; }
 #cont .cont_content .cont_block .cont_btn { position: relative; bottom: inherit; right: inherit; margin: 0 auto; width: 210px; }
}



/*-----  tel  -----*/
#cont .tel_content { padding: 0 5% 70px; }
#cont .tel_content .tel_ttl { margin: 0 0 40px; padding: 0 0 12px; border-bottom: 1px solid #a00e14; font-weight: 700; font-size: 24px; line-height: 1.3; }
#cont .tel_content .tel_block { margin: 0 0 20px; padding: 22px 30px 26px; background: #f6f6f6; border-radius: 3px; }
#cont .tel_content .tel_block .block_ttl { position: relative; padding: 0 0 18px 14px; border-bottom: 1px solid #ddd; font-weight: 700; font-size: 20px; }
#cont .tel_content .tel_block .block_ttl::before { content: ''; position: absolute; top: 1px; left: 0; width: 3px; height: 20px; background: #a00e14; }
#cont .tel_content .tel_block .tel_inner { display: flex; flex-wrap: wrap; align-items: center; padding: 24px 30px 0; line-height: 1.3; }
#cont .tel_content .tel_block .ttl { padding: 0 0 8px; width: 100%; font-weight: 700; font-size: 20px; }
#cont .tel_content .tel_block .tel { font-weight: 700; font-size: 28px; }
#cont .tel_content .tel_block .tel .call { color: #a00e14; }
#cont .tel_content .tel_block .times { padding: 2px 0 0 20px; font-weight: 500; font-size: 15px; color: #a00e14; }


@media screen and (max-width: 840px) {
 #cont .tel_content { padding: 0 5% 30px; }
 #cont .tel_content .tel_ttl { margin: 0 0 25px; padding: 0 0 8px; font-size: 18px; }
 #cont .tel_content .tel_block { margin: 0 0 15px; padding: 15px 15px 22px; }
 #cont .tel_content .tel_block .block_ttl { padding: 0 0 12px 11px; font-size: 16px; }
 #cont .tel_content .tel_block .block_ttl::before { width: 3px; height: 16px; }
 #cont .tel_content .tel_block .tel_inner { display: block; padding: 18px 0 0; text-align: center; }
 #cont .tel_content .tel_block .ttl { padding: 0 0 3px; font-size: 18px; }
 #cont .tel_content .tel_block .tel { font-size: 26px; }
 #cont .tel_content .tel_block .times { padding: 3px 0 0; font-size: 13px; }
}



/*-----  flow  -----*/
#cont .flow_content { padding: 70px 5% 120px; border-top: 1px solid #e6e6e6; }
#cont .flow_content .sp { display: none; }
#cont .flow_content .txt_block { margin: 0 0 50px; text-align: center; font-weight: 500; line-height: 1.6; }
#cont .flow_content .txt_block .txt { font-size: 18px; }
#cont .flow_content .txt_block .txt2 { font-size: 17px; }
#cont .flow_content .flow_btn_block { display: flex; justify-content: center; }
#cont .flow_content .flow_btn_block .flow_btn { margin: 0 15px; width: 240px; }
#cont .flow_content .flow_btn_block .flow_btn .btn { height: 52px; }
#cont .flow_content .flow_btn_block .flow_btn .no { background: #999; }
#cont .flow_content .flow_btn_block .flow_btn .dealing { background: #fff; border: 1px solid #a00e14; color: #a00e14; }
#cont .flow_content .contact_block { margin: 0 auto; padding: 28px 0; max-width: 640px; background: #f6f6f6; font-weight: 700; line-height: 1.3; text-align: center; }
#cont .flow_content .contact_block .ttl { padding: 0 0 15px; font-size: 16px; }
#cont .flow_content .contact_block .tel_ttl { padding: 0 0 4px; font-size: 18px; }
#cont .flow_content .contact_block .tel { font-size: 24px; }
#cont .flow_content .contact_block .tel .call { color: #a00e14; }

@media screen and (max-width: 840px) {
 #cont .flow_content { padding: 40px 5% 50px; }
 #cont .flow_content .sp { display: block; }
 #cont .flow_content .txt_block { margin: 0 0 30px; }
 #cont .flow_content .txt_block .txt { font-size: 16px; }
 #cont .flow_content .txt_block .txt2 { font-size: 15px; }
 #cont .flow_content .flow_btn_block { display: block; padding: 0 5%; }
 #cont .flow_content .flow_btn_block .flow_btn { margin: 0 auto 14px; width: auto; max-width: 320px; }
 #cont .flow_content .contact_block { padding: 22px 0; }
 #cont .flow_content .contact_block .ttl { padding: 0 0 12px; font-size: 15px; }
 #cont .flow_content .contact_block .tel_ttl { padding: 0 0 4px; font-size: 16px; }
 #cont .flow_content .contact_block .tel { font-size: 22px; }
}




