@charset "UTF-8";
.contents {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  overflow: visible; }
  .contents * {
    line-height: inherit; }

.header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  @media screen and (max-width: 1023px) {
    .header {
      margin-left: 15px;
      margin-right: 15px;
      height: 60px; } }
  @media screen and (min-width: 1024px) {
    .header {
      margin-left: 30px;
      margin-right: 30px;
      height: 70px; } }
  .header-logo {
    line-height: 0; }
    @media screen and (max-width: 1023px) {
      .header-logo img {
        width: 225px;
        height: 35px; } }
    @media screen and (min-width: 1024px) {
      .header-logo img {
        width: 277px;
        height: 45px; } }
  @media screen and (max-width: 1023px) {
    .header-nav {
      display: none; } }
  @media screen and (min-width: 1024px) {
    .header-nav {
      display: flex; } }
  .header-nav-item {
    position: relative;
    padding-left: 48px;
    margin-left: 40px;
    line-height: 1;
    display: block;
    color: inherit; }
    .header-nav-item:before {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 40px;
      height: 40px;
      border-radius: 100px;
      background-color: #c3b98b;
      background-size: contain; }
    .header-nav-item--tel:before {
      background-image: url("../img/icn_hdr_00.png"); }
    .header-nav-item--mail:before {
      background-image: url("../img/icn_hdr_01.png"); }
  .header-nav-txt {
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    margin: .25em 0; }
  .header-nav-value {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
    font-size: 22px;
    font-size: 1.375rem; }

