#key {
  background: url("../img/yokaichi_menu/key.jpg") no-repeat center/cover;
}

#sec4 {
  padding: 0 0 10vw;
  position: relative;
  z-index: 2;
}
#sec4 .toggle .toggle-link {
  color: #fff;
  font-family: 'Shippori Mincho', serif;
  text-align: center;
  background: url("../img/shared/f_bg2.jpg");
  font-size: 18px;
  line-height: 1.5;
  padding: 15px 0;
  position: relative;
  letter-spacing: 0.1em;
  margin: 0 5%;
}
#sec4 .toggle .toggle-link::before {
  content: '';
  position: absolute;
  background: url("../img/yasu_menu/arrow.png") no-repeat center/100% auto;
  width: 12px;
  height: 14px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 10px;
}
#sec4 .toggle.active .toggle-link::before {
  -webkit-transform: translateY(-50%) rotate(-180deg);
          transform: translateY(-50%) rotate(-180deg);
}
#sec4 .toggle + .toggle {
  margin: 5vw 0 0;
}
#sec4 .toggle .toggle-main {
  padding: 0 5% 40px;
  background: url("../img/shared/f_bg4.jpg");
}
#sec4 .toggle .toggle-main .sub-txt {
  text-align: center;
  padding: 30px 0 20px;
  line-height: 1.5;
}
#sec4 .toggle .toggle-main .flex .flex1 {
  margin-top: 35px;
}
#sec4 .toggle .toggle-main .flex .col {
  position: relative;
}
#sec4 .toggle .toggle-main .flex .col h4 {
  color: #fff;
  text-align: center;
  background-color: #000;
  font-size: 16px;
  line-height: 1.5;
  padding: 12px 0 12px;
  margin: 0 0 10px;
}
#sec4 .toggle .toggle-main .flex .col .sub-txt2 {
  line-height: 1.5;
  border-bottom: 2px dotted;
  padding: 0 0 8px;
}
#sec4 .toggle .toggle-main .flex .col dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  line-height: 1.5;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 2px dotted;
  padding: 12px 0 12px;
}
#sec4 .toggle .toggle-main .flex .col dl.ps dt {
  width: calc(100% - 150px);
}
#sec4 .toggle .toggle-main .flex .col dl.ps dd {
  min-width: 150px;
}
#sec4 .toggle .toggle-main .flex .col dl dd {
  text-align: right;
  color: #720606;
  min-width: 60px;
}
#sec4 .toggle .toggle-main .flex .col dl + h4 {
  margin-top: 35px;
}
#sec4 .toggle .toggle-main .flex .col .img {
  margin: 5vw 0 0;
}
#sec4 .toggle .toggle-main .flex .col .img2 {
  margin: 5vw 0 0;
}
#sec4 .toggle .toggle-main .flex .col + .col {
  margin-top: 35px;
}

#sec5 {
  background: url("../img/shared/f_bg4.jpg");
  padding: 12vw 0;
}
#sec5 h2 {
  margin: 0 20% 0 0;
}
#sec5 .txt {
  padding: 5vw 0 0;
}
#sec5 .gr-img {
  position: relative;
  margin: 30vw 0 10vw;
}
#sec5 .gr-img .sub-txt {
  position: absolute;
  width: 60%;
  top: -25vw;
  right: -8%;
}
#sec5 .sub-txt1 {
  text-align: center;
  margin: 0 0 2vw;
}
#sec5 .flex .col h4 {
  color: #fff;
  text-align: center;
  background-color: #000;
  font-size: 16px;
  line-height: 1.5;
  padding: 7px 0 12px;
  margin: 0 0 8px;
  letter-spacing: 0.1em;
}
#sec5 .flex .col dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  line-height: 1.5;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 2px dotted;
  padding: 13px 0 13px;
}
#sec5 .flex .col dl dd {
  text-align: right;
  color: #720606;
  min-width: 70px;
}
#sec5 .flex .col dl + h4 {
  margin-top: 35px;
}
#sec5 .flex .col .sub-txt2 {
  color: #720606;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 5px;
}
#sec5 .flex .col + .col {
  margin-top: 35px;
}

