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

/*=========================================

sub_common

=========================================*/



/*=========================================

subvisual

=========================================*/

#about_visual {
	background: url(../image/about_visual.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
	width: 100%;
	height: 300px;
	padding-top: 10%;
}

#about_visual h1,
#cuisine_visual h1,
#news_visual h1,
#contact_visual h1 {
	color: #fff;
	text-align: center;
	letter-spacing: 0.1em;
}

#cuisine_visual {
	background: url(../image/cuisine_visual.jpg) no-repeat;
	background-size: cover;
	background-position: center bottom;
	position: relative;
	width: 100%;
	height: 300px;
	padding-top: 10%;
}

#news_visual {
	background: url(../image/news_visual.jpg) no-repeat;
	background-size: cover;
	background-position: center bottom;
	position: relative;
	width: 100%;
	height: 300px;
	padding-top: 10%;
}

#contact_visual {
	background: url(../image/contact_visual.jpg) no-repeat;
	background-size: cover;
	background-position: center bottom;
	position: relative;
	width: 100%;
	height: 300px;
	padding-top: 10%;
}


@media (max-width: 768px) {
	#about_visual h1,
	#cuisine_visual h1,
	#news_visual h1,
	#contact_visual h1 {
		margin-top: 80px;
	}
}

@media (max-width: 480px) {
	#about_visual h1,
	#cuisine_visual h1,
	#news_visual h1,
	#contact_visual h1 {
		margin-top: 120px;
	}
}


/*=========================================

page_contact_area

=========================================*/

#page_contact_area {
	padding: 150px 0 100px;
	background-image: url(../image/contact_area_image.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.page_contact_area_container {
	width: 60%;
	margin: 0 auto;
	text-align: center;
	border: 1px solid #ccc;
}

.page_contact_area_container a {
	display: block;
	color: #333;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 30px 30px 20px 30px;
	text-align: center;
	width: 80%;
}

.page_contact_area_container a:hover {
	background: #f8f8f8;
	transition: all 0.5s ease;
}

.page_contact_area_container a img {
	margin: 0 auto;
	width: 15%;
}

.page_contact_area_inner {
	margin-right: 50px;
}

.page_contact_area_inner:last-child {
	margin-right: 0;
}

.page_contact_area_btn::after {
	content: '';
  display: inline-block;
  width: 40px;
  height: 7px;
  background-image: url(../image/arrow_01.png);
	background-repeat: no-repeat;
  background-size: contain;
	vertical-align: middle;
	margin-left: 20px;
}

.page_contact_tel {
	font-size: 3rem;
	color: #636363;
	font-weight: bold;
	margin: 0;
}


@media (max-width: 768px) {
	.page_contact_area_container a img {
		width: 20%;
	}
}


@media (max-width: 480px) {
	#page_contact_area {
		margin-top: 0;
		padding: 100px 0 50px;
		background-position: right;
	}

	.page_contact_area_container {
		width: 100%;
		margin: 0 auto;
	}

	.page_contact_area_container a {
		width: 80%;
		margin: 0 auto;
	}

	.page_contact_area_container a img {
		width: 50%;
	}
}


/*=========================================

about

=========================================*/

.about_container {
	padding: 100px 0 50px;
}

.about_inner {
	border-collapse: collapse;
	width: 60%;
	margin: 0 auto;
}

.about_inner th,
.about_inner td {
	border-bottom: 1px solid #ddd;
	padding: 20px 15px;
}

.about_inner th {
	font-weight: normal;
	text-align: left;
	width: 250px;
}

.about_inner td a {
	color: #333;
}

.map_image img {
	width: 60%;
	margin: 0 auto;
}

.about_container ul {
	list-style-type: circle;
	width: 70%;
	margin: 50px auto 0;
}

.about_container ul li {
	padding-bottom: 20px;
	color: #ab2424;
}

.about_image {
	display: flex;
}

.about_image_item {
	flex: 1 0 0%;
}

.about_image img {
	padding: 10px;
}


@media (max-width: 768px) {
	.about_inner {
		width: 80%;
	}

	.map_image img {
		width: 80%;
	}

	.about_container ul {
		width: 80%;
	}
}

@media (max-width: 480px) {
	.about_inner {
		width: 90%;
	}

	.about_inner th,
	.about_inner td {
		display: block;
	}

	.about_inner th {
		width: 100%;
		font-weight: bold;
		font-size: 1.2rem;
	}

	.map_image img {
		width: 100%;
	}

	.about_container ul {
		width: 80%;
		padding-left: 10px;
	}

	.about_image {
		flex-direction: column;
	}
}



/*=========================================

page_cuisine

=========================================*/

#page_cuisine {
	padding: 100px 0 50px;
	background: #000;
}

.page_cuisine_container {
	width: 80%;
	margin: 0 auto;
	color: #fff;
}

.page_cuisine_container h2 {
	text-align: center;
}

