
:root {
  --color-1st: #ea5504;
  --color-2nd: #d4c09d;
  --color-3rd: #c97d00;
  --color-4th: #968573;
  --color-black: #2F1E1A;
  --color-white: #fff;
  --font-min:"Noto Serif JP", serif;
  --font-en:"EB Garamond", serif;
}

.fs_en {
  font-family: var(--font-en)!important;
}
.fs_min {
  font-family: var(--font-min)!important;
}
.fs_small {
  line-height: 1.5em!important;
  font-size:0.9em;
}

/* Style for PCs */
@media screen and (min-width: 1025px) {

.sppage-topsection {
  width:100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  margin-bottom: 70px;
}
.spp_flc85 {
  width:76%;
  padding-left:5%;
}
.spp_flc10 {
  width:18%;
}
.spp_tscc {
  width:100%;
  height: auto;
  display: block;
  text-align: center;
}

.spp_tscc h2 {
  font-size:36px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-1st);
  line-height: 1.25em;
  text-align: center;
  margin-bottom: 0.3em;
}
.spp_tscc .spp_subtitle {
  font-size:16px;
  font-style: italic;
  font-weight: 400;
  color:var(--color-4th);
  line-height: 1.25em;
  text-align: center;
  margin-bottom: 1em;
}
.spp_tscc p.spp_topcomment {
  font-size: 15px;
  line-height: 2em;
  text-align: center;
  margin:0 0 1.2em 0;
}

.spp_ts_price {
  width:100%;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
}
.spp_tscc h3 {
  width:fit-content;
  height: auto;
  display: flex;
  font-size:26px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  line-height: 1.1em;
}
.spp_tscc h3 span {
  display: block;
  font-size:12px;
  font-weight: 400;
  color: var(--color-4th);
  font-family: var(--font-en);
  margin-left:0.5em;
}
.spp_tscc p.spp_price {
  font-size: 14px;
  line-height: 1em;
  margin:0 0 0 0;
}
.spp_tscc p.spp_price strong {
  font-size: 34px;
  font-family: var(--font-min);
  font-weight: 500;
  margin:0 0.1em 0 0.5em;
}

.circletext {
  width:150px;
  height: 150px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  clip-path: circle(50% at 50% 50%);
  background-color: var(--color-1st);
}
.circletext2 {
  width:145px;
  height: 145px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  clip-path: circle(50% at 50% 50%);
  background-color: var(--color-white);
}
.circletext h3 {
  font-size:32px;
  font-weight: 400;
  line-height: 1em;
  font-family: var(--font-min);
  color: var(--color-1st);
  margin:0 0 0.3em 0;
  text-align: center;
}
.circletext p {
  font-size:12px;
  color: var(--color-4th);
  font-weight: 400;
  line-height: 1.2em;
  margin:0;
  text-align: center;
}

/* Event date */
.eventdatebox {
  width:100%;
  height: auto;
  display: flex;
  flex-direction: column;
  padding-bottom: 100px;
  border-bottom: 1px solid var(--color-4th);
  margin-bottom: 100px;
}
.eventdatebox h2 {
  font-size:24px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  text-align: center;
  line-height: 1.1em;
  margin-bottom: 0.1em;
}
.eventdatebox .spp_subtitle {
  font-style: italic;
  text-align: center;
  color: var(--color-4th);
  margin-bottom: 20px;
}
.eventdatebox h3 {
  width:fit-content;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size:32px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  text-align: center;
  line-height: 1.1em;
  margin:0 auto 0.4em auto;
}
.eventdatebox h3 strong {
  font-size:32px;
  font-family: var(--font-min);
  font-weight: 500!important;
  margin-right:0.1em;
  margin-left:0.1em;
}
.eventdatebox h3 span {
  font-size:24px;
  font-weight: 400;
}
.eventdatebox p.spp_eventtime {
  font-size:14px;
  font-weight: 600;
  font-family: var(--font-min);
  color: var(--color-black);
  line-height: 1.4em;
  text-align: center;
  margin:0 0 1em 0;
}
.eventdatebox p.spp_eventspase {
  font-size:16px;
  font-weight: 400;
  font-family: var(--font-min);
  color: var(--color-black);
  line-height: 1.4em;
  text-align: center;
  margin:0 0 0.5em 0;
}
.eventdatebox p.spp_eventspase strong {
  font-weight: 500;
}
.eventdatebox p.spp_optiontxt {
  font-size:14px;
  font-weight: 400;
  font-family: var(--font-min);
  color: var(--color-1st);
  line-height: 1.4em;
  text-align: center;
  margin:0 0 0 0;
}


