.img100 { width: 100%; height: auto; vertical-align: bottom; }

.type_li a { display: block; position: relative; width: 100%; }

.type_li a.newplan::after { content: "NEW"; font-family: 'Times New Roman', Times, serif; font-size: 12px; color: #FFF; background-color: #c1272d; position: absolute; top: 1px; right: 1px; line-height: 1em; letter-spacing: 0.1em; padding: 4px 10px; }

@media (max-width: 640px) { .type_li a.newplan::after { font-size: 10px; padding: 3px 5px; } }

@media screen and (min-width: 641px), print { .spbr { display: none; }
  .image { position: relative; }
  .main { background-color: #e0edee; }
  .main .design_top { background-color: #e0edee; }
  .main .design_top .head36 { margin-bottom: 0; padding-bottom: 40px; }
  .type { max-width: 1200px; margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; padding-bottom: 50px; }
  .plan_title { font-size: 32px; line-height: 1.5em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #999999; padding-bottom: 10px; padding-left: 5px; text-align: center; color: #555555; }
  .type img { box-shadow: 3px 3px 16px 4px rgba(0, 0, 0, 0.3); }
  .type_ul { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-around; }
  .type_li { width: 49%; max-width: 500px; margin-top: 60px; margin-bottom: 40px; }
  .type_li.nm { margin-bottom: 0; }
  .banner_box { margin-top: 32px; margin-right: auto; margin-bottom: 0px; margin-left: auto; text-align: center; max-width: 1000px; display: flex; overflow: hidden; position: relative; flex-flow: row wrap; justify-content: space-around; }
  .banner_box .reservation { width: 48%; padding-top: 50px; padding-bottom: 50px; }
  .banner_box .request { width: 48%; padding-top: 50px; padding-bottom: 50px; }
  .banner_box img { width: 100%; max-width: 480px; box-shadow: 3px 3px 16px 4px rgba(0, 0, 0, 0.3); } }

@media screen and (min-width: 0px) and (max-width: 640px) { .image { position: relative; }
  .main { background-color: #e0edee; }
  .main .design_top { background-color: #e0edee; }
  .main .design_top .head36 { margin-bottom: 0; padding-bottom: 40px; }
  .type { margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; padding-bottom: 30px; width: 95%; }
  .plan_title { font-size: 1.8em; line-height: 1.5em; border-bottom: 1px solid #999999; padding-bottom: 3px; padding-left: 5px; margin-bottom: 15px; text-align: center; color: #555555; }
  .type img { box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.3); }
  .type_ul { display: flex; width: 100%; flex-wrap: wrap; justify-content: center; padding-top: 20px; padding-bottom: 30px; }
  .type_li { text-align: center; margin-top: 0px; margin-right: auto; margin-bottom: 15px; margin-left: auto; max-width: 480px; }
  .banner_box { margin-top: 20px; margin-right: auto; margin-bottom: 0px; margin-left: auto; text-align: center; display: block; overflow: hidden; position: relative; }
  .banner_box .reservation { display: block; padding-top: 20px; padding-bottom: 20px; }
  .banner_box .request { padding-top: 20px; padding-bottom: 20px; }
  .banner_box img { width: 100%; max-width: 480px; box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.3); } }


  .bnr_life {
    width: calc(100% - 40px);
    max-width: 1000px;
    margin: 0 auto 50px;
    display: block;
    transition: opacity 0.5s ease-in;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
  }
  .bnr_life:hover {
    opacity: 0.5;
  }


  .tokuten {
    max-width: 1000px;
    margin: 0 auto 30px;
  }
  .tokuten li {
    margin: 0 0 20px;
  }

