.price {
    margin: calc((75/750)*100vw) auto 0;
    width: calc((690/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
    .price {
      margin: min(calc((52/1040)*100vw), 52px) auto 0;
      width: min(calc((1000/1040)*100vw), 1000px)
    }
}

.ttl {
  color: #fff;
  background-color: #18c8a5;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: 0.1em;
  font-size: calc((38/750)*100vw);
  height: auto;
  padding: 0.2em
}

@media screen and (min-width: 768px), print {
  .price .ttl {
    font-size: min(calc((24/1040)*100vw), 24px);
    height: min(calc((65/1040)*100vw), 65px)
  }
}

.price .ttl::before {
  content: "";
  display: block;
  background-color: #fff;
  width: calc((20/750)*100vw);
  height: calc((6/750)*100vw);
  margin: 0 calc((25/750)*100vw) 0 calc((15/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .price .ttl::before {
    width: min(calc((15/1040)*100vw), 15px);
    height: min(calc((5/1040)*100vw), 5px);
    margin: 0 min(calc((12/1040)*100vw), 12px) 0 min(calc((20/1040)*100vw), 20px)
  }
}

.price .menu {
    padding: calc((28/750)*100vw) calc((30/750)*100vw) calc((30/750)*100vw) calc((30/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
   .price .menu {
      padding: min(calc((30/1040)*100vw), 30px) min(calc((30/1040)*100vw), 30px) 0 min(calc((30/1040)*100vw), 30px)
    }
}
  
.price .menu-ttl {
    margin: 0;
    font-size: calc((32/750)*100vw);
    margin-bottom: calc((18/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
   .price .menu-ttl {
      letter-spacing: 0.1em;
      font-size: min(calc((22/1040)*100vw), 22px);
      margin-bottom: min(calc((20/1040)*100vw), 20px)
    }
}
  
.price .menu-txt {
    margin: auto;
    line-height: 1.84615;
    letter-spacing: 0.02em;
    font-size: calc((26/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
   .price .menu-txt {
      line-height: 2.22222;
      letter-spacing: 0.01em;
      font-size: min(calc((18/1040)*100vw), 18px)
    }
}

.price  .cap {
    margin: auto;
    font-weight: 500;
    line-height: 1.8;
    font-size: calc((20/750)*100vw);
    margin-top: calc((44/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
    .price  .cap {
      letter-spacing: 0.03em;
      line-height: 1.5;
      font-size: min(calc((12/1040)*100vw), 12px);
      margin-top: min(calc((18/1040)*100vw), 18px)
    }
}

.price .menu-inner {
    margin: auto;
    line-height: 1.84615;
    letter-spacing: 0.02em;
    font-size: calc((26/750)*100vw);
    border: 1px solid #000;
    padding: 1.5em;
    margin-top: calc((10/750)*100vw);
    margin-bottom: calc((44/750)*100vw)
}
  
@media screen and (min-width: 768px), print {
   .price .menu-inner {
      line-height: 2.22222;
      letter-spacing: 0.01em;
      font-size: min(calc((18/1040)*100vw), 18px);
      border: 1px solid #000;
      padding: 1.2em;
      margin-bottom: min(calc((8/1040)*100vw), 8px);
      margin-bottom: min(calc((18/1040)*100vw), 18px)
    }
}

.price .bold {
    font-weight: bold;
    margin-bottom: -10px
}
  
@media screen and (min-width: 768px), print {
    .price .bold {
        font-weight: bold;
        margin-bottom: -10px
    }
}

.price .img {
  margin: auto;
  width: calc((640/750)*100vw);
  margin-top: calc((40/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .price .img {
    margin-top: min(calc((42/1040)*100vw), 42px);
    width: min(calc((950/1040)*100vw), 950px)
  }
}