@media screen and (max-width: 780px) {
  /*------------------------------ヘッダー*/
  /*------------------------------*/
  /*------------------------------*/
  #site-header .drawer {
    padding: 0 4vw;
  }
  #site-header .menu.open li {
    background-color: rgba(192, 192, 192, 0.9);
  }
  #site-header .menu.open li.suv_a_li {
    background-color: rgba(188, 143, 223, 0.9);
  }
  #site-header .menu ul li {
    padding: 0;
    border-bottom: 1px solid #999;
  }
  #site-header .menu ul li a {
    padding: 2vw;
    display: block;
    font-size: 1.4rem;
  }
  /*------------------------------フッター*/
  /*------------------------------*/
  /*------------------------------*/
  #site-footer > nav {
    display: none;
  }
  #site-footer {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  #site-footer .sns {
    order: 2;
  }
  #site-footer .sns-emb {
    order: 1;
    width: 100%;
    max-width: 100%;
    padding: 8vw;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  #site-footer .copy {
    order: 3;
  }
  /*------------------------------共通*/
  /*------------------------------*/
  /*------------------------------*/
  main {
    overflow: hidden;
  }
  a.navbar_brand {
    width: 50vw;
    max-width: 283px;
    display: block;
  }
  a.navbar_brand {
    background-image: url(../img/h1.png);
    height: 50px;
    width: 110px;
    margin-top: 0;
    background-size: contain;
    text-indent: -99999px;
  }
  a.navbar_brand img {
    width: 100%;
  }
  /*------------------------------section*/
  /*------------------------------*/
  /*------------------------------*/
  #a_1, #a_2, #a_3, #a_4 {
    padding-top: 20px;
    margin-top: -20px;
  }
  .section {
    /*    margin-top: 3em;*/
  }
  .section {
    margin-bottom: 70px;
  }
  .section-oshinagaki {
    background-image: none;
    background-color: #efefef;
    padding-top: 2em;
    margin-top: 0;
  }
  .section-oshinagaki, .menu_2, .menu_3 {
    background-image: none;
    background-color: #efefef;
  }
  .menu_2, .menu_3 {
    border-top: 2em solid #fff;
  }
  .section-slide .menu_3 {
    margin-bottom: 0;
  }
  .menu_1, .menu_2, .menu_3 {
    padding-bottom: 2em;
    margin-bottom: 0;
  }
  .menu_3 {
    margin-bottom: 30px;
  }
  .section .desc {
    display: block;
    margin: 0 auto 1em;
    width: 100%;
  }
  .section-intro .desc h2 {
    margin-right: 0;
    background-size: cover;
    height: 0;
    width: 100%;
    background-position: center top;
    padding-top: calc(155 / 750 * 100%);
  }
  .section-oshinagaki h2 {
    background-image: url(../img/sp/h2_1.png);
  }
  .section-info .desc h2 {
    background-image: url(../img/sp/h2_2.png);
  }
  .section-shidasi .desc h2 {
    background-image: url(../img/sp/h2_3.png);
  }
  .section-access .desc h2 {
    background-image: url(../img/sp/h2_4.png);
  }
  .section h3 {
    margin-right: 0;
    background-size: cover;
    height: 0 !important;
    width: 100%;
    background-position: right top;
    padding-top: calc(66 / 500 * 100%);
  }
  .section .h3_out {
    margin: 0 auto 1em !important;
  }
  .section-oshinagaki .menu_1 h3 {
    background-image: url(../img/sp/h3_1.png);
  }
  .section-oshinagaki .menu_2 h3 {
    background-image: url(../img/sp/h3_2.png);
  }
  .section-oshinagaki .menu_3 h3 {
    background-image: url(../img/sp/h3_3.png);
  }
  .section .desc p {
    padding-top: 1em;
    word-break: normal;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: normal;
  }
  .section .desc p br {
    display: none;
  }
  .mypattern .slick-slide p {
    font-size: 1.6rem;
  }
  .mypattern .slick-slide span {
    font-size: 1.3rem;
  }
  .section-info {
    padding-top: 0;
    margin-top: 0;
    background-position: center top;
    margin-bottom: 30px;
  }
  .section-info ul.resp-tabs-list {
    display: none;
  }
  h2.resp-accordion br, h2.resp-accordion i {
    display: none;
  }
  .section-shidasi {
    margin-bottom: 0;
    background-position: center top;
    padding-top: 2em;
    padding-bottom: 2em;
  }
  .section-shidasi .mypattern {
    margin-bottom: 20px;
  }
  .section.section-access .desc {
    margin-bottom: 1em;
    position: relative;
    z-index: 10;
  }
  .section.section-access .tenpo {
    flex-direction: column;
  }
  .section.section-access .tenpo h3 {
    position: inherit;
    height: auto !important;
    font-size: 1.8rem;
    padding: 0;
  }
  .section.section-access .tenpo h3 span {
    padding: 0.5em;
    display: block;
  }
  .section.section-access .slider-nav.slick-initialized.slick-slider {
    order: 3;
  }
  .section.section-access .slider_gallery, .section.section-access #map, .section.section-access .slider-nav.slick-initialized.slick-slider {
    width: 100%;
  }
  .section.section-access .slider_gallery {
    order: 2;
    width: 100%;
  }
  .section.section-access #map {
    min-height: 50vh;
    order: 1;
  }
  .section.section-access .slider-nav.slick-initialized.slick-slider {
    padding: 1em 0;
  }
  .section.section-access .address h3 {
    padding-top: 0;
  }
  .resp-tab-content .text-area-out {
    padding: 1em 0;
  }
  .resp-tab-content .text-area {
    flex-direction: column;
  }
  .resp-tab-content .text-area .hinmoku-area {
    order: 1;
    margin-bottom: 1em;
  }
  .tategaki-area {
    order: 2;
  }
  .tategaki-area p {
    writing-mode: inherit;
    line-height: 1.4;
  }
  .section-info .text-area-out {
    padding: 1em 0;
  }
  .resp-tab-content .text-area .hinmoku-area {
    margin-left: 0;
  }
  .section.section-access .tenpo-border {
    margin: 3em 0;
  }
  .section.section-access .gmap {
    min-height: 50vh;
    order: 1;
    width: 100%;
  }
  /*------------------------------.section-intro*/
  /*------------------------------*/
  /*------------------------------*/
  .section-intro {
    margin-top: 0;
    margin-bottom: 70px;
  }
  .section-intro .fl {
    display: block;
    margin-bottom: 2em;
  }
  .section-intro .fl > div {
    width: 100%;
  }
  .section-intro h2 {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 0.5em;
  }
  .section .desc p {
    padding-top: 0.5em;
  }
  .section-intro .fl-1 {
    display: none;
  }
  .section-intro .sp {
    padding-top: 57.42%;
    background-size: cover;
    background-position: center;
    margin: 0 -10px;
  }
  .section-intro .fl-2 {
    padding-left: 0;
    padding: 0 10px;
  }
  .section-intro .fl-rebirth .fl-2 {
    padding: 0 10px;
  }
  .section-intro .desc h2 {
    height: auto;
    padding-top: 0;
  }
  .bg-video-wrap {
    margin-bottom: 30px;
  }
  .fl-logo {
    flex-direction: column;
    align-items: center;
  }
  .fl-logo-1 {
    width: 100%;
    justify-content: center;
    margin-bottom: 1rem;
  }
  .fl-logo-2 {
    padding: 0 10px;
  }
  .section-logo h2 {
    display: none;
  }
  .desc {
    padding: 0;
    max-width: 100%;
  }
}