html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	font-family: Arial;
}

body {
	/*
	display:flex; 
	align-items: center;
	*/
}

.main {
	/*
	max-width: 1893px;
	max-height: 1368px;
	width: 100%;
	height: 100%;
	*/
	/*
	max-width: 1200px;
	max-height: 867px;
	*/
	max-width: 1920px;
	max-height: 1388px;
	margin: 0 auto;
	/*width: 1200px;*/
	width: 100%;
	/*height: 867px;*/
	height: calc(71.5vw);
	/*height: calc(100vw);*/
	/*min-width: 1200px;*/
	background: #fff url(image/background.jpg) no-repeat;
	/*background: #fff url(image/background_full.jpg) no-repeat;*/
	background-size: 100% auto;
	background-position: top;
	position: relative;
	/*border: 1px solid #f00;*/
}

.contact {
	position: absolute;
	top: 86%;
	left: 29.5%;
	right: 20%;
	height: 24px;
	/*border: 1px solid #F00;*/
	font-family: Arial;
	font-size: 36px;
	font-size: 2.2vw;
	font-weight: bold;
	color: #652607;
}

.contact a {
	color: #161155;
	text-decoration: none;
}

.contact a:hover {
	text-decoration: underline;
}

.contact a.active, .contact a.active:hover {
	color: #97190c;
}

.contact a.active:hover {
	text-decoration: underline;
}

.contact .c-m {
	display: none;
}

/*
@media screen and (min-width: 1200px) {
	body {
		display: flex;
		align-items: normal;
	}
	.main {
		width: 1893px;
		height: 1368px;
		min-width: 1893px;
		background-size: 1893px 1368px;
	}
}
*/

.title {
	position: absolute;
	top: 10%;
	left: 38%;
	right: 20%;
	height: 24px;
	/*border: 1px solid #F00;*/
	font-family: Arial;
	font-size: 3.2vw;
	font-weight: bold;
	color: #0a054f;
	font-style: italic;
}

.title a {
	color: #0a054f;
	text-decoration: none;
}

.title a:hover {
	color: #0a054f;
	text-decoration: none;
}

.description {
	position: absolute;
	top: 4.6%;
	left: 27.5%;
	right: 20%;
	height: 24px;
	/*border: 1px solid #F00;*/
	font-family: Arial;
	font-size: 1.75vw;
	font-weight: bold;
	color: #0c0b0b;
	font-family: Arial;
}

.call-link {
	position: absolute;
	top: 10.2%;
	left: 79%;
	height: 24px;
	/*border: 1px solid #F00;*/
	font-family: Arial;
	font-size: 1.8vw;
	font-weight: bold;
	color: #732209;
}

.call-link a {
	color: #732209;
	text-decoration: none;
}

.call-link a:hover {
	color: #732209;
	text-decoration: underline;
}

.email-link {
	position: absolute;
	top: 16.2%;
	left: 79%;
	height: 24px;
	/*border: 1px solid #F00;*/
	font-family: Arial;
	font-size: 1.8vw;
	font-weight: bold;
	color: #0c0b0b;
}

.email-link a {
	color: #0c0b0b;
	text-decoration: none;
}

.email-link a:hover {
	color: #0c0b0b;
	text-decoration: underline;
}

.menu {

}

.menu a {
	display: block;
	text-decoration: none;
	font-family: Arial;
	font-size: 2.2vw;
	font-weight: bold;
	color: #0a054f;
	/*border: 1px solid #f00;*/
	position: absolute;
}

.menu a:hover {
	color: #0a054f;
	text-decoration: underline;
}

.menu a::first-letter {
  color: #802a16;
}

.menu a.active, .menu a.active:hover, .menu a.active::first-letter {
	color: #f22611;
}

.menu a.active:hover {
	text-decoration: underline;
}

.menu a:nth-child(1) {
	top: 29.4%;
	left: 3.8%;
}

.menu a:nth-child(2) {
	top: 40.7%;
	left: 2.5%;
}

.menu a:nth-child(3) {
	top: 51.2%;
	left: 2.5%;
}

.menu a:nth-child(4) {
	top: 61.9%;
	left: 2.4%;
}

.menu a:nth-child(5) {
	top: 73%;
	left: 3.8%;
}

.content {
	position: absolute;
	top: 22.2%;
	left: 23.2%;
	bottom: 18%;
	right: 10%;
	/*border: 1px solid #f00;*/
	font-size: 1.82vw;
	letter-spacing: 0.01vw;
	color: #0c0b0b;
}