/* Features */
.spp_featuresmm {
  width:100%;
  height: auto;
  display: block;
  margin-bottom: 70px;
}

.sppf_line {
  width:80%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right:auto;
  margin-left:auto;
  margin-bottom: 70px;
}

.sppf_box_l_cc {
  width:50%;
  margin-right:5%;
  order:1;
}
.sppf_box_r_cc {
  width:50%;
  margin-left:5%;
  order:2;
}
.sppf_box_r_img {
  width:25%;
  order:2;
}
.sppf_box_l_img {
  width:25%;
  order:1;
}

.sppf_line_cent {
  width:80%;
  height: auto;
  display: flex;
  flex-direction: column;
  margin-right:auto;
  margin-left:auto;
}
.sppf_box_cent_cc {
  width:80%;
  height: auto;
  display: block;
  margin:0 auto;
  order:2;
}
.sppf_box_cent_cc h3, .sppf_box_cent_cc p {
  text-align: center;
}
.sppf_box_cent_img {
  width:25%;
  order:1;
  position: relative;
  margin:0 auto 20px;
}
.sppf_box_cent_img .sppf_bci_base {
  width:90%;
  height: auto;
  display: block;
  margin:0 auto 30% auto;
}
.sppf_box_cent_img .sppf_bci_base img {
  clip-path: circle(50% at 50% 50%);
}
.sppf_box_cent_img .sppf_bci_float {
  width:100%;
  height: auto;
  display: block;
  margin:0 auto;
  position: absolute;
  bottom: 0;
  left:50%;
  z-index:2;
  transform: translateX(-50%);
}

.spp_featuresmm h3 {
  font-size:28px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  line-height: 1.5em;
  margin:0 auto 0.2em auto;
}
.spp_featuresmm p.sppf_com_en {
  font-size:14px;
  font-style: italic;
  font-weight: 400;
  color: var(--color-4th);
  font-family: var(--font-en);
  margin:0 0 0 0;
}
.spp_featuresmm p.sppf_com_jp {
  font-size:16px;
  line-height: 2em;
  font-weight: 400;
  color: var(--color-black);
  font-family: var(--font-min);
  margin:0 0 0.5em 0;
}

.sppf_line_alcent {
  width:80%;
  height: auto;
  display: flex;
  flex-direction: column;
  margin-right:auto;
  margin-left:auto;
  margin-bottom: 70px;
}
.sppf_line_alcent h3, .sppf_line_alcent p {
  text-align: center;
}

/* section title */
.st_txt {
  width:100%;
  height: auto;
  display:flex;
  flex-direction: column;
  margin-bottom: 25px;
}
.st_txt h3 {
  font-size:24px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  text-align: center;
  line-height: 1.1em;
  margin:0 auto 0.2em auto;
}
.st_txt p {
  font-size:14px;
  font-style: italic;
  font-weight: 400;
  text-align: center;
  color: var(--color-4th);
  font-family: var(--font-en);
  margin:0 0 0 0;
}