.gnav {
  position: relative;
  background: url("../img/bg_gnv.jpg") repeat center center; }
  @media screen and (max-width: 1023px) {
    .gnav {
      padding: 0 15px 30px; } }
  @media screen and (min-width: 1024px) {
    .gnav {
      padding: 0 30px 75px; } }
  .gnav-ttl {
    text-align: center;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
    color: #45412d;
    background: url("../img/bg_gnv_ttl.png") no-repeat center center;
    background-size: contain; }
    @media screen and (max-width: 1023px) {
      .gnav-ttl {
        font-size: 20px;
        font-size: 1.25rem;
        padding: 35px 0 10px; } }
    @media screen and (min-width: 1024px) {
      .gnav-ttl {
        font-size: 36px;
        font-size: 2.25rem;
        padding: 75px 0 20px; } }
  @media screen and (min-width: 1024px) {
    .gnav-list {
      display: flex;
      justify-content: space-between;
      max-width: 1100px;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (max-width: 1023px) {
    .gnav-list .gnav-item {
      margin-bottom: 15px; } }
  @media screen and (min-width: 1024px) {
    .gnav-list .gnav-item.gnav-item--l {
      width: calc(45% - 10px); }
    .gnav-list .gnav-item.gnav-item--s {
      width: calc(27.5% - 10px); } }
  .gnav-item {
    position: relative;
    display: block; }
  .gnav .txt-00 {
    line-height: 1.6;
    color: #796a25;
    margin-bottom: .5em; }
    @media screen and (max-width: 1023px) {
      .gnav .txt-00 br {
        display: none; } }
    @media screen and (min-width: 1024px) {
      .gnav .txt-00 {
        text-align: center; } }
  .gnav-btn {
    position: relative;
    border: solid 2px #c3b98b;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    background-position: left center;
    background-size: contain;
    background-repeat: no-repeat;
    box-sizing: border-box;
    width: 100%; }
    .gnav-btn--pa {
      background-image: url("../img/bg_gnv_00.png"); }
    .gnav-btn--online {
      background-image: url("../img/bg_gnv_01.png"); }
    .gnav-btn--party {
      background-image: url("../img/bg_gnv_02.png"); }
    @media screen and (max-width: 1023px) {
      .gnav-btn {
        height: 80px; } }
    @media screen and (min-width: 1024px) {
      .gnav-btn {
        height: 120px;
        padding-left: 15px;
        padding-right: 15px; } }
    .gnav-btn:after {
      content: "";
      display: block;
      position: absolute;
      width: 12px;
      height: 6px;
      background: url("../img/arw_gnv.png") no-repeat center center;
      background-size: contain;
      left: 50%;
      margin-left: -6px; }
      @media screen and (max-width: 1023px) {
        .gnav-btn:after {
          bottom: 6px; } }
      @media screen and (min-width: 1024px) {
        .gnav-btn:after {
          bottom: 10px; } }
    @media screen and (max-width: 1023px) {
      .gnav-btn img {
        margin-top: -4px; }
      .gnav-btn--pa {
        height: 100px; }
        .gnav-btn--pa img {
          height: 42px; }
      .gnav-btn--online img {
        height: 36px; }
      .gnav-btn--party img {
        height: 38px; } }
    @media screen and (min-width: 1024px) {
      .gnav-btn--pa img {
        width: 280px; }
      .gnav-btn--online img {
        width: 100%; }
      .gnav-btn--party img {
        width: 100%; } }
    .gnav-btn--new:before {
      content: "";
      position: absolute;
      background: url("../img/icn_gnv_new.png") no-repeat center center;
      background-size: contain; }
      @media screen and (max-width: 1023px) {
        .gnav-btn--new:before {
          left: 3px;
          top: 3px;
          height: 10px;
          width: 35px; } }
      @media screen and (min-width: 1024px) {
        .gnav-btn--new:before {
          left: 6px;
          top: 6px;
          height: 15px;
          width: 52px; } }

.sec-plan {
  position: relative; }
  @media screen and (min-width: 1024px) {
    .sec-plan {
      margin: 200px 30px 0; } }
  .sec-plan-col {
    position: relative;
    margin: 0 auto;
    max-width: 1340px;
    padding: 1px 0 0; }
    @media screen and (max-width: 1023px) {
      .sec-plan-col {
        margin-bottom: 40px; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-col {
        margin-bottom: 60px; } }
  .sec-plan-img {
    z-index: 1; }
    @media screen and (min-width: 1024px) {
      .sec-plan-img {
        position: absolute;
        bottom: 15%;
        left: 0;
        width: 52.5%; } }
  .sec-plan--lr .sec-plan-img {
    left: auto;
    right: 0; }
  .sec-plan-head {
    position: relative;
    box-sizing: border-box;
    background: #f6edf1; }
    @media screen and (max-width: 1023px) {
      .sec-plan-head {
        padding: 1px 15px 40px; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-head {
        margin-left: 12.5%;
        padding: 1px 5% 90px 42.5%; } }
    @media screen and (max-width: 1023px) {
      .sec-plan-head .ttl-00 {
        margin: 40px 0 2em; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-head .ttl-00 {
        margin-top: -90px; } }
    @media screen and (max-width: 1023px) {
      .sec-plan-head .ttl-00 {
        margin-bottom: 2em; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-head .ttl-00 {
        margin-bottom: 3em; } }
    .sec-plan-head .ttl-01 {
      margin-bottom: 1em; }
    @media screen and (max-width: 1023px) {
      .sec-plan-head .txt-00 {
        margin-bottom: 1.5em; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-head .txt-00 {
        text-align: center;
        margin-bottom: 2.5em; } }
  .sec-plan--lr .sec-plan-head {
    left: auto;
    right: 0; }
    @media screen and (min-width: 1024px) {
      .sec-plan--lr .sec-plan-head {
        margin-left: 0;
        margin-right: 12.5%;
        padding: 1px 42.5% 90px 5%; } }
  .sec-plan-btn {
    display: flex;
    margin: 0 auto 0;
    max-width: 520px;
    justify-content: center;
    flex-wrap: wrap; }
    @media screen and (max-width: 1023px) {
      .sec-plan-btn .btn-00 {
        width: calc(50% - 10px);
        margin: 0 5px; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-btn .btn-00 {
        width: calc(50% - 20px);
        margin: 0 10px; } }
    @media screen and (max-width: 1023px) {
      .sec-plan-btn .btn-00--w100 {
        width: calc(100% - 10px);
        margin-top: 10px; } }
    @media screen and (min-width: 1024px) {
      .sec-plan-btn .btn-00--w100 {
        width: calc(100% - 20px);
        margin-top: 20px; } }
  @media screen and (max-width: 1023px) {
    .sec-plan-benefit {
      margin-left: 15px;
      margin-right: 15px; } }
  @media screen and (min-width: 1024px) {
    .sec-plan-benefit {
      max-width: 1100px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 30px;
      padding-right: 30px; } }
  @media screen and (max-width: 1023px) {
    .sec-plan-benefit .box-03 + .box-03 {
      margin-top: 15px; } }
  @media screen and (min-width: 1024px) {
    .sec-plan-benefit .box-03 + .box-03 {
      margin-top: 30px; } }
  @media screen and (max-width: 1023px) {
    .sec-plan-body {
      margin-left: 15px;
      margin-right: 15px; } }
  @media screen and (min-width: 1024px) {
    .sec-plan-body {
      max-width: 1100px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 30px;
      padding-right: 30px; } }
  @media screen and (max-width: 1023px) {
    .sec-plan-body .ttl-02 {
      margin-top: 40px;
      margin-bottom: 30px; } }
  @media screen and (min-width: 1024px) {
    .sec-plan-body .ttl-02 {
      margin-top: 80px;
      margin-bottom: 40px; } }
  @media screen and (max-width: 1023px) {
    .sec-plan-btn--last {
      margin-top: 40px;
      margin-bottom: 120px; } }
  @media screen and (min-width: 1024px) {
    .sec-plan-btn--last {
      margin-top: 60px;
      margin-bottom: 160px; } }

.sec-cm {
  position: relative;
  background: #f0f0f0;
  box-sizing: border-box; }
  @media screen and (max-width: 1023px) {
    .sec-cm {
      padding: 60px 15px; } }
  @media screen and (min-width: 1024px) {
    .sec-cm {
      padding: 100px 30px; } }
  .sec-cm-in {
    width: 100%;
    max-width: 540px;
    position: relative;
    margin: 0 auto; }
  .sec-cm-video {
    position: relative;
    width: 100%;
    padding-top: 72.5%;
    background: #000; }
  @media screen and (max-width: 1023px) {
    .sec-cm .ttl-02 {
      margin-bottom: 20px; } }
  @media screen and (min-width: 1024px) {
    .sec-cm .ttl-02 {
      margin-bottom: 40px; } }

.sec-lead {
  position: relative;
  background: #f6edf1;
  padding: 3em 15px; }
  .sec-lead .ttl-00 {
    margin-bottom: .75em; }
  .sec-lead .txt-02 {
    text-align: center; }
    @media screen and (max-width: 1023px) {
      .sec-lead .txt-02 br {
        display: none; } }

.img-00 {
  position: relative;
  line-height: 0; }
  .img-00 img {
    width: 100%; }

.ttl-00 {
  position: relative;
  text-align: center; }
  .ttl-00-num {
    line-height: 0; }
    @media screen and (max-width: 1023px) {
      .ttl-00-num {
        margin-bottom: 15px; } }
    @media screen and (min-width: 1024px) {
      .ttl-00-num {
        margin-bottom: 30px; } }
    @media screen and (max-width: 1023px) {
      .ttl-00-num img {
        height: 28px; } }
    @media screen and (min-width: 1024px) {
      .ttl-00-num img {
        height: 38px; } }
  .ttl-00-txt {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
    color: #aa6986;
    line-height: 1.4;
    font-feature-settings: "palt"; }
    @media screen and (max-width: 1023px) {
      .ttl-00-txt {
        font-size: 20px;
        font-size: 1.25rem; } }
    @media screen and (min-width: 1024px) {
      .ttl-00-txt {
        font-size: 32px;
        font-size: 2rem; } }

.ttl-01 {
  position: relative;
  text-align: center;
  font-weight: bold;
  color: #5f5b48; }
  @media screen and (max-width: 1023px) {
    .ttl-01 {
      font-size: 15px;
      font-size: 0.9375rem; } }
  @media screen and (min-width: 1024px) {
    .ttl-01 {
      font-size: 16px;
      font-size: 1rem; } }

.ttl-02 {
  position: relative; }
  @media screen and (min-width: 1024px) {
    .ttl-02 {
      text-align: center; } }
  .ttl-02-img {
    line-height: 0; }
  .ttl-02-txt {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
    color: #5f5b48; }
    @media screen and (max-width: 1023px) {
      .ttl-02-txt {
        font-size: 16px;
        font-size: 1rem; } }
    @media screen and (min-width: 1024px) {
      .ttl-02-txt {
        font-size: 17px;
        font-size: 1.0625rem; } }
  @media screen and (max-width: 1023px) {
    .ttl-02--feature img {
      height: 28px;
      margin-bottom: 10px; } }
  @media screen and (min-width: 1024px) {
    .ttl-02--feature img {
      height: 54px;
      margin-bottom: 20px; } }
  @media screen and (max-width: 1023px) {
    .ttl-02--for img {
      height: 35px;
      margin-bottom: 5px; } }
  @media screen and (min-width: 1024px) {
    .ttl-02--for img {
      height: 60px;
      margin-bottom: 10px; } }
  .ttl-02--cm {
    text-align: center; }
    @media screen and (max-width: 1023px) {
      .ttl-02--cm img {
        height: 30px;
        margin-bottom: 5px; } }
    @media screen and (min-width: 1024px) {
      .ttl-02--cm img {
        height: 40px;
        margin-bottom: 10px; } }

.ttl-03 {
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  color: #5f5b48;
  line-height: 1.5; }
  @media screen and (max-width: 1023px) {
    .ttl-03 {
      font-size: 13px;
      font-size: 0.8125rem; }
      .ttl-03 br {
        display: none; } }
  @media screen and (min-width: 1024px) {
    .ttl-03 {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media screen and (max-width: 1023px) {
    .ttl-03 img {
      width: 40px;
      height: 40px;
      margin-right: 10px; } }
  @media screen and (min-width: 1024px) {
    .ttl-03 img {
      width: 50px;
      height: 50px;
      margin-right: 15px; } }

.ttl-04 {
  position: relative;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  color: #aa6986;
  line-height: 1.4;
  font-feature-settings: "palt"; }
.ttl-04 span {
  text-decoration: line-through;
}

  @media screen and (max-width: 1023px) {
    .ttl-04 {
      font-size: 20px;
      font-size: 1.25rem; } }
  @media screen and (min-width: 1024px) {
    .ttl-04 {
      font-size: 24px;
      font-size: 1.5rem; } }


.txt-00 {
  position: relative;
  color: #5f5b48;
  line-height: 2; }
  @media screen and (max-width: 1023px) {
    .txt-00 {
      font-size: 13px;
      font-size: 0.8125rem; } }
  @media screen and (min-width: 1024px) {
    .txt-00 {
      font-size: 14px;
      font-size: 0.875rem; } }

.txt-01 {
  position: relative;
  color: #5f5b48;
  line-height: 1.4; }
  @media screen and (max-width: 1023px) {
    .txt-01 {
      font-size: 10px;
      font-size: 0.625rem; } }
  @media screen and (min-width: 1024px) {
    .txt-01 {
      font-size: 11px;
      font-size: 0.6875rem; } }

.txt-02 {
  position: relative;
  color: #5f5b48;
  line-height: 2; }
  @media screen and (max-width: 1023px) {
    .txt-02 {
      font-size: 15px;
      font-size: 0.9375rem; } }
  @media screen and (min-width: 1024px) {
    .txt-02 {
      font-size: 16px;
      font-size: 1rem; } }

.btn-00 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-weight: bold;
  min-width: 120px;
  background: #000 url("../img/arw_btn_00.png") no-repeat right 10px center; }
  @media screen and (max-width: 1023px) {
    .btn-00 {
      font-size: 14px;
      font-size: 0.875rem;
      height: 45px;
      background-size: 5px 10px; } }
  @media screen and (min-width: 1024px) {
    .btn-00 {
      font-size: 15px;
      font-size: 0.9375rem;
      height: 60px;
      background-size: 6px 12px; } }
  .btn-00--brown {
    background-color: #a3762b; }
  .btn-00--red {
    background-color: #e1200f; }
  .btn-00--w100 {
    width: 100%; }
    @media screen and (max-width: 1023px) {
      .btn-00--w100 {
        font-size: 13px;
        font-size: 0.8125rem; } }

.list-01 {
  position: relative; }
  @media screen and (min-width: 1024px) {
    .list-01 {
      display: flex;
      justify-content: space-between;
      width: calc(100% + 60px);
      margin: 0 -30px; } }
  @media screen and (max-width: 1023px) {
    .list-01-item {
      margin-bottom: 20px; } }
  @media screen and (min-width: 1024px) {
    .list-01-item {
      margin: 0 30px; } }
  @media screen and (min-width: 1024px) {
    .list-01--c2 .list-01-item {
      width: calc(50% - 60px); } }
  @media screen and (min-width: 1024px) {
    .list-01--c3 .list-01-item {
      width: calc(33.3% - 60px); } }

.box-01 {
  position: relative; }
  @media screen and (max-width: 1023px) {
    .box-01 .ttl-03 {
      margin-bottom: .25em; } }
  @media screen and (min-width: 1024px) {
    .box-01 .ttl-03 {
      margin-bottom: .75em; } }

.box-02 {
  display: flex; }
  @media screen and (max-width: 1023px) {
    .box-02-img {
      width: 80px;
      margin-right: 12.5px; } }
  @media screen and (min-width: 1024px) {
    .box-02-img {
      width: 160px;
      margin-right: 25px; } }
  .box-02-body {
    flex: 1 1; }
  .box-02 .ttl-03 {
    margin-bottom: .5em; }

.box-03 {
  position: relative;
  border: solid 2px #c3b98b;
  background: #fff; }
  @media screen and (min-width: 1024px) {
    .box-03 {
      display: flex; } }
  .box-03-ttl {
    background: #c3b98b;
    color: #fff;
    font-weight: bold;
    line-height: 1;}
  .box-03-ttl span {
    padding-top: 15px;
    font-size:0.9em;
    display: block;
  }
    @media screen and (max-width: 1023px) {
      .box-03-ttl {
        font-size: 16px;
        font-size: 1rem;
        padding: 10px 15px; } }
    @media screen and (min-width: 1024px) {
      .box-03-ttl {
        font-size: 17px;
        font-size: 1.0625rem;
        width: 200px;
        display: flex;
        align-items: center;
        justify-content: center; } }
  @media screen and (max-width: 1023px) {
    .box-03-body {
      padding: 0 15px; } }
  @media screen and (min-width: 1024px) {
    .box-03-body {
      padding: 0 30px;
      flex: 1 1; } }
  .box-03-in {
    position: relative;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1023px) {
      .box-03-in {
        padding: 15px 0; } }
    @media screen and (min-width: 1024px) {
      .box-03-in {
        padding: 30px 0; } }
    .box-03-in .ttl-01 {
      text-align: left; }
    .box-03-in .ttl-04 + .ttl-01 {
      margin-top: 1em; }
    .box-03-in + .box-03-in {
      border-top: dotted 1px #c3b98b; }
  .box-03-txt {
    width: 70%;
    box-sizing: border-box; }
    @media screen and (max-width: 1023px) {
      .box-03-txt {
        padding-right: 15px; } }
    @media screen and (min-width: 1024px) {
      .box-03-txt {
        padding-right: 30px; } }
  .box-03-img {
    width: 30%;
    line-height: 0; }
    .box-03-img img {
      width: 100%; }

.kv {
  position: relative; }
  .kv-in {
    position: relative;
    width: 100%;
    margin: 0 auto; }
  .kv-list {
    position: relative; }
  .kv-item {
    line-height: 0; }
    .kv-item img {
      width: 100%; }
@media screen and (max-width: 768px) {
      .kv-item {
        width: 100%; } }
@media screen and (min-width: 769px) {
      .kv-item {
        width: 900px; } }
  .kv .slick-dots {
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%; }
    .kv .slick-dots li button:before {
      font-size: 16px;
      color: #f4ebf0;
      opacity: .85; }
    .kv .slick-dots li.slick-active button:before {
      opacity: 1;
      color: #b48399; }
.kv .slick-slide:not(.slick-center) {
  -webkit-filter: opacity(75%);
  -moz-filter: opacity(75%);
  -o-filter: opacity(75%);
  -ms-filter: opacity(75%);
  filter: opacity(75%);
  transition: 0.2s linear;
}
@media screen and (max-width: 1025px) {
  .kv .slick-slide:not(.slick-center) {
  -webkit-filter: opacity(100%);
  -moz-filter: opacity(100%);
  -o-filter: opacity(100%);
  -ms-filter: opacity(100%);
  filter: opacity(100%);
  }
}
  .kv .slick-arrow {
    bottom: 5px;
    top: auto;
    z-index: 10; }
    .kv .slick-arrow:before {
      font-weight: bold;
      transform: scale(1, 0.6);
      color: #b48399; }
    .kv .slick-arrow.slick-prev {
      left: 50%;
      margin-left: -90px; }
      .kv .slick-arrow.slick-prev:before {
        content: "<"; }
    .kv .slick-arrow.slick-next {
      right: 50%;
      margin-right: -90px; }
      .kv .slick-arrow.slick-next:before {
        content: ">"; }

.hr-00 {
  position: relative;
  display: block;
  border: none;
  height: 0;
  margin: 0;
  border-top: solid 1px #e1e1e1; }
  @media screen and (max-width: 1023px) {
    .hr-00 {
      display: none; } }

.siteFooter {
  margin-top: 0 !important;
  border-top: none !important; }

.kikan {
  text-align: center;
  font-size: 20px;
  margin-bottom: 25px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
}
.kikan2 {
  font-size: 16px;
  margin-top: 5px;
}
.box-03-txt .note {
  font-size: 16px;
  margin-top: 5px;
}
@media screen and (max-width: 1023px) {
  .kikan {
    text-align: center;
    font-size: 16px;
  }
  .kikan2 {
    font-size: 14px;
    margin-top: 5px;
  }
  .box-03-txt .note {
    font-size: 14px;
}
}