.page-ttl {
  text-align: center; }
  .page-ttl svg {
    fill: #FFBD5A;
    width: 80px; }

.point {
  overflow: hidden; }
  .point .point-ttl-left,
  .point .point-ttl-right {
    position: relative;
    text-align: center;
    color: #333333;
    margin-top: 55px; }
    @media (min-width: 1024px) {
      .point .point-ttl-left,
      .point .point-ttl-right {
        margin-bottom: 60px;
        margin-top: 100px; } }
    .point .point-ttl-left h2,
    .point .point-ttl-right h2 {
      font-weight: 300;
      color: #CC9966;
      font-size: 1.8rem;
      z-index: 1;
      position: relative; }
      @media (min-width: 1024px) {
        .point .point-ttl-left h2,
        .point .point-ttl-right h2 {
          font-size: 2.5rem; } }
    .point .point-ttl-left .back-text,
    .point .point-ttl-right .back-text {
      position: absolute;
      white-space: nowrap;
      font-size: 7rem;
      color: #F4F5F7;
      line-height: 1;
      z-index: 0;
      top: -35px;
      width: 100%;
      overflow: hidden; }
      @media (min-width: 1024px) {
        .point .point-ttl-left .back-text,
        .point .point-ttl-right .back-text {
          font-size: 11rem;
          top: -60px; } }
      .point .point-ttl-left .back-text.en-main,
      .point .point-ttl-right .back-text.en-main {
        font-family: 'Fjalla One', sans-serif;
        font-weight: 400; }
  .point .point-ttl-left .back-text {
    left: 0;
    text-align: left; }
  .point .point-ttl-right .back-text {
    right: 0;
    text-align: right; }
  .point .point-wrap {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 30px 0; }
    @media (min-width: 1024px) {
      .point .point-wrap {
        align-items: flex-start;
        justify-content: center;
        flex-direction: row;
        margin-bottom: 100px; } }
    @media (min-width: 1024px) {
      .point .point-wrap.reverse {
        flex-direction: row-reverse; } }
    .point .point-wrap div {
      width: 90%;
      margin: 0 auto; }
      @media (min-width: 1024px) {
        .point .point-wrap div {
          width: 50%; } }
      .point .point-wrap div.transform {
        background-color: #EBDCA9;
        transform: rotate(-5deg);
        transform-origin: center center; }
        .point .point-wrap div.transform img {
          width: 100%;
          max-height: 400px;
          object-fit: cover;
          transform: rotate(5deg);
          transform-origin: center center; }
      .point .point-wrap div.point-info {
        padding: 20px 5px; }
        @media (min-width: 1024px) {
          .point .point-wrap div.point-info {
            padding: 10px 30px; } }
        .point .point-wrap div.point-info h3 {
          font-size: 1.8rem;
          margin-bottom: 5px; }
        .point .point-wrap div.point-info p {
          font-size: 1.4rem;
          margin-bottom: 20px; }

.comingsoon {
  padding-top: 10px;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 10; }
  .comingsoon:before {
    text-align: center;
    display: inline;
    top: 30%;
    width: 100%;
    content: 'coming soon!';
    position: absolute;
    transform: rotate(-20deg);
    transform-origin: center center;
    font-weight: 900;
    color: white;
    font-size: 4rem;
    z-index: 99; }
    @media (min-width: 1024px) {
      .comingsoon:before {
        transform: rotate(-10deg);
        font-size: 12rem; } }
  .comingsoon:after {
    content: '';
    position: absolute;
    top: 0;
    background: rgba(0, 0, 0, 0.3);
    display: block;
    width: 100%;
    height: 100%; }
  .comingsoon .point-ttl-left h2,
  .comingsoon .point-ttl-right h2 {
    z-index: 1; }

