@charset "utf-8";
/* CSS Document */

@media screen and (max-width: 1024px) {
	.container {
		max-width: 1000px;
		width: 100%;
	}

	/* header */
	header .container {
		max-width: 100%;
		width: 100%;
	}

	/* title */
	#title_wrapper .container {
		padding-bottom: 4%;
		padding-top: 4%;
		max-width: 450px;
		width: 45%;
	}

	#title_wrapper .container * {
		padding-bottom: 2%;
	}

	#title_wrapper .container h2 {
		padding-bottom: 4%;
	}

	/* article */
	.flex_container {
		margin-left: auto;
		margin-right: auto;
		max-width: 1000px;
		width: 100%;
	}

	.flex .left, .flex .right {
		padding-bottom: 15%;
		padding-top: 12%;
		max-width: 500px;
		width: 50%;
	}

	.flex_container .desc, .flex_container .image {
		padding-left: 5%;
		padding-right: 5%;
		max-width: 475px;
		width: 90%;
	}

	.flex_container .desc img {
		padding-bottom: 4%;
	}

	.flex_container .desc p {
		font-size: 100%;
	}

	.flex_container .left .desc, .flex_container .left .image {
		padding-left: 3%;
	}

	.flex_container .right .desc, .flex_container .right .image {
		padding-right: 3%;
	}

	/* desc */
	#desc_wrapper .flex .left, #desc_wrapper .flex .right {
		padding-bottom: 8%;
		padding-top: 8%;
	}

	/* border */
	.border {
		height: 15%;
	}

	/* article, price header */
	.article_head img {
		padding-bottom: 17.5%;
		padding-top: 17.5%;
		max-width: 470px;
		width: 50%;
	}

	/* price */
	#price_wrapper article {
		padding-bottom: 10%;
		padding-top: 10%;
	}

	.price {
		max-width: 1000px;
		width: 100%;
	}

	.price_name {
		padding-bottom: 2%;
		max-width: 500px;
		width: 50%;
	}

	.price_address {
		max-width: 500px;
		width: 50%;
	}

	.combo_head .wide {
		display: none;
	}

	.combo_head .mobile {
		display: block;
	}

	.combo_head .button {
		font-size: 91.7%;
		padding-left: 2%;
		padding-right: 2%;
		max-width: 500px;
		width: 50%;
	}

	.flex_price {
		padding: 5% 3%;
		max-width: 700px;
		width: 90%;
	}

	.price_child {
		width: 30%;
	}

	.price_child > p {
		padding-bottom: 4%;
		padding-top: 4%;
	}

	.price_child > p:nth-child(2) {
		padding-bottom: 8%;
	}

	.price_child img {
		margin-left: auto;
		margin-right: auto;
		width: 80%;
	}

	footer p {
		font-size: 91.7%;
	}
}

@media screen and (max-width: 800px) {
	.flex_container .desc p {
		font-size: 91.7%;
	}
}

@media screen and (max-width: 600px) {
	/* title */
	#title_wrapper .container {
		padding-bottom: 5%;
		padding-top: 5%;
		max-width: 450px;
		width: 80%;
	}

	#title_wrapper .container * {
		padding-bottom: 2%;
	}

	#title_wrapper .container h2 {
		padding-bottom: 3%;
	}

	.flex {
		display: block;
	}

	.flex .left, .flex .right {
		padding-top: 10%;
		padding-bottom: 0;
		max-width: 550px;
		width: 100%;
	}

	.flex_container .desc, .flex_container .image {
		padding-left: 0;
		padding-right: 0;
	}

	.flex_container .desc img {
		padding-bottom: 1%;
	}

	.flex_container .desc p {
		font-size: 91.7%;
	}

	.flex_container .image img {
		margin-left: auto;
		margin-right: auto;
		width: 75%;
	}

	.flex_container .right .image img {
		margin-left: auto;
		margin-right: auto;
	}

	.flex_container .left .desc, .flex_container .left .image {
		margin-left: auto;
		margin-right: auto;
		padding-left: 0;
	}

	.flex_container .right .desc, .flex_container .right .image {
		margin-left: auto;
		margin-right: auto;
		padding-right: 0;
	}

	.desc_flex img:nth-child(1) {
		margin-left: auto;
		margin-right: auto;
		width: 20%;
	}

	.desc_flex img:nth-child(2) {
		width: 100%;
	}

	#desc_wrapper .flex .right {
		padding-top: 0;
	}
	
	article:not(first-child) {
		padding-bottom: 10%;
	}

	/* article, price header */
	.article_head img {
		padding-bottom: 17.5%;
		padding-top: 17.5%;
		max-width: 550px;
		width: 65%;
	}

	/* price */
	#price_wrapper article {
		padding-bottom: 10%;
		padding-top: 10%;
	}

	.price {
		max-width: 550px;
		width: 100%;
	}

	.price_name {
		padding-bottom: 3%;
		max-width: 550px;
		width: 80%;
	}

	.price_address {
		max-width: 550px;
		width: 70%;
	}

	.combo_head .button {
		font-size: 91.7%;
		padding-left: 2%;
		padding-right: 2%;
		width: 90%;
	}
	
	#map {
		display: none;
	}

	.flex_price {
		padding: 5% 3%;
		max-width: 550px;
		width: 90%;
	}

	.price_child {
		border-bottom: 1px dashed #5b4c22;
		margin-bottom: 5%;
		margin-left: auto;
		margin-right: auto;
		padding-bottom: 7%;
		max-width: 200px;
		width: 100%;
	}
	
	.price_child:last-child {
		border: none;
		padding-bottom: 0;
	}

	.price_child > p {
		padding-bottom: 4%;
		padding-top: 4%;
	}

	.price_child > p:nth-child(2) {
		padding-bottom: 8%;
	}

	.price_child img {
		width: 80%;
	}
	
	#info_link {
		font-size: 91.7%;
	}

	footer p {
		font-size: 100%;
	}
}