.page_cuisine_container h3 {
	border-left: 5px solid #fff;
	padding-left: 10px;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
}

.page_cuisine_container h4 {
	font-size: 2rem;
	font-weight: normal;
	text-align: right;
	padding-right: 80px;
}

.page_cuisine_item {
	display: flex;
	justify-content: center;
	margin: 80px 0;
}

.page_cuisine_item div {
	width: 50%;
}

.page_cuisine_item p {
	font-size: 0.9rem;
}


.page_cuisine_item_text p {
	padding-left: 50px;
}

.kaiseki_container h4 {
	padding-right: 0;
}

.kaiseki_inner {
	display: flex;
	justify-content: space-between;
}

.kaiseki_item {
	border: 1px solid #424242;
	width: 45%;
	padding: 30px;
	margin-bottom: 50px;
}

.kaiseki_item h4 {
	font-size: 2rem;
	font-weight: normal;
	margin-top: 0;
}

.kaiseki_item p {
	font-size: 0.9rem;
}

.page_cuisine_menu {
	display: flex;
}

.page_cuisine_menu div {
	flex: 1 0 0%;
}

@media (max-width: 768px) {
	.page_cuisine_container h4 {
		padding-right: 40px;
	}

	.page_cuisine_item_text p {
		padding-left: 0;
	}

	.kaiseki_inner {
		flex-direction: column;
	}
	.kaiseki_item {
		width: 100%;
		padding: 20px 30px;
	}

	.kaiseki_item h4 {
		font-size: 2rem;
		font-weight: normal;
		margin: 0;
	}
}

@media (max-width: 480px) {
	.page_cuisine_item {
		flex-direction: column;
		justify-content: center;
		margin: 80px 0;
	}

	.page_cuisine_item div {
		width: 100%;
	}

	.page_cuisine_container h4 {
		padding-right: 0;
	}

	.kaiseki_item p {
		font-size: 1.1rem;
	}

	.page_cuisine_menu {
		flex-direction: column;
	}
}



/*=========================================

page_news

=========================================*/

#page_news {
	padding: 100px 0;
}

.page_news_container h2 {
	text-align: center;
}

.page_news_item {
	display: flex;
	justify-content: center;
	width: 90%;
	margin: 0 auto;
	margin-top: 100px;
}

.page_news_item div {
	margin-right: 30px;
	flex: 1 0 0%;
}

.page_news_item div:last-child {
	margin-right: 0;
}

.page_news_item h3 {
	text-align: center;
}

.page_news_item p {
	font-size: 0.9rem;
	text-align: center;
}

.page_news_item_last {
	width: 90%;
	margin: 0 auto;
	margin-top: 100px;
}

.page_news_item_last p {
	font-size: 0.9rem;
}

.page_news_item_last p span {
	font-size: 1.1rem;
	display: block;
	padding-top: 20px;
	color: #ff0000;
}

@media (max-width: 480px) {
	#page_news {
		padding: 100px 0 20px;
	}

	.page_news_item {
		flex-direction: column;
	}

	.page_news_item div {
		margin-right: 0;
	}

	.page_news_item_under {
		margin-top: 50px;
	}

	.page_news_item p {
		text-align: left;
	}
}



/*=========================================

contact

=========================================*/



.contact_container {
	padding: 100px 0 50px;
}

.contact_container p {
	text-align: center;
}

.contact_inner {
	border-collapse: collapse;
	width: 60%;
	margin: 100px auto 0;
}

.contact_inner th,
.contact_inner td {
	border-bottom: 1px solid #ddd;
	padding: 30px 15px;
}

.contact_inner th {
	font-weight: normal;
	text-align: left;
	width: 250px;
}

.contact_inner th span {
	background: #dc9191;
	font-size: 0.8rem;
	padding: 5px 10px;
	color: #fff;
	border-radius: 5px;
	margin-left: 10px;
}

.contact_inner th span.enter {
	background: none;
	color: #f00;
	margin-left: 0;
}

input[type="text"] {
	padding: 5px;
	border: 1px solid #ccc;
}

input[type="submit"],
input[type="reset"] {
	padding: 10px;
	cursor: pointer;
	margin-top: 50px;
	width: 150px;
	border: 1px solid #ccc;
}

select {
	border: 1px solid #ccc;
	margin-right: 20px;
	padding: 5px;
}


textarea {
	border: 1px solid #ccc;
}

.form_button {
	text-align: center;
}

@media (max-width: 768px) {
	.contact_inner {
		width: 90%;
	}
}

@media (max-width: 480px) {
	.contact_container p {
		width: 90%;
		margin: 0 auto;
	}

	.contact_inner th,
	.contact_inner td {
		display: block;
	}

	.contact_inner th {
		width: 100%;
	}

	input[type="text"] {
		width: 90%;
		padding: 10px;
	}

	textarea {
		width: 90%;
	}
}
