* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  
  body {
    color: #231815;
    overflow-x: hidden;
  }
  
  img {
    max-width: 100%;
    height: auto;
  }
  
  a {
    color: #231815;
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  a:hover {
    opacity: 0.7;
  }
  
  a:focus {
    outline: none;
  }
  
  .f10 {
    font-size: 10px;
  }
  
  .f12 {
    font-size: 12px;
  }
  
  .f13 {
    font-size: 13px;
  }
  
  .f14 {
    font-size: 14px;
  }
  
  .f15 {
    font-size: 15px;
    font-size: 1.098vw;
  }
  
  .f16 {
    font-size: 16px;
    font-size: 1.1713vw;
  }
  
  .f17 {
    font-size: 17px;
    font-size: 1.24451vw;
  }
  
  .f18 {
    font-size: 18px;
    font-size: 1.31772vw;
  }
  
  .f19 {
    font-size: 19px;
    font-size: 1.39092vw;
  }
  
  .f20 {
    font-size: 20px;
    font-size: 1.46413vw;
  }
  
  .f21 {
    font-size: 21px;
    font-size: 1.53734vw;
  }
  
  .f22 {
    font-size: 22px;
    font-size: 1.61054vw;
  }
  
  .f23 {
    font-size: 23px;
    font-size: 1.68375vw;
  }
  
  .f24 {
    font-size: 24px;
    font-size: 1.75695vw;
  }
  
  .f25 {
    font-size: 25px;
    font-size: 1.83016vw;
  }
  
  .f26 {
    font-size: 26px;
    font-size: 1.90337vw;
  }
  
  .f27 {
    font-size: 27px;
    font-size: 1.97657vw;
  }
  
  .f28 {
    font-size: 28px;
    font-size: 2.04978vw;
  }
  
  .f30 {
    font-size: 30px;
    font-size: 2.19619vw;
  }
  
  .f32 {
    font-size: 32px;
    font-size: 2.34261vw;
  }
  
  .f34 {
    font-size: 34px;
    font-size: 2.48902vw;
  }
  
  .f35 {
    font-size: 35px;
    font-size: 2.56223vw;
  }
  
  .f37 {
    font-size: 37px;
    font-size: 2.70864vw;
  }
  
  .f40 {
    font-size: 40px;
    font-size: 2.92826vw;
  }
  
  .f41 {
    font-size: 41px;
    font-size: 3.00146vw;
  }
  
  .f43 {
    font-size: 43px;
    font-size: 3.14788vw;
  }
  
  .f45 {
    font-size: 45px;
    font-size: 3.29429vw;
  }
  
  .f47 {
    font-size: 47px;
    font-size: 3.4407vw;
  }
  
  .f48 {
    font-size: 48px;
    font-size: 3.51391vw;
  }
  
  .f49 {
    font-size: 49px;
    font-size: 3.58712vw;
  }
  
  .f50 {
    font-size: 50px;
    font-size: 3.66032vw;
  }
  
  .f54 {
    font-size: 54px;
    font-size: 3.95315vw;
  }
  
  .f60 {
    font-size: 60px;
    font-size: 4.39239vw;
  }
  
  .f67 {
    font-size: 67px;
    font-size: 4.90483vw;
  }
  
  .f70 {
    font-size: 70px;
    font-size: 5.12445vw;
  }
  
  .f74 {
    font-size: 74px;
    font-size: 5.41728vw;
  }

  .f75 {
    font-size: 75px;
    font-size: 5.49045vw;
  }
  
  .f80 {
    font-size: 80px;
    font-size: 5.85652vw;
  }
  
  .f87 {
    font-size: 87px;
    font-size: 6.36896vw;
  }
  
  .f90 {
    font-size: 90px;
    font-size: 6.58858vw;
  }
  
  .f100 {
    font-size: 100px;
    font-size: 7.32064vw;
  }
  
  .f111 {
    font-size: 111px;
    font-size: 8.12592vw;
  }
  
  .f120 {
    font-size: 120px;
    font-size: 8.78477vw;
  }
  
  .f138 {
    font-size: 138px;
    font-size: 10.10249vw;
  }
  
  .f150 {
    font-size: 150px;
    font-size: 10.98097vw;
  }
  
  .f180 {
    font-size: 180px;
    font-size: 13.17716vw;
  }
  
  .f200 {
    font-size: 200px;
    font-size: 14.64129vw;
  }
  
  .f250 {
    font-size: 250px;
    font-size: 18.30161vw;
  }
  
  @media screen and (min-width: 1367px) {
    .f220 {
      font-size: 220px;
    }
    .f212 {
      font-size: 212px;
    }
    .f210 {
      font-size: 210px;
    }
    .f200 {
      font-size: 200px;
    }
    .f183 {
      font-size: 183px;
    }
    .f180 {
      font-size: 180px;
    }
    .f160 {
      font-size: 160px;
    }
    .f150 {
      font-size: 150px;
    }
    .f145 {
      font-size: 145px;
    }
    .f140 {
      font-size: 140px;
    }
    .f120 {
      font-size: 120px;
    }
    .f95 {
      font-size: 95px;
    }
    .f90 {
      font-size: 90px;
    }
    .f80 {
      font-size: 80px;
    }
    .f74 {
        font-size: 74px;
    }
    .f70 {
      font-size: 70px;
    }
    .f65 {
      font-size: 65px;
    }
    .f62 {
      font-size: 62px;
    }
    .f60 {
      font-size: 60px;
    }
    .f58 {
      font-size: 58px;
    }
    .f54 {
      font-size: 54px;
    }
    .f53 {
      font-size: 53px;
    }
    .f52 {
      font-size: 52px;
    }
    .f50 {
      font-size: 50px;
    }
    .f48 {
      font-size: 48px;
    }
    .f47 {
      font-size: 46px;
    }
    .f46 {
      font-size: 46px;
    }
    .f45 {
      font-size: 45px;
    }
    .f42 {
      font-size: 42px;
    }
    .f40 {
      font-size: 40px;
    }
    .f38 {
      font-size: 38px;
    }
    .f37 {
      font-size: 37px;
    }
    .f36 {
      font-size: 36px;
    }
    .f35 {
      font-size: 35px;
    }
    .f34 {
      font-size: 35px;
    }
    .f33 {
      font-size: 35px;
    }
    .f32 {
      font-size: 32px;
    }
    .f30 {
      font-size: 30px;
    }
    .f28 {
        font-size: 28px;
    }
    .f26 {
      font-size: 26px;
    }
    .f25 {
      font-size: 25px;
    }
    .f24 {
      font-size: 24px;
    }
    .f22 {
      font-size: 22px;
    }
    .f20 {
      font-size: 20px;
    }
    .f18 {
      font-size: 18px;
    }
    .f16 {
      font-size: 16px;
    }
    .f15 {
      font-size: 15px;
    }
    .f14 {
      font-size: 14px;
    }
    .f13 {
      font-size: 13px;
    }
    .f12 {
      font-size: 12px;
    }
    .f11 {
      font-size: 11px;
    }
    .f10 {
      font-size: 10px;
    }
  }
  
  @font-face {
    font-family: 'demo';
    src: url("../fonts/demo.woff") format("woff"), url("../fonts/demo.eot") format("eot");
  }
  
  @font-face {
    font-family: 'crimson';
    src: url("../fonts/crimson.woff") format("woff"), url("../fonts/crimson.eot") format("eot");
  }
  
  .demo {
    font-family: 'demo';
    font-style: normal;
    font-weight: 400;
  }
  
  
  .crimson {
    font-family: 'crimson';
    font-style: normal;
    font-weight: 400;
  }
  
  
  .she {
    font-family: sheila;
    font-weight: 400;
    font-style: normal;
  }

  .tsu {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal;
  }
  
  .dul {
    font-family: dulcinea, sans-serif;
    font-weight: 400;
    font-style: normal;
  }
  
  .min {
    font-family: fot-tsukuaoldmin-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
  }
  
  .fai {
    font-family: fairwater-script, sans-serif;
    font-weight: 700;
    font-style: normal;
  }
  
  .b {
    font-weight: 700;
  }
  
  .r {
    font-weight: 500;
  }
  
  .bg_box, .main .facilities .container .content.hight .flex_box .box .img.thm, .main .seismic .third .g_box.left::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .header .mv_img,
  .header .mv .btn_box a .img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .concept .box .right h3 span.bar::before, .main .concept .box::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .map .top h2::before,
  .main .map .top p .hog::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .land .top p span::before,
  .main .land .land_box a.f30::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .model h2 span::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .model .bg .model_content .right .g_sec .mds h3::before,
  .main .model .bg .model_content .right .g_sec .flex_box .img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .model .bg .sub_content .first .right .box .img,
  .main .model .bg .vr_block a:before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .facilities .container .content .list li .img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .location .bg .google_map .pad p.f25::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .location .bg .content .flex .box .img,
  .main .location .bg .content .flex .box .view:before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .main .outline .document .flex .content a::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .main .outline .document .flex .content a.no_event::before {
    display: none;
  }

  .main .outline .document .flex .content div::before {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .main .outline .document .flex .content div.no_event::before {
    display: none;
  }
  


  .modal__content .modal_slider li div.con .img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  
  .pad {
    padding-left: 14.5681vw;
    padding-right: 14.5681vw;
  }
  
  .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  
  .header,
  .main,
  .footer {
    font-family: fot-tsukuaoldmin-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
  }
  
  .header .h_top {
    top: 0;
    position: fixed;
    width: 100%;
    background-color: #ffffffc9;
    padding: 1% 7.3vw;
    z-index: 99;
  }
  
  .header .h_top .icon {
    position: absolute;
    text-align: center;
    top: 13%;
    width: 25%;
    z-index: 1;
  }
  
  .header .h_top .icon a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  
  .header .h_top .icon .img {
    width: 21.8%;
    margin-right: 1vw;
  }
  
  .header .h_top .icon .text span {
    letter-spacing: 0.1em;
  }
  
  .header .h_top .icon .text p {
    letter-spacing: 0.18em;
    line-height: 1.366;
  }
  
  .header .h_top .nav {
    padding: 1.563% 0;
  }
  
  .header .h_top .nav .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  
  .header .h_top .nav .list li {
    text-align: center;
    margin-right: 4.3%;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: relative;
  }
  
  .header .h_top .nav .list li .f21 {
    color: #3FAF78;
    margin-bottom: 6px;
  }
  
  .header .h_top .nav .list li span.f13 {
    letter-spacing: 0.18em;
  }
  
  .header .h_top .nav .list li:last-child {
    margin-right: 0;
  }
  
  .header .h_top .nav .list li::before {
    content: '';
    position: absolute;
    bottom: -25%;
    left: 0;
    width: 100%;
    height: 1px;
    background: #3FAF78;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
  }
  
  .header .h_top .nav .list li:hover::before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  
  .header .mv {
    position: relative;
    padding-left: 14.6412vw;
  }
  
  .header .mv_img {
    padding: 29.1599% 0;
  }
  
  .header .mv .btn_box {
    position: fixed;
    right: 2.5%;
    top: 20%;
    z-index: 99;
  }
  
  .header .mv .btn_box a {
    color: #fff;
    display: block;
    background-color: #58b76a;
    border-radius: 50%;
    width: 100px;
    padding: 18.2px 0;
    text-align: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .header .mv .btn_box a:first-child {
    border: 1px solid #58b76a;
  }
  
  .header .mv .btn_box a .img {
    width: 32.5px;
    height: 41.58px;
    margin: 0 auto;
    margin-bottom: 7%;
    background-image: url(../img/document_icon.svg);
  }
  
  .header .mv .btn_box img {
    width: 100px;
    margin-top: 15px;
  }

  .header .mv .btn_box a:hover {
    background-color: #fff;
    color: #58b76a;
    opacity: 1;
  }
  
  .header .mv .btn_box a:hover .img {
    background-image: url(../img/document_icon_c.svg);
  }
  
  .header .mv .btn_box a:last-child {
    margin-top: 15%;
    padding: 20.1px 0;
    background-color: #3FAF78;
    border: 1px solid #3FAF78;
  }
  
  .header .mv .btn_box a:last-child .img {
    width: 48.58px;
    height: 37.8px;
    background-image: url(../img/reserve.png);
  }
  
  .header .mv .btn_box a:last-child:hover {
    background-color: #fff;
    color: #3FAF78;
  }
  
  .header .mv .btn_box a:last-child:hover .img {
    background-image: url(../img/reserve_icon_c.svg);
  }
  
  
  .header .mv .btn_box a.no_event {
    margin-top: 15%;
    padding: 20.1px 0;
    background-color: #3FAF78;
    border: 1px solid #3FAF78;
  }

  .header .mv .btn_box a.no_event .img {
      width: 48.58px;
        height: 37.8px;
        background-image: url(../img/reserve.png);
  }

  .header .mv .btn_box a.no_event:hover .img {
    background-image: url(../img/reserve_on.png);
    opacity: 1;
  }

  .header .mv .btn_box a.no_event:hover {
    color: #3FAF78;
    background-color: #fff;  
    border: 1px solid #3FAF78; 
    opacity: 1;
  }
  
  
  /*
  .header .mv .btn_box a.no_event .img {
    width: 48.55px;
    height: 37.8px;
    margin: 0 auto;
    margin-bottom: 7%;
    background-image: url(../img/reserve.png);
  }
  
  .header .mv .btn_box a.no_event:hover .img {
    background-image: url(../img/reserve_w.png);
    opacity: 1;
  }
  */
  
  .header .mv .btn_box a.br768on {
      
    display: none;
  }
  
  .header .mv .text-box {
    display: inline-block;
    position: absolute;
    bottom: 10%;
    left: 0;
    letter-spacing: 0.3em;
  }
  
  .header .mv .text-box p {
    background-color: #3FAF78;
    margin-bottom: 3.5%;
    color: #fff;
    padding: 0.4rem;
    padding-left: 7.3vw;
  }
  
  .header .mv .text-box p:first-child {
    display: inline-block;
  }
  
  .header .mv .text-box p:last-child {
    margin-bottom: 0;
  }
  
  .header .mv .mv_text {
    position: absolute;
    top: 30%;
    left: 5%;
    width: 30%;
    color: #231815;
    -webkit-transform: rotate(340deg);
    transform: rotate(340deg);
  }
  
  .header .mv .mv_text span {
    display: block;
    text-align: right;
  }
  
  .main .notice {
    padding: 1.32% 0;
    padding-left: 7.32065vw;
    padding-right: 5.71vw;
    background-color: #c9b78e;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    flex-direction: column;
    justify-content: center;
  }
  
  .main .notice .notice_mds {
    padding: 0.526%;
    text-align: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 12.9%;
    flex: 0 0 12.9%;
    margin-top: 10px;
    color: #c9b78e;
    background-color: #fff;
  }
  
  .main .notice .season {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
  }
  
  .main .notice .season p.f26 {
    line-height: 1.731;
  }
  
  .main .notice p.text {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    line-height: 1.267;
  }

  .main .notice .left {
    letter-spacing: 0;
    color: #C9B78E;
    background-color: #fff;
    padding: 12px 15px 10px;
    width: 150px;
    max-width: 100%;
    text-align: center;
  }

  .main .notice .center {
    color: #fff;
    width: 215px;
    max-width: 100%;
    margin-left: 1%;
  }

  .main .notice .center span {
      display: block;
      margin-top: 5px;
  }

  .main .notice .right {
    letter-spacing: 0;
    line-height: calc(19 / 15);
    width: 772px;
    max-width: 100%;
    margin-left: 1.5%;
  }

  .main .youtube {
    text-align: center;
    margin-top: 5%;
  }

  .main .youtube iframe {
    width: 70%;
    height: 40vw;
  }

  @media screen and (max-width: 480px) {
    .main .youtube {
      margin-top: 10%;
    }
    .main .youtube iframe {
      width: 90%;
      height: 51vw;
    }
  }
  
  .main .concept {
    margin-top: 9.517%;
  }
  
  .main .concept .box {
    padding-left: 7.32067vw;
    padding-right: 12.2vw;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 4%;
    position: relative;
  }
  
  .main .concept .box .left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 45%;
    flex: 0 0 45%;
    margin-right: 5.63%;
  }
  
  .main .concept .box .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 49.37%;
    flex: 0 0 49.37%;
    position: relative;
  }
  
  .main .concept .box .right h2 {
    color: #000000;
    position: relative;
  }
  
  .main .concept .box .right h2::before {
    position: absolute;
    content: '';
    background-color: #231815;
    height: 1px;
    width: 19vw;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  
  .main .concept .box .right .sub {
    margin-top: 5%;
    padding-left: 5%;
  }
  
  .main .concept .box .right h3 {
    line-height: 1.75;
  }
  
  .main .concept .box .right h3 span.bar {
    position: relative;
    color: #3FAF78;
  }
  
  .main .concept .box .right h3 span.bar::before {
    position: absolute;
    content: '';
    background-image: url(../img/border_bg.png);
    top: 70%;
    width: 100%;
    padding: 2% 0;
    z-index: -1;
  }
  
  .main .concept .box .right p {
    line-height: 1.824;
    letter-spacing: 0.05em;
    margin-top: 5%;
  }
  
  .main .concept .box::before {
    content: '';
    position: absolute;
    background-image: url(../img/mds_bg.jpg);
    padding: 13.4vw 0;
    width: 30.31vw;
    left: 0;
    z-index: -1;
    top: -6%;
  }
  
  .main .concept .box:last-child {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-left: 10vw;
    padding-right: 7.32067vw;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-bottom: 0;
  }
  
  .main .concept .box:last-child .left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 43%;
    flex: 0 0 43%;
    margin-right: 0;
    margin-left: 3%;
  }
  
  .main .concept .box:last-child .left .img {
    margin-left: -2vw;
  }
  
  .main .concept .box:last-child .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 54%;
    flex: 0 0 54%;
  }
  
  .main .concept .box:last-child .right::before {
    top: auto;
    right: auto;
    bottom: -8%;
    left: -2%;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  
  .main .concept .box:last-child .right h2 {
    margin-right: 5vw;
  }
  
  .main .concept .box:last-child .right h2::before {
    width: 16vw;
  }
  
  .main .concept .box:last-child .right h3 {
    letter-spacing: 0.04em;
    color: #3FAF78;
  }
  
  .main .concept .box:last-child .right h3 span.f45 {
    position: relative;
  }
  
  .main .concept .box:last-child .right h3 span.f45 .ruby {
    position: absolute;
    left: 10px;
    right: 0;
    text-align: center;
    letter-spacing: 0.84em;
    margin: auto;
    bottom: 100%;
    color: #231815;
  }
  
  .main .concept .box:last-child .right h4 {
    letter-spacing: 0.04em;
    line-height: 1.68;
  }
  
  .main .concept .box:last-child::before {
    right: 0;
    left: auto;
    top: 23%;
  }
  
  .main .map {
    margin-top: 10%;
  }
  
  .main .map .top {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .main .map .top h2 {
    position: relative;
    padding-left: 11.76vw;
    line-height: 1.1;
    margin-top: -11%;
  }
  
  .main .map .top h2::before {
    position: absolute;
    content: '';
    background-image: url(../img/mds_bg.jpg);
    width: 29.283vw;
    height: 7.687vw;
    top: 37%;
    margin: auto;
    z-index: -1;
    left: 0;
  }
  
  .main .map .top p {
    padding-right: 14.5681vw;
    letter-spacing: 0.1em;
    line-height: 1.75;
    text-align: right;
  }
  
  .main .map .top p span.pp {
    display: block;
    position: relative;
    right: 60%;
  }
  
  .main .map .top p .hog {
    position: relative;
  }
  
  .main .map .top p .hog::before {
    position: absolute;
    content: '';
    background-image: url(../img/border_bg.png);
    top: 80%;
    width: 100%;
    padding: 5% 0;
    z-index: -1;
    background-size: 100% 100%;
  }
  
  .main .map .img {
    margin-top: 3%;
    text-align: center;
  }
  
  .main .land {
    margin-top: 9%;
  }
  
  .main .land .top {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .main .land .top h2 {
    color: #000000;
  }
  
  .main .land .top p {
    color: #3FAF78;
    margin-left: 3.514vw;
    letter-spacing: 0.08em;
  }
  
  .main .land .top p span {
    position: relative;
  }
  
  .main .land .top p span::before {
    width: 35px;
    content: '';
    position: absolute;
    background-image: url(../img/top_point.svg);
    top: -13px;
    padding: 6px 0;
    margin: auto;
    left: -10%;
    right: 0;
  }
  
  .main .land .land_box {
      /*
    margin-top: -3%;
    */
    margin-top: 5%;
  }
  
  .main .land .land_box .flex {
      /*
    padding-right: 7.32067vw;
    */
    padding-right: 14.8vw;
    align-items: center;
  }
  
  .main .land .land_box .left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 67.3%;
    flex: 0 0 67.3%;
    /*
    margin-top: 15%;
    */
  }
  
  .main .land .land_box .left h3 {
    line-height: 1.8;
  }
  
  .main .land .land_box .left p.f17 {
    line-height: 1.824;
    margin-top: 4%;
  }
  
  .main .land .land_box .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 31.2%;
    flex: 0 0 31.2%;
  }

  .main .land .land_box .right .f22 {
      line-height: calc(33 / 22);
      letter-spacing: 0;
      color: #3FAF78;
      padding: 33px 0px 35px 0px;
      border: 1px solid #3FAF78;
      text-align: center;
  }

  .main .land .land_box .right .f22:last-child {
      margin-top: 22px;
  }
  
  .main .land .land_box a.f30 {
    display: block;
    width: 33.895%;
    margin: 0 auto;
    background-color: #3FAF78;
    letter-spacing: 0.05em;
    margin-top: 2%;
    text-align: center;
    color: #fff;
    position: relative;
    padding: 1.575% 0;
    padding-right: 2vw;
  }
  
  .main .land .land_box a.f30::before {
    position: absolute;
    content: '';
    background-image: url(../img/btn_arrow0.svg);
    width: 35px;
    height: 8px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 3%;
  }
  
  .main .land .land_second {
    margin-top: 7%;
    position: relative;
    padding-right: 0;
  }
  
  .main .land .land_second .flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
            align-items: center;
  }
  
  .main .land .land_second .flex .left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 63%;
            flex: 0 0 63%;
    margin-left: 4%;
  }
  
  .main .land .land_second .flex .right {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33%;
            flex: 0 0 33%;
  }
  
  .main .land .land_second .flex .right .txt_box {
    line-height: 1.5;
    border: 1px solid #3FAF78;
    text-align: center;
    color: #3FAF78;
    padding: 8.57% 0;
  }
  
  .main .land .land_second .flex .right .txt_box:last-child {
    margin-top: 8.3%;
    display: none;
  }
  
  .main .model {
    margin-top: 9.2%;
  }
  
  .main .model h2 {
    text-align: center;
    color: #000000;
  }
  
  .main .model h2 span {
    position: relative;
  }
  
  .main .model h2 span::before {
    position: absolute;
    content: '';
    background-image: url(../img/point2.svg);
    width: 37px;
    height: 13px;
    bottom: 80%;
    right: 12%;
  }
  
  .main .model .bg {
    background-color: #f6faf8;
    padding: 9.737% 0;
    margin-top: -6%;
  }
  
  .main .model .bg .num_box {
    background-color: #fff;
    padding: 2% 3vw 3%;
    margin-bottom: 12.2%;
  }
  
  .main .model .bg .num_box .top {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .main .model .bg .num_box .top .left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 22%;
            flex: 0 0 22%;
    margin-right: 2%;
  }
  
  .main .model .bg .num_box .top .left p.f70 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    color: #3FAF78;
  }
  
  .main .model .bg .num_box .top .left p.f70 span.f180 {
    line-height: 0.8;
  }
  
  .main .model .bg .num_box .top .right {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
  
  .main .model .bg .num_box .top .right p.f49 {
    color: #3FAF78;
    border-bottom: 1px solid #3FAF78;
    padding-bottom: 1.5%;
    margin-bottom: 1%;
  }
  
  .main .model .bg .num_box .top .right p.f22 {
    line-height: 1.591;
  }
  
  .main .model .bg .num_box .top .right p.f18 {
    line-height: 1.889;
  }
  
  .main .model .bg .num_box .bottom {
    margin-top: 3%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  
  .main .model .bg .num_box .bottom .box {
    margin-right: 2.153%;
    text-align: center;
    background-color: #3FAF78;
    color: #fff;
    padding: 0.7rem 1.3vw;
  }
  
  .main .model .bg .num_box .bottom .box:last-child {
    margin-right: 0;
  }
  
  .main .model .bg .model_content {
    padding-left: 4.832vw;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  
  .main .model .bg .model_content .left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 42.42%;
            flex: 0 0 42.42%;
            margin-top: -3%;
  }
  
  .main .model .bg .model_content .right {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
            margin-left: 6%;
  }
  
  .main .model .bg .model_content .right .g_sec {
    margin-bottom: 11%;
  }
  
  .main .model .bg .model_content .right .g_sec .mds {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .main .model .bg .model_content .right .g_sec .mds .num {
    background-color: #3FAF78;
    color: #fff;
    padding: 0.92rem 0.4rem;
    line-height: 0.6;
    margin-right: 4%;
  }
  
  .main .model .bg .model_content .right .g_sec .mds h3 {
    position: relative;
    padding-left: 0.7vw;
    width: 100%;
    line-height: 1.3;
  }
  
  .main .model .bg .model_content .right .g_sec .mds h3 span {
    margin-left: 3%;
  }
  
  .main .model .bg .model_content .right .g_sec .mds h3::before {
    position: absolute;
    content: '';
    background-image: url(../img/model_bar.svg);
    width: 104%;
    padding: 5% 0;
    background-size: 100% 100%;
    top: 60%;
    left: -4%;
  }
  
  .main .model .bg .model_content .right .g_sec .flex_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 6%;
  }
  
  .main .model .bg .model_content .right .g_sec .flex_box .img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.63%;
    flex: 0 0 41.63%;
    margin-right: 5%;
    height: 17.204vw;
  }
  
  .main .model .bg .model_content .right .g_sec .flex_box .text {
    line-height: 1.533;
  }
  
  .main .model .bg .model_content .right .g_sec:nth-child(2) .mds h3::before {
    top: 70%;
  }
  
  .main .model .bg .model_content .right .g_sec:last-child {
    margin-bottom: 0;
  }
  
  .main .model .bg .sub_content .first .left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    margin-right: 2%;
  }
  
  .main .model .bg .sub_content .first .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 78%;
    flex: 0 0 78%;
  }
  
  .main .model .bg .sub_content .first .right .box {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32.6%;
    flex: 0 0 32.6%;
    margin-right: 1%;
    text-align: center;
  }
  
  .main .model .bg .sub_content .first .right .box .img {
    padding: 37% 0;
  }
  
  .main .model .bg .sub_content .first .right .box .text {
    margin-top: 5%;
  }
  
  .main .model .bg .sub_content .first .right .box .text .top {
    padding-bottom: 3%;
    border-bottom: 0.5px solid #707070;
  }
  
  .main .model .bg .sub_content .first .right .box .text .bottom {
    margin-top: 3%;
    color: #6ac5e6;
  }
  
  .main .model .bg .sub_content .first .right .box:last-child {
    margin-right: 0;
  }
  
  .main .model .bg .sub_content .second {
    margin-top: 5%;
  }
  
  .main .model .bg .sub_content .second .box {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 23.5%;
    flex: 0 0 23.5%;
    text-align: center;
    border: 0.5px solid #707070;
    margin-right: 2%;
    padding: 2% 0;
  }
  
  .main .model .bg .sub_content .second .box p {
    letter-spacing: 0.1em;
    line-height: 1.333;
  }
  
  .main .model .bg .sub_content .second .box p span {
    display: block;
    color: #6ac5e6;
    letter-spacing: 0.13em;
  }
  
  .main .model .bg .sub_content .second .box:last-child {
    margin-right: 0;
  }
  
  .main .model .bg .slider {
    margin-top: 11%;
  }
  
  .main .model .bg .slider #thumb {
    margin-top: 5%;
  }
  
  .main .model .bg .slider #thumb li {
    margin: 0 10px;
  }
  
  .main .model .bg .slider #thumb .slick-prev::before,
  .main .model .bg .slider #thumb .slick-next::before {
    top: 32%;
  }
  
  .main .model .bg .vr {
    margin-top: 12%;
  }
  
  .main .model .bg .vr h3 {
    color: #000;
    text-align: center;
    padding: 2% 0;
    margin-bottom: 2%;
  }
  
  .main .model .bg .vr p.f30 {
    letter-spacing: 0.08em;
    color: #3FAF78;
    text-align: center;
  }
  
  .main .model .bg .vr_block {
    margin-top: 4%;
  }
  
  .main .model .bg .vr_block iframe {
    width: 100%;
    height: 520px;
  }
  
  .main .model .bg .vr_block a {
    display: block;
    background-color: #6ac5e6;
    padding: 0.8rem;
    color: #fff;
    position: relative;
    text-align: center;
    width: 55%;
    margin: 0 auto;
    margin-top: 5%;
  }
  
  .main .model .bg .vr_block a:before {
    position: absolute;
    content: '';
    background-image: url(../img/btn_arrow.svg);
    width: 27px;
    height: 6px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 3%;
  }
  
  .main .facilities {
    margin-top: 12.5%;
  }
  
  .main .facilities .top_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    position: relative;
  }
  
  .main .facilities .top_text::before {
    position: absolute;
    content: '';
    background-color: #231815;
    height: 1px;
    width: 16vw;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  
  .main .facilities .top_text h2 {
    color: #000;
  }
  
  .main .facilities .top_text p.f30 {
    margin-left: 2vw;
    color: #3FAF78;
    letter-spacing: 0.08em;
  }
  
  .main .facilities .container {
    margin-top: 7%;
  }
  
  .main .facilities .container .content.hight {
    margin-bottom: 8%;
  }
  
  .main .facilities .container .content.hight h3.f25 span.sub_mds {
    top: -5vw;
    left: -3vw;
    letter-spacing: 0;
  }
  
  .main .facilities .container .content.hight .flex_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.4%;
  }
  
  .main .facilities .container .content.hight .flex_box .box {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48.08%;
            flex: 0 0 48.08%;
    margin-right: 3.7195%;
  }
  
  .main .facilities .container .content.hight .flex_box .box .img.thm {
    padding: 32% 0;
    margin-bottom: 5%;
  }
  
  .main .facilities .container .content.hight .flex_box .box .text_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 5%;
  }
  
  .main .facilities .container .content.hight .flex_box .box .text_flex p.f40 {
    color: #3FAF78;
  }
  
  .main .facilities .container .content.hight .flex_box .box p.f18 {
    line-height: 1.944;
  }
  
  .main .facilities .container .content.hight .flex_box .box:last-child {
    margin-right: 0;
  }
  
  .main .facilities .container .content h3.f25 {
    line-height: 1.2;
    letter-spacing: 0.1em;
    color: #231815;
    text-align: center;
    background-color: #f6faf8;
    padding: 8px 0;
    position: relative;
  }
  
  .main .facilities .container .content h3.f25 span {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -2vw;
    margin: auto;
    color: #3FAF78;
    -webkit-transform: rotate(350deg);
            transform: rotate(350deg);
  }
  
  .main .facilities .container .content h3.f25 span.sub_mds {
    top: -4vw;
    left: -2vw;
    letter-spacing: 0;
  }
  
  .main .facilities .container .content .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.4%;
  }
  
  .main .facilities .container .content .list li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 32.1%;
            flex: 0 0 32.1%;
    margin-right: 1.86%;
    position: relative;
  }
  
  .main .facilities .container .content .list li .img {
    padding: 42.644% 0;
  }
  
  .main .facilities .container .content .list li p.f20 {
    background-color: #3FAF78;
    color: #fff;
    letter-spacing: 0.04em;
    text-align: center;
    padding: 2.414% 0;
  }
  
  .main .facilities .container .content .list li::before {
    position: absolute;
    content: 'or';
    color: #3FAF78;
    font-size: 16px;
    width: 29px;
    height: 29px;
    /*
    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;
            */
    border-radius: 50%;
    border: 0.5px solid #3FAF78;
    background-color: #fff;
    top: 0;
    bottom: 0;
    right: -1.8vw;
    z-index: 1;
    margin: auto;
    text-align: center;
    line-height: 24px;
  }
  
  .main .facilities .container .content .list li:last-child {
    margin-right: 0;
  }
  
  .main .facilities .container .content .list li:last-child::before {
    display: none;
  }
  
  .main .facilities .container .content:last-child {
    margin-top: 10%;
  }
  
  .main .facilities .container .content:last-child .flex_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  
  .main .facilities .container .content:last-child .flex_box .box {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 47.6%;
            flex: 0 0 47.6%;
    margin-right: 4.7523%;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 5%;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex p.f18 {
    text-align: center;
    letter-spacing: 0.08em;
    color: #3FAF78;
    line-height: 1.222;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex .left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 52%;
            flex: 0 0 52%;
    margin-right: 3%;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex .right {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex .right .ssx {
    margin-bottom: 7.5%;
  }
  
  .main .facilities .container .content:last-child .flex_box .box .sub_flex .right .ssx:last-child {
    margin-bottom: 0;
  }
  
  .main .facilities .container .content:last-child .flex_box .box:last-child {
    margin-right: 0;
  }
  
  .main .facilities .container .content:last-child .flex_box .box:last-child h3 {
    text-align: right;
  }
  
  .main .location {
    background-color: #fff;
    margin-top: 5.6%;
  }
  
  .main .location h2 {
    text-align: center;
    color: #000000;
  }
  
  .main .location .bg {
    padding: 0 0 7%;
  }
  
  .main .location .bg .google_map {
    margin-top: 3%;
  }
  
  .main .location .bg .google_map .pad {
    margin-bottom: 3%;
  }
  
  .main .location .bg .google_map .pad p.f25 {
    text-align: center;
    color: #3FAF78;
    background-color: #fff;
    border-radius: 50px;
    position: relative;
    padding: 1.8rem 0;
    padding-left: 5rem;
    border: 1px solid #3FAF78;
  }
  
  .main .location .bg .google_map .pad p.f25::before {
    position: absolute;
    content: '';
    background-image: url(../img/car_icon.png);
    width: 58px;
    height: 48px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.8vw;
  }
  
  .main .location .bg .google_map iframe {
    width: 100%;
    height: 42.5vw;
  }
  
  .main .location .bg .content {
    margin-top: 7%;
  }
  
  .main .location .bg .content .flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  
  .main .location .bg .content .flex .box {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
    margin-right: 4%;
    text-align: center;
    position: relative;
  }
  
  .main .location .bg .content .flex .box .img {
    padding: 32% 0;
    margin-bottom: 5%;
  }
  
  .main .location .bg .content .flex .box .text {
    padding-bottom: 6%;
  }

  /*
  .main .location .bg .content .flex .box:first-child .text {
      padding-bottom: 12%;
  }*/
  
  .main .location .bg .content .flex .box .text p.mds {
    color: #3FAF78;
    padding-bottom: 4%;
    border-bottom: 1px solid #000000;
    margin-bottom: 4%;
  }
  
  .main .location .bg .content .flex .box .text p.f20 {
    line-height: 1.5;
  }
  
  .main .location .bg .content .flex .box .view {
    position: relative;
    color: #fff;
    padding: 2% 3%;
    border-radius: 20px;
    width: 60%;
    margin: 0 auto;
    background-color: #3FAF78;
    border: 1px solid #3FAF78;
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .main .location .bg .content .flex .box .view:before {
    position: absolute;
    content: '';
    background-image: url(../img/btn_arrow.svg);
    width: 9px;
    height: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 5%;
  }
  
  .main .location .bg .content .flex .box .view:hover {
    background-color: #fff;
    color: #3FAF78;
  }
  
  .main .location .bg .content .flex .box .view:hover::before {
    background-image: url(../img/btn_arrow_b.svg);
  }
  
  .main .location .bg .content .flex .box:nth-child(2n) {
    margin-right: 0;
  }
  
  .main .location .bg .content .flex .box:nth-child(n + 3) {
    margin-top: 5%;
  }
  
  .main .access {
    margin-top: 15.5%;
    padding-top: 6.5%;
    padding-bottom: 8%;
    background-color: #FCF9F2;
  }
  
  .main .access .top_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    position: relative;
  }
  
  .main .access .top_text::before {
    position: absolute;
    content: '';
    background-color: #231815;
    height: 1px;
    width: 29vw;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  
  .main .access .top_text h2 {
    color: #000;
  }
  
  .main .access .top_text p.f30 {
    margin-left: 2vw;
    color: #3FAF78;
    letter-spacing: 0.08em;
  }
  
  .main .access_content {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  
  .main .access_content .left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
    margin-left: 2%;
  }
  
  .main .access_content .left .box h3.min {
    text-align: center;
    color: #fff;
    background-color: #6ac5e6;
    padding: 1% 0;
  }
  
  .main .access_content .left .box .text {
    margin-top: 8%;
    line-height: 1.2;
  }
  
  .main .access_content .left .box .text .route {
    margin-top: 1%;
  }
  
  .main .access_content .left .box .text .route span.point {
    color: #3271ad;
  }
  
  .main .access_content .left .box .text .route span.point .f34 {
    color: #231815;
  }
  
  .main .access_content .left .box .time_text {
    line-height: 2;
    margin-top: 5%;
  }
  
  .main .access_content .left .box .route_table {
    margin-top: 4%;
  }
  
  .main .access_content .left .box .route_table .img {
    margin-top: 4%;
  }
  
  .main .access_content .left .box:last-child {
    margin-top: 15%;
  }
  
  .main .access_content .left .box:last-child .top {
    margin-bottom: 5%;
  }
  
  .main .access_content .left .box:last-child .sub_box {
    padding: 6% 0;
    border-top: 2px dashed #707070;
    border-bottom: 2px dashed #707070;
  }
  
  .main .access_content .left .box:last-child .sub_box .text {
    margin-top: 0;
    margin-bottom: 8%;
    line-height: 1.4;
  }
  
  .main .access_content .left .box:last-child .sub_box .text:last-child {
    margin-bottom: 0;
  }
  
  .main .access_content .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 56%;
    flex: 0 0 56%;
    margin-right: 2%;
  }
  
  .main .access_content .right img {
    width: 100%;
  }
  
  .main .access .caution {
    margin-top: 2.4%;
    line-height: 1.333;
  }
  
  .main .seismic {
    margin-top: 10%;
  }
  
  .main .seismic .first {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  
  .main .seismic .first .left {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
  
  .main .seismic .first .left .mds_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  .main .seismic .first .left .mds_box h2 {
    color: #3FAF78;
  }
  
  .main .seismic .first .left .mds_box .img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 39.73%;
            flex: 0 0 39.73%;
  }
  
  .main .seismic .first .left h3.f32 {
    background-color: #f6faf8;
    text-align: center;
    padding: 2% 0;
    margin-top: 5%;
  }
  
  .main .seismic .first .left .text {
    line-height: 2.25;
    margin-top: 5%;
  }
  
  .main .seismic .first .right {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 31%;
            flex: 0 0 31%;
    margin-left: 3.7196%;
  }
  
  .main .seismic .second {
    margin-top: 15%;
  }
  
  .main .seismic .second .top_txt {
    text-align: center;
    background-color: #f6faf8;
    padding: 2.3% 0;
    margin-bottom: 6%;
  }
  
  .main .seismic .second .top_txt p.f35 {
    margin-top: 1%;
  }
  
  .main .seismic .second .top_txt p.f35 span.f60 {
    margin-left: 3%;
  }
  
  .main .seismic .second .top_txt p.f35 .c_g {
    color: #3FAF78;
  }
  
  .main .seismic .second p.f20 {
    letter-spacing: 0.02em;
    line-height: 2.25;
  }
  
  .main .seismic .third {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15%;
  }
  
  .main .seismic .third .g_box {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
    margin-right: 10%;
  }
  
  .main .seismic .third .g_box .top_txt {
    background-color: #3FAF78;
    color: #fff;
    text-align: center;
    margin-bottom: 13.7%;
    padding: 3% 0;
  }
  
  .main .seismic .third .g_box .top_txt h3.f40 {
    letter-spacing: 0.08em;
    line-height: 1.2;
  }
  
  .main .seismic .third .g_box p.text {
    text-align: center;
    letter-spacing: 0.02em;
    line-height: 2.25;
    margin-top: 5.5%;
    margin-bottom: 5%;
    height: 90px;
  }
  
  .main .seismic .third .g_box p.f30.b {
    line-height: 1.5;
    text-align: center;
    color: #3FAF78;
  }
  
  .main .seismic .third .g_box:last-child {
    margin-right: 0;
  }
  
  .main .seismic .third .g_box:last-child p.text {
    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;
  }
  
  .main .seismic .third .g_box.left {
    position: relative;
  }
  
  .main .seismic .third .g_box.left::before {
    position: absolute;
    content: '';
    width: 6.003vw;
    height: 6.003vw;
    top: -7vw;
    bottom: 0;
    right: -6.5vw;
    margin: auto;
    background-image: url(../img/plus.png);
  }
  
  .main .seismic .fourth {
    margin-top: 15%;
  }
  
  .main .seismic .fourth .top_txt {
    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;
    border-top: 0.75px solid #231815;
    border-bottom: 0.75px solid #231815;
    padding: 2% 0;
  }
  
  .main .seismic .fourth .top_txt span {
    color: #3FAF78;
    margin-left: 24px;
  }
  
  .main .seismic .fourth .img {
    margin-top: 8%;
  }
  
  .main .insurance {
    margin-top: 10%;
  }
  
  .main .insurance h2 {
    text-align: center;
    color: #000000;
  }
  
  .main .insurance .bg {
    background-color: #fcf9f2;
    padding: 7% 0 7%;
    margin-top: -6.5%;
  }
  
  .main .insurance .bg .top_mds {
    color: #3FAF78;
    margin: 0 14.5681vw;
    margin-top: 3%;
    position: relative;
  }
  
  .main .insurance .bg .top_mds::before {
    position: absolute;
    content: '';
    background-color: #231815;
    height: 1px;
    width: 15vw;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  
  .main .insurance .bg .t_content {
    margin-top: 5%;
  }
  
  .main .insurance .bg .t_content .box {
    background-color: #fff;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
    margin-right: 5%;
    padding: 1rem 1rem;
    border-radius: 30px;
  }
  
  .main .insurance .bg .t_content .box p.f28 {
    text-align: center;
    line-height: 1.3;
    letter-spacing: 0.05em;
    padding-bottom: 5%;
    position: relative;
  }
  
  .main .insurance .bg .t_content .box p.f28:before {
    position: absolute;
    content: '';
    background-image: url(../img/model_bar2.svg);
    width: 100%;
    padding: 0.5% 0;
    top: 100%;
    left: 0;
  }
  
  .main .insurance .bg .t_content .box p.f28 span {
    color: #c9b78e;
  }
  
  .main .insurance .bg .t_content .box p.f18 {
    letter-spacing: 0.03em;
    line-height: 1.923;
    margin-top: 7%;
  }
  
  .main .insurance .bg .t_content .box:nth-child(n + 2) {
    padding-top: 2.2rem;
  }
  
  .main .insurance .bg .t_content .box:last-child {
    margin-right: 0;
    background-color: transparent;
    padding: 0;
  }
  
  .main .insurance .bg .t_content .box:last-child .sub {
    background-color: #fff;
    padding-top: 1.25rem;
    border-radius: 30px;
    margin-bottom: 2vw;
  }
  
  .main .insurance .bg .t_content .box:last-child .sub p.f23 {
    text-align: center;
    letter-spacing: 0.05em;
    padding-bottom: 5%;
    position: relative;
    line-height: 1.4;
  }
  
  .main .insurance .bg .t_content .box:last-child .sub p.f23 span {
    color: #c9b78e;
  }
  
  .main .insurance .bg .t_content .box:last-child .sub:last-child {
    margin-bottom: 0;
  }
  
  .main .insurance .bg .b_content {
    margin-top: 3%;
  }
  
  .main .insurance .bg .b_content .flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  
  .main .insurance .bg .b_content .flex .banner {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 47.5%;
    flex: 0 0 47.5%;
    margin-right: 5%;
  }
  
  .main .insurance .bg .b_content .flex .banner:nth-child(2n) {
    margin-right: 0;
  }
  
  .main .insurance .bg .b_content .flex .banner:last-child {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    margin-right: 0;
    margin-top: 2%;
  }
  
  .main .insurance .bg .b_content .flex .banner:last-child img {
      width: 100%;
  }

  .main .outline {
    margin-top: 6%;
  }
  
  .main .outline .top_text {
    text-align: center;
  }
  
  .main .outline .top_text h2 {
    color: #000;
  }
  
  .main .outline .top_text p {
    letter-spacing: 0.24em;
    margin-top: 2%;
  }
  
  .main .outline h3.f23 {
    margin-top: 5%;
    text-align: center;
    background-color: #3FAF78;
    color: #fff;
    letter-spacing: 0.24em;
    padding: 0.8rem 0;
    border-bottom: transparent;
  }
  
  .main .outline .list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border: 0.5px solid #5f5e5e;
    border-bottom: 0px solid transparent;
  }
  
  .main .outline .list li .item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 31.164%;
            flex: 0 0 31.164%;
    padding: 1rem 0;
    background-color: #f6faf8;
    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;
    border-right: 0.5px solid #5f5e5e;
  }
  
  .main .outline .list li .name {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 68.836%;
            flex: 0 0 68.836%;
    padding: 1rem 0;
    padding-left: 3%;
    letter-spacing: 0.06em;
    line-height: 2;
  }
  
  .main .outline .list li:last-child {
    border-bottom: 0.5px solid #5f5e5e;
  }
  
  .main .outline .caution {
    line-height: 1.765;
    margin-top: 5.7%;
    letter-spacing: -0.05em;
  }
  
  .main .outline .document {
    margin-top: 11.94%;
    position: relative;
  }
  
  .main .outline .document .flex {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .main .outline .document .flex .content {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48.5%;
            flex: 0 0 48.5%;
    margin-left: auto;
    margin-right: 3%;
    text-align: center;
  }
  
  .main .outline .document .flex .content a {
    text-align: center;
    display: block;
    background-color: #3FAF78;
    border: 1px solid #3FAF78;
    color: #fff;
    letter-spacing: 0.05em;
    border-radius: 30px;
    padding: 4.367% 0;
    position: relative;
  }

  .main .outline .document .flex .content div {
    text-align: center;
    display: block;
    background-color: #3FAF78;
    border: 1px solid #3FAF78;
    color: #fff;
    letter-spacing: 0.05em;
    border-radius: 30px;
    padding: 4.367% 0;
    position: relative;
  }
  
  .main .outline .document .flex .content a::before {
    position: absolute;
    content: '';
    background-image: url(../img/btn_arrow.svg);
    width: 10px;
    height: 19px;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
  }

  .main .outline .document .flex .content div::before {
    position: absolute;
    content: '';
    background-image: url(../img/btn_arrow.svg);
    width: 10px;
    height: 19px;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
  }
  
  .main .outline .document .flex .content a:hover {
    opacity: 1;
    background-color: #fff;
    color: #3FAF78;
  }

  .main .outline .document .flex .content div:hover {
    opacity: 1;
    background-color: #fff;
    color: #3FAF78;
  }
  
  .main .outline .document .flex .content a:hover::before {
    background-image: url(../img/btn_arrow_b.svg);
  }

  .main .outline .document .flex .content div:hover::before {
    background-image: url(../img/btn_arrow_b.svg);
  }
  
  .main .outline .document .flex .content p {
    margin-top: 3%;
  }
  
  .main .outline .document .flex .content a.no_event {
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .main .outline .document .flex .content div.no_event {
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .main .outline .document .flex .content:last-child {
    margin-right: 0;
  }
  
  .main .outline .document .flex .content:last-child a {
    background-color: #58b76a;
    border: 1px solid #58b76a;
  }
  
  .main .outline .document .flex .content:last-child a:hover {
    background-color: #fff;
    color: #58b76a;
  }
  
  .main .outline .document .flex .content:last-child a:hover::before {
    background-image: url(../img/btn_arrow_s.svg);
  }

  .main .outline .document .flex .content:last-child div {
    background-color: #58b76a;
    border: 1px solid #58b76a;
    transition: 0.3s;
  }
  
  .main .outline .document .flex .content:last-child div:hover {
    background-color: #fff;
    color: #58b76a;
  }
  
  .main .outline .document .flex .content:last-child div:hover::before {
    background-image: url(../img/btn_arrow_s.svg);
  }
  
  .footer {
    margin-top: 4%;
    padding: 3% 0 2%;
    background-color: #3FAF78;
    color: #fff;
  }
  
  .footer .flex .left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 0 0 30%;
  }
  
  .footer .flex .left .num {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  
  .footer .flex .left .num a {
    color: #fff;
  }
  
  .footer .flex .left .text {
    text-align: center;
    margin-top: 3%;
  }
  
  .footer .flex .center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40%;
    flex: 0 0 40%;
  }
  
  .footer .flex .center a {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 48%;
    flex: 0 0 48%;
    display: block;
    background-color: #ede8dc;
    text-align: center;
    padding: 2px;
  }
  
  .footer .flex .center a p {
    padding: 1rem 0;
    border: 0.5px solid #363636;
  }
  
  .footer .flex .center a:last-child {
    background-color: #c9b78e;
  }
  
  .footer .flex .right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28%;
    flex: 0 0 28%;
    margin-left: 2%;
  }
  
  .footer .copy {
    display: block;
    margin-top: 2%;
    text-align: center;
  }
  
  .br1024on,
  .br768on,
  .br480on {
    display: none;
  }
  
  .br1366on {
    display: block;
  }
  
  @media screen and (min-width: 1367px) {
    .main .model .bg .model_content .right .g_sec .flex_box .img {
      padding: 22.234% 0;
      height: auto;
    }
    .main .facilities .container .content .list li::before {
      right: -24px;
    }
  }
  
  @media screen and (max-width: 1024px) {
    .br1024off {
      display: none;
    }
    .br1024on {
      display: block;
    }
    .f22 {
      font-size: 20px;
    }
    .f37 {
      font-size: 29px;
    }
    .f48 {
      font-size: 40px;
    }
    .pad {
      padding: 0 11%;
    }
    .header .h_top {
      padding: 1% 3vw;
    }
    .header .h_top .icon {
      width: 23%;
    }
    .header .h_top .icon .text span {
      font-size: 13px;
    }
    .header .h_top .icon .text p {
      font-size: 21px;
    }
    .header .h_top .icon .img {
      width: 30%;
    }
    .header .mv .btn_box {
      right: 1%;
    }
    .header .mv .btn_box a {
      width: 100px;
      padding: 17px 0;
    }
    .header .mv .btn_box a:last-child {
      padding: 18px 0;
    }
    .main .concept .box .right .sub {
      padding-left: 0%;
    }
    .main .concept .box .right p {
      font-size: 14px;
      letter-spacing: 0.07em;
    }
    .main .point .bg .point_box .box:last-child .top p.f16 {
      font-size: 15px;
    }
    .main .point .bg .point_box .box .bottom span {
      font-size: 12px;
    }
    .main .land .land_box .left {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 44%;
      flex: 0 0 44%;
    }
    .main .land .land_box .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 56%;
      flex: 0 0 56%;
    }
    .main .model .bg .model_content .right .g_sec .text {
      letter-spacing: 0.05em;
    }
    .main .model .bg .num_box .bottom {
      font-size: 12px;
    }
    .main .model .bg .num_box .bottom .box {
      margin-right: 2%;
    }
    .main .model .bg .model_content .left {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
    }
    .main .model .bg .model_content .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      margin-left: 0;
    }
    .main .model .bg .model_content .right .g_sec .mds h3 {
      font-size: 21px;
    }
    .main .model .bg .sub_content .first .right .box .text .bottom,
    .main .model .bg .sub_content .second .box p {
      font-size: 16px;
    }
    .main .facilities .content .top .box {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
    }
    .main .facilities .content .top .box.left {
      margin-right: 1%;
    }
    .main .facilities .content .top .box.right {
      margin-left: 1%;
    }
    .main .location .bg .content .flex .box .text {
      padding-bottom: 12%;
    }
    .main .location .bg .content .flex .box .text p.f20 {
      font-size: 15px;
    }
    .main .insurance .bg .t_content .box {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 31%;
      flex: 0 0 31%;
      margin-right: 3%;
      padding: 1rem 1rem;
    }
    .main .insurance .bg .b_content .flex .banner:last-child p {
      font-size: 16px;
    }
    .main .outline .document::before {
      width: 85vw;
      padding: 20vw 0;
      background-size: cover;
    }
    .footer .flex .left .num {
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
    }
    .main .model .bg .sub_content .first .right .box .text .top {
      font-size: 13px;
    }
    .main .location .bg .google_map .pad p.f30 {
      font-size: 25px;
    }
    .main .map .top p {
      padding-right: 10%;
    }
    .main .land .land_box a.f30 {
      width: 40%;
    }
    .main .land .top {
      padding-left: 11%;
      margin-right: 11%;
    }
    .main .insurance .bg .top_mds {
      margin-left: 11%;
      margin-right: 11%;
    }
    .main .insurance .bg .t_content .box:nth-child(n + 2) {
      padding-top: 1rem;
    }
    .main .insurance .bg .t_content .box:last-child {
      padding-top: 0;
    }
    .main .seismic .third .g_box .top_txt h3.f40 .f22 {
      font-size: 17px;
    }
    .main .seismic .third .g_box p.text {
      height: 70px;
    }
  }
  
  @media screen and (max-width: 768px) {
    .f20 {
      font-size: 18px;
    }
    .f30 {
      font-size: 20px;
    }
    .f32,
    .f35 {
      font-size: 25px;
    }
    .f40 {
      font-size: 30px;
    }
    .f48 {
      font-size: 36px;
    }
    .f87 {
      font-size: 60px;
    }
    .br768on {
      display: block;
    }
    .br768off {
      display: none;
    }
    .header .h_top {
      padding: 10px 3%;
      position: fixed;
      width: 100%;
      background-color: #fff;
      top: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      z-index: 99;
    }
    .header .h_top .icon {
      position: initial;
      width: 25%;
    }
    .header .h_top .icon .img {
      width: 30%;
      margin: 0%;
    }
    #globalMenuSp {
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      left: auto;
      z-index: 999;
      -webkit-transform: translateX(100%);
      transform: translateX(100%);
      -webkit-transition: all 0.6s;
      transition: all 0.6s;
      width: 100%;
    }
    #globalMenuSp ul {
      background-color: #f6faf8;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      width: 300px;
      height: 100%;
      margin-left: auto;
      margin-right: 0;
      padding-top: 10%;
    }
    #globalMenuSp ul li {
      width: 100%;
      border-top: 1px solid #707070;
      padding-top: 4.66%;
      padding-bottom: 4.66%;
      padding-left: 5%;
      line-height: 1.5;
    }
    #globalMenuSp ul li .f20 {
      color: #6ac5e6;
    }
    #globalMenuSp ul li:last-child {
      border-bottom: 1px solid #707070;
    }
    #globalMenuSp.active {
      -webkit-transform: translateX(0%);
      transform: translateX(0%);
    }
    #navToggle {
      position: relative;
      z-index: 999;
      width: 40px;
      height: 30px;
      cursor: pointer;
    }
    #navToggle.active span:nth-child(1) {
      -webkit-transform: rotate(-135deg);
      transform: rotate(-135deg);
    }
    #navToggle.active span:nth-child(n + 2) {
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);
    }
    #navToggle span {
      display: inline-block;
      width: 100%;
      height: 3px;
      -webkit-transition: 0.35s;
      transition: 0.35s;
      margin-top: auto;
      margin-right: auto;
      margin-bottom: auto;
      margin-left: auto;
      background-color: #3FAF78;
    }
    #navToggle span:nth-child(1) {
      position: absolute;
      top: 0;
      right: 0;
      bottom: auto;
      left: 0;
      z-index: 0;
    }
    #navToggle span:nth-child(2) {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 0;
    }
    #navToggle span:nth-child(3) {
      position: absolute;
      top: auto;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 0;
    }
    #navToggle.active span {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 0;
    }
    .header .mv {
      margin-left: 0;
    }
    .header .mv .mv_text {
      position: absolute;
      width: 30%;
    }
    .pad {
      padding: 0 6%;
    }
    .main .concept .box .left,
    .main .concept .box:last-child .left {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 38%;
      flex: 0 0 38%;
    }
    .main .concept .box .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 56%;
      flex: 0 0 56%;
    }
    .main .map .img {
      margin-top: 5%;
    }
    .main .point {
      margin-top: 12%;
    }
    .main .point .bg {
      padding: 5% 0;
      margin-top: -3%;
    }
    .main .point .bg .point_box .box {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 32%;
      flex: 0 0 32%;
      margin-right: 2%;
    }
    .main .point .bg .point_box .box:last-child .top .ab {
      font-size: 18px;
    }
    .main .point .bg .point_box .box .top .f18 {
      font-size: 15px;
    }
    .main .point .bg .point_box .box:last-child .top p.f16 {
      font-size: 14px;
    }
    .main .point .bg .point_box .box .bottom span {
      font-size: 11px;
    }
    .main .land .land_box .left,
    .main .land .land_box .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
    }
    .main .land .land_second .flex .box:last-child {
      margin-left: 3%;
    }
    .main .land .land_second::before {
      width: 35%;
    }
    .main .land .land_second .flex .box:first-child {
      padding: 1.5rem 1rem 0.8rem;
    }
    .main .model .bg .num_box .top .left {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 18%;
      flex: 0 0 18%;
    }
    .main .model .bg .num_box .top .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 82%;
      flex: 0 0 82%;
    }
    .main .model .bg .num_box .bottom .box {
      margin-right: 1%;
    }
    .main .model .bg .model_content {
      display: block;
      padding-left: 6%;
    }
    .main .model .bg .model_content .right .g_sec {
      margin-bottom: 8%;
    }
    .main .model .bg .model_content .right .g_sec .mds h3 {
      font-size: 25px;
    }
    .main .model .bg .model_content .right .g_sec .mds h3::before {
      width: 100%;
      padding: 3% 0;
    }
    .main .model .bg .model_content .right .g_sec .text {
      font-size: 16px;
    }
    .main .model .bg .sub_content .first {
      display: block;
    }
    .main .model .bg .sub_content .first .left {
      text-align: center;
      margin-right: 0;
      margin-bottom: 3%;
    }
    .main .model .bg .sub_content .second {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    }
    .main .model .bg .sub_content .second .box {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
    }
    .main .model .bg .sub_content .second .box:nth-child(2n) {
      margin-right: 0;
    }
    .main .model .bg .sub_content .second .box:nth-child(n + 3) {
      margin-top: 2%;
    }
    .main .facilities .content .top .box .img_box .g_img .sub {
      height: 5vw;
    }
    .main .facilities .content .top .box .img_box .g_img .sub .s_img {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 48%;
      flex: 0 0 48%;
      margin-right: 4%;
    }
    .main .facilities .content .top .box .img_box .g_img .sub .s_img:last-child {
      margin-right: 0;
    }
    .main .facilities .content .bottom .img_box {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: distribute;
      justify-content: space-around;
    }
    .main .facilities .content .bottom .img_box .img {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 30%;
      flex: 0 0 30%;
    }
    .main .facilities .content .bottom .img_box .img:last-child {
      text-align: center;
    }
    .main .facilities .content .bottom .img_box .img:last-child img {
      width: 33%;
      margin: 0 auto;
    }
    .main .facilities .content .bottom .img_box .img:nth-child(n + 4) {
      margin-top: 3%;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 40%;
      flex: 0 0 40%;
    }
    .main .location .bg .google_map iframe {
      height: 45vw;
    }
    .main .location .bg .content .flex .box .text {
      padding-bottom: 15%;
    }
    /*
    .main .location .bg .content .flex .box:first-child .text {
        padding-bottom: 15%;
    }
    */
    .main .location .bg .content .flex .box .text p.f20 {
      font-size: 14px;
    }
    .main .location .bg .content .flex .box .text p.mds {
      font-size: 25px;
    }
    .main .access_content .left {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 48%;
      flex: 0 0 48%;
      margin-right: 2%;
    }
    .main .access_content .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 48%;
      flex: 0 0 48%;
      margin-left: 2%;
    }
    .main .insurance .bg .b_content .flex .banner:last-child p {
      font-size: 14px;
    }
    .main .outline .document .content {
      width: 60%;
    }
    .main .outline .document::before {
      padding: 18vw 0;
      top: -21%;
    }
    .footer .pad.flex {
      display: block;
    }
    .footer .flex .left .num {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    .footer .flex .left .text {
      margin-top: 1%;
    }
    .footer .flex .center {
      margin: 4% 0;
    }
    .footer .flex .right {
      margin-left: 0;
      text-align: center;
    }
    .main .outline .list li .item {
      padding: 1rem 0;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 30%;
      flex: 0 0 30%;
    }
    .main .outline .list li .name {
      padding-top: 1rem;
      padding-bottom: 1rem;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 70%;
      flex: 0 0 70%;
    }
    .main .point .bg .point_box .box .bottom p {
      font-size: 16px;
    }
    .header .mv .btn_box {
      position: fixed;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      bottom: 0;
      top: auto;
      right: auto;
      width: 100%;
      z-index: 100;
      left: 0;
    }
    .header .mv .btn_box a {
      width: auto;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      padding: 0;
      border-radius: inherit;
      padding: 17px 0;
      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;
    }
    .header .mv .btn_box a .img {
      margin-bottom: 3%;
      width: 30px;
      height: 38px;
      margin: 0%;
      margin-right: 12px;
    }
    .header .mv .btn_box a:last-child {
      margin-top: 0;
      padding: 17px 0;
    }
    .main .concept .box .right p {
      letter-spacing: 0em;
    }
    .main .land .land_box .left p.f18 {
      font-size: 16px;
    }
    .main .location .bg .google_map .pad p.f30 {
      font-size: 22px;
    }
    .main .location .bg .google_map .pad p.f30::before {
      width: 52px;
      height: 40px;
    }
    .main .insurance .bg .t_content .box p.f16 {
      font-size: 14px;
    }
    .main .notice {
      padding-top: 2%;
      padding-bottom: 2%;
      flex-wrap: wrap;
      justify-content: left;
    }
    .main .notice .notice_mds {
      margin-right: 0;
    }
    .main .notice .season {
      margin: 2% 0;
    }
    .main .notice .season .f21 {
      font-size: 14px;
    }
    .main .notice .season p.f26 {
      font-size: 16px;
    }
    .main .notice .center {
        margin-left: 3%;
        font-size: 14px;
        width: 180px;
    }
    .main .notice .center span {
        font-size: 16px;
    }
    .main .notice .right {
        margin-left: 0;
        font-size: 12px;
        margin-top: 2%;
        width: 100%;
    }
    .header .mv .text-box .f28 {
        font-size: 16px;
    }
    /*
    .header .mv .text-box p:first-child {
        font-size: 12px;
    }
    */
    .main .concept .box:last-child {
      padding-left: 6%;
      padding-right: 6%;
    }
    .main .concept .box:last-child .right {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 59%;
      flex: 0 0 59%;
    }
    .main .concept .box:last-child .right h4 {
      font-size: 20px;
    }
    .main .map .top p {
      padding-right: 6%;
      font-size: 30px;
    }
    .main .land .top {
      padding-left: 6%;
      margin-right: 6%;
    }
    .main .land .land_box .left p.f17 {
      font-size: 14px;
    }
    .main .land .land_box a.f30 {
      width: 45%;
      padding: 2% 0;
    }
    .main .model .bg .num_box .top .right p.f22 {
      font-size: 18px;
    }
    .main .model .bg .model_content .right .g_sec .flex_box .img {
      height: 35vw;
    }
    .main .facilities .container .content h3.f25 {
      font-size: 17px;
    }
    .main .facilities .container .content .list li p.f20 {
      font-size: 16px;
    }
    .main .facilities .container .content:last-child .flex_box .box .sub_flex p.f18 {
      font-size: 13px;
    }
    .main .location .bg .google_map .pad p.f25 {
      font-size: 18px;
      padding-left: 3rem;
    }
    .main .access_content {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
    }
    .main .access_content .left .box:last-child .sub_box .text small {
      font-size: 12px;
    }
    .main .insurance .bg .top_mds {
      margin-left: 6vw;
      margin-right: 6vw;
    }
    .br768off {
      display: none;
    }
  }
  
  @media screen and (max-width: 480px) {
    .f16 {
      font-size: 14px;
    }
    .f22 {
      font-size: 18px;
    }
    .f24 {
      font-size: 12px;
    }
    .f32,
    .f35 {
      font-size: 20px;
    }
    .f34 {
      font-size: 30px;
    }
    .f45 {
      font-size: 35px;
    }
    .f54 {
      font-size: 40px;
    }
    .f70,
    .f75,
    .f80 {
      font-size: 48px;
    }
    .f87 {
      font-size: 50px;
    }
    .f90 {
      font-size: 48px;
    }
    .br480on {
      display: block;
    }
    .br480off {
      display: none;
    }
    .header .h_top .icon {
      width: 37% !important;
    }
    .header .h_top .icon a {
      /*
      display: block !important;
      */
    }
    .header .h_top .icon .img {
      width: 100% !important;
    }
    .header .mv .btn_box {
      position: fixed;
      position: fixed;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      bottom: 0;
      top: auto;
      right: auto;
      width: 100%;
      z-index: 100;
    }
    .header .mv .btn_box a {
      width: auto;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      padding: 0;
      border-radius: inherit;
      padding: 11px 0;
      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;
    }
    .header .mv .btn_box a:last-child {
      padding: 11px 0;
      margin-top: 0;
    }
    .header .mv .btn_box a:last-child .img {
      width: 49px;
      height: 38px;
    }
    .header .mv .btn_box a .img {
      margin-bottom: 3%;
      width: 30px;
      height: 38px;
      margin: 0%;
      margin-right: 12px;
    }
    .header .mv .btn_box .f16 {
      font-size: 13px;
    }
    .header .mv_img {
      padding: 50% 0;
    }
    .header .mv .text-box {
      font-size: 16px;
    }
    .pad {
      padding: 0 10px;
    }
    .main .concept .box {
      display: block;
    }
    .main .concept .box .left {
      margin-right: 0;
      display: none;
    }
    .main .concept .box::before {
      display: none;
    }
    .main .concept .box .right::before {
      width: 152px;
      height: 52px;
      right: 0%;
    }
    .main .concept .box:last-child {
      padding-left: 8vw;
    }
    .main .concept .box:last-child .right::before {
      bottom: -3%;
      left: -1%;
    }
    .main .concept .box:last-child .right h3 span.f45 .ruby {
      font-size: 7px;
    }
    .main .concept .box .right .sub {
      margin-top: 6%;
    }
    .main .concept .box .right p {
      font-size: 14px;
      letter-spacing: 0.07em;
    }
    .main .map {
      margin-top: 20%;
    }
    .main .map .top h2 {
      font-size: 42px;
      padding-left: 15px;
      margin-top: 2%;
    }
    .main .map .top h2::before {
      width: 18vw;
      height: 18vw;
      top: -21%;
    }
    .main .map .top p {
      font-size: 18px;
      padding-right: 10px;
    }
    .main .map .img {
      width: 100%;
      margin-top: 10%;
    }
    .main .point h2 span::before {
      width: 27px;
      height: 10px;
    }
    .main .point .bg {
      padding: 10% 0;
      margin-top: -7%;
    }
    .main .land .land_box .right .f22 {
        padding-top: 20px;
        padding-bottom: 22px;
    }
    .main .point .bg .point_box {
      display: block;
      margin-top: 10%;
    }
    .main .point .bg .point_box .box {
      margin-right: 0;
      margin-bottom: 10%;
    }
    .main .point .bg .point_box .box .top {
      padding: 7% 0;
    }
    .main .point .bg .point_box .box .top::before {
      left: 45%;
    }
    .main .point .bg .point_box .box .center {
      height: auto;
      text-align: center;
    }
    .main .point .bg .point_box .box .bottom span {
      text-align: center;
      font-size: 12px;
    }
    .main .point .bg .point_box .box .bottom p {
      margin-top: 4%;
      letter-spacing: 0.05em;
    }
    .main .point .bg .point_box .box:last-child {
      margin-bottom: 0;
    }
    .main .point .bg .point_box .box:last-child .top {
      padding: 10% 0 7%;
    }
    .main .land {
      margin-top: 12%;
    }
    .main .land .top p {
      margin-top: 6%;
      margin-left: 0;
    }
    .main .land .land_box {
      margin-top: 6%;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
      padding-left: 10px;
      padding-right: 10px;
    }
    .main .land .land_box .left,
    .main .land .land_box .right {
      width: 100%;
    }
    .main .land .land_box .left {
      margin-top: 5%;
    }
    .main .land .land_box .left p.f16 {
      line-height: 1.7;
      text-align: center;
    }
    .main .land .land_box .left a {
      text-align: center;
    }
    .main .land .land_second {
      margin-top: 12%;
      padding-left: 10px;
    }
    .main .land .land_second .flex .box {
      background-color: #fff;
      padding: 0;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 48.5%;
      flex: 0 0 48.5%;
    }
    .main .land .land_second::before {
      display: none;
    }
    .main .land .land_second .img_box .img {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      padding: 20% 0;
    }
    .main .land .land_second .flex {
      margin-top: -10%;
    }
    .main .land .land_second .flex .box:first-child, .main .land .land_second .flex .box:last-child {
      padding: 15px 0;
    }
    .main .land .land_second .flex .box p span {
      margin-bottom: 8px;
    }
    .main .model {
      margin-top: 15%;
    }
    .main .model .bg {
      padding: 15% 0 10%;
      margin-top: -10%;
    }
    .main .model .bg .num_box .top {
      display: block;
    }
    .main .model .bg .num_box .top .left p.f111 {
      font-size: 43px;
    }
    .main .model .bg .num_box .top .right {
      margin-top: 4%;
    }
    .main .model .bg .num_box .top .right p.f48 {
      font-size: 34px;
      padding-bottom: 3%;
      margin-bottom: 3%;
    }
    .main .model .bg .num_box .bottom {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      font-size: 13px;
    }
    .main .model .bg .num_box .bottom .box {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
      margin-right: 2%;
    }
    .main .model .bg .num_box .bottom .box:nth-child(2n) {
      margin-right: 0;
    }
    .main .model .bg .num_box .bottom .box:nth-child(n + 3) {
      margin-top: 4%;
    }
    .main .model .bg .model_content {
      padding-left: 10px;
    }
    .main .model .bg .model_content .left {
      margin-right: 0;
    }
    .main .model .bg .model_content .right .g_sec {
      margin-bottom: 10%;
    }
    .main .model .bg .model_content .right .g_sec .mds h3 {
      text-align: center;
      font-size: 19px;
    }
    .main .model .bg .model_content .right .g_sec .mds h3::before {
      top: 100%;
    }
    .main .model .bg .model_content .right .g_sec .text {
      font-size: 14px;
      margin: 6% 0;
    }
    .main .model .bg .sub_content .first .left {
      width: 50%;
      margin: 0 auto;
      margin-bottom: 5%;
    }
    .main .model .bg .sub_content .first .right .flex {
      display: block;
    }
    .main .model .bg .sub_content .first .right .box {
      margin-right: 0;
      margin-bottom: 7%;
    }
    .main .model .bg .sub_content .first .right .box .text {
      margin-top: 4%;
    }
    .main .model .bg .sub_content .first .right .box .text .top {
      font-size: 15px;
    }
    .main .model .bg .sub_content .second .box p {
      font-size: 15px;
    }
    .main .model .bg .sub_content .first .right .box .text .bottom {
      font-size: 23px;
    }
    .main .model .bg .sub_content .second {
      margin-top: 10%;
    }
    .main .model .bg .slider {
      margin-top: 12%;
    }
    .main .facilities {
      margin-top: 10%;
    }
    .main .facilities .content .top {
      display: block;
    }
    .main .facilities .content .top .box.left {
      margin-right: 0;
    }
    .main .facilities .content .top .box p.tsu {
      font-size: 14px;
    }
    .main .facilities .content .top .box.left {
      margin-bottom: 8%;
    }
    .main .facilities .content .top .box .img_box .g_img .sub .s_img {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
      margin-right: 2%;
    }
    .main .facilities .content .top .box .img_box .l_img {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
      margin-right: 1%;
    }
    .main .facilities .content .top .box .img_box .r_img {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
      flex: 0 0 49%;
      margin-left: 1%;
    }
    .main .facilities .content .top .box .img_box .g_img .sub {
      height: 10vw;
    }
    .main .facilities .content .bottom .img_box {
      display: block;
      margin-top: 6%;
    }
    .main .facilities .content .bottom .img_box .img {
      margin-bottom: 10%;
      text-align: center;
    }
    .main .facilities .content .bottom .img_box .img:nth-child(2) {
      padding-left: 10px;
    }
    .main .facilities .content .bottom p.tsu {
      font-size: 14px;
    }
    .main .facilities .content .bottom .img_box .img:nth-child(n + 4) {
      margin-top: 0;
    }
    .main .facilities .content .bottom .img_box .img:last-child {
      margin-bottom: 0;
    }
    .main .location {
      padding-top: 15%;
    }
    .main .location .bg {
      padding: 10% 0;
      margin-top: -7%;
    }
    .main .location .bg .google_map {
      margin-top: 8%;
    }
    .main .location .bg .google_map iframe {
      height: 100vw;
    }
    .main .location .bg .content {
      margin-top: 12%;
    }
    .main .location .bg .content .flex {
      display: block;
    }
    .main .location .bg .content .flex .box {
      margin-right: 0;
      margin-bottom: 10%;
    }
    .main .location .bg .content .flex .box .text p.mds {
      font-size: 23px;
    }
    .main .location .bg .content .flex .box .text p.f20 {
      font-size: 14px;
    }
    .main .location .bg .content .flex .box .img {
      margin-bottom: 5%;
    }
    .main .location .bg .content .flex .box .view {
      right: -1%;
    }
    .main .access {
      margin-top: 10%;
    }
    .main .access_content {
      margin-top: 8%;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
    }
    .main .access_content .right {
      margin-left: 0;
    }
    .main .access_content .left {
      margin-right: 0;
      margin-top: 8%;
    }
    .main .access_content .left .box h3.min {
      font-size: 26px;
      padding: 3% 0;
    }
    .main .insurance h2 {
      font-size: 36px;
    }
    .main .insurance .bg {
      padding: 10% 0;
      margin-top: -5%;
    }
    .main .insurance .bg .top_mds {
      line-height: 1.3;
    }
    .main .insurance .bg .t_content {
      display: block;
      margin-top: 10%;
    }
    .main .insurance .bg .t_content .box {
      margin-right: 0;
      margin-bottom: 8%;
    }
    .main .insurance .bg .t_content .box p.f30 {
      text-align: center;
    }
    .main .insurance .bg .t_content .box:last-child {
      margin-bottom: 0;
    }
    .main .insurance .bg .t_content .box p.f13 {
      font-size: 14px;
      margin-top: 3%;
    }
    .main .insurance .bg .b_content {
      margin-top: 8%;
    }
    .main .insurance .bg .b_content .flex {
      display: block;
    }
    .main .insurance .bg .b_content .flex .banner {
      margin-right: 0;
      margin-bottom: 7%;
    }
    .main .insurance .bg .b_content .flex .banner:nth-child(2n) {
      margin-bottom: 0;
    }
    .main .insurance .bg .b_content .flex .banner:last-child {
      display: block;
    }
    .main .insurance .bg .b_content .flex .banner:last-child .img {
      margin-right: 0;
      text-align: center;
      margin-bottom: 3%;
    }
    .main .outline {
      margin-top: 10%;
    }
    .main .outline .text {
      margin-top: 6%;
      line-height: 1.7;
    }
    .main .outline .document .content {
      width: 100%;
      margin: 0 auto;
    }
    .main .outline .document .content p {
      margin-left: 0;
      text-align: center;
      font-size: 13px;
    }
    .main .outline .document .content:last-child {
      margin-top: 6%;
    }
    .main .outline .document::before {
      width: 100vw;
      padding: 35vw 0;
      top: -21%;
    }
    .main .outline .document .content a {
      font-size: 20px;
    }
    .footer {
      margin-top: 25%;
      padding: 6% 0;
    }
    #globalMenuSp ul {
      padding-top: 20%;
    }
    #globalMenuSp ul li {
      padding-top: 2.66%;
      padding-bottom: 2.66%;
    }
    .main .outline .list li {
      display: block;
      font-size: 16px;
    }
    .main .model .bg .vr h3 {
      font-size: 60px;
      line-height: 1.3;
      padding: 3% 0px;
      margin-bottom: 4%;
    }
    .main .model .bg .vr_block iframe {
      height: 340px;
    }
    .main .model .bg .vr p.f21 {
      font-size: 18px;
    }
    .main .model .bg .vr_block {
      margin-top: 7%;
    }
    .main .model .bg .vr_block a {
      font-size: 16px;
      width: 70%;
      margin-top: 7%;
    }
    .header .h_top {
      padding: 3px 3%;
    }
    .header .mv .mv_text {
      top: 12%;
      width: 60%;
      left: 0;
    }
    .header .mv .mv_text .f74 {
      font-size: 35px;
    }
    .header .mv .mv_text .f47 {
      font-size: 27px;
    }
    .main .notice {
      padding: 6% 10px;
    }
    .main .notice .f60 {
      font-size: 30px;
    }
    .main .notice .notice_mds {
      padding: 0 8px;
      font-size: 13px;
      line-height: 1.4;
    }
    .main .notice p.text {
      line-height: 1.7;
    }
    .header .mv .text-box .f28 {
        font-size: 16px;
    }
    /*
    .header .mv .text-box p:first-child {
        font-size: 12px;
    }
    */
    .main .notice .season {
      margin: 4% 0;
    }
    .main .concept .box {
      padding-left: 10px;
      margin-bottom: 10%;
      padding-right: 10px;
    }
    .main .concept .box:last-child {
      padding-left: 10px;
      padding-right: 10px;
    }
    .main .concept .box .right h2 {
      font-size: 60px;
    }
    .main .concept .box .right h2::before {
      width: 40vw;
    }
    .main .concept .box:last-child .right h2 {
      margin-right: 0;
    }
    .main .concept .box:last-child .right h2::before {
      width: 40vw;
    }
    .main .land .top {
      display: block;
      padding-left: 10px;
      margin-right: 10px;
      text-align: center;
    }
    .main .land .top::before {
      display: none;
    }
    .main .land .land_box .flex {
      padding: 0;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
    }
    .main .land .land_box .left {
      text-align: center;
    }
    .main .land .land_box .left h3 {
      font-size: 22px;
    }
    .main .land .land_box a.f30 {
      width: 100%;
      padding: 3.5% 0;
    }
    .main .land .land_second .flex {
      display: block;
      margin-top: 0;
    }
    .main .land .land_second .flex .left {
      margin-right: 0;
    }
    .main .land .land_second .flex .right .txt_box {
      padding: 2% 0;
    }
    .main .model .bg .num_box {
      padding-top: 6%;
      padding-bottom: 6%;
    }
    .main .model .bg .num_box .top .left p.f50 {
      font-size: 35px;
    }
    .main .model .bg .num_box .top .left p.f50 span.f250 {
      font-size: 80px;
      margin-left: 0;
      line-height: 0.8;
    }
    .main .model .bg .num_box .top .right p.f49 {
      font-size: 34px;
    }
    .main .model .bg .num_box .top .right p.f18 {
      font-size: 18px;
    }
    .main .model .bg .num_box .bottom .box {
      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;
    }
    .main .model .bg .model_content .right .g_sec .flex_box {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
    }
    .main .model .bg .model_content .right .g_sec .flex_box .img {
      width: 100%;
      padding: 50% 0;
      margin-right: 0;
    }
    .main .model .bg .model_content .right .g_sec .mds .num {
      font-size: 35px;
    }
    .main .facilities .top_text {
      display: block;
      text-align: center;
    }
    .main .facilities .top_text::before {
      display: none;
    }
    .main .facilities .top_text p.f30 {
      margin-left: 0;
      margin-top: 5%;
    }
    .main .facilities .container {
      margin-top: 15%;
    }
    .main .facilities .container .content .list {
      display: block;
    }
    .main .facilities .container .content .list li {
      margin-right: 0;
      margin-bottom: 10%;
    }
    .main .facilities .container .content .list li::before {
      top: auto;
      bottom: -33px;
      left: 0;
      right: 0;
      margin: auto;
    }
    .main .facilities .container .content .list li p.f20 {
      font-size: 18px;
    }
    .main .facilities .container .content:last-child .flex_box {
      display: block;
    }
    .main .facilities .container .content:last-child .flex_box .box {
      margin-right: 0;
      margin-bottom: 10%;
    }
    .main .facilities .container .content:last-child .flex_box .box:last-child {
      margin-bottom: 0;
    }
    .main .facilities .container .content:last-child .flex_box .box .sub_flex p.f18 {
      font-size: 14px;
    }
    .main .facilities .container .content h3.f25 {
      font-size: 18px;
    }
    .main .facilities .container .content h3.f25 span {
      font-size: 20px;
    }
    .main .facilities .container .content:last-child .flex_box .box:last-child h3 span {
      font-size: 25px;
      left: 0;
    }
    .main .location .bg .google_map .pad p.f25 {
      font-size: 18px;
      line-height: 1.4;
      padding-left: 2rem;
    }
    .main .location .bg .google_map .pad p.f25::before {
      width: 40px;
      height: 33px;
    }
    .main .access .top_text {
      display: block;
    }
    .main .access .top_text p.f30 {
      margin-top: 3%;
      margin-left: 0;
      margin-bottom: 6%;
    }
    .main .access .top_text::before {
      display: none;
    }
    .main .access_content .left {
      width: 100%;
      margin-left: 0;
    }
    .main .access_content .left .box .text .f24 {
      font-size: 16px;
    }
    .main .access .caution {
      font-size: 12px;
      line-height: 1.6;
    }
    .main .insurance .bg .top_mds {
      margin-left: 10px;
      margin-right: 10px;
      text-align: center;
      margin-top: 4%;
    }
    .main .insurance .bg .top_mds::before {
      display: none;
    }
    .main .insurance .t_content .box p.f28 span.f32 {
      font-size: 25px;
    }
    .main .insurance .bg .t_content .box p.f28 {
      font-size: 24px;
    }
    .main .insurance .bg .t_content .box:last-child .sub {
      margin-bottom: 8vw;
    }
    .main .outline h3.f23 {
      margin-top: 10%;
      line-height: 1.4;
    }
    .main .outline .document .flex {
      display: block;
    }
    .footer .copy {
      font-size: 12px;
    }
    .main .concept .box:last-child .right h3 span.f45 .ruby {
      font-size: 10px;
    }
    .main .model .bg .model_content .right .g_sec .mds h3 span.f20 {
      font-size: 16px;
    }
    .main .model .bg .model_content .right .g_sec:nth-child(2) .mds h3::before {
      top: 85%;
    }
    .main .model .bg .vr p.f30 {
      font-size: 22px;
      line-height: 1.3;
      padding: 3% 0px;
      margin-bottom: 4%;
    }
  }
  
  .modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100;
  }
  
  .modal__bg {
    background: rgba(0, 0, 0, 0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
  }
  
  .modal__content {
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 60%;
  }
  
  .modal__content .modal_slider .slick-prev::before,
  .modal__content .modal_slider .slick-next::before {
    top: 30%;
    background-image: url(../img/modal_arrow.svg);
    background-size: auto;
    background-color: #707070;
    border-radius: 50%;
  }
  
  .modal__content .modal_slider .slick-prev::before {
    left: 380%;
  }
  
  .modal__content .modal_slider .slick-next::before {
    right: 380%;
  }
  
  .modal__content .modal_slider .slick-prev::after,
  .modal__content .modal_slider .slick-next::after {
    display: none;
  }
  
  .modal__content .modal_slider li div.con {
    padding: 5px;
    padding-bottom: 6vw;
    background-color: #fff;
    margin: 0 10px;
  }
  
  .modal__content .modal_slider li div.con .img {
    padding: 33% 0;
  }
  
  .modal__content .modal_slider li div.con .text {
    padding: 0 2rem;
  }
  
  .modal__content .modal_slider li div.con .text p.f35 {
    margin: 3% 0 5%;
    color: #3FAF78;
  }
  
  .modal__content .modal_slider li div.con.point {
    padding-bottom: 6.5vw;
  }
  
  .modal__content .modal_slider li div.con.point .text p.f35 {
    font-size: 32px;
  }
  
  .modal__content a.js-modal-close {
    position: absolute;
    bottom: 96%;
    right: 11.5%;
    z-index: 1;
  }
  
  .modal__content .modal_slider li div.con.point .text p.f40 .js-modal-open {
    cursor: pointer;
  }
  
  .scroll-point {
    overflow: hidden;
  }
  
  @media screen and (max-width: 1024px) {
    .modal__content {
      width: 70%;
    }
    .modal__content .modal_slider li div.con .text p.f40 {
      font-size: 35px;
    }
    .modal__content .modal_slider li div.con .text p.f30 {
      font-size: 25px;
    }
    .modal__content a.js-modal-close {
      right: 14%;
    }
    .modal__content .modal_slider li div.con .text {
      padding: 0 1rem;
    }
    .main .location .bg .google_map .pad p.f25::before {
      width: 61px;
      height: 51px;
    }
    .main .insurance .bg .t_content .box:last-child .sub p.f23 span.f43 {
      font-size: 38px;
    }
    .main .concept .box:last-child .right h3 span.f45 .ruby {
      font-size: 6px;
    }
    .main .location .bg .content .flex .box .view {
      font-size: 18px;
    }
  }
  
  @media screen and (max-width: 768px) {
    .modal__content {
      width: 80%;
    }
    .modal__content .modal_slider li div.con .text {
      padding: 0 0.5rem;
    }
    .modal__content .modal_slider li div.con .text p.f30 {
      font-size: 20px;
    }
    .modal__content .modal_slider li div.con .text p.f40 {
      font-size: 30px;
    }
    .modal__content .modal_slider li div.con.point {
      padding-bottom: 7.13vw;
    }
    .modal__content .modal_slider li div.con.point .text p.f40 {
      font-size: 22px;
    }
    .modal__content .modal_slider .slick-prev::before {
      left: 290%;
    }
    .modal__content .modal_slider .slick-next::before {
      right: 290%;
    }
    .main .insurance .bg .t_content .box {
      padding: 1rem 0.5rem;
    }
    .main .insurance .bg .t_content .box p.f28 span {
      font-size: 35px;
    }
    .main .insurance .t_content .box p.f28 {
      font-size: 28px;
    }
    .main .insurance .bg .t_content .box p.f18 {
      font-size: 14px;
    }
    .main .insurance .bg .t_content .box:last-child .sub p.f23 {
      font-size: 23px;
    }
    .main .outline h3.f23 {
      font-size: 22px;
    }
    .main .outline .list li {
      font-size: 16px;
    }
    .main .outline .caution {
      font-size: 14px;
    }
    .main .outline .document .flex .content p {
      font-size: 12px;
    }
    .main .outline .document .flex .content a {
      font-size: 24px;
    }
    .main .outline .document .flex .content div {
      font-size: 24px;
    }
    #globalMenuSp ul li .f21 {
      font-size: 18px;
    }
    .main .concept .box:last-child .right h3 span.f45 .ruby {
      font-size: 2px;
    }
    .main .location .bg .google_map .pad p.f25::before {
      width: 32px;
      height: 27px;
    }
    .header .mv .btn_box a.no_event {
      display: none;
    }
    .header .mv .btn_box a.br768on {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
    }
    .main .land .land_box .left {
      margin-top: 8%;
    }
    .main .model .bg .num_box .bottom {
      font-size: 11px;
    }
    .main .seismic .first .left h3.f32 {
      font-size: 22px;
    }
    .main .seismic .first .left .text,
    .main .seismic .second p.f20 {
      font-size: 16px;
      line-height: 2;
    }
    .main .seismic .third .g_box {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 47%;
              flex: 0 0 47%;
      margin-right: 6%;
    }
    .main .seismic .third .g_box .top_txt h3.f40 {
      font-size: 28px;
    }
    .main .seismic .third .g_box .top_txt h3.f40 .f22 {
      font-size: 14px;
    }
    .main .seismic .third .g_box p.text {
      font-size: 16px;
      line-height: 1.8;
    }
    .main .seismic .third .g_box.left::before {
      right: -5.5vw;
    }
    .main .outline .document .flex .content a.no_event {
      font-size: 16px;
    }
    .main .outline .document .flex .content div.no_event {
      font-size: 16px;
    }
  }
  
  @media screen and (max-width: 480px) {
    .modal__content {
      width: 95%;
    }
    .modal__content .modal_slider li div.con .text p.f40 {
      font-size: 20px;
    }
    .modal__content .modal_slider li div.con .text p.f30 {
      font-size: 16px;
    }
    .modal__content a.js-modal-close {
      right: -1%;
      width: 8%;
    }
    .modal__content .modal_slider li div.con.point .text p.f40 {
      font-size: 17px;
    }
    .main .concept .box .right h3 {
      font-size: 18px;
    }
    .main .concept .box:last-child .right h3 .po::before {
      width: 25px;
      content: '';
      position: absolute;
      background-image: url(../img/top_point.svg);
      top: -13px;
      padding: 4px 0;
      margin: auto;
      left: 0;
      right: 0;
    }
    .main .concept .box:last-child .right h3 {
      font-size: 25px;
    }
    .modal__content .modal_slider .slick-prev::before {
      left: 15px;
    }
    .modal__content .modal_slider .slick-next::before {
      right: 15px;
    }
    .main .outline h3.min {
      margin-top: 10%;
      line-height: 1.4;
    }
    .main .insurance .bg .b_content .flex .banner:last-child {
      margin-right: 0;
    }
    .main .land .land_box .left p.f18 {
      text-align: center;
    }
    .main .location .bg .google_map .pad p.f30 {
      font-size: 19px;
      line-height: 1.4;
      padding-left: 3rem;
    }
    .header .mv {
      padding-left: 0;
    }
    .f150 {
      font-size: 70px;
    }
    .main .land .land_box .left {
      margin-top: 6%;
      margin-bottom: 6%;
    }
    .main .land .land_second .flex .left {
      margin-left: 0;
      margin-bottom: 8%;
    }
    .main .land .land_second {
      padding-right: 10px;
    }
    .main .model .bg .num_box .bottom {
      font-size: 13px;
    }
    .main .facilities .container .content.hight {
      margin-bottom: 15%;
    }
    .main .facilities .container .content.hight h3.f25 span.sub_mds,
    .main .facilities .container .content h3.f25 span.sub_mds {
      top: -8vw;
      left: 0vw;
      font-size: 32px;
    }
    .main .facilities .container .content:last-child .flex_box .box:last-child h3 span {
      top: 0;
      font-size: 32px;
    }
    .main .facilities .container .content.hight .flex_box {
      display: block;
      margin-top: 6%;
    }
    .main .facilities .container .content.hight .flex_box .box {
      margin-right: 0;
      margin-bottom: 8%;
    }
    .main .facilities .container .content.hight .flex_box .box:last-child {
      margin-bottom: 0;
    }
    .main .facilities .container .content.hight .flex_box .box p.f18 {
      line-height: 1.7;
      font-size: 16px;
    }
    .main .facilities .container .content:last-child .flex_box .box:last-child h3 {
      text-align: center;
      padding-left: 5%;
    }
    .main .seismic .first {
      display: block;
    }
    .main .seismic .first .left .mds_box h2 {
      font-size: 32px;
    }
    .main .seismic .first .left h3.f32 {
      font-size: 18px;
      padding: 4% 0;
    }
    .main .seismic .first .right {
      width: 50%;
      margin: 0 auto;
      margin-top: 6%;
    }
    .main .seismic .second .top_txt {
      padding: 6% 0;
    }
    .main .seismic .second .top_txt .f24 {
      font-size: 14px;
    }
    .main .seismic .second .top_txt p.f35 {
      margin-top: 5%;
      font-size: 24px;
    }
    .main .seismic .second .top_txt p.f35 span.f60 {
      margin-left: 0;
      font-size: 26px;
    }
    .main .seismic .second .top_txt p.f35 .f31 {
      font-size: 20px;
    }
    .main .seismic .third {
      display: block;
    }
    .main .seismic .third .g_box {
      margin-right: 0;
      margin-bottom: 25%;
    }
    .main .seismic .third .g_box.left::before {
      bottom: -10%;
      top: auto;
      left: 0;
      right: 0;
      margin: auto;
      width: 40px;
      height: 40px;
    }
    .main .seismic .third .g_box:last-child {
      margin-bottom: 0;
    }
    .main .seismic .third .g_box .top_txt {
      padding: 4% 0;
    }
    .main .seismic .third .g_box .top_txt .f24 {
      font-size: 18px;
    }
    .main .seismic .third .g_box .top_txt h3.f40 {
      margin-top: 2%;
    }
    .main .seismic .third .g_box .top_txt h3.f40 .f22 {
      font-size: 18px;
    }
    .main .seismic .third .g_box p.text {
      height: auto;
    }
    .main .seismic .fourth .top_txt {
      padding: 4% 0;
    }
    .main .seismic .fourth .top_txt .f35 {
      font-size: 18px;
    }
    .main .seismic .fourth .top_txt span {
      margin-left: 7px;
      font-size: 24px;
    }
    .main .insurance {
      margin-top: 15%;
    }
    .main .insurance h2 {
      font-size: 52px;
    }
    .main .outline .list li .item {
      border-right: transparent;
      border-bottom: 0.5px solid #5f5e5e;
    }
    .f25 {
      font-size: 16px;
    }
  
    .header .mv .btn_box a p.f15 {
      font-size: 12px;
    }
    .main .outline .list li .name {
      font-size: 13px;
      padding-left: 2%;
      padding-right: 2%;
    }
  }
  
  .modal__content a.js-modal-close {
      /*
    display: none;
    */
  }

  @media screen and (min-width: 481px) and (max-width: 767px) {
    .header .h_top .icon .img {
      margin: 0 auto;
    }
    .header .h_top .icon a {
      display: block;
    }
    .header .h_top .icon .text span {
      font-size: 10px;
    }
    .header .h_top .icon .text p {
      font-size: 13px;
    }
  }
  
  @media screen and (max-width: 480px) {
    .header .h_top .icon a .min {
      margin-left: 5px;
      margin-top: -4.5px;
    }
    .header .h_top .icon .text span {
      font-size: 10px;
      white-space: nowrap;
    }
    .header .h_top .icon .text p {
      font-size: 13px;
    }
  }


  /* 20230531 タブ表示 */
  .main .model .bg {
    background-color: inherit;
}
  #model .tab__nav {
    margin-bottom: 4%;
  }
  #model .tab__nav ul {
      display: flex;
  }
  #model .tab__nav ul li {
      position: relative;
      text-align: center;
      cursor: pointer;
      width: calc(20% - 5px * 4 / 5);
      position: relative;
      list-style: none;
  }
  #model .tab__nav ul li::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 20px 15px 0;
    border-color: transparent #fff transparent transparent;
    top: 0;
    right: 0;
  }
  #model .tab__nav ul li:not(:first-child) {
    margin-left: 5px;
  }
  #model .tab__nav ul li span {
    padding-top: 10%;
    padding-bottom: 10%;
    display: block;
    font-weight: 700;
    transition: all .3s ease 0s;
    background-color: #EBF5EC;
    color: #006934;
  }
  #model .tab__nav ul li span.is-active {
    background-color: #006934;
    color: #fff;
  }
  #model .tab__nav ul li span:hover  {
    background-color: #006934;
    color: #fff;
  }
  #model .tab__nav ul li a {
    display: block;
  }
  #model .tab-item {
    display: none;
  }
  #model .tab-item.is-active {
    display: block;
  }

  @media screen and (max-width: 767px) {
    #model .tab__nav ul {
      flex-wrap: wrap;
    }
    #model .tab__nav ul li {
      width: calc(33.3333333% - 5px * 2 / 3);
    }
    #model .tab__nav ul li:nth-child(3n + 1) {
      margin-left: 0;
    }
    #model .tab__nav ul li:nth-child(n + 4) {
      margin-top: 5px;
    }
    .main .model h2::before {
      bottom: -4%;
      height: 40px;
    }
  }

