@charset "utf-8";
/*==================================================
	スマホのみに適用
==================================================*/
@media only screen and (max-width: 640px){
	body { font-size: 85%; }
	.dsp_hp, .dsp_hpt { display: none; }

	/* コンテナ */
	#wrap, #footer {
		min-width: 320px;
	}
	#container h3.sub {
		margin-bottom: 20px;
		font-size: 20px;
	}
	#page_title.top {
		background-position: bottom -20px left -50px;
		background-size: 40px auto, auto;
	}
	#page_title.sub h2 {
		margin-top: 15px;
		width: 200px;
		height: 105px;
		font-size: 28px;
	}
	/* フッター */
	#footer {
		background-size: auto 40px, 40px auto;
		background-position: top left -30px, bottom -20px left -100px;
	}
	#footer .box {
		padding: 50px 0 30px;
	}
	#footer .box dt img {
		max-width: 200px;
	}
	#footer .box dd ul {
		width: 250px;
		margin-bottom: 20px;
	}
	#footer .box dd ul li a {
		width: 70px;
		height: 70px;
	}
	@media only screen and (max-width: 320px){
		#footer .box dd .txt {
			font-size: 12px;
		}
	}
	#copyright {
		height: auto;
		line-height: 1.6;
		padding: 5px 0;
	}
	/* 枠のマージン・パディング */
	.mb { margin-bottom: 30px; }
	.pt { padding-top: 30px; }
	.pb { padding-bottom: 30px; }
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	#top_ttl {
		background-position: top -20px left -50px;
		background-size: 40px auto;
	}
	#top_msg {
		padding-bottom: 0;
	}
	#top_msg .img {
		width: 60%;
	}
	#top_msg .in .txt {
		line-height: 1.6;
		font-size: 15px;
	}
	#top_msg .in .txt span{
		font-size: 17px;
	}
	#top_gallery:before {
		background-size: 40px auto;
		background-position: top 68vw left;
	}
	#top_gallery ul {
		flex-wrap: wrap;
	}
	#top_gallery ul li {
		width: 48%;
		margin-bottom: 10px;
	}
	#top_gallery .btn01 a {
		display: block;
		width: 280px;
		margin: 0 auto;
	}
	#top_gallery .btn01 a:first-of-type {
		margin-right: auto;
		margin-bottom: 15px;
	}
	#top_menu .box {
		width: 100%;
		margin-bottom: 50px;
	}
	#top_menu .box:last-of-type {
		margin-bottom: 0;
	}
	#top_menu .box dl dd h3 {
		font-size: 25px;
		margin-bottom: 10px;
	}
	#top_menu .box .btn01 a {
		width: 190px;
	}
	#top_info {
		margin-bottom: 30px;
	}
/*--------------------------------------------------
	店舗情報
--------------------------------------------------*/
	#shop .txt,#shop .txt02 {
		text-align: left;
		margin-bottom: 15px;
	}
	#shop .waku_box {
		width: 95%;
	}
	#shop .waku_box .box {
		padding: 50px 15px 30px;
	}
	#shop .waku_box .box .fukidashi {
		font-size: 15px;
	}
	#shop .waku_box .box .fukidashi .img img {
		width: 80px;
	}
	#shop .waku_box .box .fukidashi::before,#shop .waku_box .box .fukidashi::after {
		height: 20px;
	}
	#shop .waku_box .box .fukidashi::before {
		left: 15%;
	}
	#shop .waku_box .box .fukidashi::after {
		right: 15%;
	}
	@media only screen and (min-width: 500px) {
		#shop .waku_box .box .fukidashi::before {
			left: 25%;
		}
		#shop .waku_box .box .fukidashi::after {
			right: 25%;
		}
	}
	#shop .waku_box .box .in .ttl {
		font-size: 14px;
		line-height: 1.2em;
	}
	#shop .waku_box .box .in .size {
		font-size: 12px;
	}
	#shop .waku_box .box .btn01 a {
		width: 250px;
	}
/*--------------------------------------------------
	額装例
--------------------------------------------------*/
	#frame .frame_box .box {
		width: 80%;
		margin: 0 auto 50px;
	}
	#frame .frame_box .box .img_box {
		min-height: 250px;
	}
	#frame .frame_box .box .img_box img {
		max-width: 200px;
		max-height: 220px;
	}
	#frame .frame_box .box .txt_box .ttl_box {
		min-height: 50px;
	}
	#frame .frame_box .box .txt_box .ttl_box .ttl {
		font-size: 16px;
		padding-bottom: 0;
	}
	#frame .frame_box .box .txt_box .omakase {
		font-size: 14px;
	}
	#frame .frame_box .box .txt_box .price {
		font-size: 16px;
	}
	@media only screen and (max-width: 320px) {
		#frame .frame_box .box {
			width: 100%;
		}
	}
	/*--------------------------------------------------
		サブページ
	--------------------------------------------------*/
	
/*------------------------------------------------*/
}
