.page-title-wrapper {
  background: url("../../img/bg_pagetitle_trip.jpg") no-repeat 50% 50%;
  background-size: cover;
  padding: 12.3vw 0 8vw;
  height: auto; }
  @media screen and (max-width: 767px) {
    .page-title-wrapper {
      padding-top: 22vw; } }
  .page-title-wrapper .page-title h1 {
    width: 23.7vw;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .page-title-wrapper .page-title h1 {
        width: 50vw;
        margin: 0 auto; } }
  .page-title-wrapper .page-copy {
    width: 36.7vw;
    margin: 5vw auto 0; }
    @media screen and (max-width: 767px) {
      .page-title-wrapper .page-copy {
        width: 70vw; } }

.h2-01 h2 {
  margin: 0; }

main {
  margin-bottom: 0; }

section {
  padding: 4vw 0; }
  @media screen and (max-width: 767px) {
    section {
      padding: 6vw 0; } }

.sec-01 .merit {
  padding-top: 1.5em; }
  @media print, screen and (min-width: 768px) {
    .sec-01 .merit {
      -js-display: flex;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-left: -4.5%; }
      .sec-01 .merit .merit-item {
        width: 45.2%;
        margin-left: 4.5%; }
        .sec-01 .merit .merit-item .inner {
          height: calc(100% - 3.5vw); } }
  .sec-01 .merit .merit-item {
    margin-bottom: 3.5vw; }
    @media screen and (max-width: 1199px) {
      .sec-01 .merit .merit-item {
        margin-bottom: 7vw; } }
    .sec-01 .merit .merit-item:before {
      content: "";
      width: 100%;
      height: 30px;
      background: url("../../img/bg_waku_before.png") no-repeat 0 0;
      background-size: 100% auto;
      display: block; }
    .sec-01 .merit .merit-item:after {
      content: "";
      width: 100%;
      height: 30px;
      background: url("../../img/bg_waku_after.png") no-repeat 0 100%;
      background-size: 100% auto;
      display: block; }
    .sec-01 .merit .merit-item .inner {
      background: url("../../img/bg_waku_body.png") repeat-y 0 center;
      background-size: 100% auto;
      padding: 1em 3.2vw 0; }
      @media screen and (max-width: 767px) {
        .sec-01 .merit .merit-item .inner {
          padding: 0 2em; } }
    .sec-01 .merit .merit-item .title h3 {
      text-align: center;
      margin: 0;
      color: #e8527a;
      font-family: goudy-old-style, serif;
      background: url("../../img/icon_deco02.png") no-repeat center bottom;
      background-size: 113px auto;
      padding-bottom: 0.7em;
      font-size: 30px;
      font-size: 3rem;
      line-height: 1; }
      @media screen and (min-width: 480px) and (max-width: 1200px) {
        .sec-01 .merit .merit-item .title h3 {
          font-size: 3.75px;
          font-size: 2.4rem; } }
    .sec-01 .merit .merit-item .img-copy {
      text-align: center; }

