body{
  box-sizing: border-box;
  margin: 0;
  font-family: "Arial", "メイリオ";
  background-color:white;
}
*{box-sizing: border-box;}
header{
  margin: 0;
}
img{
  max-width: 100%;
}
.sp-image img {
  vertical-align: bottom;
  max-width: 100%; 
}






/* ボックス１ーメニュー */
.news{
  margin: 0;
  max-width: 100%;
  background-image: url(../img/back.jpg);
  background-size: cover;
  background-position: left;
  position: relative;
}
.news h1{
  margin: 0;
  padding: 0;
  color: #ddd;
  font-family: 'Julius Sans One', sans-serif;
  font-family: 'Lobster', cursive;
  font-family: 'Rye', cursive;
  font-family: 'Yeseva One', cursive;
}
.box1{
  margin: 0;
  width: 100%;
  /* writing-mode: vertical-rl;
  text-align: right; */
}
.box1 ul{
  list-style-type: none;
  width: 100%;
  margin: 0;
  padding: 0;
}
.box1 li{
  border-bottom: #ddd 1px solid;
}
.box1 ul li:hover{
background-color: rgb(0,0,0,0.05);
}
.box1 li:last-child{
  border-bottom: none;
}
.box1 time{
  font-weight: bold;
}



/* ボックス２値段 */
.price {
  margin: 0;
  max-width: 100%;
  overflow: hidden;
}
.price h1{
  text-align: center;
  margin: 0;
  padding: 0;
  font-family: 'Julius Sans One', sans-serif;
  font-family: 'Lobster', cursive;
  font-family: 'Rye', cursive;
  font-family: 'Yeseva One', cursive;
}
.price h2{
  margin: 0;
  text-align: center;
}


/* 表 */
th , td{
  padding: 10px;
  /* background: white; */
}
th{
  text-align: left;
  font-size: 20px;
  padding-left: 40px;
}
td{
  text-align: right;
  padding-right: 40px;
}
tr{
  border-bottom: 2px dotted #ccc;
}
table{
  width: 70%;
  margin: 0 auto;
  border-collapse: collapse;
  margin-bottom: 30px;
}

/* ボックス3サービス */
.service {
  margin: 0;
  max-width: 100%;
  overflow: hidden;
}
.service h1{
  text-align: center;
  margin: 0;
  padding: 0;
  font-family: 'Julius Sans One', sans-serif;
  font-family: 'Lobster', cursive;
  font-family: 'Rye', cursive;
  font-family: 'Yeseva One', cursive;
}
.service h2{
  margin: 0;
  text-align: center;
}


/* バナー */
.banner{
  max-width: 100%;
  margin: 0;
}
.box4{
  width: 100%;
  text-align: center;
}
.box4 img:hover{
  opacity: 0.8;
}





/* ボタン */
.btn{
  background: white;
  display: table;
  margin-left: auto;
  padding: 15px;
  margin-top: 30px;
  text-decoration: none;
  color: black;
  font-size: 20px;
  border: 1px solid black;
  width: 220px;
  text-align: center;
}
.btn:hover{
  color: #fff;
  background: #000;
}

















/* 一番下 */
.last{
  width: 100%;
}
.last p{
  margin: 0;
  padding: 10px 0 10px;
  text-align: center;
}

/* 固定予約バナー */
.kotei{
  margin: 0;
}
#yoyaku{
  margin: 0;
  background: rgb(64, 158, 150);
  position: absolute;
  position: fixed;
  z-index: 1000px;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
}
#yoyaku:hover{
  opacity: 0.8;
}
#yoyaku a{
  text-decoration: none;
  color: white;
}





