@charset "UTF-8";
/* ======================================
下層ページ共通
====================================== */
.submain {
  background: url(../img/guide/c-submain.jpg) center;
  background-size: cover;
  padding: 160px 0 120px;
}
@media screen and (max-width: 750px) {
  .submain {
    padding: 100px 0 60px;
  }
}
.submain:after {
  width: 100%;
  height: 100%;
  bottom: -2px;
  left: 0;
  background: url(../img/guide/c-submain_line.svg) center bottom no-repeat;
  background-size: 100%;
}
.submain_hl {
  color: #fff;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.submain_jp {
  font-size: 32px;
}
@media screen and (max-width: 750px) {
  .submain_jp {
    font-size: 24px;
  }
}

.footer {
  background: #866196;
}

.f_info {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px;
}
@media screen and (max-width: 750px) {
  .f_info {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.f_cal {
  text-align: right;
}
@media screen and (max-width: 750px) {
  .f_box {
    width: 100%;
  }
}
.f_logo {
  width: 240px;
  margin-bottom: 40px;
}
@media screen and (max-width: 750px) {
  .f_guide_item {
    width: 100%;
  }
}
.f_guide_item + .f_guide_item {
  margin-top: 10px;
}
.f_guide_item a {
  font-size: 14px;
  color: #fff;
  display: block;
}
@media screen and (max-width: 750px) {
  .f_guide_item a {
    text-align: center;
  }
}
@media screen and (min-width: 751px) {
  .f_guide_item a:hover {
    opacity: 0.6;
  }
}
.f_copy {
  text-align: center;
  color: #fff;
}

/* ======================================
商品詳細
====================================== */
.info {
  background: url(../img/items/info_bg.jpg) center;
  background-size: cover;
}
.info_list {
  gap: 10px 0;
}
@media screen and (min-width: 751px) {
  .info_list {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.info_list_item {
  background: rgba(238, 225, 244, 0.9);
  border-radius: 5px;
  padding: 20px 30px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 18px;
  width: 100%;
}
@media screen and (max-width: 750px) {
  .info_list_item {
    padding: 20px;
  }
}
@media screen and (min-width: 751px) {
  .info_list_item--half {
    width: 49%;
  }
}
.info_list_item dt {
  width: 200px;
  color: #9640bc;
}
@media screen and (max-width: 750px) {
  .info_list_item dt {
    width: 100%;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: dotted #9640bc 2px;
  }
}
.info_list_item dd {
  width: calc(100% - 220px);
}
@media screen and (max-width: 750px) {
  .info_list_item dd {
    width: 100%;
    font-size: 14px;
  }
}
.info_list_item dd .privacy_note {
  margin-bottom: 0;
}
@media screen and (min-width: 751px) {
  .info .info_list_item dt {
    width: 120px;
  }
}
@media screen and (min-width: 751px) {
  .info .info_list_item dd {
    width: calc(100% - 140px);
  }
}

/* ======================================
プライバシーポリシー
====================================== */
.privacy_tx {
  margin-bottom: 50px;
}
@media screen and (max-width: 750px) {
  .privacy_tx {
    margin-bottom: 30px;
  }
}
.privacy_note {
  display: inline-block;
  color: #9640bc;
  font-size: 16px;
  line-height: 1.5;
  margin: 10px 0 20px;
}
.privacy_num {
  counter-reset: number;
  list-style-type: none !important;
}
.privacy_num_item {
  position: relative;
  padding-left: 50px;
}
@media screen and (max-width: 750px) {
  .privacy_num_item {
    padding-left: 40px;
  }
}
.privacy_num_item:before {
  counter-increment: number;
  content: counter(number);
  text-align: center;
  font-family: "Tinos", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  left: 0;
  width: 35px;
  line-height: 35px;
  border: solid #9640bc 2px;
  color: #9640bc;
  border-radius: 50rem;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  .privacy_num_item:before {
    top: 3px;
    width: 25px;
    line-height: 25px;
  }
}
.privacy_num_item + .privacy_num_item {
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .privacy_num_item + .privacy_num_item {
    margin-bottom: 20px;
  }
}
.privacy_num_ttl {
  color: #9640bc;
  font-size: 24px;
  margin-bottom: 10px;
}
@media screen and (max-width: 750px) {
  .privacy_num_ttl {
    font-size: 20px;
  }
}
.privacy_alph {
  counter-reset: alph;
  list-style-type: none !important;
  margin-top: 10px;
}
.privacy_alph + .c-tx {
  padding-top: 20px;
}
.privacy_alph_item {
  position: relative;
  padding-left: 20px;
}
.privacy_alph_item:before {
  counter-increment: alph;
  content: counter(alph, lower-alpha) "．";
  text-align: center;
  font-family: "Tinos", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  left: 0;
  color: #9640bc;
}

/* ======================================
ご利用ガイド
====================================== */
.guide .c-tx {
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .guide .c-tx {
    font-size: 14px;
  }
}
.guide .c-tx strong {
  display: block;
  padding: 10px 20px;
  color: #9640bc;
  border: solid 2px #9640bc;
  border-radius: 10px;
  margin-top: 20px;
}
@media screen and (max-width: 750px) {
  .guide .c-tx strong {
    padding: 10px;
  }
}
.guide .privacy_note {
  margin-bottom: 0;
}
@media screen and (max-width: 750px) {
  .guide .privacy_note {
    font-size: 14px;
  }
}
.guide .privacy_num {
  margin: 20px 0;
}
.guide .privacy_num_item {
  padding-left: 40px;
}
.guide .privacy_num_item:before {
  width: 30px;
  line-height: 30px;
}
.guide .privacy_num_item + .privacy_num_item {
  margin-top: 10px;
}
.guide .privacy_num + .c-tx {
  margin-bottom: 20px;
}
.guide_anchor {
  margin-bottom: 80px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px 15px;
}
@media screen and (max-width: 750px) {
  .guide_anchor {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 750px) {
  .guide_anchor_item {
    width: 100%;
  }
}
.guide_anchor_item a {
  display: block;
  font-size: 18px;
  padding: 8px 20px;
  border-radius: 50rem;
  color: #9640bc;
  background: #ede1f8;
}
@media screen and (max-width: 750px) {
  .guide_anchor_item a {
    font-size: 14px;
    text-align: center;
    padding: 8px 10px;
  }
}
@media screen and (min-width: 751px) {
  .guide_anchor_item a:hover {
    background: #9640bc;
    color: #fff;
  }
}
.guide_box {
  padding-top: 40px;
  margin-top: -40px;
}
.guide_box + .guide_box {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .guide_box + .guide_box {
    margin-top: 20px;
  }
}
.guide_box_hl {
  font-size: 30px;
  color: #9640bc;
  background: #ede1f8;
  padding: 5px 20px;
  border-radius: 5px;
  margin-bottom: 30px;
}
@media screen and (max-width: 750px) {
  .guide_box_hl {
    font-size: 20px;
  }
}
.guide_box_ttl {
  color: #9640bc;
  font-size: 24px;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: solid 1px #9640bc;
}
@media screen and (max-width: 750px) {
  .guide_box_ttl {
    font-size: 18px;
  }
}
.guide_box_ttl--top {
  margin-top: 30px;
}
.guide_card {
  margin-top: 10px;
  width: 260px;
}
.guide_dot--top {
  margin-top: 20px;
}
.guide_dot_item {
  padding-left: 25px;
}
@media screen and (max-width: 750px) {
  .guide_dot_item {
    padding-left: 20px;
  }
}
.guide_dot_item:before {
  top: 8px;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 50rem;
  background: #9640bc;
}
@media screen and (max-width: 750px) {
  .guide_dot_item:before {
    top: 4px;
    width: 12px;
    height: 12px;
  }
}
.guide_dot_item + .guide_dot_item {
  margin-top: 10px;
}
.guide_btn {
  width: 340px;
  margin-top: 20px;
}
@media screen and (max-width: 750px) {
  .guide_btn {
    max-width: 340px;
    width: 100%;
  }
}

/* ======================================
カレンダー
====================================== */
.side_cal {
  background: #fbf5fe;
  padding: 20px;
  gap: 20px;
  border-radius: 5px;
}
@media screen and (max-width: 750px) {
  .side_cal {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.side_cal caption {
  font-family: "Tinos", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  color: #9640bc;
  font-size: 24px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .side_cal caption {
    font-size: 20px;
  }
}

.tbl_calendar {
  border: none !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
}

.tbl_calendar th,
.tbl_calendar td {
  padding: 0 4px !important;
  text-align: center !important;
  border-bottom: 1px solid #ab96c8 !important;
  font-size: 18px;
}
@media screen and (max-width: 750px) {
  .tbl_calendar th,
  .tbl_calendar td {
    font-size: 16px;
  }
}