.recommend {
  position: relative;
  background: #EBDCA9;
  padding-top: 25px;
  padding-bottom: 30px;
  margin-top: 50px; }
  @media (min-width: 1024px) {
    .recommend {
      padding-top: 50px;
      padding-bottom: 50px; } }
  .recommend h2 {
    text-align: center;
    font-weight: 300;
    font-size: 1.8rem;
    z-index: 1;
    position: relative;
    margin-bottom: 15px; }
    @media (min-width: 1024px) {
      .recommend h2 {
        font-size: 2.5rem;
        margin-bottom: 70px; } }
  .recommend .back-text {
    right: 0;
    text-align: right;
    position: absolute;
    white-space: nowrap;
    font-size: 7rem;
    color: #F4F5F7;
    line-height: 1;
    z-index: 0;
    top: -5px;
    width: 100%;
    overflow: hidden; }
    @media (min-width: 1024px) {
      .recommend .back-text {
        font-size: 11rem;
        top: -5px; } }
    .recommend .back-text.en-main {
      font-family: 'Fjalla One', sans-serif;
      font-weight: 400; }
  .recommend > ul {
    display: flex;
    flex-direction: column;
    width: 90vw;
    margin: 0 auto; }
    @media (min-width: 1024px) {
      .recommend > ul {
        flex-direction: row;
        justify-content: space-between;
        width: 90vw;
        column-gap: 30px; } }
    .recommend > ul > li {
      display: flex;
      align-items: center;
      flex-direction: column;
      width: 100%;
      margin-bottom: 20px; }
      @media (min-width: 1024px) {
        .recommend > ul > li {
          width: calc(100% / 4);
          margin-bottom: 0; } }
      .recommend > ul > li .image {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        width: 140px;
        height: 140px;
        background: white;
        border-radius: 300px;
        text-align: center; }
        .recommend > ul > li .image img {
          width: 85px;
          height: auto;
          margin: 0 auto; }
      .recommend > ul > li h3 {
        text-align: center; }
      .recommend > ul > li h4 {
        text-align: center; }
  .recommend .reco-wrap {
    background: white;
    padding: 70px 10px 20px;
    margin-top: -90px;
    width: 100%; }
    .recommend .reco-wrap h3 {
      position: relative;
      z-index: 2;
      margin-bottom: 10px; }
      .recommend .reco-wrap h3 span {
        background: linear-gradient(transparent 50%, #ff6 50%);
        line-height: 1.4;
        display: inline-block;
        margin: 0 auto; }
    .recommend .reco-wrap h4 {
      margin-bottom: 10px; }
    .recommend .reco-wrap ul {
      font-size: 1.3rem;
      padding: 0 15px; }
      .recommend .reco-wrap ul li {
        text-align: left; }
        .recommend .reco-wrap ul li:before {
          margin-right: 5px;
          content: "\f00c";
          font: var(--fa-font-solid); }

.bg-skew {
  width: 100%;
  margin: 80px 0;
  padding: 60px 0;
  position: relative;
  top: 0; }
  .bg-skew.blue:before {
    background-color: #DDEAF4; }
  .bg-skew.emerald:before {
    background-color: #CBE7DB; }
  .bg-skew.beige:before {
    background-color: #f6e6c2; }
  .bg-skew:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transform: skewY(-5deg);
    z-index: -1; }
  .bg-skew h2 {
    text-align: center;
    font-weight: 300;
    font-size: 1.8rem;
    z-index: 1;
    position: relative;
    margin-bottom: 15px;
    margin-top: -18px; }
    @media (min-width: 1024px) {
      .bg-skew h2 {
        font-size: 2.5rem;
        margin-bottom: 30px;
        margin-top: 22px; } }
  .bg-skew .back-text {
    right: 0;
    text-align: right;
    position: absolute;
    white-space: nowrap;
    font-size: 7rem;
    color: #F4F5F7;
    line-height: 1;
    z-index: 0;
    top: 15px;
    width: 100%;
    overflow: hidden; }
    @media (min-width: 1024px) {
      .bg-skew .back-text {
        font-size: 11rem;
        top: 20px; } }
    .bg-skew .back-text.en-main {
      font-family: 'Fjalla One', sans-serif;
      font-weight: 400; }
  .bg-skew .text {
    text-align: center;
    margin-bottom: 20px; }
  .bg-skew > div {
    width: 90vw;
    margin: 0 auto; }
    @media (min-width: 1024px) {
      .bg-skew > div {
        width: 90vw; } }
    .bg-skew > div h3 {
      font-size: 2.5rem;
      margin-bottom: 15px; }
      .bg-skew > div h3 + p {
        margin-top: -10px;
        margin-bottom: 15px;
        font-size: 1.3rem; }
    .bg-skew > div ul {
      display: flex;
      flex-direction: column;
      width: 90vw;
      margin: 0 auto; }
      @media (min-width: 1024px) {
        .bg-skew > div ul {
          flex-direction: row;
          justify-content: space-between;
          width: 90vw;
          column-gap: 50px; } }
      .bg-skew > div ul li {
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 100%; }
        @media (min-width: 1024px) {
          .bg-skew > div ul li {
            width: calc(100% / 4);
            margin-bottom: 0; } }
        .bg-skew > div ul li img {
          margin-bottom: 15px;
          width: 60%; }
          @media (min-width: 1024px) {
            .bg-skew > div ul li img {
              width: 100%; } }
        .bg-skew > div ul li h4 {
          font-size: 1.6rem;
          margin-bottom: 10px; }
        .bg-skew > div ul li p {
          font-size: 1.3rem;
          padding: 0 5px;
          margin-bottom: 40px; }
          @media (min-width: 1024px) {
            .bg-skew > div ul li p {
              margin-bottom: 40px;
              padding: 0 10px; } }
          .bg-skew > div ul li p a {
            display: inline; }
          .bg-skew > div ul li p span {
            font-size: 1.1rem; }
    .bg-skew > div .youtube {
      width: 100%;
      aspect-ratio: 16 / 9; }
      @media (min-width: 1024px) {
        .bg-skew > div .youtube {
          width: 60%;
          margin: 0 auto; } }
    .bg-skew > div .youtube iframe {
      width: 100%;
      height: 100%; }
    .bg-skew > div .brdr-dot {
      border-bottom: 1px dashed #333333;
      margin: 80px 10vw; }

.area {
  width: 90vw;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media (min-width: 1024px) {
    .area {
      width: 80vw; } }
  .area h3 {
    font-size: 2.5rem;
    margin-bottom: 30px; }
    @media (min-width: 1024px) {
      .area h3 {
        font-size: 3.2rem; } }
    .area h3 + p {
      font-size: 1.4rem;
      margin-bottom: 50px;
      text-align: center; }
      @media (min-width: 1024px) {
        .area h3 + p {
          font-size: 1.5rem; } }
  .area img {
    width: 100%;
    margin-bottom: 30px; }
    @media (min-width: 1024px) {
      .area img {
        width: 60%; } }
  .area h4 {
    font-size: 3rem;
    font-weight: normal; }
    @media (min-width: 1024px) {
      .area h4 {
        font-size: 4rem; } }
    .area h4 + p {
      text-align: center;
      margin: 15px 0; }
      .area h4 + p + p {
        font-size: 1.4rem; }
        @media (min-width: 1024px) {
          .area h4 + p + p {
            font-size: 1.5rem; } }
  .area .btn-box {
    margin: 30px auto; }

/*# sourceMappingURL=guide.css.map */
