#page_plan .under_title::before, #page_plan .under_title::after {
  pointer-events: none;
  content: "";
  display: block;
  position: absolute;
  z-index: 0; }

#page_plan .under_title::before {
  background-image: url(/assets/img/deco_facilities01.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: calc(589 / 1920 * 100vw);
  height: calc(570 / 1920 * 100vw);
  bottom: calc(80 / 1920 * 100vw);
  left: calc(-100 / 1920 * 100vw); }

#page_plan .under_title::after {
  background-image: url(/assets/img/deco_facilities02.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: calc(753 / 1920 * 100vw);
  height: calc(593 / 1920 * 100vw);
  bottom: calc(100 / 1920 * 100vw);
  right: calc(-300 / 1920 * 100vw); }

#page_plan .plan {
  padding-top: 80rem;
  padding-bottom: 210rem; }
  #page_plan .plan h2 {
    font-size: 60rem;
    font-weight: bold;
    text-align: center; }
  #page_plan .plan .content_wrap {
    display: flex;
    flex-wrap: wrap;
    /*justify-content: space-between;*/
    margin-top: 40rem; }
    #page_plan .plan .content_wrap .box a {
      display: block;
      background: #fff;
      width: 304rem;
      height: 400rem;
      padding: .1rem 0 0; }
      #page_plan .plan .content_wrap .box a .ph,
      #page_plan .plan .content_wrap .box a .description {
        transition: .2s linear; }
      #page_plan .plan .content_wrap .box a .ph {
        width: 264rem;
        margin: 20rem auto 0; }
      #page_plan .plan .content_wrap .box a .description {
        font-size: 18rem;
        width: 264rem;
        margin: 25rem auto 0;
        line-height: 1.8;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden; }
      #page_plan .plan .content_wrap .box a:hover .ph,
      #page_plan .plan .content_wrap .box a:hover .description {
        opacity: .7; }
    #page_plan .plan .content_wrap .box:not(:nth-of-type(3n)) {
      margin-right: 24rem; }
    #page_plan .plan .content_wrap .box:nth-of-type(n+4) {
      margin-top: 40rem; }
  #page_plan .plan .btn_wrap {
    margin-top: 80rem; }
    #page_plan .plan .btn_wrap .long_arrow a {
      font-size: 24rem;
      color: #fff;
      margin-left: auto;
      margin-right: auto;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #E57E24;
      width: 480rem;
      height: 82rem;
      box-shadow: 4rem 4rem 8rem 0 rgba(0, 0, 0, 0.16); }
      #page_plan .plan .btn_wrap .long_arrow a::after {
        width: 75rem;
        top: 38rem;
        right: 20rem; }
      #page_plan .plan .btn_wrap .long_arrow a:hover {
        background-color: #f4801b; }

#page_plan footer::before {
  pointer-events: none;
  z-index: 0;
  content: "";
  display: block;
  position: absolute;
  background-image: url(/assets/img/deco_conference_room03.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: calc(988 / 1920 * 100vw);
  height: calc(1070 / 1920 * 100vw);
  top: calc(810 / 1920 * -100vw);
  left: calc(130 / 1920 * -100vw);
  transform: rotate(54deg); }

@media screen and (max-width: 1500px) {
  #page_plan .under_title::after {
    bottom: calc(200 / 1920 * 100vw); }
  #page_plan footer::before {
    left: calc(250 / 1920 * -100vw); } }

@media screen and (max-width: 767px) {
  #page_plan .under_title::before {
    background-size: 90%;
    width: calc(589 / 750 * 100vw);
    height: calc(570 / 750 * 100vw);
    top: -80rem;
    left: auto;
    right: -160rem;
    transform: rotate(40deg); }
  #page_plan .under_title::after {
    background-size: 100%;
    width: calc(753 / 750 * 100vw);
    height: calc(593 / 750 * 100vw);
    bottom: -110rem;
    right: -5rem;
    transform: rotate(20deg); }
  #page_plan .plan {
    padding-top: 40rem;
    padding-bottom: 150rem; }
    #page_plan .plan h2 {
      font-size: 35rem; }
    #page_plan .plan .content_wrap {
      display: block; }
      #page_plan .plan .content_wrap .box a {
        height: auto;
        width: 100%;
        padding: .1rem 0 20rem; }
        #page_plan .plan .content_wrap .box a .ph {
          width: 90%;
          margin: 20rem auto 0; }
        #page_plan .plan .content_wrap .box a .description {
          font-size: 16rem;
          width: 90%;
          margin: 20rem auto 0; }
      #page_plan .plan .content_wrap .box:not(:nth-of-type(3n)) {
        margin-right: 0; }
      #page_plan .plan .content_wrap .box:nth-of-type(n+4) {
        margin-top: 0; }
      #page_plan .plan .content_wrap .box + .box {
        margin-top: 30rem; }
    #page_plan .plan .btn_wrap {
      margin-top: 38rem; }
      #page_plan .plan .btn_wrap .long_arrow a {
        font-size: 16rem;
        width: 255rem;
        height: 44rem; }
        #page_plan .plan .btn_wrap .long_arrow a::after {
          width: 35rem;
          top: 21rem;
          right: 10rem; }
  #page_plan footer::before {
    background-size: 70%;
    width: calc(878 / 750 * 100vw);
    height: calc(506 / 750 * 100vw);
    top: -175rem;
    left: 0rem;
    transform: rotate(35deg); } }

/*# sourceMappingURL=plan.css.map */