@charset "UTF-8";
.harenohi_banner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .harenohi_banner ul li {
    width: 33.33333%; }
    .harenohi_banner ul li picture {
      line-height: 0;
      width: 100%; }
      .harenohi_banner ul li picture img {
        width: 100%;
        height: auto; }

.harenohi_intro {
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  overflow: hidden; }
  .harenohi_intro::before, .harenohi_intro::after {
    position: absolute;
    content: "";
    width: 41.75%;
    height: 0;
    padding-top: 41.58333%;
    background: url("../../_assets/images/restaurant/harenohi/flower.png") 0 0 no-repeat;
    background-size: contain;
    top: -2.66667%;
    z-index: -1; }
  .harenohi_intro::before {
    left: -9.83333%; }
  .harenohi_intro::after {
    right: -9.83333%;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1); }
  .harenohi_intro_inner {
    padding: 58px 40px 145px 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 1024px) {
      .harenohi_intro_inner {
        padding-left: 20px;
        padding-right: 20px; } }
    @media only screen and (max-width: 768px) {
      .harenohi_intro_inner {
        padding-bottom: 18.88021vw; } }
    .harenohi_intro_inner h2 {
      line-height: 0;
      text-align: center; }
      @media only screen and (max-width: 768px) {
        .harenohi_intro_inner h2 img {
          width: 43.75vw; } }
    .harenohi_intro_inner p {
      font-size: 14px;
      line-height: 21px;
      font-weight: 200;
      text-align: center;
      margin-top: 45px;
      color: #231F20; }
    .harenohi_intro_inner figure {
      text-align: right;
      position: relative;
      margin-top: 75px; }
      .harenohi_intro_inner figure img {
        width: 688px; }
      .harenohi_intro_inner figure figcaption {
        position: absolute;
        left: 0;
        width: 250px;
        height: 198px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        font-size: 20px;
        line-height: 40px;
        color: #fff;
        background: rgba(127, 195, 186, 0.8);
        bottom: -54px; }
        @media only screen and (max-width: 768px) {
          .harenohi_intro_inner figure figcaption {
            position: relative;
            left: 0;
            top: 0;
            width: 100%;
            height: auto;
            padding: 20px;
            font-size: 5.20833vw;
            line-height: 1.5; } }

.harenohi_plan .inner {
  overflow: hidden; }
  @media only screen and (max-width: 1024px) {
    .harenohi_plan .inner {
      padding-left: 2.60417vw;
      padding-right: 2.60417vw; } }

.harenohi_plan > p {
  text-align: center;
  font-size: 12px;
  line-height: 30px;
  margin-top: 15px; }

.harenohi_plan_inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  padding-right: 0;
  width: 990px;
  overflow: hidden;
  margin-left: -15px;
  margin-right: -15px;
  overflow: hidden; }
  @media only screen and (max-width: 768px) {
    .harenohi_plan_inner {
      width: 100%;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-left: 0;
      margin-right: 0; } }
  .harenohi_plan_inner article {
    width: 219px;
    margin: 0 15px; }
    @media only screen and (max-width: 768px) {
      .harenohi_plan_inner article {
        width: 49%;
        margin: 0; } }
    .harenohi_plan_inner article a {
      display: block; }
    @media only screen and (max-width: 768px) {
      .harenohi_plan_inner article {
        margin-top: 15px;
        margin-bottom: 15px; } }
    .harenohi_plan_inner article h2 {
      text-align: center;
      color: #66B9B7; }
      .harenohi_plan_inner article h2 img {
        height: 49px;
        width: auto; }
        @media only screen and (max-width: 768px) {
          .harenohi_plan_inner article h2 img {
            height: 12.76042vw; } }
      .harenohi_plan_inner article h2 em {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-style: normal;
        font-size: 20px;
        line-height: 35px;
        font-weight: 400;
        border-bottom: 1px solid #66B9B7; }
        .harenohi_plan_inner article h2 em span {
          font-size: 57px;
          line-height: 1;
          display: inline-block;
          margin-left: 20px; }
    .harenohi_plan_inner article figure {
      line-height: 0;
      margin-top: 22px; }
      .harenohi_plan_inner article figure img {
        width: 100%;
        height: auto; }
    .harenohi_plan_inner article ._txt {
      background: #F0EAD8;
      text-align: center;
      padding: 15px 0; }
      .harenohi_plan_inner article ._txt h3 {
        font-size: 30px;
        line-height: 1;
        color: #66B9B7; }
        @media only screen and (max-width: 768px) {
          .harenohi_plan_inner article ._txt h3 {
            font-size: 5.85938vw; } }
      .harenohi_plan_inner article ._txt p {
        font-size: 14px;
        line-height: 24px;
        margin-top: 10px; }
        @media only screen and (max-width: 768px) {
          .harenohi_plan_inner article ._txt p {
            font-size: 3.64583vw; } }

.harenohi_detail {
  padding: 105px 0 120px; }
  @media only screen and (max-width: 1024px) {
    .harenohi_detail_inner {
      padding-left: 20px;
      padding-right: 20px; } }
  @media only screen and (max-width: 768px) {
    .harenohi_detail {
      padding: 13.67188vw 0 15.625vw; } }
  .harenohi_detail .art:not(:first-child) {
    margin-top: 80px; }
  .harenohi_detail .art h2 {
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    padding-bottom: 12px;
    border-bottom: 1px solid #66B9B7; }
    @media only screen and (max-width: 768px) {
      .harenohi_detail .art h2 {
        font-size: 5.20833vw;
        padding-bottom: 3.125vw; } }
  .harenohi_detail .art_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 20px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap; }
    .harenohi_detail .art_wrap_ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      width: 566px;
      margin-bottom: 10px; }
      @media only screen and (max-width: 768px) {
        .harenohi_detail .art_wrap_ttl {
          width: 100%; } }
      .harenohi_detail .art_wrap_ttl h3 {
        font-size: 33px;
        line-height: 45px;
        color: #66B9B7; }
        @media only screen and (max-width: 768px) {
          .harenohi_detail .art_wrap_ttl h3 {
            font-size: 7.03125vw;
            line-height: 1.5; } }
        .harenohi_detail .art_wrap_ttl h3 small {
          font-size: 23px; }
      .harenohi_detail .art_wrap_ttl em {
        font-style: normal;
        font-size: 15px;
        line-height: 45px; }
        .harenohi_detail .art_wrap_ttl em b {
          font-size: 25px;
          display: inline-block; }
      .harenohi_detail .art_wrap_ttl p {
        width: 100%;
        text-align: right;
        font-size: 12px;
        line-height: 1.5; }
    .harenohi_detail .art_wrap_l {
      width: 566px;
      margin-right: 44px;
      padding-bottom: 25px; }
      @media only screen and (max-width: 768px) {
        .harenohi_detail .art_wrap_l {
          width: 100%;
          margin-right: 0; } }
      .harenohi_detail .art_wrap_l picture {
        line-height: 0; }
        .harenohi_detail .art_wrap_l picture img {
          width: 100%;
          height: auto; }
    .harenohi_detail .art_wrap_r {
      width: calc(100% - 566px - 44px);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .harenohi_detail .art_wrap_r {
          width: 100%; } }
      .harenohi_detail .art_wrap_r dl {
        font-size: 14px;
        line-height: 28px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap; }
        .harenohi_detail .art_wrap_r dl.no_bg dt {
          width: 70px; }
        .harenohi_detail .art_wrap_r dl.no_bg dd {
          width: calc(100% - 70px); }
        .harenohi_detail .art_wrap_r dl.bg {
          font-weight: 500;
          -webkit-box-align: start;
          -ms-flex-align: start;
          align-items: flex-start; }
          .harenohi_detail .art_wrap_r dl.bg dt {
            width: 75px;
            background: #66B9B7;
            color: #fff;
            text-align: center;
            font-size: 12px;
            line-height: 21px;
            white-space: nowrap; }
            .harenohi_detail .art_wrap_r dl.bg dt:not(:first-of-type) {
              margin-top: 10px; }
          .harenohi_detail .art_wrap_r dl.bg dd {
            width: calc(100% - 75px);
            font-size: 15px;
            line-height: 19px;
            padding: 0 0 0 7px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; }
            .harenohi_detail .art_wrap_r dl.bg dd:not(:first-of-type) {
              margin-top: 10px; }
        .harenohi_detail .art_wrap_r dl + dl {
          margin-top: 11px; }
        .harenohi_detail .art_wrap_r dl + h4 {
          margin-top: 15px; }
      .harenohi_detail .art_wrap_r h4 {
        font-size: 16px;
        line-height: 22px;
        font-weight: 500;
        color: #66B9B7;
        margin-bottom: 12px; }
      .harenohi_detail .art_wrap_r .btn {
        margin-top: 30px; }
        .harenohi_detail .art_wrap_r .btn a {
          background: #68b9b7;
          border: solid 1px #68b9b7;
          width: 100%;
          height: 55px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          color: #fff;
          font-size: 14px;
          line-height: 1.5; }
          @media screen and (min-width: 769px) {
            .harenohi_detail .art_wrap_r .btn a {
              -webkit-transition: all .3s ease-out;
              -o-transition: all .3s ease-out;
              transition: all .3s ease-out; }
              .harenohi_detail .art_wrap_r .btn a:hover {
                background: #FFF;
                color: #68b9b7; } }
      .harenohi_detail .art_wrap_r p.note {
        font-size: 12px;
        line-height: 18px;
        margin-top: 8px; }
      .harenohi_detail .art_wrap_r p.maiko {
        font-size: 15px;
        line-height: 22.5px;
        font-weight: 400;
        margin-top: 25px; }
        .harenohi_detail .art_wrap_r p.maiko span {
          display: inline-block;
          font-size: 12px;
          line-height: 22.5px;
          padding: 0 10px;
          background: #68b9b7;
          color: #fff;
          margin-right: 10px; }
      .harenohi_detail .art_wrap_r p.star {
        font-size: 12px;
        line-height: 18px;
        position: relative;
        padding: 0 0 0 18px;
        margin-top: 10px; }
        .harenohi_detail .art_wrap_r p.star::before {
          position: absolute;
          content: "※";
          font-size: 12px;
          line-height: 18px;
          top: 0;
          left: 0; }


          /* 追加 */
.harenohi_detail .art_wrap_r .btn a {
  pointer-events: auto !important;
  cursor: pointer;
}