@charset "utf-8";
/*==================================================
	スマホのみに適用
==================================================*/
@media only screen and (max-width: 640px){
	body { font-size: 85%; }
	.dsp_hp, .dsp_hpt { display: none; }

	/* ヘッダ */
	#header h1.title img {
		max-width: 150px;
	}
	/* コンテナ */
	#wrap, #footer {
		min-width: 320px;
	}
	#container h3.sub {
		margin-bottom: 20px;
	}
	#container h3.sub span {
		font-size: 18px;
		padding-bottom: 7px;
	}
	#container h3.sub span:before {
		height: 3px;
	}
	/* フッター */
	#footer .box dt a {
		font-size: 30px;
	}
	#footer .contact .text {
		font-size: 20px;
	}
	#footer .contact .text span {
		display: block;
		margin-right: 0;
		font-size: 23px;
	}
	#footer .contact .tel a {
		font-size: 28px;
	}
	#footer .contact .tel img {
		width: 28px;
	}
	#footer .contact .btn a {
		padding: 0 25px;
		line-height: 45px;
		font-size: 20px;
	}
	#footer .contact .btn img {
		width: 28px;
	}
	#copyright {
		height: auto;
		line-height: 1.6;
		padding: 5px 0;
	}
	/* 枠のマージン・パディング */
	.mb { margin-bottom: 30px; }
	.pt { padding-top: 30px; }
	.pb { padding-bottom: 30px; }
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	/* テキスト */
	#line_text p {
		font-size: 20px;
		padding: 7px 0;
	}
	#line_text p span::before {
		top: 35%;
		left: 0%;
		width: 30px;
		height: 40px;
		background-size: 30px;
	}
	#line_text p span::after {
		top: 35%;
		right: 0%;
		width: 30px;
		height: 40px;
		background-size: 30px;
	}
	/* メニューコンテンツ */
	#top_menu::before {
		background: url("../img/top/menu_bg.png") no-repeat center bottom / 100% auto,#3074D1;
	}
	#top_menu p.note {
		font-size: 14px;
		margin-bottom: 1em;
	}
	#top_menu .flex {
		margin-bottom: 0;
	}
	#top_menu .flex dl {
		width: 85%;
		padding: 20px 0;
		margin: 0 auto 20px;
	}
	#top_menu .flex dt p.ttl {
		font-size: 20px;
		line-height: normal;
	}
	#top_menu .flex dt p.ttl span.weight {
		font-size: 25px;
	}
	#top_menu .flex dd p.staff {
		font-size: 20px;
	}
	#top_menu .flex dd p.price {
		font-size: 30px;
		line-height: normal;
	}
	#top_menu p.appeal {
		font-size: 23px;
	}
	#top_menu p.appeal span {
		font-size: 23px;
	}
	/* エリア */
	#top_area .flex {
		flex-direction: column-reverse;
	}
	#top_area .flex .photo {
		width: 100%;
	}
	#top_area .flex .text {
		width: 100%;
		margin-bottom: 20px;
	}
	#top_area .flex .text h3 {
		font-size: 25px;
	}
	#top_area .flex .text p.place {
		font-size: 20px;
	}
	#top_area .flex .text p.place span.sml {
		font-size: 18px;
	}
	#top_area .flex .text p.blk {
		font-size: 18px;
		line-height: 35px;
		margin-top: 0;
		padding: 0 10px;
	}
	/* コンテンツ */
	#top_contents .flex .box {
		width: 100%;
		margin: 0 auto 20px;
	}
	#top_contents .flex .box div.photo {
		width: 85%;
		margin: 0 auto 10px;
	}
	#top_contents .flex .box p.btn a {
		bottom: -2%;
		width: 95px;
		height: 95px;
	}
	/* お知らせ */
	#top_info dl {
		padding: 15px;
		margin-bottom: 15px;
	}
	#top_info dt {
		float: none;
		width: auto;
	}
	#top_info dd {
		margin-left: 0;
	}
	/*--------------------------------------------------
		遺品整理
	--------------------------------------------------*/
	#promise h3.ttl,
	#ihin_flow h3,
	#faq h3	{
		font-size: 25px;
	}
	#ihin_flow dl:not(:last-child) {
		margin-bottom: 77px;
	}
	#ihin_flow dl::after {
		content: "";
		position: absolute;
		bottom: -40px;
		left: 50%;
		-moz-transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 30px 50px 0 50px;
		border-color: #fae04b transparent transparent transparent;
	}
	
/*------------------------------------------------*/
}