#sec1 {
  background: url("../img/yokaichi_menu/s1_deco.png") no-repeat top center/100% auto;
  padding: 15vw 0 12vw;
}
#sec1 .txt {
  margin: 5vw 0 10vw;
}
#sec1 .list-btn {
  margin: 0 13% 0;
}
#sec1 .list-btn li + li {
  margin-top: 4vw;
}

#sec2 {
  background: url("../img/yokaichi_menu/s2_deco.png") no-repeat bottom center/200% auto, url("../img/shared/f_bg3.jpg");
  color: #fff;
  padding: 0 0 0;
}
#sec2 .price {
  font-weight: bold;
  font-size: 6.5vw;
  line-height: 1.5;
}
#sec2 .group1 {
  position: relative;
  padding: 10vw 0 12vw;
}
#sec2 .group1 h2 {
  margin: 0 0 5vw;
  position: relative;
  z-index: 2;
}
#sec2 .group1 .img {
  margin: -22vw -15% 3vw -10%;
}
#sec2 .group1 .txt {
  position: relative;
  z-index: 2;
}
#sec2 .group2 {
  position: relative;
}
#sec2 .group2 .sub-txt {
  text-align: center;
  margin: 0 0 3vw;
}
#sec2 .group2 .img {
  margin: 0 0 5vw;
}
#sec2 .group2 dl {
  margin: 0 20% 0 0;
  width: 90vw;
  position: relative;
  top: -50px;
}
#sec2 .group2 dl .price {
  margin: 3vw 0 0;
}
#sec2 .group3 {
  margin: 0 0;
  position: relative;
}
#sec2 .group3 .img {
  margin: 0 0 5vw;
}
#sec2 .group3 dl {
  margin: 0 25% 0 0;
  width: 90vw;
  position: relative;
  top: -50px;
}
#sec2 .group3 dl dd {
  margin: 3vw 0 0;
}
#sec2 .group4 {
  position: relative;
}
#sec2 .group4 dl {
  margin: 5vw 15% 0 0;
  width: 90vw;
  position: relative;
  top: -50px;
}
#sec2 .group4 dl dd {
  margin: 3vw 0 0;
}