.content2 {
	position: absolute;
	top: 78%;
	left: 0;
	right: 0;
	/*border: 1px solid #f00;*/
	font-size: 1.82vw;
	letter-spacing: 0.01vw;
	color: #0c0b0b;
	text-align: center;
	font-weight: bold;
}

.content2-m {
	display: none;	
}

.content-h1 {
	position: absolute;
	top: 19.5%;
	left: 23.2%;
	bottom: 18%;
	right: 10%;
	/*border: 1px solid #f00;*/
	font-size: 1.82vw;
	letter-spacing: 0.01vw;
	color: #0c0b0b;
}

.content .mark {
	color: #5b0606;
}

.image-border {
	border: .7vw solid #f9f5f1;
	border-radius: .8vw;
	box-shadow: 0px .4vw .8vw #ccc;
	display: inline-block;
	margin: 0 1vw .5vw 0;
}

h1 {
	text-align: right;
	font-size: 3.4vw;
	margin: 0 16.2vw 1vw 0;
	padding: 0;
}

h1 .mark {
	color: #0a054f;
}

.content-p1-text {
	padding: 0 3vw 0 0;
	line-height: 2.4vw;
}

.content-p1-text2 {
	margin: 9vw 2vw 0 2vw;
}

.content-p3-text {
	margin: 0vw 2vw 0 27.1vw;
}

.content-p3-text2 {
	text-align: center;
	margin-top: 1vw;
}

.content-p4-text {
	margin: 7vw 2vw 0 31vw;
}

.content-p4-text2 {
	margin: 12vw 2vw 0 0vw;
	text-align: center;
}

.content-p5-text {
	margin: 5vw 5vw 0 5vw;
}

.map-border {
	border: .7vw solid #f9f5f1;
	border-radius: .8vw;
	box-shadow: 0px .4vw .8vw #ccc;
}

.content-phome-text {
	margin-top: 8vw;
}

.book {
	width: 32%;
	display: block;
	float: left;
	text-align: center;	
}

.book-title {
	font-size: 1.5vw;
}

.image-p6 {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 3vw;
}

.image-p7 {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1vw;
}

.content-p7-text {
	display: none;
}

.map-size {
	width: 90%;
	height: 25vw;
	border:none;
	margin-top: 1vw;	
}

.title-m {
	display: none;	
}

.description-m {
	display: none;	
}

.content-h1 .image-p3 {
	margin-right: 3vw;
}


