 /* ------------- PC ---------------- */
 @media screen and (min-width: 769px) { 
 
 .mb { display: none; }

a:hover { opacity: 0.6; }

.main-visual {
   position: relative; 
   width: 100%;
   line-height: 0;
}

.main-background {
   display: block;
   width: 100%;
   height: auto;
}

/* 上に重ねるPNGの共通設定 */

.main-visual .overlay {
    position: absolute; 
    height: auto; 
    max-width: none;
}

.main-visual .overlay-img {
   top: 46%;
   left: 50%;
   width: 66%;
   transform: translateX(-50%);
}

.main-visual .overlay-img2 {
   top: 55%;
   left: 50%;
   width: 66%;
   transform: translateX(-50%);
}

.main-visual .overlay-btn1 {
   top: 63%;
   left: 33.2%;
   width: 33%;
   transform: translateX(-50%);
}

.main-visual .overlay-btn2 {
   top: 63%;
   left: 51.5%;
   width: 33%;
}

.main-visual .overlay-btn3 {
   top: 70.5%;
   left: 16.8%;
   width: 33%;
}

.main-visual .overlay-btn4 {
   top: 70.5%;
   left: 51.5%;
   width: 33%;
}


/* コンテンツ全体 */

.content-panel {
   position: relative;
   isolation: isolate;
   width: 100%;
   box-sizing: border-box;
   margin-top: -13.8vw;
}

/* back1.png：先頭に1回だけ表示 */

.content-panel::before {
   content: "";
   display: block;
   width: 100%;
   aspect-ratio: 4 / 1;
   background-image: url("img/back1.png");
   background-repeat: no-repeat;
   background-position: center top;
   background-size: 100% 100%;
}

/* back2.png：back1.pngの直後から繰り返す */

.content-panel::after {
   content: "";
   position: absolute;
   top: 20vw;
   bottom: 0;
   left: 0;
   width: 100%;
   z-index: -1;
   background-image: url("img/back2.png");
   background-repeat: repeat-y;
   background-position: center top;
   background-size: 100% auto;
}

/* 閉じたコンテンツは非表示 */

.content-panel[hidden] {
   display: none !important;
}


/* xxxxxxxx CONTENT 1 xxxxxxxx */

.c1_title {
   width: 68%;
   margin-left: 16%; 
   margin-top: -2%;} 

.c1_img1 {
   width: 68%;
   margin-left: 16%; 
   margin-top: 6%;}
   
.c1_img2 {
   width: 68%;
   margin-left: 16%; 
   margin-top: 5%;}

.c1_img3 {
   width: 68%;
   margin-left: 16%; 
   margin-top: 5%;
   padding-bottom: 0%; }

.c1_img4 {
   width: 68%;
   margin-left: 16%; 
   margin-top: 5%;
   padding-bottom: 8%; }

/* xxxxxxxx CONTENT 2 xxxxxxxx */

.map {
  width: 68%;
  margin-left: 16%;
  margin-top: 5%;
  padding-bottom: 8%; }

/* xxxxxxxx CONTENT 3 xxxxxxxx */

.c3_title {
   margin-top: -11.8%;
   width: 87%;
   margin-left: 6.5%; }

.item_outline {
   width: 84%; 
   margin-left: 11%;
   margin-top: 3%; }

.item_box {
   position: relative;
   width: 29.5%;
   margin-right: 1.3%; 
   background: white;
   border: solid 1px #af0000;
   display: inline-block;
   vertical-align: top;
   margin-bottom: 2.3%; }
   
.item_box2 {
   position: relative;
   width: 29.5%;
   margin-right: 1.3%; 
   background: white;
   border: solid 1px #008100;
   display: inline-block;
   vertical-align: top;
   margin-bottom: 2.3%; }

.item_box_in {
   padding: 5%;}

.c_shop {
   font-size: 0.9vw;
   color: #af0000;
   text-align: center;
   margin-top: 5.2%;
   font-weight: bold; }

.c_hr {
   border-top: 1px solid #af0000;
   margin-top: 3%;
   margin-bottom: 3%; }

.c_item {
   font-size: 1.1vw;
   color: #af0000;
   text-align: center;
   font-weight: bold; }
   
.c_item2 {
   font-size: 1.1vw;
   color: #af0000;
   line-height: 1.2vw;
   text-align: center;
   font-weight: bold; }

.c_size {
   font-size: 0.8vw;
   text-align: center;
   margin-top: 9%; }
   
.c_size2 {
   font-size: 0.8vw;
   text-align: center;
   margin-top: 3.2%; }

.c_price {
  font-size: 1.2vw;
  text-align: center;
  margin-top: 2%; 
  font-weight: bold; }
  
.c_price2 {
  font-size: 1.2vw;
  text-align: center;
  margin-top: 14.7%; 
  font-weight: bold; }
  
.c_price3 {
  font-size: 1.2vw;
  text-align: center;
  margin-top: 14.3%; 
  font-weight: bold; }

.zei {
   font-size: 0.8vw;
   font-weight: normal; }

.label1 {
   position: absolute;
   width: 20.7%;
   bottom: 2.5%;
   right: 3%; }

.c_bottom {
   margin-top: 3.5%;
   width: 84%;
   margin-left:11%; }

.c_bottom_inline p {
   font-size: 1.2vw;
   font-weight: bold;
   display: inline-block;
　　width: 25%;
   margin-right: 2%; 
　　vertical-align: top; }

.c_ex {
   font-size: 1.1vw;
   line-height: 1.8vw; }
   
.c_ex2 {
   font-size: 1.1vw;
   line-height: 2vw; 
   margin-top: 3%; 
   font-weight: bold; }
   
.c_ex3 {
   font-size: 1.1vw;
   line-height: 1.8vw;
   margin-top: 1.5%;
   margin-bottom: 3%; }

.c_copy {
   font-size: 1.28vw;
   font-weight: bold;
   margin-top: 1%; }

.c_time {
   font-size: 1.6vw;
   font-weight: bold;
   margin-top: 2.6%; }

.c_time2 {
   font-size: 1.28vw;
   font-weight: bold;
   line-height: 2vw;
   margin-top: 1%;
   padding-bottom: 5%; }


.c_com {
   font-size: 1vw; 
   margin-top: 2.5%;
   line-height: 1.6vw;
   padding-bottom: 5%; }

/* xxxxxxxx CONTENT 4 xxxxxxxx */

.c4_title {
   margin-top: -11.8%;
   width: 87%;
   margin-left: 6.5%; }

.d_shop {
   font-size: 0.9vw;
   color: #008100;
   text-align: center;
   margin-top: 5.2%;
   font-weight: bold; }

.d_hr {
   border-top: 1px solid #008100;
   margin-top: 3%;
   margin-bottom: 3%; }

.d_item {
   font-size: 1.1vw;
   color: #008100;
   text-align: center;
   font-weight: bold; }

.d_item2 {
   font-size: 1.1vw;
   line-height: 1.2vw;
   color: #008100;
   text-align: center;
   font-weight: bold; }


.footer {
   background: #c08718; }

.bottom_logo {
   width: 15%;
   margin-left: auto;
   margin-right: auto;
   padding-top: 1.7%;
   padding-bottom: 1.7%; }

  }   