.sec-02 {
  padding-bottom: 6vw; }
  .sec-02 .price {
    padding: 0.92vw;
    margin-top: 1em;
    text-align: center;
    border: 5px solid #e8527a;
    background: #fff; }
    .sec-02 .price .price-container .item {
      padding: 0.9vw;
      border-top: 1px solid #d6d8e8; }
      .sec-02 .price .price-container .item dl {
        padding: 0;
        margin: 0; }
        .sec-02 .price .price-container .item dl dt {
          color: #323c8a;
          font-size: 20px;
          font-size: 2rem;
          font-weight: bold;
          line-height: 1.3; }
          @media screen and (min-width: 480px) and (max-width: 1200px) {
            .sec-02 .price .price-container .item dl dt {
              font-size: 2.5px;
              font-size: 1.6rem; } }
        .sec-02 .price .price-container .item dl dd {
          color: #e8527a;
          font-size: 26px;
          font-size: 2.6rem;
          font-weight: bold; }
          @media screen and (min-width: 480px) and (max-width: 1200px) {
            .sec-02 .price .price-container .item dl dd {
              font-size: 3.25px;
              font-size: 2.08rem; } }
          .sec-02 .price .price-container .item dl dd .price-no {
            font-size: 40px;
            font-size: 4rem; }
            @media screen and (min-width: 480px) and (max-width: 1200px) {
              .sec-02 .price .price-container .item dl dd .price-no {
                font-size: 5px;
                font-size: 3.2rem; } }
          @media screen and (max-width: 767px) {
            .sec-02 .price .price-container .item dl dd br {
              display: none; } }
      .sec-02 .price .price-container .item.first {
        border-top: none; }
    @media print, screen and (min-width: 768px) {
      .sec-02 .price .price-container {
        -js-display: flex;
        display: -webkit-flex;
        display: flex; }
        .sec-02 .price .price-container .item {
          width: 18%;
          border-left: 1px solid #d6d8e8;
          border-top: none; }
          .sec-02 .price .price-container .item.-long {
            width: 28%; }
          .sec-02 .price .price-container .item.first {
            border: none; } }
    .sec-02 .price .attention {
      margin: 0; }
    .sec-02 .price.other {
      border: none;
      margin-top: 0.5em; }
      .sec-02 .price.other .price-container .item dl dt {
        font-size: 22px;
        font-size: 2.2rem; }
        @media screen and (min-width: 480px) and (max-width: 1200px) {
          .sec-02 .price.other .price-container .item dl dt {
            font-size: 2.75px;
            font-size: 1.76rem; } }
      .sec-02 .price.other .price-container .item dl dd {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.5; }
        @media screen and (min-width: 480px) and (max-width: 1200px) {
          .sec-02 .price.other .price-container .item dl dd {
            font-size: 2.25px;
            font-size: 1.44rem; } }
        .sec-02 .price.other .price-container .item dl dd .price-no {
          font-size: 30px;
          font-size: 3rem; }
          @media screen and (min-width: 480px) and (max-width: 1200px) {
            .sec-02 .price.other .price-container .item dl dd .price-no {
              font-size: 3.75px;
              font-size: 2.4rem; } }
        .sec-02 .price.other .price-container .item dl dd p {
          color: #505050;
          margin: 0;
          font-size: 16px;
          font-size: 1.6rem; }
          @media screen and (min-width: 480px) and (max-width: 1200px) {
            .sec-02 .price.other .price-container .item dl dd p {
              font-size: 2px;
              font-size: 1.28rem; } }
      @media print, screen and (min-width: 768px) {
        .sec-02 .price.other .price-container .item.-item01 {
          width: 29%;
          border: none; }
        .sec-02 .price.other .price-container .item.-item02 {
          width: 29%; }
        .sec-02 .price.other .price-container .item.-item03 {
          width: 21%; }
        .sec-02 .price.other .price-container .item.-item04 {
          width: 21%; } }
  .sec-02 .ready {
    background: #fff;
    border: 3px solid #323c8a;
    padding: 2.8vw 4.2vw;
    margin-top: 2em; }
    .sec-02 .ready .title {
      margin: 0; }
      .sec-02 .ready .title h3 {
        margin: 0; }
    .sec-02 .ready .item .item01 {
      margin-top: 1em; }
      .sec-02 .ready .item .item01 .within {
        margin: 0; }
        .sec-02 .ready .item .item01 .within li {
          margin: 0 1em 0 0; }
    .sec-02 .ready .item .item02 {
      margin-top: 1em; }
      .sec-02 .ready .item .item02 p {
        margin: 0; }
    @media print, screen and (min-width: 768px) {
      .sec-02 .ready .item {
        -js-display: flex;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        .sec-02 .ready .item .item01 {
          width: 55%; }
        .sec-02 .ready .item .item02 {
          width: 42%; } }
  .sec-02 .title h3 {
    font-size: 28px;
    font-size: 2.8rem;
    text-align: center;
    color: #323c8a; }
    @media screen and (min-width: 480px) and (max-width: 1200px) {
      .sec-02 .title h3 {
        font-size: 3.5px;
        font-size: 2.24rem; } }