@media screen and (max-width: 767px) {
	.main {
		/*max-width: 1893px;
		max-height: 1368px;
		*/
		max-width: 767px;
		max-height: 1073.35px;
		margin: 0 auto;
		/*width: 1200px;*/
		width: 100%;
		/*height: 867px;*/
		height: calc(136vw);
		/*height: calc(100vw);*/
		/*min-width: 1200px;*/
		background: #fff url(image/background_m.jpg) no-repeat;
		/*background: #fff url(image/background_full_m.jpg) no-repeat;*/
		background-size: 100% auto;
		background-position: top;
		position: relative;
		/*border: 1px solid #f00;*/
	}
	
	.main:after {
		display: block;
		content: '';
		/*border: 1px solid #f00;*/
		position: absolute;
		top: 136vw;
		width: 100%;
		height: calc(100vh - calc(136vw));
		background: #fff url(image/background_m_mirror.jpg) no-repeat;
		background-size: 100% auto;
		background-position: top;
	}
	
	.call-link {
		position: absolute;
		top: 18%;
		left: 75.4%;
		height: 24px;
		font-size: 3.3vw;
		transform: rotate(25deg);
	}
	
	.email-link {
		position: absolute;
		top: 15.1%;
		left: 77.2%;
		height: 24px;
		font-size: 3.3vw;
		transform: rotate(25deg);
	}
	
	.title {
		display: none;
	}
	
	.title-m {
		display: block;
		position: absolute;
		top: 7.4%;
		left: 28.5%;
		right: 20%;
		height: 24px;
		font-family: Arial;
		font-size: 4.5vw;
		font-weight: bold;
		color: #0a054f;
	}
	
	.title-m a {
		color: #0a054f;
		text-decoration: none;
	}

	.title-m a:hover {
		color: #0a054f;
		text-decoration: none;
	}
	
	.title-m .mark {
		color: #62100d;
	}
	
	.description {
		display: none;
	}
	
	.description-m {
		display: block;
		position: absolute;
		top: 2.3%;
		left: 28.5%;
		right: 20%;
		height: 24px;
		font-size: 3.8vw;
		font-weight: bold;
		color: #0c0b0b;
	}
	
	.menu a {
		display: block;
		text-decoration: none;
		font-family: Arial;
		font-size: 3.5vw;
		font-weight: bold;
		color: #0a054f;
		/*border: 1px solid #f00;*/
		position: absolute;
		
		/*border: .7vw solid #f9f5f1;
		border-radius: .8vw;*/
		border: 1px solid #fefefe;
		/*border-radius: .8vw;*/
		box-shadow: 0 .5vw 2vw #ccc;
		padding: 1.2vw;
	}

	.menu a:nth-child(1) {
		top: 15.6%;
		left: 11%;
	}
	
	.menu a:nth-child(2) {
		top: 15.6%;
		left: 39%;
	}
	
	.menu a:nth-child(3) {
		top: 22.6%;
		left: 11%;
	}
	
	.menu a:nth-child(4) {
		top: 22.6%;
		left: 39%;
	}
	
	.menu a:nth-child(5) {
		display: none;
	}
	
	.content {
		position: absolute;
		top: 29.8%;
		left: 11.2%;
		bottom: 3%;
		right: 6%;
		/*border: 1px solid #f00;*/
		font-size: 3vw;
		letter-spacing: 0.01vw;
		color: #0c0b0b;
	}
	
	.image-border {
		border: 1vw solid #f9f5f1;
	}
	
	.content .image-phome {
		width: 74%;
		display: block;
		margin-right: 100%;
		margin-bottom: 1vw;
	}
	
	.content-phome-text {
		margin-top: 0;
	}
	
	.content2 {
		display: none;
	}

	.content2-m {
		display: block;	
		position: absolute;
		top: 90%;
		left: 10%;
		right: 10%;
		/*border: 1px solid #f00;*/
		font-size: 3.4vw;
		letter-spacing: 0.01vw;
		color: #0c0b0b;
		text-align: center;
		font-weight: bold;
	}
	
	.contact {
		position: absolute;
		top: 96.9%;
		left: 11.2%;
		right: 0;
		font-size: 3vw;
	}
	
	.contact .c-m {
		display: inline;
	}
	
	h1 {
		text-align: right;
		font-size: 3.4vw;
		margin: 0 22vw 1vw 20vw;
		padding: 0;
		color: #931a0e;
	}
	
	h1 .mark {
		color: #931a0e;
	}
	
	.content-h1 {
		top: 29.8%;
		left: 11.2%;
		bottom: 3%;
		right: 6%;
		font-size: 3vw;
		letter-spacing: normal;
	}
	
	.content-h1 .image-p1 {
		width: 74%;
		display: block;
		margin-right: 100%;
		margin-bottom: 2vw;
	}
	
	.content-p1-text {
		padding: 0;
		line-height: normal;
	}
	
	.content-p1-text2 {
		margin: 9vw 0 0 0;
	}
		
	.book {
		width: 36%;
	}
	
	.book .book-title {
		display: none;
	}
	
	.content-h1 .image-p3 {
		width: 43%;
		display: block;
		margin-right: 100%;
		margin-bottom: 2vw;
	}
	
	.content-p3-text2 {
		position: absolute;
		top: 12%;
		left: 52%;
		right: 10%;
	}
	
	.content-p3-text {
		margin: 0;
		font-size: 2.5vw;
	}
	
	.content-h1 .image-p4 {
		width: 48%;
		display: block;
		margin-right: 100%;
		margin-bottom: 2vw;
	}
	
	.content-p4-text {
		margin: 0vw 0vw 0 0vw;
	}

	.content-p4-text2 {
		position: absolute;
		top: 10%;
		left: 52%;
		right: 10%;
		margin: 0;
		text-align: center;
	}
	
	.content-p5-text {
		margin: 5vw 8vw 0 0;
	}
	
	.image-p6 {
		display: block;
		margin-left: 0;
		margin-right: auto;
		margin-top: 3vw;
		width: 71%;
	}
	
	.image-p7 {
		display: block;
		margin-left: 5%;
		margin-right: auto;
		margin-top: 3vw;
		width: 71%;
	}
	
	.content-p7-text {
		display: block;
		margin: 5% 17% 0 17%;
		font-weight: bold;
	}
	
	.map-size {
		width: 85%;
		height: 60vw;
		margin-top: 1vw;	
	}
}