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

html, 
html * {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	font-style: normal;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

li {
	list-style-type: none;
}


.style-logo img {
	width: 220px;
	float: left;
	padding: 10px 15px;
}

.rese-style img {
	width: 90px;
	float: right;
}

.main-photo {
	background: url(image/photo_ibaki.jpg) no-repeat center;
	background-size: cover;
	height: 60vh;
	width: 100%;
}

@media screen and (max-width:768px) {
	.main-photo {
		height: 40vh;
	}
}

.main-sub-photo {
	background: url(image/main_sub.jpg) no-repeat center;
	background-size: cover;
	height: 25vh;
	width: 100%;
}

.shop__name {
	text-align: center;
	background-color: #f8b729;
	position: relative;
	margin-top: -50px;
	color: #ffffff;
	font-weight: 400;
}

.button-box {
	text-align: center;
	background: #FFEE09;
	height: cover;
	margin-top: -5px;
}


.button1 {
	max-width: 18%;
}

.button2 {
	width: 18%;
}

.button3 {
	width: 18%;
}

.button4 {
	width: 18%;
}

.button5 {
	width: 18%;
}


.title1 img{
	margin: auto;
	width: 80%;
	display: block;
	margin-top: 30px;
}


.box1 {
	width: 80%;
	margin: auto;
}

.box3 {
	width: 80%;
	margin: auto;
}

.box4 {
	width: 50%;
	margin: auto;
}

.mail-box1 {
	text-align: center;
	margin: auto;
	display: block;
	
}

.comment1 {
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	line-height: 30px;
	color: #161616;	
}

.comment1 span {
	font-size: 11.5px;
	line-height: 5px;
	color: #696969;
	vertical-align: middle;
	letter-spacing: -1px;
}

.comment2 {
	font-size: 24px;
	font-weight: bold;
	color: #161616;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px 0;
}

.comment2 span {
	font-size: 13px;
	color: #161616;
}


.comment3 {
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	line-height: 30px;
	color: #ffa500;
	margin-left:-17px;
}

.comment3 span {
	font-size: 12px;
	line-height: 5px;
	color: #696969;
	vertical-align: middle;
}

.comment4 {
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	line-height: 30px;
	color: #070707;
	margin-left:-17px;
}

.comment4 span {
	font-size: 12px;
	line-height: 5px;
	color: #696969;
	vertical-align: middle;
}

.comment5 {
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	line-height: 18px;
	color: #FFFFFF;
	margin-top: auto;
}

.comment5 span {
	font-size: 12px;
	vertical-align: middle;
}



.list-guie{
	font-size: 13px;
	line-height: 20px;
	color: #696969;
	vertical-align: middle;
}

.list-guie span{
	color: #FF0004;
	text-decoration: underline;
}

.list-guie2{
	margin-left:-17px;
}

hr {
	width: 100%;
	text-align: center;
}

.marq-style {
	width: 18px;
}

.obi {
	background: #FFF60B;
	width: 90%;
	margin: auto;
	border-radius: 30px;
	text-align: center;
}

.obi1 {
	background: #ffa500;
	margin: auto;
	border-radius: 50px;
	padding: 8px;
	text-align: center;
	width: 250px;
}


.mail-box2 {
	color: #ffffff;
	width: 250px;
}


.icon img {
	margin: auto;
	width: 80%;
	display: block;
	margin-top: 30px;
}

.icon2 img {
	margin: auto;
	width: 80%;
	padding: 10px;
	display: block;
	margin-top: 30px;
}

.icon3 img {
	margin: auto;
	width: 80%;
	padding: 10px;
	display: block;
	margin-top: 30px;
}

.icon4 img {
	margin: auto;
	width: 80%;
	display: block;
	margin-top: 0px;
}



.footer-text {
	text-align: center;
	font-size: 10px;
	color: #161616;
}

.attenshon1 {
	text-align: center;
	color: #393939;
	font-size: 11px;
}

@media (min-width: 768px){

	body {
	margin-left: auto;
	margin-right: auto;
	max-width: 1150px;
}

.button1 {
	max-width: 9%;
}

.button2 {
	width: 9%;
}

.button3 {
	width: 9%;
}

.button4 {
	width: 9%;
}

.button5 {
	width: 9%;
}	

.title1 img{
	width: 60%;
}

.icon img {
	width: 50%;
}

	
.obi {
	width: 65%;
}

.box2 {
	margin: auto;
	width: 80%;		
}

.box3 {
	width: 60%;
	margin: auto;
}
	
.icon2 img {
	float: left;
	width: 35%;
}

.icon3 img {
	float: left;
	width: 60%;
	margin-top: 60px;
}

.icon4 img {
	width: 50%;
}
	
.obi1 {
	padding: 15px;
}

.comment5 {
	font-size: 18px;
}

.comment5 span {
	font-size: 12px;
	vertical-align: middle;
}


footer {
	clear: both;
}

}



/*==ナビゲーション全体の設定*/
nav{
  color:#fff;
	text-align: center;
	max-width: 1150px;
	position: relative;
}
/*ナビゲーションを横並びに*/
nav ul{
  list-style: none;
  display: flex;
	justify-content: flex-end;
	position: absolute;
	right: 0;
}
/*2階層目以降は横並びにしない*/
nav ul ul{
  display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li{
  position: relative;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
  display: block;
  text-decoration: none;
  color: #999;
  padding: 0px 0px;
  transition:all .3s;
}

nav ul li li a{
  padding:30px 10px;
}

nav ul li a:hover{
  color:#fff; 
}


/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav li.has-child ul{
    /*絶対配置で位置を指定*/
  position: absolute;
	left: -90px;
	top: 90px;
  z-index: 4;
    /*形状を指定*/
	background:#FFEE09;
  width:180px;
    /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
    /*アニメーション設定*/
  transition: all .3s;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
	color: #333;
  border-bottom:solid 1px rgba(255,255,255,0.6);
}

.has-child ul li a span {
	font-size: 10px;
	display: inline-block;
}

@media screen and (max-width:768px) {
	nav li.has-child ul li a {
		font-size: 12px;
	}
}

nav li.has-child ul li:last-child a{
  border-bottom:none;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
  background:#a99e05;
}


.other-shop {
	margin-top: 20px;
	display: block;
	width: 250px;
	margin: 20px auto;
}


/* 料金表テーブル */
.price-table-container {
  max-width: 800px;
  margin: 40px auto;
  padding: 20px;
}

.price-title {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 30px;
  color: #333;
}

.price-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.price-table thead {
  background: #b70000;
  color: #fff;
	&.-ibaraki {
		background: #F8B62A;
	}
}

.price-table th,
.price-table td {
  padding: 15px;
  text-align: center;
  border: 1px solid #ddd;
}

.price-table th {
  font-weight: bold;
  font-size: 1.1rem;
}

.price-table tbody tr:hover {
  background: #f5f5f5;
}

.price-table .day-header td:first-child {
  font-weight: bold;
  background: #f0f0f0;
  color: #333;
}

@media (max-width: 768px) {
  .price-table {
    font-size: 0.9rem;
  }

  .price-table th,
  .price-table td {
    padding: 10px 5px;
  }
}