.box .img {
  position: relative
}

.box .img .click {
  position: absolute;
    font-weight: 700;
    color: #fff;
    font-size: 1.5rem;
    background-color: #3FAF78;
    width: 108px;
    height: 32px;
    line-height: 39px;
    text-align: center;
    border-radius: 20px;
    display: block;
    font-family: 'Barlow', sans-serif;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
}


/* 20241122 */
.row_box {
  display: flex;
  gap: 3%;
  padding: 40px 14.5681vw 0;
}
.row_item {
  width: 31.333%;
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: #fff;
}
.row_item .row_img img {
  aspect-ratio: 4/3;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.row_item .row_cont {
  margin: 0 auto;
  position: relative;
  padding: 10px 0 20px;
  flex-grow: 1;
}
.row_item .row_cont .text01 {
  margin-bottom: 7px;
  padding-bottom: 7px;
  color: #006835;
  line-height: 1.5;
  font-size: 22px;
  border-bottom: 1px solid #000;
}
.row_item .row_cont .text02 {
  padding: 10px 0 0;
  font-size: 15px;
  line-height: 1.5;
}
.main .model .bg .model_content {
  max-width: calc(1000px + 2%);
  width: 100%;
  margin: 0 auto;
  padding: 0 !important;
}
.model_content .left {
  width: 100% !important;
  display: flex;
}
.main .model .bg .model_content .left {
  flex: 1;
  margin-top: 0;
}
.main .model .bg .model_content .left .img {
  width: 100%;
}
.main .model .bg .model_content .left .img:nth-child(2) {
  margin-top: 0;
  width: 100%;
  margin-left: 0;
}
.tab_content .attention {
  max-width: calc(1000px + 4%);
  width: 100%;
  margin: 0 auto;
  padding: 60px 2% 30px;
  position: relative;
}
.tab_content .attention .icon {
  max-width: 122px;
  width: 12%;
  position: absolute;
  top: 0;
  left: -54px;
}
.tab_content .attention .text {
  display: block;
  width: 100%;
  padding: 0 0 10px 0;
  font-size: 26px;
  line-height: 1.5;
  border-bottom: 8px solid #ffcc00;
}

@media screen and (max-width: 1024px) {
  .main .model .bg .model_content .left {
    flex: 1;
  }
  .tab_content .attention .icon {
    top: -10%;
    left: 5px;
  }
}

@media screen and (max-width: 767px) {
  .row_box {
    flex-direction: column;
    gap: 0;
    padding: 20px 6% 40px;
  }
  .row_item {
    width: 100%;
    margin-bottom: 20px;
  }
  .tab_content .attention {
    padding: 30px 2%;
  }
  .tab_content .attention .text {
    padding: 0 0 10px 0;
    font-size: 18px;
    border-bottom: 5px solid #ffcc00;
  }
  .tab_content .attention .icon {
    width: 14%;
    top: 0;
  }
}
@media screen and (max-width: 570px) {
  .tab_content .attention .icon {
    top: -6%;
  }

}

.kodawari-heading{
  color: #006e37 !important;
  font-size: 20px !important;
  text-align: left !important;
  padding: 0px 14.5681vw 0;
}

.gallery-heading{
  margin-bottom: -5%;
}