/* Reservation button */
.reservebn {
  width:70%;
  height: auto;
  display: flex;
  justify-content: center;
  margin:0 auto 50px;
}
.reservebn li {
  flex:1;
  font-size:16px;
  font-family: var(--font-min);
  margin:0 1%;
}
.reservebn li a {
  width:100%;
  height: auto;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  line-height: 50px;
  text-align: center;
  background-color: var(--color-black);
  border-radius: 3px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all  0.4s ease;
}
.reservebn li a:hover {
  background-color: var(--color-1st);
}

}

/* Style for iPad Pro */
@media screen and (min-width: 769px) and (max-width: 1024px) {

  .sppage-topsection {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 70px;
  }
  .spp_flc85 {
    width:90%;
    height: auto;
    display: block;
    margin:0 auto;
    order:2;
  }
  .spp_flc10 {
    width:150px;
    height: 150px;
    display: block;
    margin:0 auto 40px;
    order:1;
  }
  .spp_tscc {
    width:100%;
    height: auto;
    display: block;
    text-align: center;
  }

  .spp_tscc h2 {
    font-size:32px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-1st);
    text-align: center;
    line-height: 1.25em;
    margin-bottom: 0.3em;
  }
  .spp_tscc .spp_subtitle {
    font-size:16px;
    font-style: italic;
    font-weight: 400;
    color:var(--color-4th);
    text-align: center;
    line-height: 1.25em;
    margin-bottom: 1em;
  }
  .spp_tscc p.spp_topcomment {
    font-size: 15px;
    line-height: 2em;
    text-align: center;
    margin:0 0 1.2em 0;
  }

  .spp_ts_price {
    width:fit-content;
    height: auto;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
    margin:0 auto;
  }
  .spp_tscc h3 {
    width:fit-content;
    height: auto;
    display: flex;
    font-size:26px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    line-height: 1.1em;
  }
  .spp_tscc h3 span {
    display: block;
    font-size:12px;
    font-weight: 400;
    color: var(--color-4th);
    font-family: var(--font-en);
    margin-left:0.5em;
  }
  .spp_tscc p.spp_price {
    font-size: 14px;
    line-height: 1em;
    margin:0 0 0 0;
  }
  .spp_tscc p.spp_price strong {
    font-size: 34px;
    font-family: var(--font-min);
    font-weight: 500;
    margin:0 0.1em 0 0.5em;
  }

  .circletext {
    width:150px;
    height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    clip-path: circle(50% at 50% 50%);
    background-color: var(--color-1st);
  }
  .circletext2 {
    width:145px;
    height: 145px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    clip-path: circle(50% at 50% 50%);
    background-color: var(--color-white);
  }
  .circletext h3 {
    font-size:32px;
    font-weight: 400;
    line-height: 1em;
    font-family: var(--font-min);
    color: var(--color-1st);
    margin:0 0 0.3em 0;
    text-align: center;
  }
  .circletext p {
    font-size:12px;
    color: var(--color-4th);
    font-weight: 400;
    line-height: 1.2em;
    margin:0;
    text-align: center;
  }

  /* Event date */
  .eventdatebox {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 70px;
  }
  .eventdatebox h2 {
    font-size:24px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    text-align: center;
    line-height: 1.1em;
    margin-bottom: 0.1em;
  }
  .eventdatebox .spp_subtitle {
    font-style: italic;
    text-align: center;
    color: var(--color-4th);
    margin-bottom: 20px;
  }
  .eventdatebox h3 {
    width:fit-content;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: baseline;
    font-size:32px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    text-align: center;
    line-height: 1.1em;
    margin:0 auto 0.4em auto;
  }
  .eventdatebox h3 strong {
    font-size:32px;
    font-family: var(--font-min);
    font-weight: 500!important;
    margin-right:0.1em;
    margin-left:0.1em;
  }
  .eventdatebox h3 span {
    font-size:24px;
    font-weight: 400;
  }
  .eventdatebox p.spp_eventtime {
    font-size:16px;
    font-weight: 600;
    font-family: var(--font-min);
    color: var(--color-black);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 1em 0;
  }
  .eventdatebox p.spp_eventspase {
    font-size:18px;
    font-weight: 400;
    font-family: var(--font-min);
    color: var(--color-black);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 0.5em 0;
  }
  .eventdatebox p.spp_eventspase strong {
    font-weight: 500;
  }
  .eventdatebox p.spp_optiontxt {
    font-size:14px;
    font-weight: 400;
    font-family: var(--font-min);
    color: var(--color-1st);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 0 0;
  }


  /* Features */
  .spp_featuresmm {
    width:100%;
    height: auto;
    display: block;
    margin-bottom: 70px;
  }

  .sppf_line {
    width:80%;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right:auto;
    margin-left:auto;
    margin-bottom: 50px;
  }

  .sppf_box_l_cc {
    width:60%;
    margin-right:5%;
    order:1;
  }
  .sppf_box_r_cc {
    width:60%;
    margin-left:5%;
    order:2;
  }
  .sppf_box_r_img {
    width:35%;
    order:2;
  }
  .sppf_box_l_img {
    width:35%;
    order:1;
  }

  .sppf_line_cent {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-right:auto;
    margin-left:auto;
  }
  .sppf_box_cent_cc {
    width:80%;
    height: auto;
    display: block;
    margin:0 auto;
    order:2;
  }
  .sppf_box_cent_cc h3, .sppf_box_cent_cc p {
    text-align: center;
  }
  .sppf_box_cent_img {
    width:25%;
    order:1;
    position: relative;
    margin:0 auto 20px;
  }
  .sppf_box_cent_img .sppf_bci_base {
    width:90%;
    height: auto;
    display: block;
    margin:0 auto 30% auto;
  }
  .sppf_box_cent_img .sppf_bci_base img {
    clip-path: circle(50% at 50% 50%);
  }
  .sppf_box_cent_img .sppf_bci_float {
    width:100%;
    height: auto;
    display: block;
    margin:0 auto;
    position: absolute;
    bottom: 0;
    left:50%;
    z-index:2;
    transform: translateX(-50%);
  }

  .spp_featuresmm h3 {
    font-size:24px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    line-height: 1.5em;
    margin:0 auto 0.2em auto;
  }
  .spp_featuresmm p.sppf_com_en {
    font-size:14px;
    font-style: italic;
    font-weight: 400;
    color: var(--color-4th);
    font-family: var(--font-en);
    margin:0 0 0 0;
  }
  .spp_featuresmm p.sppf_com_jp {
    font-size:16px;
    line-height: 2em;
    font-weight: 400;
    color: var(--color-black);
    font-family: var(--font-min);
    margin:0;
  }

  .sppf_line_alcent {
    width:80%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-right:auto;
    margin-left:auto;
    margin-bottom: 70px;
  }
  .sppf_line_alcent h3, .sppf_line_alcent p {
    text-align: center;
  }


  /* section title */