@media screen and (min-width: 768px){
  .sp{
  display: none!important;
  }
  .news h1{
    font-size: 100px;
    position: absolute;
    top: 40px;
    left: 150px;
  }
  .box1 ul{
    padding: 3% 3% 3% 500px;
  }
  .box1 li{
    padding: 20px;
    font-size: 18px;
  }
  .box1 time{
    font-size: 17px;
    padding-right: 15px;
  }
  .price {
    margin-top: 200px;
  }
  .price h1{
    font-size: 40px;
  }
  .price h2{
    font-size: 15px;
    margin-bottom: 70px;
  }
  .service {
    margin-top: 250px;
  }
  .service h1{
    font-size: 40px;
  }
  .service h2{
    font-size: 15px;
    margin-bottom: 70px;
  }
  /* プライスボックスPC */
  .container{
    max-width: 100%;
    margin: 0 auto 0;
  }
  .box2{
    position: relative;
    display: flex;
    align-items: flex-start!important;
  }
  .box2 img{
    border-top-left-radius: 20px;
    width: 50%;
    position: relative;
    z-index: 100;
    margin-bottom: 50px;
    align-items: flex-start;
  }
  .mozi{
    width: 50%;
    padding: 6% 4% 5% 12%;
  }
  .mozi p{
    text-align: right;
    margin: 0;
    padding-right: 50px;
    font-size: 18px;
  }
  .gray{
    width: 70%;
    height: 350px;
    background-color: rgb(207, 228, 228, 0.5);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -100;
  }
  .mozi2 p{
    font-size: 18px;
  }

  /* サービスボックスSP */
  .box3{
    display: flex;
    align-items: flex-start!important;
  }
  .box3 img{
    border-top-right-radius: 20px;
    width: 50%;
    margin-bottom: 50px;
    align-items: flex-start;
  }
  .mozi2{
    width: 50%;
    padding: 10% 20% 5% 10%;
  }
  .gray2{
    width: 70%;
    height: 350px;
    background-color: rgb(207, 228, 228, 0.5);
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -100;
  }
  /* バナー */
  .banner{
    margin-top: 100px;
  }
  .box4 img{
    width: 50%;
  }
  /* ボタン */
  .btn{
    background: white;
    display: table;
    margin-left: auto;
    padding: 15px;
    margin-top: 30px;
    text-decoration: none;
    color: black;
    font-size: 20px;
    border: 1px solid black;
    width: 220px;
    text-align: center;
  }
  .btn:hover{
    color: #fff;
    background: #000;
  }
  #yoyaku{
    padding: 15px;
    padding-left: 25px;
    width: 15%;
    bottom: 200px;
    right: 0px;
  }
  #yoyaku a{
    font-size: 20px;
  }
  /* アクセス等の下の部分 */
  .access{
    margin: 0;
    margin-top: 100px;
    max-width: 100%;
    background-color: rgb(207, 228, 228, 0.5);
  }
  .box5{
    margin: 0;
    display: flex;
    align-items: center;
  }
  .renraku{
    width: 50%;
    justify-content: center;
    text-align: center;
  }
  .center img{
    width: 20%;
  }
  .center p{
    margin: 0;
    font-size: 13px;
  }
  .center h1{
    margin: 0;
    font-size: 12px;
    font-weight: lighter;
    margin-bottom: 20px;
  }
  .map{
    width: 50%;
    text-align: center;
    justify-content: center;
  }
  .map iframe{
    margin-top: 50px;
    margin-bottom: 50px;
    width: 70%;
  }
  .boxbox{
    background: white;
    display: table;
    margin: 0 auto;
    padding: 10px;
    margin-top: 30px;
  }
  .boxbox a{
    text-decoration: none;
    color: black;
    font-size: 20px;
  }

  /* メニュー */
  .yoko{
    text-align: right;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    max-width: 100%;
    background-color:rgb(0,0,0,0.2);
    width: 100%;
    padding: 40px 50px 40px 0;
  }
  .logo img{
    position: absolute;
    width: 9%;
    top: 50%;
    left: 70px;
    vertical-align: middle;
    transform: translateY(-50%);
  }
  .menupc a{
    text-decoration: none;
    color: azure;
    padding-left: 30px;
    padding-right: 30px;
    font-family: 'Julius Sans One', sans-serif;
    font-family: 'Lobster', cursive;
    font-family: 'Rye', cursive;
  }
  .top{
    list-style-type: none;
    margin: 0;
    padding: 0;
  }
  .menuitem{
    font-size: 20px;
    padding: 0;
  }
  nav ul li{
    display: inline-block;
    margin-right: 50px;
  }
  .menupc li{
    border-right: #ddd 1px solid;
    margin: 0;
  }
  .menupc li:last-child{
    border-right: none;
  }
}










