@media screen and (max-width: 640px) {
    body {
        font-size: 1.3rem;
        line-height: 1.5;
        min-width: 0;
    }
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
	
	/*Grid
	-----------------------------*/
	.container {
		width: 100%;
		padding: 0 15px;
 	}
	#main {
		margin: 0 0 30px;
	}
	.section {
		margin-bottom: 35px;
	}
	/*style
	-----------------------------*/
	.txt_ctr {
		text-align: left;
	}
	.ttl {
		margin-bottom: 15px;
		font-size: 1.8rem;
	}
	.arrow::before{
		width: 8px;
		height: 8px;
		margin-top: -5px;
	}
	/*header
	-----------------------------*/
	#header {
		height: 50px;
	}
	.page_thanks #header {
		margin-bottom: 30px;
	}
	#header .logo {
		width: 80%;
		padding-top: 15px;
	}
	/*sec_mainvisual
	-----------------------------*/
	.sec_mainvisual {
		height: 270px;
		background-position: center;
	}
	.sec_mainvisual .maincatch {
		width: 90%;
		top: 47%;
	}
	.sec_mainvisual .btm_house {
		background-size: 393px 31px;
		padding-top: 31px;
	}
	/*sec_cta
	-----------------------------*/
	.sec_cta {
		padding: 20px 0;
	}
	.sec_cta .ctabox {
    	display: block;
		border-radius: 10px;
		padding: 10px 15px 20px;
	}	
	.sec_cta .ctabox .telbox {
		width: 100%;
	}
	.sec_cta .ctabox .telbox .ttl_tel {
		font-size: 1.6rem;
		text-align: center;
	}
	.sec_cta .ctabox .telbox .ttl_tel > span {
		display: block;
		margin-top: 3px;
		margin-left: 0;
		padding: 5px;
		font-size: 1rem;
	}
	.sec_cta .ctabox .telbox .txt_tel {
		width: 100%;
		margin-bottom: 5px;
	} 
	.sec_cta .ctabox .telbox .txt_hours {
		font-size: 1.2rem;
	}
	.sec_cta .ctabox .telbox .txt_hours dt {
		width: 65px;
	} 
	.sec_cta .ctabox .telbox .txt_fax {
		font-size: 1.2rem;
	}
	.sec_cta .ctabox .mailbox {
		width: 100%;
		margin-top: 10px;
	}
	.sec_cta .ctabox .mailbox .fukidashi {
		margin-bottom: 3px;
	}
	.sec_cta .ctabox .mailbox .fukidashi > span {
		display: block;
		padding: 3px 5px;
		margin-bottom: 5px;
		font-size: 1rem;
	}
	.sec_cta .ctabox .mailbox .fukidashi p {
  		letter-spacing: 0.03em;
		line-height: 1.4;
		background-position: left bottom, right bottom;
	}
	.sec_cta .ctabox .mailbox .mail_btn a{
		display: block;
  		font-size: 1.6rem;
		padding: 5px 0;
	}
	.sec_cta .ctabox .areabox {
		border-radius: 5px;
		margin-top: 30px;
	}
	.sec_cta .ctabox .areabox dt {
		margin-bottom: 5px;
		font-size: 1.6rem;
	}	
	
	/*sec_ninbai
	-----------------------------*/
	.sec_ninbai .loanbox .blk01 {
   		display: block;
		margin: 30px 0 15px;
	}
	.sec_ninbai .loanbox .blk01 .txt_box {
		width: 100%;
	}
	.sec_ninbai .loanbox .blk01 .txt_box h3 {
    	display: block;
		height: inherit;
		margin: 0 0 15px;
		font-size: 1.6rem;
		text-align: center;
	}
	.sec_ninbai .loanbox .blk01 .txt_box h3::before {
  		display:none;
	}
	.sec_ninbai .loanbox .blk01 .txt_box h3 span {
		display: inline-block;
		padding: 5px;
	} 
	.sec_ninbai .loanbox .blk01 figure {
		width: 70%;
		margin: 20px auto 0;
	}
	.sec_ninbai .loanbox .blk02 {
		padding-top: 15px;
	}
	.sec_ninbai .loanbox .blk02 .txt_box h3 {
		margin-bottom: 10px;
		font-size: 1.6rem;	
	}
	.sec_ninbai .eviction_step {
		margin: 30px 0;
	}
	.sec_ninbai .eviction_step ul li {
		width: 49%;
		border-radius: 10px;
		margin-bottom: 10px;
		padding: 10px 0;
	}
	.sec_ninbai .eviction_step ul li:after {
		width: 22px;
		height: 25px;
		right: -105%;
	}
	.sec_ninbai .eviction_step ul li:nth-child(3n):after {
		display: block;
	}
	.sec_ninbai .eviction_step ul li:nth-child(2n):after {
		display: none;
	}
	.sec_ninbai .eviction_step ul li > figure {
		width: 70%;
		margin: 10px auto;
	}
	.sec_ninbai .eviction_step ul li > h4 {
		font-size: 1.6rem;
	}
	.sec_ninbai .eviction_step ul li > h4 > span {
		font-size: 1rem;
	} 
	.sec_ninbai .ninbaibox h2 {
		width: 75%;
	}
	.sec_ninbai .ninbaibox .txt_box {
		border: 3px solid #0b3190;
		border-radius: 10px;
		margin-top: -20px;
		padding: 30px 15px 15px;
	}
	.sec_ninbai .ninbaibox .txt_box figure {
		width: 100%;
		margin: 30px auto 0;
	}
	
	/*sec_target
	-----------------------------*/
	.sec_target {
		padding: 30px 0;
	}
	.sec_target h2 {
		margin-bottom: 15px;
		font-size: 1.6rem;
	}
	.sec_target h2 > span {
		font-size: 2.2rem;
	}
	.sec_target .listbox ul li {
		margin-bottom: 10px;
    	padding: 10px 10px 10px 48px;
    	font-size: 1.6rem;
		line-height: 1.3;
	}
	.sec_target .listbox ul li:before {
    	width: 28px;
    	height: 23px;
    	top: 15px;
    	left: 10px;
	}
	
	/*sec_represent
	-----------------------------*/
	.sec_represent .massagebox {
		margin-top: 20px;
	}
	.sec_represent .massagebox .txt_box {
		position: inherit;
		left: inherit;
		display: block;
		width: 100%;
		background-color: transparent;
		padding: 10px;
		z-index: -1;
	}
	.sec_represent .massagebox .ph_uenishi {
		width: 80%;
		margin-top: -50px;
	}
	
	/*sec_contact
	-----------------------------*/
	.contactbox .checkbox {
		padding: 0 15px;
	}
	/*privacybox*/
	.privacy {
		height: 130px;
		margin: 10px 0;
		padding: 10px;
		font-size: 1.2rem;
	}
	.privacy h3 {
		margin-bottom: 5px;
		font-size: 1.6rem;
	}
	.privacy ol {
		margin-bottom: 10px;
	}
	.privacy > ol > li {
		margin-bottom: 5px;
	}
	.privacy > ol > li > ol > li {
		margin-top: 5px;
	}
	/*サンクスページ*/
	.thanksbox .info_tel {
		width: 100%;
		border: 2px solid #e4e4e4;
		border-radius: 10px;
		margin: 15px auto;
		padding: 15px;
	}
	.thanksbox .info_tel .txt_tel {
		width: 90%;
		margin: 10px auto 10px;
	} 
	.thanksbox .btn_tp a {
		width: 80%;
  		font-size: 1.6rem;
		padding: 5px 0;
	}
	
	/*sec_relation
	-----------------------------*/
	.sec_relation h2 {
		width: 100%;
		margin: 0 auto 15px;
	}
	.sec_relation .relationbox ul li {
		width: 100%;/*320px*/
		border: 3px solid;
		border-radius: 10px;
		margin-bottom: 20px;
		padding: 20px 15px;
	}
	.sec_relation .relationbox ul li:last-child {
		margin-bottom: 0;
	}
	.sec_relation .relationbox ul li .txt_box {
		min-height: inherit;
		margin-bottom: 10px;
	}
	.sec_relation .relationbox ul li .txt_box h3 {
   	 	display: block;
		height: inherit;
		font-size: 1.6rem;
	}
	.sec_relation .relationbox ul li .txt_box p {
		font-size: 1.3rem;
	}
	.sec_relation .relationbox ul li .btn_link .arrow::before{
		margin-top: -5px;
	}
	
	/*totop
	-----------------------------*/
	#totop {
    	bottom: 10px;
    	right: 10px;
	}
	#totop a {
    	width: 30px;
    	height: 30px;
	}
	#totop a span {
    	width: 8px;
    	height: 8px;
    	border-top: solid 3px #000;
    	border-left: solid 3px #000;
		margin-top: 6px;
	}
	
	/*footer
	-----------------------------*/
	.footer {
		margin-top: 75px;
	}
	.footer .tp_house {
		background-size: 393px 31px;
		padding-top: 31px;
	}
	.footer .ft_info {
		padding: 20px 0;
		line-height: 1.4;
	}
	.footer .ft_info .ft_info_cont .ft_logo {
		width: 90%;
	}
	.footer .ft_info .ft_info_cont .info_homester {
		border-top: 2px dotted #fff;
		padding-top: 15px;
    	display: block;
	}
	.footer .ft_info .ft_info_cont .info_homester .ft_logo_homester {
		width: 50%;
		margin: 0 auto 10px;
	}
	.footer .ft_info .ft_info_cont .add_box {
		width: 100%;
		font-size: 1.2rem;
		line-height: 1.5;
		text-align: center;
	}
	.footer .ft_copy p {
		padding: 3px 0;
		font-size: 1.1rem;
	}
	
}