@charset "UTF-8";
.sec_sp_anchor .btn_row__wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 9px; }
  .sec_sp_anchor .btn_row__wrap .btn_row {
    margin-top: 0; }
  .sec_sp_anchor .btn_row__wrap .btn_pri {
    width: 100%;
    padding-left: 15px;
    justify-content: flex-start; }
    .sec_sp_anchor .btn_row__wrap .btn_pri span {
      transform: translateY(-48%) scale(0.7) rotate(90deg); }

.sec_reservation .panel_wrap {
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding: 0 9px; }
.sec_reservation .panel {
  background-color: #FAFAFA;
  border: solid 1px #D3D3D6;
  padding: 40px 15px 30px;
  display: flex;
  flex-direction: column;
  gap: 40px; }
  .sec_reservation .panel#rsv_facility {
    background-color: #FFFFF8; }
  .sec_reservation .panel#rsv_camp {
    background-color: #F5FCF5; }
  .sec_reservation .panel .panel_title {
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: .08em;
    text-align: center;
    margin-bottom: 30px; }
  .sec_reservation .panel .panel_item_ttl {
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: .02em;
    line-height: 1;
    text-align: center;
    color: #28762A;
    margin-bottom: 12px; }
  .sec_reservation .panel .btn_row {
    margin-top: 0; }
  .sec_reservation .panel .btn_pri {
    width: 100%;
    font-size: 1.5rem; }
    .sec_reservation .panel .btn_pri._line {
      background-color: #02B902;
      position: relative; }
      .sec_reservation .panel .btn_pri._line::before {
        content: url("../img/contact/line_icon.svg");
        display: flex;
        align-items: center;
        width: 46px;
        height: 46px;
        position: absolute;
        top: 50%;
        left: 10px;
        transform: translateY(-50%); }
  .sec_reservation .panel p small {
    display: block;
    font-size: 1.2rem;
    letter-spacing: .02em;
    line-height: 1.66;
    margin-top: 10px; }
  .sec_reservation .panel p a {
    text-decoration: underline;
    color: #28762A; }
  .sec_reservation .panel .tel_wrap {
    border-top: solid 1px #28762A;
    border-bottom: solid 1px #28762A;
    padding: 15px;
    text-align: center; }
    .sec_reservation .panel .tel_wrap .tel_wrap_item {
      display: flex;
      justify-content: center;
      align-items: flex-end;
      gap: 0 4px; }
      .sec_reservation .panel .tel_wrap .tel_wrap_item span {
        width: 20px;
        height: 20px; }
        .sec_reservation .panel .tel_wrap .tel_wrap_item span img {
          width: 100%;
          height: auto; }
      .sec_reservation .panel .tel_wrap .tel_wrap_item strong {
        font-size: 2.4rem;
        font-weight: bold;
        letter-spacing: .02em;
        line-height: 1;
        color: #28762A;
        white-space: nowrap; }
    .sec_reservation .panel .tel_wrap p {
      margin: 0;
      line-height: 1; }
      .sec_reservation .panel .tel_wrap p small {
        font-size: 10px;
        margin-top: 3px; }
  .sec_reservation .panel .caution {
    background-color: #FFFFFF;
    border: solid 1px #D52945;
    padding: 11px 15px 15px;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: .02em;
    line-height: 1.42;
    color: #D52945;
    margin-top: 30px; }
  .sec_reservation .panel .border_box {
    background-color: #FFFFFF;
    border: solid 1px #28762A;
    padding: 15px 15px 25px; }
    .sec_reservation .panel .border_box p {
      font-size: 1.2rem;
      line-height: 1.5; }
    .sec_reservation .panel .border_box .dat_list li {
      position: relative;
      font-size: 1.4rem;
      padding-left: 1em;
      margin-top: 15px; }
      .sec_reservation .panel .border_box .dat_list li::before {
        content: "●";
        font-size: 9px;
        color: #28762A;
        position: absolute;
        top: .5em;
        left: 0; }

@media screen and (min-width: 1028px) {
  .sec_reservation .panel_wrap {
    display: flex;
    flex-direction: row;
    gap: 20px;
    padding: 0; }
  .sec_reservation .panel {
    padding: 40px 20px 30px;
    width: calc((100% - 40px) / 3); }
    .sec_reservation .panel .panel_title {
      margin-bottom: 40px; }
    .sec_reservation .panel .tel_wrap {
      border-top: solid 1px #28762A;
      border-bottom: solid 1px #28762A;
      padding: 15px;
      text-align: center; }
      .sec_reservation .panel .tel_wrap .tel_wrap_item {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        gap: 0 4px; }
        .sec_reservation .panel .tel_wrap .tel_wrap_item span {
          width: 20px;
          height: 20px; }
          .sec_reservation .panel .tel_wrap .tel_wrap_item span img {
            width: 100%;
            height: auto; }
        .sec_reservation .panel .tel_wrap .tel_wrap_item strong {
          font-size: 2.4rem;
          font-weight: bold;
          letter-spacing: .02em;
          line-height: 1;
          color: #28762A;
          white-space: nowrap; }
      .sec_reservation .panel .tel_wrap p {
        margin: 0;
        line-height: 1; }
        .sec_reservation .panel .tel_wrap p small {
          font-size: 10px;
          margin-top: 3px; }
    .sec_reservation .panel .border_box {
      background-color: #FFFFFF;
      border: solid 1px #28762A;
      padding: 15px 15px 25px; }
      .sec_reservation .panel .border_box p {
        font-size: 1.2rem;
        line-height: 1.5; }
      .sec_reservation .panel .border_box .dat_list li {
        position: relative;
        font-size: 1.4rem;
        padding-left: 1em;
        margin-top: 15px; }
        .sec_reservation .panel .border_box .dat_list li::before {
          content: "●";
          font-size: 9px;
          color: #28762A;
          position: absolute;
          top: .5em;
          left: 0; } }
.bnr_area {
  padding: 0 16px 80px; }
  .bnr_area .img_block {
    padding: 0 9px; }

@media screen and (min-width: 1028px) {
  .bnr_area {
    padding: 0 16px 160px; }
    .bnr_area .img_block {
      padding: 0;
      max-width: 473px;
      margin: 0 auto; }
      .bnr_area .img_block picture {
        display: block;
        width: 100%; }
      .bnr_area .img_block img {
        width: 100%;
        height: auto; } }