.st_txt {
  width:100%;
  height: auto;
  display:flex;
  flex-direction: column;
  margin-bottom: 25px;
}
.st_txt h3 {
  font-size:24px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  text-align: center;
  line-height: 1.1em;
  margin:0 auto 0.2em auto;
}
.st_txt p {
  font-size:14px;
  font-style: italic;
  font-weight: 400;
  text-align: center;
  color: var(--color-4th);
  font-family: var(--font-en);
  margin:0 0 0 0;
}


/* Reservation button */
.reservebn {
  width:70%;
  height: auto;
  display: flex;
  justify-content: center;
  margin:0 auto 50px;
}
.reservebn li {
  flex:1;
  font-size:16px;
  font-family: var(--font-min);
  margin:0 1%;
}
.reservebn li a {
  width:100%;
  height: auto;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  line-height: 50px;
  text-align: center;
  background-color: var(--color-black);
  border-radius: 3px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all  0.4s ease;
}
.reservebn li a:hover {
  background-color: var(--color-1st);
}

}

/* Style for Smartphone */
@media screen and (max-width: 768px) {

  .sppage-topsection {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 70px;
  }
  .spp_flc85 {
    width:90%;
    height: auto;
    display: block;
    margin:0 auto;
    order:2;
  }
  .spp_flc10 {
    width:150px;
    height: 150px;
    display: block;
    margin:0 auto 20px;
    order:1;
  }
  .spp_tscc {
    width:100%;
    height: auto;
    display: block;
    padding:0 5%;
  }


  .spp_tscc h2 {
    font-size:26px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-1st);
    line-height: 1.5em;
    margin-bottom: 0.3em;
  }
  .spp_tscc .spp_subtitle {
    font-size:16px;
    font-style: italic;
    font-weight: 400;
    color:var(--color-4th);
    line-height: 1.25em;
    margin-bottom: 1em;
  }
  .spp_tscc p.spp_topcomment {
    font-size: 15px;
    line-height: 2em;
    margin:0 0 2em 0;
  }

  .spp_ts_price {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin:0 auto;
  }
  .spp_tscc h3 {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    text-align: center;
    font-size:24px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    line-height: 1.1em;
    margin-bottom: 1em;
  }
  .spp_tscc h3 span {
    display: block;
    font-size:12px;
    font-weight: 400;
    color: var(--color-4th);
    font-family: var(--font-en);
  }
  .spp_tscc p.spp_price {
    font-size: 14px;
    line-height: 1em;
    text-align: center;
    margin:0 0 0 0;
  }
  .spp_tscc p.spp_price strong {
    font-size: 34px;
    font-family: var(--font-min);
    font-weight: 500;
    margin:0 0.1em 0 0.5em;
  }

  .circletext {
    width:140px;
    height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    clip-path: circle(50% at 50% 50%);
    background-color: var(--color-1st);
  }
  .circletext2 {
    width:135px;
    height: 135px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    clip-path: circle(50% at 50% 50%);
    background-color: var(--color-white);
  }
  .circletext h3 {
    font-size:26px;
    font-weight: 400;
    line-height: 1em;
    font-family: var(--font-min);
    color: var(--color-1st);
    margin:0 0 0.3em 0;
    text-align: center;
  }
  .circletext p {
    font-size:11px;
    color: var(--color-4th);
    font-weight: 400;
    line-height: 1.2em;
    margin:0;
    text-align: center;
  }

  /* Event date */
  .eventdatebox {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 70px;
  }
  .eventdatebox h2 {
    font-size:20px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    text-align: center;
    line-height: 1.1em;
    margin-bottom: 0.1em;
  }
  .eventdatebox .spp_subtitle {
    font-style: italic;
    text-align: center;
    color: var(--color-4th);
    margin-bottom: 20px;
  }
  .eventdatebox h3 {
    width:fit-content;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: baseline;
    font-size:26px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    text-align: center;
    line-height: 1.1em;
    margin:0 auto 0.4em auto;
  }
  .eventdatebox h3 strong {
    font-size:26px;
    font-family: var(--font-min);
    font-weight: 500!important;
    margin-right:0.1em;
    margin-left:0.1em;
  }
  .eventdatebox h3 span {
    font-size:24px;
    font-weight: 400;
  }
  .eventdatebox p.spp_eventtime {
    font-size:14px;
    font-weight: 600;
    font-family: var(--font-min);
    color: var(--color-black);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 1em 0;
  }
  .eventdatebox p.spp_eventspase {
    font-size:14px;
    font-weight: 400;
    font-family: var(--font-min);
    color: var(--color-black);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 0.5em 0;
  }
  .eventdatebox p.spp_eventspase strong {
    font-weight: 500;
  }
  .eventdatebox p.spp_optiontxt {
    font-size:14px;
    font-weight: 400;
    font-family: var(--font-min);
    color: var(--color-1st);
    line-height: 1.4em;
    text-align: center;
    margin:0 0 0 0;
  }


  /* Features */
  .spp_featuresmm {
    width:100%;
    height: auto;
    display: block;
    margin-bottom: 0px;
  }

  .sppf_line {
    width:90%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-right:auto;
    margin-left:auto;
    margin-bottom: 30px;
  }

  .sppf_box_l_cc {
    width:100%;
    height: auto;
    display: block;
    margin:0 auto 30px;
    order:2;
  }
  .sppf_box_r_cc {
    width:100%;
    height: auto;
    display: block;
    margin:0 auto 30px;
    order:2;
  }
  .sppf_box_r_img {
    width:40%;
    height: auto;
    display: block;
    margin:0 auto 30px;
    order:1;
  }
  .sppf_box_l_img {
    width:40%;
    height: auto;
    display: block;
    margin:0 auto 30px;
    order:1;
  }

  .sppf_line_cent {
    width:100%;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-right:auto;
    margin-left:auto;
    margin-bottom: 50px;
  }
  .sppf_box_cent_cc {
    width:90%;
    height: auto;
    display: block;
    margin:0 auto;
    order:2;
  }
  .sppf_box_cent_cc h3, .sppf_box_cent_cc p {
    text-align: left;
  }
  .sppf_box_cent_img {
    width:35%;
    order:1;
    position: relative;
    margin:0 auto 20px;
  }
  .sppf_box_cent_img .sppf_bci_base {
    width:90%;
    height: auto;
    display: block;
    margin:0 auto 30% auto;
  }
  .sppf_box_cent_img .sppf_bci_base img {
    clip-path: circle(50% at 50% 50%);
  }
  .sppf_box_cent_img .sppf_bci_float {
    width:100%;
    height: auto;
    display: block;
    margin:0 auto;
    position: absolute;
    bottom: 0;
    left:50%;
    z-index:2;
    transform: translateX(-50%);
  }

  .spp_featuresmm h3 {
    font-size:24px;
    font-family: var(--font-min);
    font-weight: 400;
    color:var(--color-black);
    line-height: 1.5em;
    margin:0 auto 0.2em auto;
  }
  .spp_featuresmm p.sppf_com_en {
    font-size:14px;
    font-style: italic;
    font-weight: 400;
    color: var(--color-4th);
    font-family: var(--font-en);
    margin:0 0 1em 0;
  }
  .spp_featuresmm p.sppf_com_jp {
    font-size:16px;
    line-height: 2em;
    font-weight: 400;
    color: var(--color-black);
    font-family: var(--font-min);
    margin:0;
  }

  .sppf_line_alcent {
    width:90%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-right:auto;
    margin-left:auto;
    margin-bottom: 70px;
  }
  .sppf_line_alcent h3 {
    text-align: left!important;
  }
  .sppf_line_alcent p {
    text-align: left!important;
  }


  /* section title */
.st_txt {
  width:100%;
  height: auto;
  display:flex;
  flex-direction: column;
  margin-bottom: 25px;
}
.st_txt h3 {
  font-size:24px;
  font-family: var(--font-min);
  font-weight: 400;
  color:var(--color-black);
  text-align: center;
  line-height: 1.1em;
  margin:0 auto 0.2em auto;
}
.st_txt p {
  font-size:14px;
  font-style: italic;
  font-weight: 400;
  text-align: center;
  color: var(--color-4th);
  font-family: var(--font-en);
  margin:0 0 0 0;
}


/* Reservation button */
.reservebn {
  width:100%;
  height: auto;
  display: flex;
  flex-direction: column;
  margin:0 auto 50px;
}
.reservebn li {
  flex:1;
  font-size:14px;
  font-family: var(--font-min);
  margin:0 0 10px 0;
}
.reservebn li a {
  width:100%;
  height: auto;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  line-height: 50px;
  text-align: center;
  background-color: var(--color-black);
  border-radius: 3px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all  0.4s ease;
}
.reservebn li a:hover {
  background-color: var(--color-1st);
}

}
