@media (max-width: 480px) {
	body {
		font-size: 14px;
	}
	#main-img .rainbow {
		width: 100%;
		overflow: hidden;
	}

	#main-img .rainbow img {
		width: 120%;
	}

	#header {
		height: 340px;
	}

	#main-img {
		height: 340px;
	}

	#header #main-img .curtain {
		height: 340px;
	}

	#header #main-img .img {
		height: 340px;
	}

	#main-img .ttl-box {
		padding: 80px 0 0 0;
	}

	#main-img .ttl-box .page-ttl-en {
		margin: 0 0 12px 0;
		font-size: 24px;
	}

	#main-img .ttl-box .page-sub-ttl {
		font-size: 20px;
	}

	#main-img .txt-1 {
		line-height: 1.5em;
	}

	#footer {
		padding: 16px 0 0 0;
		background-color: #fff;
	}

	#map {
		height: 500px;
		margin: 0 0px 32px 0px;
	}
}

@media (max-width: 768px) {
	#main {
		padding: 32px 0;
	}

	/* ==============================

	全共通

	============================== */
	.common-ttl-1 {
		margin: 16px 0 32px 0;
		font-size: 22px;
	}

	.common-ttl-5 {
		font-size: 28px;
	}

	.section-1 {
		margin: 24px 0;
	}

	.common-txt-2 {
		margin-left: 0;
		margin-right: 0;
	}

	.common-box-1 {
		margin: 0 0px 32px 0px;
		padding: 20px 20px;
	}

	.common-box-1 > .inner .box-1 {
		padding: 16px 0;
	}

	.common-box-1 > .inner .left-box {
		margin-left: 0px;
	}

	.common-box-1 > .inner .right-box {
		margin-right: 0px;
	}

	.common-box-1 > .inner .item {
		margin-bottom: 32px;
	}

	.common-box-2 {
		margin: 120px 0 0 0;
		padding: 20px 20px;
		background-color: #F7F6F2;
	}

	.common-box-2 .box-1 .txt-box {
		padding: 20px;
	}

	.common-box-2 .box-1 {
		margin-bottom: 32px;
	}

	.common-box-3 {
		padding: 10px 10px;
	}

	.common-box-7 .img-wrap {
		width: 100%;
		height: 400px;
	}

	.common-box-7 .txt-wrap {
		position: inherit;
		right: inherit;
		bottom: inherit;
		width: 100%;
		padding: 20px 16px;
		background-color: #fff;
	}

	.lower-ttl-1 {
		font-size: 24px;
	}

	.lower-ttl-2 {
		margin: 0 0 24px 0;
		font-size: 18px;
	}

	.takumi-banner-wrap {
		width: 100%;
		border-bottom: 1px solid #aaa;
		padding-bottom: 40px;

	}
}