#sec3 {
  padding: 0 0 10vw;
  position: relative;
}
#sec3::before {
  content: '';
  position: absolute;
  background: url("../img/yokaichi_menu/s3_deco.png") no-repeat center/100% auto;
  width: 100%;
  height: 95vw;
  top: -5vw;
  left: -55%;
}
#sec3 #sec3-1 {
  padding: 0 0 15vw;
}
#sec3 #sec3-1 h2 {
  position: relative;
  z-index: 2;
  margin: -3vw 0 0 0;
}
#sec3 #sec3-1 .sub-txt {
  text-align: center;
  margin: 7vw 0 1vw;
}
#sec3 #sec3-1 .box {
  border: 4px solid transparent;
  position: relative;
  z-index: 2;
  -o-border-image: url("../img/index/s2_border_box.png") 4 round;
     border-image: url("../img/index/s2_border_box.png") 4 round;
}
#sec3 #sec3-1 .box .inner {
  background: url("../img/yasu/s1_bg_box.png");
  padding: 4vw 5% 5vw;
}
#sec3 #sec3-1 .box .inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 14px;
  line-height: 1.5;
  padding: 11px 0 12px;
  border-bottom: 2px dotted;
}
#sec3 #sec3-1 .box .inner dl dd {
  color: #720606;
  min-width: 60px;
  text-align: right;
}
#sec3 #sec3-2 {
  position: relative;
}
#sec3 #sec3-2 .ttl {
  position: relative;
  color: #fff;
  font-size: 8vw;
  line-height: 1.5;
  display: inline-block;
  padding: 0 7% 3px 0;
}
#sec3 #sec3-2 .ttl::before {
  content: '';
  top: 0;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100vw;
  background: url("../img/shared/f_bg3.jpg");
}
#sec3 #sec3-2 .ttl span {
  position: relative;
  z-index: 2;
}
#sec3 #sec3-2 dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 3vw 0 5vw;
}
#sec3 #sec3-2 dl dt {
  width: 70%;
}
#sec3 #sec3-2 dl .price {
  margin: 3vw 0 0 5vw;
  font-size: 6.5vw;
  font-weight: bold;
  line-height: 1.5;
  color: #3d1000;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.5), 0 0 10px rgba(255, 255, 255, 0.5), 0 0 10px rgba(255, 255, 255, 0.5);
}
#sec3 #sec3-2 .img {
  margin: 0 0 5vw;
}
#sec3 #sec3-2 .img1 {
  position: absolute;
  top: 8px;
  z-index: 2;
  right: -363px;
}
#sec3 #sec3-2 .box {
  border: 4px solid transparent;
  position: relative;
  -o-border-image: url("../img/index/s2_border_box.png") 4 round;
     border-image: url("../img/index/s2_border_box.png") 4 round;
}
#sec3 #sec3-2 .box .inner {
  background: url("../img/yasu/s1_bg_box.png");
  padding: 4vw 5%;
}
#sec5 .gr-img .sub-txt img{position: relative; z-index: 1;}
#sec5 .gr-img .sub-txt span{
  position: absolute;
  top: 9vw;
  right: 0vw;
  width: 52vw;
  font-size: 5.5vw;
  color: #720606;
  line-height: 1.4em;
  z-index: 2;
  text-align: center;
}


#ozara .ozara_box dl {
  /* display: -webkit-box;
  display: -ms-flexbox; */
  display: flex;
  /* -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; */
  margin: 3vw 0 5vw;
  padding-left: 20px;
}
#ozara .ozara_box .left .ttl{
  width: 55%;
}
#ozara .ozara_box dl .price {
  margin: 3vw 0 0 5vw;
  font-size: 6.5vw;
  font-weight: bold;
  line-height: 1.5;
  color: #3d1000;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.5), 0 0 10px rgba(255, 255, 255, 0.5), 0 0 10px rgba(255, 255, 255, 0.5);
}
#ozara .ozara_box .txt{
  text-align: left;
  padding: 0 5vw;
}
#ozara .img {
  margin: 0 0 5vw;
  width: 90%;
  margin: 0 auto;
  padding-bottom: 20px;
  padding-top: 10px;
}
#ozara .sub-txt{
  text-align: center;
}

#ozara .box {
  border: 4px solid transparent;
  position: relative;
  z-index: 2;
  -o-border-image: url("../img/index/s2_border_box.png") 4 round;
     border-image: url("../img/index/s2_border_box.png") 4 round;
     width: 90vw;
     margin: 0 auto;
     margin-bottom: 30px;
    }
#ozara .box .inner {
  background: url("../img/yasu/s1_bg_box.png");
  padding: 4vw 5% 5vw;
}
#ozara .box .inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 14px;
  line-height: 1.5;
  padding: 11px 0 12px;
  border-bottom: 2px dotted;
}
#ozara .box .inner dl dd {
  color: #720606;
  min-width: 60px;
  text-align: right;
}



