@charset "UTF-8";
/* ========================================================
店舗詳細ページ
=========================================================*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700&display=swap");
@media (min-width: 992px) {
  .is-991 {
    display: none; } }
@media (max-width: 991px) {
  .isnon-991 {
    display: none; } }
@media (min-width: 768px) {
  .is-sp {
    display: none; } }
.download-wrap {
  margin-top: 1.5%; }

.download-wrap2 {
  margin-top: 0; }

.download-items {
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    .download-items {
      display: block; } }

.download-left {
  width: 40%;
  text-align: center;
  padding-left: 1.3%;
  padding-top: 1%; }
  @media (max-width: 991px) {
    .download-left {
      width: 43%; } }
  @media (max-width: 767px) {
    .download-left {
      width: 100%; } }
  .download-left .title {
    color: #D55802;
    font-weight: bold;
    font-size: 22px;
    padding: 0 11%;
    position: relative;
    display: inline-block;
    letter-spacing: -0.1em; }
    @media (max-width: 1199px) and (min-width: 768px) {
      .download-left .title {
        font-size: 1.58vw;
        padding: 0 5%; } }
    @media (max-width: 767px) {
      .download-left .title {
        font-size: 18px;
        margin-top: 42px; } }
    .download-left .title span {
      font-weight: 500;
      letter-spacing: -0.1em; }
      .download-left .title span::before {
        content: "";
        width: 2px;
        height: 27px;
        background: #D55802;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%) rotate(-26deg); }
      .download-left .title span::after {
        content: "";
        width: 2px;
        height: 27px;
        background: #D55802;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%) rotate(26deg); }
  .download-left .text {
    font-size: 13px;
    padding-right: 26px;
    position: relative;
    display: inline-block;
    margin-top: 14px;
    font-weight: bold;
    letter-spacing: 0.1em; }
    @media (max-width: 767px) {
      .download-left .text {
        margin-top: 19px; } }
    .download-left .text::after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 13px 7.5px 0 7.5px;
      border-color: #01BCFA transparent transparent transparent;
      top: 50%;
      transform: translateY(-50%);
      right: 0; }

.download-lett-image {
  margin-top: 11px; }
  @media (max-width: 767px) {
    .download-lett-image {
      margin-top: 16px; } }
  .download-lett-image a:nth-child(2) {
    margin-left: 15px; }
    @media (max-width: 767px) {
      .download-lett-image a:nth-child(2) {
        margin-left: 0;
        margin-top: 12px; } }
  @media (max-width: 767px) {
    .download-lett-image a {
      display: block;
      text-align: center; } }
  .download-lett-image img {
    width: 193px; }
    @media (max-width: 1200px) {
      .download-lett-image img {
        width: calc(193/429 * 100%); } }
    @media (max-width: 767px) {
      .download-lett-image img {
        width: 192px; } }

.download-center {
  width: 28%;
  padding-top: 3%;
  margin-left: 2%; }
  @media (max-width: 1199px) {
    .download-center {
      width: 25vw; } }
  @media (max-width: 991px) {
    .download-center {
      width: 35%; } }
  @media (max-width: 767px) {
    .download-center {
      width: 100%;
      margin-top: 21px;
      margin-left: 0; } }
  .download-center .text {
    font-size: 14px;
    line-height: 1.57;
    letter-spacing: -0.1em; }
  @media (max-width: 767px) {
    .download-center .code {
      text-align: center;
      margin-top: 12px; } }
  .download-center .code p {
    font-size: 20px;
    font-weight: 600;
    color: #01BCFA;
    padding-bottom: 7px;
    border-bottom: 2px solid #01BCFA;
    display: inline-block;
    line-height: 1; }
    @media (max-width: 1199px) and (min-width: 768px) {
      .download-center .code p {
        font-size: 1.66vw; } }
    @media (max-width: 767px) {
      .download-center .code p {
        font-size: 20px; } }
  .download-center .code span {
    font-size: 40px;
    font-weight: bold;
    padding-left: 43px; }
    @media (max-width: 1199px) {
      .download-center .code span {
        font-size: 3.33vw;
        padding-left: 1vw; } }
    @media (max-width: 767px) {
      .download-center .code span {
        font-size: 40px; } }

.download-right {
  width: 25%;
  margin-left: 3%; }
  .download-right img {
    width: 95%; }
    @media (max-width: 1119px) {
      .download-right img {
        width: 17.8vw; } }
    @media (max-width: 991px) {
      .download-right img {
        width: 18.5vw; } }
    @media (max-width: 767px) {
      .download-right img {
        width: 262px; } }
  @media (max-width: 1119px) {
    .download-right {
      width: 15.3vw; } }
  @media (max-width: 767px) {
    .download-right {
      width: 100%;
      text-align: center;
      margin-left: 0;
      margin-top: 22px; } }

.shop-info {
  margin-top: 108px;
  margin-bottom: 101px;
  color: #303030;
  padding-top: 44px;
  border-top: 2px solid #01BCFA;
  font-family: 'Noto Sans JP', sans-serif; }
  .shop-info p {
    margin-bottom: 0; }
  @media (max-width: 767px) {
    .shop-info .is-pc {
      display: none; } }
  .shop-info__image {
    width: 54%; }
    @media (max-width: 767px) {
      .shop-info__image {
        width: 100%; } }
    .shop-info__image img {
      width: 100%; }
  .shop-info__body {
    width: 45%;
    margin-left: 5%;
    margin-top: 2.4%; }
    @media (max-width: 767px) {
      .shop-info__body {
        width: 100%;
        margin-top: 46px;
        margin-left: 0; } }

.shop-title {
  font-size: 25px;
  text-align: center;
  color: #fff;
  font-weight: 500;
  background: #01BCFA;
  padding: 8px 0;
  margin-bottom: 0;
  font-family: 'Noto Sans JP', sans-serif;
  width: 99%;
  margin-left: auto;
  letter-spacing: 0.025em; }

.shop-name {
  font-size: 25px;
  text-align: center;
  color: #01BCFA;
  margin-bottom: 0;
  margin-top: 20px;
  letter-spacing: -0.05em; }
  @media (max-width: 767px) {
    .shop-name {
      font-size: 20px;
      text-align: left;
      margin-top: 22px; } }

.shop-info-contents {
  display: flex;
  margin-top: 26px; }
  @media (max-width: 767px) {
    .shop-info-contents {
      display: block; } }

.shop-info-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 14px;
  line-height: 1.357;
  margin-bottom: 0; }
  .shop-info-list dt:nth-of-type(n + 2), .shop-info-list dd:nth-of-type(n + 2) {
    margin-top: 15px; }
  .shop-info-list dt {
    width: 100px;
    border: 1px solid #01BCFA;
    text-align: center;
    color: #01BCFA; }
  .shop-info-list dd {
    width: calc(100% - 100px);
    padding-left: 39px;
    margin-bottom: 0; }
    @media (max-width: 1199px) {
      .shop-info-list dd {
        padding-left: 4%; } }
    @media (max-width: 991px) {
      .shop-info-list dd {
        padding-left: 2%; } }
    @media (max-width: 767px) {
      .shop-info-list dd {
        padding-left: 12px; } }

.line-link-wrap {
  margin-top: 30px; }
  @media (max-width: 767px) {
    .line-link-wrap {
      text-align: center; } }

.line-link {
  display: inline-block; }
  .line-link a:hover {
    opacity: 0.8; }
  .line-link img {
    width: 191px; }

.sns-lists {
  display: flex;
  padding: 0;
  margin-top: 13px;
  align-items: center; }
  .sns-lists a:hover {
    opacity: 0.8; }
  @media (max-width: 767px) {
    .sns-lists {
      justify-content: center; } }

.sns-list {
  list-style: none; }
  .sns-list:nth-child(n + 2) {
    margin-left: 10px; }
  .sns-list img {
    width: 48px; }
  .sns-list.facebook img {
    width: 34px; }

.map {
  margin-top: 75px; }
  @media (max-width: 767px) {
    .map {
      margin-top: 50px; } }
  .map iframe {
    width: 100%;
    height: 412px; }

.plan-title {
  font-size: 20px;
  margin-bottom: 1.5%; }

.table-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: none; }
  @media (max-width: 991px) {
    .table-icon {
      display: block; } }
  .table-icon img {
    width: 30px;
    height: 30px; }

.plan-table-wrap {
  margin-top: 4.7%;
  position: relative; }

.plan-table-wrap-scroll {
  width: 100%;
  overflow-x: auto; }

.plan-table {
  table-layout: fixed;
  width: 100%;
  border-spacing: 3px 0;
  border-collapse: separate; }
  .plan-table .dummy-table {
    height: 0; }
    .plan-table .dummy-table th {
      height: 0;
      padding: 0; }
    .plan-table .dummy-table td {
      height: 0;
      padding: 0; }
  .plan-table tr:first-of-type th {
    text-align: center; }
  .plan-table tr .table-title-wrap {
    background: #fff; }
  .plan-table tr th:first-of-type {
    padding-left: 1%; }
    .plan-table tr th:first-of-type.table-title-wrap {
      padding-top: 13px;
      padding-bottom: 3px;
      padding-left: 0; }
  .plan-table tr:nth-child(2n+1) {
    background: #fff; }
    .plan-table tr:nth-child(2n+1) th:nth-child(1) {
      position: sticky;
      top: 0;
      left: 0;
      background: #fff; }
  .plan-table tr:nth-child(2n) {
    background: #EFF9FF; }
    .plan-table tr:nth-child(2n) th:nth-child(1) {
      position: sticky;
      top: 0;
      left: 0;
      background: #EFF9FF; }
  .plan-table tr:nth-child(16) th:nth-child(1) {
    position: sticky;
    top: 0;
    left: 0;
    background: inherit; }
  .plan-table tr.orange-row {
    background-color: #FFF9F5;
    text-align: center; }
    .plan-table tr.orange-row th:nth-child(1) {
      position: sticky;
      top: 0;
      left: 0;
      background: #FFF9F5;
      text-align: left; }
  .plan-table.plan-table-c th:nth-child(n + 4), .plan-table.plan-table-c td:nth-child(n + 4) {
    display: none; }
  .plan-table.plan-table-f th:nth-child(n + 7), .plan-table.plan-table-f td:nth-child(n + 7) {
    display: none; }
  .plan-table th.heading {
    width: 280px; }
  .plan-table th.price {
    width: 94px;
    height: 58px;
    line-height: 58px; }
    .plan-table th.price.border1 {
      border: 1px solid #303030; }
    .plan-table th.price.border2 {
      border: 1px solid #01BCFA;
      color: #01BCFA;
      line-height: calc(16/14);
      padding: 4px 0; }
    .plan-table th.price.border3 {
      border: 1px solid #303030;
      line-height: calc(16/14);
      width: 240px;
      padding: 4px 0; }
    .plan-table th.price.border4 {
      border: 1px solid #303030;
      line-height: calc(16/14);
      width: 80px;
      padding: 4px 0; }
  .plan-table th.plan {
    color: #FFF;
    width: 150px; }
    .plan-table th.plan span {
      font-size: 16px;
      color: #303030;
      background: #fff;
      border-radius: 11px;
      padding: 0 10px; }
    .plan-table th.plan.plan1 {
      background: #71DCFF; }
    .plan-table th.plan.plan2 {
      background: #01BCFA; }
    .plan-table th.plan.plan3 {
      background: #188DCE; }
    .plan-table th.plan.plan4 {
      background: #0048A8; }
  .plan-table th, .plan-table td {
    font-size: 14px;
    font-weight: 500; }
  .plan-table td {
    text-align: center;
    padding: 4px 0; }
  .plan-table span.orange {
    color: #D55802; }
  .plan-table .circle {
    display: inline-block;
    line-height: 1;
    font-size: 17px; }
    .plan-table .circle.blue1 {
      color: #71DCFF; }
    .plan-table .circle.blue2 {
      color: #01BCFA; }
    .plan-table .circle.blue3 {
      color: #188DCE; }
    .plan-table .circle.blue4 {
      color: #0048A8; }

.table-title {
  font-size: 16px;
  font-weight: 600;
  position: relative;
  color: #01BCFA;
  padding-left: 23px; }
  .table-title::before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    background: #01BCFA;
    top: 50%;
    transform: translateY(-50%);
    left: 0; }
  .table-title.orange {
    color: #D55802; }
    .table-title.orange::before {
      background-color: #D55802; }

.place-table-attention {
  margin-top: 2.6%; }
  .place-table-attention p {
    color: #7E7E7E;
    font-size: 14px;
    line-height: 1.357; }
