body{font-family: 'Noto Serif JP', serif; overflow-x: hidden; display:flex; flex-direction: column; height:auto !important; min-height:100vh; justify-content: flex-start;}
body main{flex:1;}
body main > *:not(nav){flex:1;}
main section > div{height:auto !important; width:100%;}
body:not(#index) main section > div > div{padding-top:5rem; padding-bottom:3.5rem;}
body:not(#index) main > *:not(nav){background-color:#3B2001;}
#index main section > div{display:flex !important; height:100vh !important;}
.sp-logo{display:block !important;}

main #slide .container{display:flex; padding-bottom:12rem; align-items:flex-end;}
main #slide .container.top{justify-content:center; align-items:center;}
body main #slide .container.top h2{text-align:center !important;}

.drawer-nav{text-align:left; background-color:#3B2001;}
.sp-logo img{width: 150px !important;}
#index article{width:100%;}
@media (min-width:768px) {
#index article{width:45%;}
main #slide .container{padding-bottom:8rem;}
#index main #slide .container.section04{justify-content:center; align-items:center;}
#index main #slide .container.top article,
#index main #slide .container.section04 article{width:90% !important;}
}
button.drawer-hamburger{display:block;}
@media (min-width: 1440px){
  .sp-logo{display:none !important;}
    main{display:flex; justify-content:space-between;}
    main nav.drawer-nav{overflow:visible; position:relative; height:auto; padding: 2rem 1rem; right:0 !important;}
    main nav.drawer-nav > div{position:fixed;}
    main section > div{height:auto !important; width:100%;}
    
    main #slide .container{max-width: 1320px; padding-top:10vw; padding-bottom:5rem;}
    button.drawer-hamburger{display:none;}
}

.top > article > h2:first-child{font-size:2.3rem; letter-spacing:.3rem;}
.top > article > h2:first-child .small{font-size:1rem; display:block; margin-top:10px;}
@media (min-width:768px) {
  .top > article > h2:first-child{font-size:3rem;}
}

@media (min-width:768px) {
.section03 a {border-bottom:1px solid #ffffff; padding-bottom:.8rem; display:block;}
}

.section04 > article{overflow:hidden; width:100%;}
#section04 div.row > div:first-child{border-bottom:2px solid #ffffff; padding-bottom:3rem;}
#section04 div.row > div:last-child h3{margin-top:2rem;}
#section04 div.btn-area{display:flex; margin:1rem -0.25rem 0;}
#section04 div.btn-area a{flex:0 0 calc(50% - 0.5rem); width:auto; margin:0 0.25rem;}
@media (min-width:768px) {
  #section04 div.row > div:first-child{border-bottom:none; padding-bottom:0;}
  #section04 div.row > div:last-child h3{margin-top:3.5rem;}
}
@media (min-width: 992px) {
  #section04 div.btn-area a{flex:0 0 auto; width:150px;}
}


#sectionTop {background-image: url(../images/bg_section01.jpg); background-position:14% center !important;}
#section01 {background-image: url(../images/bg_section02_sp.jpg); background-position:30% center !important;}
#section02 {background-image: url(../images/bg_section03_sp.jpg); background-position:30% center !important;}
#section03 {background-image: url(../images/bg_section04_sp.jpg); background-position:60% center !important;}
#section04 {background-image: url(../images/bg_section05_sp.jpg); background-position:5% center !important;}
#section05 {background-image: url(../images/bg_section06_sp.jpg); background-position: center !important;}
@media (min-width:768px) {
#index section{background-size: cover !important; background-position: center !important;}
#section01 {background-image: url(../images/bg_section02.jpg);}
#section02 {background-image: url(../images/bg_section03.jpg);}
#section03 {background-image: url(../images/bg_section04.jpg);}
#section04 {background-image: url(../images/bg_section05.jpg);}
#section05 {background-image: url(../images/bg_section06.jpg);}
}

#sectionTop .news__items{display:block;}
@media (min-width:768px) {
#sectionTop .news__items{display:flex;}
}

.container_s {max-width: 1000px; margin:0 auto;}
.container_ss {max-width: 800px; margin:0 auto;}
.container_xxs {max-width: 600px; margin:0 auto;}
.container_smallest {max-width: 300px; margin:0 auto;}

.btn-default{border:#ffffff 1px solid; color:#ffffff; border-radius:0; padding:.75rem 1rem;}
.btn-default:hover{color:#ffffff !important; background-color:rgba(255,255,255,0.2);}


.outer_link{display:flex; align-items:center;}
.outer_link:after{content:''; width:20px; height:20px; margin-left:10px; background-repeat: no-repeat; background-size:auto 100%; display:inline-block; background-image: url(../images/icon_outerlink.svg);}

/*gridのgutter調整*/
.row-0{
    margin-left:0px;
    margin-right:0px;
  }
  .row-0 > div{
        padding-right:0px;
        padding-left:0px;
    }
    .row-10{
      margin-left:-5px;
      margin-right:-5px;
  }
  
  .row-10 > div{
          padding-right:5px;
          padding-left:5px;
  }
  
  .row-20{
    margin-left:-10px;
    margin-right:-10px;
  }
  .row-20 > div{
        padding-right:10px;
        padding-left:10px;
    }
  .row-30,.row-40,.row-50,.row-60{
    margin-left:-10px;
    margin-right:-10px;
  }
  .row-30 > div,.row-40 > div,.row-50 > div,.row-60 > div{
        padding-right:10px;
        padding-left:10px;
    }
  @media (min-width:768px) {
  .row-30{
    margin-left:-15px;
    margin-right:-15px;
  }
  .row-30 > div{
        padding-right:15px;
        padding-left:15px;
    }
  .row-40{
    margin-left:-20px;
    margin-right:-20px;
  }
  .row-40 > div{
        padding-right:20px;
        padding-left:20px;
    }
  
  .row-50{
    margin-left:-25px;
    margin-right:-25px;
  }
  .row-50 > div{
        padding-right:25px;
        padding-left:25px;
    }
  .row-60{
    margin-left:-30px;
    margin-right:-30px;
  }
  .row-60 > div{
        padding-right:30px;
        padding-left:30px;
    }
  
    .row-b10 > div{margin-bottom:10px;}
    .row-b20 > div{margin-bottom:20px;}
    .row-b30 > div{margin-bottom:30px;}
    .row-b40 > div{margin-bottom:40px;}
}


body h2{text-align:left; margin-bottom:4rem; font-size: calc(2rem + 0.9vw);}
/*
body#index h3{font-family:'simsam' ;}
h3,
h4,
h5,
h6{font-family: '源ノ明朝', 'serif';}
*/
body:not(#index) h3 {margin-top:3.5rem; margin-bottom:1.5rem; font-size: 1.5rem; }
body:not(#index) h4 {font-size: 1.375rem; margin-top:2rem; margin-bottom: 0.75rem;}
body:not(#index) h5 {margin-top: 1.5rem; margin-bottom: 0.5rem;}
@media (min-width:576px) {
    body h2{font-size: calc(1.325rem + 0.9vw);}
}
@media (min-width:768px) {
    body:not(#index) h3 {font-size: 1.7rem; }
    body:not(#index) h4 {font-size: 1.55rem;}
    body:not(#index) h5 {font-size: 1.35rem;}
}
body:not(#index) h3 > small{font-size:1.3rem; display:inline-block; margin-left:10px;}
body:not(#index) h3[data]{position:relative; font-size:1rem;}
body:not(#index) h3[data]::before{content: attr(data); font-family: 'Noto Serif JP', serif; display:inline-block; font-size:2rem; margin-right:10px;}
body:not(#index) h4[data]{position:relative; font-size:1rem;}
body:not(#index) h4[data]::before{content: attr(data); font-family: 'Noto Serif JP', serif; display:inline-block; font-size:1.7rem; margin-right:10px;}


dl.menulist{margin-bottom:0;}
dl.menulist > div{display:flex; margin-bottom:.5rem;}
dl.menulist > div dt{flex:1; font-weight:400;}
dl.menulist > div dt strong{width:60px; margin-right:10px; font-weight:400; display:block;}
dl.menulist > div dd{width:35px; margin:0 0 0 10px; text-align:right;}
dl.menulist.menulist-size > div dd{width:135px;}
.border div.row > div:last-child dl.menulist > div:last-child{margin-bottom:0;}
@media (min-width: 992px) {
  dl.menulist > div dt{display:flex; }
  dl.menulist > div dt strong{width:60px; margin-right:10px; font-weight:400; white-space: nowrap;}
  .border dl.menulist > div:last-child{margin-bottom:0;}
}

#page-menu .container_xxs{max-width:450px;}
body#page-menu h4{font-size:1.2rem; margin-top:0;}
#page-menu img{margin-bottom:1.5rem;}
#page-menu ul.nav{display:flex; margin:4rem -5px 0;}
#page-menu ul.nav > li{flex:1; margin:0 5px;}
#page-menu ul.nav > li > a{display:block; border:1px solid #ffffff; font-family: 'Noto Serif JP', serif;padding:.5rem; text-align:center; font-size:1.2rem; font-weight:500; -webkit-transition: all .3s; transition: all .3s; }
#page-menu ul.nav > li > a:hover{background-color:rgba(255,255,255,0.2);}
#page-menu div.row.food_double > div{display:flex; flex-direction: column;}
#page-menu div.row.food_double > div > p{margin-top:auto; text-align:right;}
@media (min-width:768px) {
    #page-menu img{margin-bottom:0;}
    #page-menu .container_xxs{max-width:600px;}
    #page-menu ul.nav > li > a{padding:1rem;}
    #page-menu div.row.food_double{margin-top:3.5rem;}
    body#page-menu div.row.food_double h3{margin-top:0;}
    #page-menu div.row.food_double > div:first-child{border-right:1px solid #ffffff; }
}

body#page-airport .access{margin-top:3.5rem;}
#page-airport .border .container_smallest{max-width: inherit;}
#page-airport .border p{margin-bottom:.5rem;}
#page-airport .border ul{display:flex; flex-wrap:wrap; align-items:center; list-style-type:none; padding:0;}
#page-airport .border ul li:after{content:'/'; display:inline-block; padding:0 10px;}
#page-airport .border ul li:last-child:after{display:none;}
dl.address > div{display:flex; margin-bottom:.5rem;}
dl.address > div dt{font-weight:normal; margin:0;}
dl.address > div:not(:first-child) dt{width:100px; }
dl.address > div dd{flex:1; margin:0;}
@media (min-width:768px) {
#page-airport div.row.access > div{display:flex; align-items:center;}
  #page-airport .border .container_smallest{max-width: 300px;}
}


.archive, .single {background-color: #3B2001 !important;}