@media only screen and (min-width: 768px) {
  #sec4 {
    padding: 87px 0 76px;
  }
  #sec4 .toggle {
    margin: 0 -100px;
  }
  #sec4 .toggle .toggle-link {
    max-width: 735px;
    margin: 0 auto;
    font-size: 24px;
    padding: 21px 0 23px;
  }
  #sec4 .toggle .toggle-link::before {
    width: 15px;
    height: 17px;
    right: 183px;
  }
  #sec4 .toggle + .toggle {
    margin: 30px -100px 0;
  }
  #sec4 .toggle .toggle-main {
    padding: 0 90px 50px;
  }
  #sec4 .toggle .toggle-main .sub-txt {
    padding: 20px 0 30px;
  }
  #sec4 .toggle .toggle-main .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #sec4 .toggle .toggle-main .flex .flex1 {
    margin-top: 0;
  }
  #sec4 .toggle .toggle-main .flex .col {
    margin: 0 10px;
    width: 320px;
  }
  #sec4 .toggle .toggle-main .flex .col dl + h4 {
    margin-top: 44px;
  }
  #sec4 .toggle .toggle-main .flex .col .img {
    position: absolute;
    top: 359px;
    left: 299px;
    margin: 0;
  }
  #sec4 .toggle .toggle-main .flex .col .img2 {
    margin: 161px 0 0 -77px;
  }
  #sec4 .toggle .toggle-main .flex .col + .col {
    margin-top: 0;
  }
  #sec4 .toggle .toggle-main .flex .flex1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 680px;
  }
  #sec4 .toggle .toggle-main .flex .flex1 .col1 {
    width: 660px;
    margin-top: 50px;
  }

  #sec5 {
    padding: 54px 0 34px;
  }
  #sec5 h2 {
    margin: 0 0 0 -9px;
    position: relative;
    z-index: 2;
  }
  #sec5 .txt {
    padding: 30px 0 1px 13px;
    width: 385px;
    min-height: 323px;
    margin-left: -10px;
  }
  #sec5 .gr-img {
    position: absolute;
    top: 107px;
    right: -50px;
    margin: 0;
  }
  #sec5 .gr-img .sub-txt {
    width: auto;
    top: -226px;
    right: -17px;
  }
  #sec5 .sub-txt1 {
    margin: 12px 0 4px;
  }
  #sec5 .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #sec5 .flex .col {
    width: 320px;
  }
  #sec5 .flex .col dl + h4 {
    margin-top: 44px;
  }
  #sec5 .flex .col + .col {
    margin-top: 0;
  }

  #sec1 {
    background: url("../img/yokaichi_menu/s1_deco.png") no-repeat top center;
    padding: 37px 0 90px;
  }
  #sec1 h2 {
    margin: 0 0 0 -43px;
  }
  #sec1 .txt {
    margin: 12px 0 107px -30px;
    width: 520px;
  }
  #sec1 .list-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #sec1 .list-btn li {
    width: 32%;
    max-width: 395px;
  }
  #sec1 .list-btn img {
    max-width: 100%;
    height: auto;
  }
  #sec1 .list-btn li + li {
    margin-top: 0;
  }

  #sec2 {
    background: url("../img/yokaichi_menu/s2_deco.png") no-repeat bottom center, url("../img/shared/f_bg3.jpg");
    padding: 0 0 95px;
  }
  #sec2 .price {
    font-size: 47px;
  }
  #sec2 .group1 {
    padding: 63px 0 129px;
  }
  #sec2 .group1 h2 {
    margin: 0 0 30px -13px;
  }
  #sec2 .group1 .img {
    position: absolute;
    top: -40px;
    right: -239px;
    margin: 0;
  }
  #sec2 .group1 .txt {
    width: 500px;
    padding: 0 0 0 3px;
  }
  #sec2 .group2 .sub-txt {
    margin: 0 0 23px;
  }
  #sec2 .group2 .img {
    margin: 0 0 0 -199px;
  }
  #sec2 .group2 dl {
    position: absolute;
    top: 146px;
    right: -80px;
    margin: 0;
    width: auto;
  }
  #sec2 .group2 dl .price {
    margin: 15px 0 0 71px;
  }
  #sec2 .group3 {
    margin: 57px 0 58px;
  }
  #sec2 .group3 .img {
    margin: 0 -201px 0 0;
    text-align: right;
  }
  #sec2 .group3 dl {
    position: absolute;
    top: 96px;
    left: -60px;
    width: auto;
  }
  #sec2 .group3 dl .price {
    margin: 12px 0 0 91px;
  }
  #sec2 .group4 .img {
    margin: 0 0 0 -296px;
  }
  #sec2 .group4 dl {
    position: absolute;
    top: 102px;
    right: -50px;
    margin: 0;
    width: auto;
  }
  #sec2 .group4 dl .price {
    margin: 21px 0 0 78px;
  }

  #sec3 {
    padding: 0;
    position: relative;
  }
  #sec3::before {
    width: 713px;
    height: 734px;
    top: 0;
    left: auto;
    right: calc(50% + 288px);
  }
  #sec3 .wrap {
    z-index: 2;
  }
  #sec3 #sec3-1 {
    padding: 0 0 64px;
  }
  #sec3 #sec3-1 h2 {
    margin: -25px 0 0 -30px;
  }
  #sec3 #sec3-1 .sub-txt {
    margin: 42px 0 5px;
  }
  #sec3 #sec3-1 .box {
    width: 628px;
    margin: 0 auto;
  }
  #sec3 #sec3-1 .box .inner {
    padding: 10px 88px 16px 65px;
  }
  #sec3 #sec3-2 .ttl {
    font-size: 50px;
    line-height: 1.5;
    padding: 0 45px 3px 0;
  }
  #sec3 #sec3-2 dl {
    margin: 13px 0 85px -23px;
  }
  #sec3 #sec3-2 dl dt {
    width: auto;
  }
  #sec3 #sec3-2 dl .price {
    margin: 39px 0 0 15px;
    font-size: 47px;
  }
  #sec3 #sec3-2 .img {
    position: absolute;
    top: 257px;
    left: -129px;
    margin: 0;
  }
  #sec3 #sec3-2 .img1 {
    position: absolute;
    top: 8px;
    z-index: 2;
    right: -330px;
  }
  #sec3 #sec3-2 .box {
    width: 486px;
    margin: 0 -46px 0 auto;
  }
  #sec3 #sec3-2 .box .inner {
    padding: 23px 20px 12px 23px;
  }
  #sec5 .gr-img .sub-txt span{
    position: absolute;
    top: 55px;
    right: 5px;
    width: 400px;
    font-size: 47px;
  }
  #ozara{
    margin-top: 40px;
    position: relative;
    width: 1000px;
    margin: 0 auto;
  }
  #ozara .ozara_box{
     display: flex;
     position: relative;
  }
  #ozara .ozara_box dl {
    /* margin: 13px 0 85px 150px; */
    display: block;
    padding-right: 20px;
    padding-top: 40px;
  }
  #ozara .ozara_box .ttl{
    width: 55%;
  }
  #ozara .ozara_box dl .price {
    margin: 15px 0 0 15px;
    font-size: 47px;
  }
  #ozara .ozara_box .txt{
    text-align: left;
    margin-top: -30px;
  }
  #ozara .img {
    margin: 0 0 5vw;
    width: 80%;
    margin: 0 auto;
    padding-bottom: 30px;
    padding-top: 60px;
  }
  #ozara .box{
    width: 650px;
    margin: 0 auto;
  }
  #ozara .box .inner {
    background: url("../img/yasu/s1_bg_box.png");
    padding: 30px 50px;
  }
  
}
@media only screen and (min-width: 1300px) {
  #sec1 {
    background: url("../img/yokaichi_menu/s1_deco.png") no-repeat top right;
  }
  #sec1 .list-btn {
    margin: 0 -126px 0 -129px;
  }

  #sec2 .group2 dl {
    right: -121px;
  }
  #sec2 .group4 .img {
    margin-left: -196px;
  }
  #sec2 .group4 dl {
    right: -177px;
  }

  #sec5 .gr-img {
    right: -160px;
  }

  #sec3 #sec3-1 h2 {
    margin: -25px 0 0 -71px;
  }
}
@media only screen and (min-width: 1250px) {
  #sec4 .toggle-link:hover {
    opacity: 0.8;
  }

  #sec2 .group3 dl {
    left: -95px;
  }
}
