@media screen and (min-width: 1081px), print {
  .visit .row {
    padding-top: 63px;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 48px;
  }
  .visit .row > p {
    margin-bottom: 69px;
  }
  .visit p {
    font-size: 1.6rem;
    line-height: 30px;
    letter-spacing: 1.2px;
  }
  .visit article {
    margin-bottom: 72px;
  }
  .visit article .ttl_art {
    margin-bottom: 21px;
  }
  .visit article ul.nb {
    counter-reset: li;
    margin-bottom: 20px;
  }
  .visit article ul.nb li {
    counter-increment: li;
    font-size: 1.6rem;
    line-height: 30px;
    letter-spacing: 1.2px;
    position: relative;
    padding-left: 19px;
  }
  .visit article ul.nb li::before {
    content: counter(li) ".";
    position: absolute;
    left: 0;
    top: 0;
  }
  .visit article dl.doc {
    padding-bottom: 8px;
  }
  .visit article dl.doc dt {
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 30px;
    letter-spacing: 1.2px;
    margin-bottom: 10px;
  }
  .visit article dl.doc dd ul.ulink {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .visit article dl.doc dd ul.ulink li {
    width: 438px;
  }
  .visit article dl.doc dd ul.ulink li:nth-last-of-type(1), .visit article dl.doc dd ul.ulink li:nth-last-of-type(2) {
    border-bottom: 1px dashed #dcdcdc;
  }
  .visit article .tour {
    padding: 0 80px 80px;
  }
  .visit article .tour p {
    background: #f3f3f3;
    font-size: 1.6rem;
    line-height: 24px;
    text-align: center;
    padding: 8px;
    position: relative;
  }
  .visit article .tour p:not(:last-of-type) {
    margin-bottom: 34px;
  }
  .visit article .tour p:not(:last-of-type)::after {
    content: "";
    width: 19px;
    height: 11px;
    background: url("../../img/arrow_vs.png") no-repeat;
    position: absolute;
    bottom: -22px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .visit article .tour p span.ml {
    margin-left: 10px;
  }
  .visit article .tour p span.tt_time {
    margin-left: 22px;
  }
  .visit article .tour p span small {
    display: inline-block;
    min-width: 70px;
    height: 20px;
    background: #780e00;
    font-size: 1.2rem;
    line-height: 20px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    margin-top: -2px;
  }
  .visit article .g_table dl dd .g_box {
    padding: 12px 11px 17px;
  }
  .visit article .g_table dl dd p .adr {
    margin-left: 25px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .visit .row {
    padding-top: 5.83333vw;
    padding-bottom: 4.44444vw;
  }
  .visit .row > p {
    margin-bottom: 6.38889vw;
  }
  .visit p {
    font-size: 1.48148vw;
    line-height: 2.77778vw;
    letter-spacing: 0.11111vw;
  }
  .visit article {
    margin-bottom: 6.66667vw;
  }
  .visit article ul.nb {
    counter-reset: li;
    margin-bottom: 1.85185vw;
  }
  .visit article ul.nb li {
    counter-increment: li;
    font-size: 1.48148vw;
    line-height: 2.77778vw;
    letter-spacing: 0.11111vw;
    position: relative;
    padding-left: 1.85185vw;
  }
  .visit article ul.nb li::before {
    content: counter(li) ".";
    position: absolute;
    left: 0;
    top: 0;
  }
  .visit article dl.doc {
    padding-bottom: 0.92593vw;
  }
  .visit article dl.doc dt {
    font-weight: bold;
    font-size: 1.48148vw;
    line-height: 2.77778vw;
    letter-spacing: 0.11111vw;
    margin-bottom: 0.92593vw;
  }
  .visit article dl.doc dd ul.ulink {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .visit article dl.doc dd ul.ulink li {
    width: -webkit-calc(50% - 2.77778vw);
    width: -moz-calc(50% - 2.77778vw);
    width: calc(50% - 2.77778vw);
  }
  .visit article dl.doc dd ul.ulink li:nth-last-of-type(1), .visit article dl.doc dd ul.ulink li:nth-last-of-type(2) {
    border-bottom: 1px dashed #dcdcdc;
  }
  .visit article .tour {
    padding: 0 7.40741vw 7.40741vw;
  }
  .visit article .tour p {
    background: #f3f3f3;
    font-size: 1.48148vw;
    line-height: 2.22222vw;
    text-align: center;
    padding: 0.74074vw;
    position: relative;
  }
  .visit article .tour p:not(:last-of-type) {
    margin-bottom: 3.24074vw;
  }
  .visit article .tour p:not(:last-of-type)::after {
    content: "";
    width: 1.75926vw;
    height: 1.01852vw;
    background: url("../../img/arrow_vs.png") no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    position: absolute;
    bottom: -2.22222vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .visit article .tour p span.ml {
    margin-left: 0.92593vw;
  }
  .visit article .tour p span.tt_time {
    margin-left: 2.03704vw;
  }
  .visit article .tour p span small {
    display: inline-block;
    min-width: 6.48148vw;
    height: 1.85185vw;
    background: #780e00;
    font-size: 1.11111vw;
    line-height: 1.85185vw;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    margin-top: -0.18519vw;
  }
  .visit article .g_table dl dd .g_box {
    padding: 1.38889vw 1.01852vw;
  }
  .visit article .g_table dl dd p .adr {
    margin-left: 2.31481vw;
  }
}

@media screen and (max-width: 767px) {
  .visit .row {
    padding-top: 9.11458vw;
    padding-bottom: 5.20833vw;
  }
  .visit .row > p {
    margin-bottom: 9.11458vw;
  }
  .visit p {
    font-size: 3.38542vw;
    line-height: 4.6875vw;
    letter-spacing: 0.15625vw;
  }
  .visit article {
    margin-bottom: 10.41667vw;
  }
  .visit article ul.nb {
    counter-reset: li;
    margin-bottom: 5.20833vw;
  }
  .visit article ul.nb li {
    counter-increment: li;
    font-size: 3.38542vw;
    line-height: 4.6875vw;
    letter-spacing: 0.19531vw;
    position: relative;
    padding-left: 4.55729vw;
    margin-bottom: 1.30208vw;
  }
  .visit article ul.nb li::before {
    content: counter(li) ".";
    position: absolute;
    left: 0;
    top: 0;
  }
  .visit article dl.doc {
    padding-bottom: 2.60417vw;
  }
  .visit article dl.doc dt {
    font-weight: bold;
    font-size: 3.38542vw;
    line-height: 4.6875vw;
    letter-spacing: 0.15625vw;
    margin-bottom: 2.60417vw;
  }
  .visit article .tour {
    padding: 0 0 10.41667vw;
  }
  .visit article .tour p {
    background: #f3f3f3;
    font-size: 3.125vw;
    line-height: 4.6875vw;
    text-align: center;
    padding: 1.95312vw;
    position: relative;
  }
  .visit article .tour p:not(:last-of-type) {
    margin-bottom: 6.51042vw;
  }
  .visit article .tour p:not(:last-of-type)::after {
    content: "";
    width: 2.47396vw;
    height: 1.43229vw;
    background: url("../../img/arrow_vs.png") no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    position: absolute;
    bottom: -4.03646vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .visit article .tour p span.ml {
    margin-left: 2.60417vw;
  }
  .visit article .tour p span.tt_time {
    display: block;
    margin-top: 1.30208vw;
  }
  .visit article .tour p span small {
    display: inline-block;
    min-width: 13.02083vw;
    height: 3.90625vw;
    background: #780e00;
    font-size: 2.60417vw;
    line-height: 3.90625vw;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    margin-top: -0.26042vw;
  }
  .visit article .g_table dl {
    display: block;
  }
  .visit article .g_table dl dt {
    width: 100%;
  }
  .visit article .g_table dl dd {
    width: 100%;
    border-top: none;
    border-left: 1px solid #bebebe;
  }
  .visit article .g_table dl dd p .adr {
    display: block;
  }
}