@media screen and (max-width: 767px){
  .pc{
    display: none!important;
  }
  .news h1{
    font-size: 30px;
    position: absolute;
    top: 15px;
    left: 20px;
  }
  .box1 ul{
    padding: 45px 20px 10px 20px;
    text-align: left;
  }
  .box1 li{
    padding: 15px;
    font-size: 12px;
  }
  .box1 time{
    font-size: 13px;
    padding-right: 5px;
  }
  .price {
    margin-top: 100px;
  }
  .price h1{
    font-size: 30px;
  }
  .price h2{
    font-size: 10px;
    margin-bottom: 40px;
  }
  .service {
    margin-top: 100px;
  }
  .service h1{
    font-size: 30px;
  }
  .service h2{
    font-size: 10px;
    margin-bottom: 40px;
  }
  .access {
    margin: 0;
    max-width: 100%;
    overflow: hidden;
  }
  .access h1{
    margin: 0;
    margin-top: 100px;
    font-size: 30px;
    text-align: center;
    padding: 0;
    font-family: 'Julius Sans One', sans-serif;
    font-family: 'Lobster', cursive;
    font-family: 'Rye', cursive;
    font-family: 'Yeseva One', cursive;
  }
  .access h2{
    font-size: 10px;
    margin: 0;
    margin-bottom: 40px;
    text-align: center;
  }

  /* プライスボックスSP */
  .container{
    max-width: 100%;
    margin: 0;
  }
  .box2{
    position: relative;
  }
  .box2 img{
    width: 100%;
    opacity: 0.8;
  }
  .mozi p{
    margin: 0;
    text-align: center;
    color: aliceblue;
  }
  .mozi{
    width: 100%;
  }
  .whitebox{
    padding: 10px;
    position: absolute;
    z-index: 900;
    top: 90px;
    background-color: rgb(255, 255, 255,0.8);
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .whitebox p{
    color: #000;
    font-size: 13px;
    text-align: left;
    margin: 0;
  }
  /* ボタン */
  .btn{
    background: white;
    padding: 10px;
    margin: 0;
    text-decoration: none;
    color: black;
    font-size: 17px;
    border: 1px solid black;
    width: 150px;
    text-align: center;
    position: absolute;
    z-index: 900;
    bottom: 50px;
    right: 40px;
  }
  .btn:hover{
    color: #fff;
    background: #000;
  }

  /* サービスボックスSP */
  .box3{
    position: relative;
  }
  .box3 img{
    width: 100%;
    vertical-align: bottom;
    opacity: 0.8;
  }
  .whitebox2{
    padding: 10px;
    position: absolute;
    z-index: 900;
    top: 90px;
    background-color: rgb(255, 255, 255,0.8);
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .whitebox2 p{
    color: #000;
    font-size: 13px;
    text-align: left;
    margin: 0;
  }
  /* バナー */
  /* .banner{
    margin-top: 50px;
  } */
  .box4 img{
    width: 100%;
    vertical-align: bottom;
  }
  /* アクセス */


  /* 固定予約 */
  #yoyaku{
    /* padding: 10px 20px 10px 25px; */
    padding: 20px 40px 20px 40px;
    bottom: 100px;
    right: 0px;
  }
  #yoyaku a{
    font-size: 20px;
  }
  /* アクセス等の下の部分 */
  .box6{
    margin: 0;
    align-items: center;
    width: 100%;
    overflow: hidden;
    vertical-align: bottom;
  }
  /* フッター */
  .box7{
    width: 100%;
    justify-content: center;
    text-align: center;
    margin: 0;
    margin-top: -10px;
    background-color: rgb(207, 228, 228, 0.5);
    padding: 100px 0 100px;
  }
  .box7 img{
    width: 30%;
  }
  .box7 p{
    margin: 0;
    font-size: 13px;
  }
  .box7 h1{
    margin: 0;
    font-size: 12px;
    font-weight: lighter;
    margin-bottom: 10px;
  }
  .boxbox{
    background: white;
    margin: 0 auto;
    padding: 7px 50px 7px;
    margin-top: 10px;
    display: table;
  }
  .boxbox a{
    text-decoration: none;
    color: black;
    font-size: 15px;
  }


  /* ヘッダーメニュー */
  /* ハンバーガーメニュー */
  .drawer{
    position: absolute;
    top: calc(50% - 15px);
    right: 15px;
    
  }
  .top img{
    width: 28%;
    padding-left: 20px;
    vertical-align: middle;
  }
  .top{
    max-width: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
    background: rgb(0, 0, 0,0.3);
    padding: 11px 0 10px;
    position: fixed;
  }
  .drawer-open>span{
    top: 50%;
    transform: translateY(-50%);
  }
  /* チェックボックスは非表示に */
  .drawer-hidden {
    display: none;
  }
  /* ハンバーガーアイコンの設置スペース */
  .drawer-open {
    display: block;
    width: 30px;
    height: 30px;
    position: relative;
    margin: 0;
    padding: 0;
    justify-content: center;
    align-items: center;
    z-index: 21000;/* 重なり順を一番上に */
    cursor: pointer;
  }
  /* ハンバーガーメニューのアイコン */
  .drawer-open span,
  .drawer-open span:before,
  .drawer-open span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: white;
    transition: 0.5s;
    position: absolute;
  }
  /* 三本線のうち一番上の棒の位置調整 */
  .drawer-open span:before {
    bottom: 8px;
  }
  /* 三本線のうち一番上の棒の位置調整 */
  .drawer-open span:before {
    bottom: 8px;
  }
  /* 三本線のうち一番下の棒の位置調整 */
  .drawer-open span:after {
    top: 8px;
  }
  /* アイコンがクリックされたら真ん中の線を透明にする */
  #drawer-check:checked ~ .drawer-open span {
    background: rgba(255, 255, 255, 0);
  }
  /* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
  #drawer-check:checked ~ .drawer-open span::before {
    bottom: 0;
    transform: rotate(45deg);
  }
  #drawer-check:checked ~ .drawer-open span::after {
    top: 0;
    transform: rotate(-45deg);
  }

  /* メニューのデザイン*/
  .drawer-content {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    /* メニューを画面の外に飛ばす */
    left: 100%;
    z-index: 20000;
    background: rgb(0,0,0,0.8);
    transition: .5s;
    text-align: center;
  }
  /* アイコンがクリックされたらメニューを表示 */
  #drawer-check:checked ~ .drawer-content {
    left: 0;/* メニューを画面に入れる */
  }
  .iphonemenu{
    margin: 0 auto 0;
    flex-wrap: wrap;
    width: 100%;
  }
  .drawer-item{
    margin: 0;
    padding: 20px 0 20px;
  }
  a.btn-border {
    font-size: 25px;
    font-weight: bold;
    text-decoration: none;
    font-weight: bold;
    color: white;
    font-family: 'Julius Sans One', sans-serif;
    font-family: 'Lobster', cursive;
    font-family: 'Rye', cursive;
    /* text-shadow: 0px 4px 2px rgba(0, 0, 0, 0.32), 0px 1px 0px #6182ca, 0px 2px 0px #4f6aa7, 0px 3px 0px #5470ad; */
  }
  /* a.btn-border:active {
    top: 4px;
    text-shadow: none;
  } */
  a.btn-border:hover {
    color: #fff;
    background: #000;
  }
  /* .clickandhover p{
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 80px;
  } */
  .drawer-list{
    margin: 0;
    padding: 0;
    width: 50%;
    margin: 0 auto 0;
    list-style: none;
    margin-top: 200px;
  }
  .last p{
    font-size: 10px;
  }
}