@media only screen and (min-width: 768px) {
   .nav-fixed {
      padding: 65px 0 0 170px;
   }

   .nav-fixed .label {
      width: 426px;
      left: calc(50% + 82px);
   }

   .nav-fixed .nav {
      gap: 20px;
   }

   .nav-fixed .nav .sushi {
      padding-bottom: 6px;
   }

   .nav-fixed .nav .sushi>p {
      display: block;
      border-bottom: 1px solid #5b5b5b;
      padding: 0 10px 10px;
      cursor: pointer;
      position: relative;
   }

   .nav-fixed .nav .sushi>p:before {
      top: 100%;
   }

   .nav-fixed .nav .sushi>p:after {
      top: calc(100% + 12px);
   }
}

@media only screen and (min-width: 1201px) {
   .nav-fixed .nav {
      gap: 47px;
   }

   .nav-fixed .label {
      width: 462px;
      left: calc(50% + 98px);
   }
}

#key {
   position: relative;
   z-index: 2;
}

#key .slick-dots {
   justify-content: flex-end;
   margin-top: -10vw;
}

#key .slick-dots li {
   width: 25%;
   height: 20vw;
   background: url(../img/english/key1.jpg) no-repeat center/cover;
}

#key .slick-dots li:nth-child(2) {
   background: url(../img/english/key2.jpg) no-repeat center/cover;
}

#key .slick-dots li:nth-child(3) {
   background: url(../img/english/key3.jpg) no-repeat center/cover;
}

#key .slick-dots li button {
   background: url(../img/english/line_th.jpg) repeat-x top left, url(../img/english/line_th.jpg) repeat-x bottom left, url(../img/english/line_th1.jpg) repeat-y top left, url(../img/english/line_th1.jpg) repeat-y top right rgba(0, 0, 0, 0.5);
   opacity: 1 !important;
}

#key .slick-dots li.slick-active button {
   background: url(../img/english/line_th.jpg) repeat-x top left, url(../img/english/line_th.jpg) repeat-x bottom left, url(../img/english/line_th1.jpg) repeat-y top left, url(../img/english/line_th1.jpg) repeat-y top right rgba(0, 0, 0, 0);
}

@media only screen and (min-width: 768px) {
   #key .slick-dots {
      justify-content: space-between;
      gap: 0px;
      width: 486px;
      margin-top: 0;
      position: absolute;
      bottom: -32px;
      right: 10px;
   }

   #key .slick-dots li {
      width: 150px;
      height: 130px;
   }
}

#sec1 {
   position: relative;
}

@media only screen and (max-width: 767px) {
   #sec1 {
      background: url(../img/english/sec1_bg.jpg) no-repeat top center/cover;
      padding: 20vw 0 0;
   }

   #sec1 .photo-fix {
      width: 100%;
      height: 100vh;
      position: absolute;
      top: 0;
      left: 0;
   }

   #sec1 .photo-fix img {
      width: 100%;
      height: 100vh;
      position: absolute;
      object-fit: cover;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0);
   }

   #sec1 .group {
      position: relative;
      z-index: 8;
      text-shadow: 0 0 10px rgba(0, 0, 0, 1.0);
   }

   #sec1 .group h2 {
      padding: 15vw 20% 5vw;
   }

   #sec1 .group .text {
      padding: 0 10% 20vw;
   }

   #sec1 .group .text p+p {
      margin-top: 5vw;
   }

   #sec1 .group-photo {
      padding-bottom: 200vw;
      opacity: 0.8;
   }

   #sec1 .group-photo .photo1 {
      display: flex;
      padding: 0 3% 15vw;
   }

   #sec1 .group-photo .photo1 .img2 {
      margin: 15vw 0 0 10%;
   }

   #sec1 .group-photo .photo2 {
      display: flex;
      padding: 0 3% 1vw;
   }

   #sec1 .group-photo .photo2 .img4 {
      margin: 15vw 0% 0 15%;
   }
}

@media only screen and (min-width: 768px) {
   #sec1 {
      padding: 0 0 150px;
   }

   #sec1 .photo-fix {
      width: 100%;
      height: 100vh;
      position: absolute;
      top: -515px;
      bottom: 0;
      left: 0;
   }

   #sec1 .group {
      display: flex;
      align-items: center;
      height: 100vh;
      position: relative;
      z-index: 1;
   }

   #sec1 .text {
      letter-spacing: 0;
      padding-top: 77px;
   }

   #sec1 .text p+p {
      padding-top: 37px;
   }

   #sec1 .group-photo {
      width: 1000px;
      margin: 0 auto;
      padding-bottom: 120px;
      position: relative;
   }

   #sec1 .group-photo .img1 {
      width: 447px;
      position: absolute;
      top: 0;
      left: -260px;
   }

   #sec1 .group-photo .img2 {
      width: 297px;
      position: absolute;
      top: 143px;
      right: -110px;
   }

   #sec1 .group-photo .img3 {
      width: 297px;
      margin-left: -100px;
      padding-top: 567px;
   }

   #sec1 .group-photo .img4 {
      width: 446px;
      position: absolute;
      bottom: 0;
      right: -250px;
   }
}

#sec2 {
   position: relative;
}

@media only screen and (max-width: 767px) {
   .logo-box {
      position: absolute;
      bottom: 0;
      left: 0;
      padding: 2vw 2vw 0 0;
   }

   .logo-box:before {
      content: '';
      width: 200%;
      height: 100%;
      background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      transition: all 0.3s;
      z-index: -1;
   }

   .fix-logo .logo-box {
      position: fixed;
      z-index: 2;
   }

   .fix-logo .logo-box:before {
      opacity: 1;
   }

   #sec2 {
      background: url(../img/english/par1_bg.jpg) repeat top center;
      background-size: 160% auto;
   }

   #sec2 .set1 {
      position: relative;
   }

   #sec2 .set1 .bg-parallax {
      min-height: 80vw;
   }

   #sec2 .logo-box {
      position: absolute;
      z-index: 9;
      bottom: 0;
      left: 0;
      width: 50%;
      transition: top 0.3s ease;
   }

   #sec2 .logo-box .logo-s2 {
      position: absolute;
      top: 0;
      right: 0;
   }

   #sec2.fix-logo .logo-box {
      position: fixed;
   }

   #sec2 .bg {
      background: url(../img/english/sec2_bgs2.jpg) no-repeat top center, url(../img/english/sec2_bgs2_01.jpg) no-repeat bottom center;
      background-size: 160% auto;
   }

   #sec2 .bg .set2 {
      position: relative;
      padding: 20vw 5% 10vw;
   }

   #sec2 .bg .set2 .right .p1 {
      margin: 0 25% 5vw 0;
   }

   #sec2 .bg .set2 .right .p2 {
      margin: 0 0 13vw 25%;
   }

   #sec2 .bg .set2 .left h2 {
      margin-bottom: 7vw;
   }

   #sec2 .bg .set2 .left h2 span {
      display: inline-block;
      background: url(../img/shared/bg-pattern-04.jpg) repeat center top;
      color: #2f1c07;
      padding: 0 5vw;
      margin-bottom: 1vw;
   }

   #sec2 .bg .set3 {
      position: relative;
      padding: 15vw 0 0;
      z-index: 1;
   }

   #sec2 .bg .set3 .deco {
      width: 80%;
      position: absolute;
      top: -10vw;
      left: 0;
      z-index: -1;
   }

   #sec2 .bg .set3 h2 {
      font-size: 7vw;
      text-align: center;
   }

   #sec2 .bg .set3 h2 span {
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center #000;
      padding: 2vw 5%;
   }

   #sec2 .bg .set3 .note {
      text-align: center;
      padding: 7vw 0 10vw;
   }

   #sec2 .bg .set3 .list {
      padding: 0 5%;
      position: relative;
      z-index: 2;
   }

   #sec2 .bg .set3 .list .item {
      background: url(../img/shared/bg-pattern-05.jpg) repeat center top;
      color: #392817;
      padding: 30px 20px 35px;
   }

   #sec2 .bg .set3 .list .item dl {
      text-align: center;
      margin-top: 7vw;
   }

   #sec2 .bg .set3 .list .item dl dt {
      font-size: 6vw;
   }

   #sec2 .bg .set3 .list .item dl dd {
      font-size: 4.5vw;
      padding: 4vw 0 5vw;
   }

   #sec2 .bg .set3 .list .item dl .txt {
      margin: 0 20px;
   }

   #sec2 .bg .set3 .list .item+.item {
      margin-top: 10vw;
   }

   #sec2 .bg .set3 .bg-parallax {
      width: 150%;
      min-height: 70vw;
      margin: -15vw -25% 0;
      clip-path: polygon(0 45%, 100% 0, 100% 100%, 0 100%);
   }

   #sec2 .set4 {
      position: relative;
      z-index: 2;
      padding-bottom: 25vw;
      background: url(../img/english/set4_bg.png) no-repeat top right, url(../img/english/set4_bg_01.jpg) no-repeat bottom right, url(../img/shared/body-bg.jpg) repeat bottom center;
      background-size: 250% auto, 210% auto, auto;
   }

   #sec2 .set4 .deco {
      width: 60%;
      position: absolute;
      top: -25vw;
      left: 0;
   }

   #sec2 .set4 h2 {
      width: 90vw;
      background: url(../img/shared/bg-pattern-03.jpg) repeat center top;
      text-align: center;
      line-height: 1.5;
      margin: 0 auto;
      padding-bottom: 1vw;
      position: relative;
      top: -6vw;
   }

   #sec2 .set4 .note {
      text-align: center;
      padding: 0 0 6vw;
   }

   #sec2 .set4 .list {
      padding: 0;
   }

   #sec2 .set4 .list .item {
      position: relative;
      z-index: 1;
   }

   #sec2 .set4 .list .item::before {
      border: 3px solid #000;
      width: 90%;
      height: 100%;
      content: "";
      box-sizing: border-box;
      position: absolute;
      top: 10vw;
      left: 5%;
   }

   #sec2 .set4 .list .item .photo {
      margin-right: 10%;
   }

   #sec2 .set4 .list .item dl {
      margin: 6vw 10% 0;
   }

   #sec2 .set4 .list .item dl dt {
      font-size: 16px;
      text-align: center;
   }

   #sec2 .set4 .list .item dl dt.left {
      text-align: left;
   }

   #sec2 .set4 .list .item dl dt span {
      display: block;
      text-align: center;
      padding: 4vw 0;
   }

   #sec2 .set4 .list .item.is {
      margin: 30vw 0;
      background: url(../img/english/sec4_d2.png) no-repeat bottom left;
      background-size: 180% auto;
   }

   #sec2 .set4 .list .item.is .photo {
      margin: 0 0 0 10%;
   }

   #sec2 .set4 .block {
      margin: 25vw 5% 15vw;
      background: url(../img/shared/bg-pattern-05.jpg) repeat;
      color: #392817;
      padding: 6vw 4vw;
   }

   #sec2 .set4 .block h3 {
      font-size: 6vw;
      text-align: center;
      margin-bottom: 5vw;
   }

   #sec2 .set4 .block ul {
      border-top: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec2 .set4 .block ul li {
      padding: 3px 0;
      border-bottom: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec2 .set4 .block ul li a {
      display: block;
      max-width: max-content;
      margin: 0 auto;
   }

   #sec2 .set4 .button {
      text-align: center;
   }

   #sec2 .set4 .button p {
      margin-top: 5vw;
   }
}

@media only screen and (min-width: 768px) {
   #sec2 .set1 {
      position: relative;
   }

   #sec2 .set1 .bg-parallax {
      min-height: 645px;
      background-image: url("../img/english/par.jpg");
   }

   #sec2 .set1 .logo-box {
      width: 362px;
      position: absolute;
      bottom: 0;
      right: 0;
      z-index: 2;
   }

   #sec2 .set1 .logo-s2 {
      position: absolute;
      bottom: 0;
      right: 0;
   }

   #sec2.fix-logo .set1 .logo-box {
      position: fixed;
   }

   #sec2 .bg {
      background: url("../img/english/sec2_bgs2.jpg") no-repeat center top/100% auto, url("../img/shared/bg-pattern-06.jpg") repeat center top;
   }

   #sec2 .set2 {
      padding: 103px 0 692px;
   }

   #sec2 .set2 .inner {
      max-width: 1300px;
      margin: 0 auto;
      position: relative;
   }

   #sec2 .set2 .left {
      padding: 54px 0 0 30px;
   }

   #sec2 .set2 h2 {
      font-weight: 500;
      line-height: 60px;
      color: #2f1c07;
      position: relative;
   }

   #sec2 .set2 h2 span {
      display: inline-block;
      background: url("../img/shared/bg-pattern-04.jpg") repeat center top;
      padding: 0 13px;
   }

   #sec2 .set2 h2 span:not(:last-child) {
      margin-bottom: 5px;
   }

   #sec2 .set2 .txt {
      width: 480px;
      padding-top: 70px;
   }

   #sec2 .set2 .right {
      width: calc(100% - 520px);
      max-width: 740px;
      position: absolute;
      top: 0;
      right: 0;
   }

   #sec2 .set2 .right .p2 {
      width: 100%;
      margin-left: 50px;
      padding-top: 60px;
   }

   #sec2 .set3 {
      position: relative;
      padding-bottom: 310px;
   }

   #sec2 .set3 .deco {
      position: absolute;
      top: -80px;
      left: 0;
   }

   #sec2 .set3 h2 {
      width: 751px;
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center #000;
      font-weight: 500;
      text-align: center;
      margin: 0 auto;
      padding: 3px 0 6px;
   }

   #sec2 .set3 .note {
      text-align: center;
      padding-top: 40px;
   }

   #sec2 .set3 .list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 54px;
      width: 95%;
      max-width: 1200px;
      margin: 0 auto;
      padding-top: 36px;
      position: relative;
      z-index: 1;
   }

   #sec2 .set3 .list .item {
      background: url(../img/shared/bg-pattern-05.jpg) repeat center top;
      color: #392817;
      padding: 40px 18px 53px;
   }

   #sec2 .set3 .list .item:nth-child(1) dl dd {
      font-size: 20px;
      padding: 59px 0 27px;
   }

   #sec2 .set3 .list dl {
      text-align: center;
      padding-top: 45px;
   }

   #sec2 .set3 .list dl dt {
      font-size: 26px;
   }

   #sec2 .set3 .list dl dt span {
      font-size: 17px;
   }

   #sec2 .set3 .list dl dd {
      font-size: 17px;
      line-height: 31px;
      padding-top: 20px;
   }

   #sec2 .set3 .list dl dd span {
      font-size: 18px;
   }

   #sec2 .set3 .list .txt {
      max-width: 450px;
      margin: 0 auto;
      padding-top: 27px;
   }

   #sec2 .set3 .bg-parallax {
      background-image: url("../img/english/par1.jpg");
      min-height: 610px;
      position: absolute;
      bottom: -32px;
      left: 0;
      clip-path: polygon(0 45%, 100% 0, 100% 100%, 0 100%);
   }

   #sec2 .set4 {
      background: url("../img/english/set4_bg.png") no-repeat center top 32px/100% auto, url("../img/english/set4_bg_01.png") no-repeat center bottom/100% auto;
      padding-bottom: 182px;
      position: relative;
   }

   #sec2 .set4 h2 {
      background: url(../img/shared/bg-pattern-03.jpg) repeat center top;
      width: 750px;
      font-weight: 500;
      text-align: center;
      margin: 0 auto;
      padding: 3px 0 5px;
   }

   #sec2 .set4 .note {
      text-align: center;
      padding-top: 42px;
   }

   #sec2 .set4 .deco {
      position: absolute;
      top: -220px;
      left: 0;
   }

   #sec2 .set4 .list {
      max-width: 1400px;
      margin: 0 auto;
      padding: 50px 50px 0;
   }

   #sec2 .set4 .list .photo {
      width: calc(100% - 550px);
   }

   #sec2 .set4 .list dl {
      width: 495px;
      padding: 80px 0 0;
   }

   #sec2 .set4 .list dl dt {
      font-size: 26px;
      line-height: 46px;
      letter-spacing: 0.1em;
   }

   #sec2 .set4 .list dl dt span {
      display: block;
      font-size: 24px;
      text-align: center;
      padding-top: 30px;
   }

   #sec2 .set4 .list dl dd {
      padding-top: 27px;
   }

   #sec2 .set4 .list .item {
      display: flex;
      align-items: center;
      gap: 50px;
      position: relative;
      padding-bottom: 40px;
   }

   #sec2 .set4 .list .item:before {
      content: '';
      border: 20px solid #000;
      position: absolute;
      top: 50px;
      right: 0;
      bottom: 0;
      left: 150px;
   }

   #sec2 .set4 .list .item.is {
      flex-direction: row-reverse;
   }

   #sec2 .set4 .list .item.is:before {
      right: 150px;
      left: 0;
   }

   #sec2 .set4 .list .item:not(:last-child) {
      margin-bottom: 56px;
   }

   #sec2 .set4 .list .item:first-child:before {
      left: 200px;
   }

   #sec2 .set4 .list .item:first-child .photo {
      width: calc(100% - 600px);
   }

   #sec2 .set4 .list .item:nth-child(2):after {
      content: '';
      height: 100%;
      background: url("../img/english/sec4_d2.png") no-repeat center top/cover;
      position: absolute;
      top: 0;
      right: -50px;
      left: -50px;
      z-index: -1;
   }

   #sec2 .set4 .list .item+.item dl {
      width: 450px;
   }

   #sec2 .set4 .block {
      background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
      color: #392817;
      max-width: 1000px;
      margin: 100px auto 0;
      padding: 42px 0 77px;
   }

   #sec2 .set4 .block h3 {
      font-weight: 500;
      font-size: 37px;
      text-align: center;
   }

   #sec2 .set4 .block ul {
      max-width: 510px;
      font-size: 20px;
      line-height: 48px;
      margin: 0 auto;
      padding-top: 37px;
   }

   #sec2 .set4 .block ul li {
      border-top: 2px dotted #c6b394;
      border-bottom: 2px dotted #c6b394;
      padding: 0 33px;
   }

   #sec2 .set4 .block ul li+li {
      border-top: 0;
   }

   #sec2 .set4 .button {
      display: flex;
      justify-content: center;
      gap: 100px;
      padding-top: 80px;
   }

   #sec2 .set4 .button a {
      font-weight: 500;
      padding-left: 22px;
   }
}

@media only screen and (min-width: 1351px) {
   #sec2 .set2 .left {
      padding-left: 0;
   }

   #sec2 .set2 h2 {
      left: -13px;
   }
}

@media only screen and (min-width: 1501px) {
   #sec2 .set4 .list .photo {
      width: 790px;
   }

   #sec2 .set4 .list .item:first-child .photo {
      width: 790px;
   }
}

#sec3 {
   position: relative;
}

@media only screen and (max-width: 767px) {
   #sec3 .ttl {
      font-size: 5.6vw;
      line-height: 1.5;
   }

   #sec3 .price {
      font-size: 4.8vw;
      line-height: 1.5;
   }

   #sec3 .row-1 {
      position: relative;
   }

   #sec3 .row-1 .bg-parallax {
      min-height: 80vw;
   }
   
   #sec3 .row-1 .logo {
      position: absolute;
      bottom: 0;
      left: 0;
   }

   #sec3 .row-1 .logo {
      width: 40vw;
   }

   #sec3 .row-1 .catch {
      width: 60vw;
   }

   #sec3 .row-2 {
      background: url("../img/english/sec3_bg.jpg") no-repeat center top/cover;
      padding: 12vw 0 40vw;
      position: relative;
   }

   #sec3 .row-2:after {
      content: '';
      width: 32vw;
      height: 54vw;
      background: url("../img/english/sec3-deco-1.png") no-repeat center top/cover;
      position: absolute;
      bottom: -12vw;
      left: 0;
   }

   #sec3 .row-2 .box {
      padding-bottom: 12vw;
   }

   #sec3 .row-2 .box .photos {
      position: relative;
      padding: 0 10vw 25vw 0;
   }

   #sec3 .row-2 .box .photos figure:last-child {
      width: 50vw;
      position: absolute;
      bottom: 0;
      right: 0;
   }

   #sec3 .row-2 .box h2 {
      line-height: 1.5;
      padding-top: 8vw;
   }

   #sec3 .row-2 .box .txt {
      padding-top: 4vw;
   }

   #sec3 .row-2 .recommended-menu {
      background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
      padding: 8vw 4vw;
      position: relative;
      z-index: 1;
   }

   #sec3 .row-2 .recommended-menu h3 {
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center;
      font-size: 6vw;
      margin: 0 auto;
      padding: 1vw 0 2vw;
   }

   #sec3 .row-2 .recommended-menu .note {
      padding-top: 3vw;
   }

   #sec3 .row-2 .recommended-menu .slider-fade {
      margin-top: 6vw;
      position: relative;
   }

   #sec3 .row-2 .recommended-menu .slider-fade h4 {
      padding-top: 20vw;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .price {
      padding-top: 4vw;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .txt {
      padding-top: 4vw;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2vw;
      position: absolute;
      top: 47vw;
      right: 8vw;
      left: 8vw;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li {
      width: 100%;
      height: 12vw;
      background-color: #000;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li button {
      width: 100%;
      height: 100%;
      opacity: 0.3;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(1) button {
      background: url("../img/english/s3_js1.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(2) button {
      background: url("../img/english/s3_js2.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(3) button {
      background: url("../img/english/s3_js3.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li.slick-active button {
      opacity: 1;
   }

   #sec3 .row-2 .bg-parallax {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 60vw;
      min-height: inherit;
      position: absolute;
      bottom: 0;
      left: 0;
      clip-path: polygon(0 25%, 100% 0, 100% 100%, 0 100%);
   }

   #sec3 .bg {
      background: url("../img/english/sec3-deco-2.png") no-repeat center top/150% auto, url("../img/english/sec3-deco-2.png") no-repeat right bottom/150% auto;
   }

   #sec3 .row-3 h3 {
      width: 90vw;
      background: url(../img/shared/bg-pattern-03.jpg) repeat center top;
      text-align: center;
      line-height: 1.5;
      margin: 0 auto;
      padding-bottom: 1vw;
      position: relative;
      top: -6vw;
   }

   #sec3 .row-3 .box {
      padding: 8vw 0 0;
   }

   #sec3 .row-3 .box .col {
      position: relative;
      padding: 0 5.3vw 8vw;
   }

   #sec3 .row-3 .box .col:before {
      content: '';
      border: 10px solid #000;
      position: absolute;
      top: 40vw;
      right: 0;
      bottom: 0;
      left: 0;
   }

   #sec3 .row-3 .box .col+.col {
      margin-top: 10vw;
   }

   #sec3 .row-3 .box h4 {
      padding-top: 6vw;
   }

   #sec3 .row-3 .box .txt,
   #sec3 .row-3 .box .price {
      padding-top: 4vw;
   }

   #sec3 .row-4 {
      padding: 15vw 0;
   }

   #sec3 .row-4 .box {
      background: url(../img/shared/bg-pattern-05.jpg) repeat;
      color: #392817;
      padding: 6vw 4vw;
   }

   #sec3 .row-4 .box h3 {
      font-size: 6vw;
      text-align: center;
      margin-bottom: 5vw;
   }

   #sec3 .row-4 .box ul {
      border-top: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec3 .row-4 .box ul li {
      padding: 3px 0;
      border-bottom: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec3 .row-4 .box ul li a {
      display: block;
      width: max-content;
      margin: 0 auto;
   }

   #sec3 .row-4 .button {
      text-align: center;
      padding-top: 5vw;
   }

   #sec3 .row-4 .button p {
      margin-top: 5vw;
   }
}

@media only screen and (min-width: 768px) {
   #sec3 .ttl {
      font-size: 26px;
   }

   #sec3 .price {
      font-size: 24px;
   }

   #sec3 .row-1 {
      position: relative;
   }

   #sec3 .row-1 .bg-parallax {
      background-image: url("../img/english/par_02.jpg");
      min-height: 645px;
   }

   #sec3 .row-1 .logo,
   #sec3 .row-1 .catch {
      position: absolute;
      bottom: 0;
      right: 0;
   }

   #sec3 .row-1 .logo {
      width: 315px;
      z-index: 2;
   }

   #sec3 .row-1 .catch {
      width: 490px;
      z-index: 2;
   }

   #sec3.fix-logo .row-1 .logo,
   #sec3.fix-logo .row-1 .catch {
      position: fixed;
   }

   #sec3 .row-2 {
      background: url("../img/english/sec3_bg.jpg") no-repeat center top/cover;
      padding: 110px 0 280px;
      position: relative;
   }

   #sec3 .row-2:after {
      content: '';
      width: 320px;
      height: 540px;
      background: url("../img/english/sec3-deco-1.png") no-repeat center top/cover;
      position: absolute;
      bottom: -134px;
      left: 0;
   }

   #sec3 .row-2 .wrap {
      z-index: 1;
   }

   #sec3 .row-2 .box {
      display: flex;
      justify-content: space-between;
      position: relative;
      padding-bottom: 100px;
   }

   #sec3 .row-2 .box .col {
      width: 545px;
      margin-left: auto;
      padding: 50px 0;
   }

   #sec3 .row-2 .box h2 {
      line-height: 68px;
   }

   #sec3 .row-2 .box .txt {
      padding-top: 40px;
   }

   #sec3 .row-2 .box .photos {
      width: 856px;
      position: relative;
      margin-left: -290px;
      padding: 0 77px 317px 0;
   }

   #sec3 .row-2 .box .photos figure:nth-child(2) {
      width: 469px;
      position: absolute;
      bottom: 0;
      right: 0;
   }

   #sec3 .row-2 .recommended-menu {
      background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
      padding: 82px 50px 63px;
   }

   #sec3 .row-2 .recommended-menu h3 {
      width: 751px;
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center;
      font-weight: 500;
      text-align: center;
      margin: 0 auto;
      padding: 3px 0 6px;
   }

   #sec3 .row-2 .recommended-menu .note {
      padding-top: 30px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade {
      padding-top: 30px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots {
      display: flex;
      gap: 10px;
      position: absolute;
      top: 425px;
      right: 10px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li {
      width: 108px;
      height: 85px;
      background-color: #000;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li button {
      width: 100%;
      height: 100%;
      opacity: 0.3;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(1) button {
      background: url("../img/english/s3_js1.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(2) button {
      background: url("../img/english/s3_js2.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:nth-child(3) button {
      background: url("../img/english/s3_js3.jpg") no-repeat center top/cover;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li.slick-active button {
      opacity: 1;
   }

   #sec3 .row-2 .recommended-menu .slider-fade h4 {
      padding-top: 40px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .price {
      padding-top: 23px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .txt {
      max-width: 751px;
      margin: 0 auto;
      padding-top: 20px;
      text-align: justify;
   }

   #sec3 .row-2 .bg-parallax {
      background-image: url("../img/english/sec3-bg-img.jpg");
      min-height: 580px;
      position: absolute;
      bottom: -32px;
      left: 0;
      clip-path: polygon(0 45%, 100% 0, 100% 100%, 0 100%);
   }

   #sec3 .bg {
      position: relative;
   }

   #sec3 .bg:before {
      content: '';
      width: 100%;
      background: url("../img/english/sec3-deco-2.png") no-repeat center top/cover;
      position: absolute;
      top: 32px;
      bottom: 0;
      left: 0;
   }

   #sec3 .row-3 {
      padding-bottom: 120px;
   }

   #sec3 .row-3 h3 {
      background: url(../img/shared/bg-pattern-03.jpg) repeat center top;
      width: 750px;
      font-weight: 500;
      text-align: center;
      margin: 0 auto;
      padding: 3px 0 5px;
      position: relative;
      z-index: 1;
   }

   #sec3 .row-3 .note {
      padding-top: 40px;
   }

   #sec3 .row-3 .box {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 92px;
      max-width: 1400px;
      margin: 0 auto;
      padding: 60px 50px 0;
   }

   #sec3 .row-3 .box .col {
      position: relative;
      padding-bottom: 63px;
   }

   #sec3 .row-3 .box .col:before {
      content: '';
      border: 20px solid #000;
      position: absolute;
      top: 76px;
      right: -34px;
      bottom: 0;
      left: -34px;
   }

   #sec3 .row-3 .box h4 {
      padding-top: 40px;
   }

   #sec3 .row-3 .box .price {
      padding-top: 10px;
   }

   #sec3 .row-3 .box .txt {
      max-width: 450px;
      text-align: justify;
      margin: 0 auto;
      padding-top: 10px;
   }

   #sec3 .row-4 {
      padding-bottom: 182px;
   }

   #sec3 .row-4 .box {
      background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
      padding: 42px 0 77px;
   }

   #sec3 .row-4 .box h3 {
      font-weight: 500;
      font-size: 37px;
      text-align: center;
   }

   #sec3 .row-4 .box ul {
      max-width: 510px;
      font-size: 20px;
      line-height: 48px;
      margin: 0 auto;
      padding-top: 37px;
   }

   #sec3 .row-4 .box ul li {
      border-top: 2px dotted #c6b394;
      border-bottom: 2px dotted #c6b394;
      padding: 0 33px;
   }

   #sec3 .row-4 .box ul li+li {
      border-top: 0;
   }

   #sec3 .row-4 .button {
      display: flex;
      justify-content: center;
      gap: 100px;
      padding-top: 80px;
   }

   #sec3 .row-4 .button a {
      font-weight: 500;
      padding-left: 22px;
   }
}

@media only screen and (min-width: 1241px) {
   #sec3 .row-2 .box .photos {
      margin-left: -100px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots {
      top: 533px;
   }

   #sec3 .row-2 .recommended-menu .slider-fade .slick-dots li:hover button {
      opacity: 1;
   }
}

#sec4 {
   background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
   position: relative;
}

@media only screen and (max-width: 767px) {
   #sec4 .ttl {
      font-size: 5.6vw;
      line-height: 1.5;
   }

   #sec4 .price {
      font-size: 4.8vw;
      line-height: 1.5;
   }

   #sec4 .row-1 {
      position: relative;
   }

   #sec4 .row-1 .bg-parallax {
      min-height: 80vw;
   }

   #sec4 .row-1 .bg-parallax img {
      object-position: -140vw 0;
   }

   #sec4 .row-1 .logo {
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 2;
   }

   #sec4 .row-1 .logo {
      width: 40vw;
   }

   #sec4 .row-1 .catch {
      width: 60vw;
      padding-top: 7vw;
   }

   #sec4 .row-2 {
      position: relative;
      padding-bottom: 16vw;
   }

   #sec4 .row-2 .box {
      background: url("../img/english/sec4-bg-1.png") no-repeat top right/250% auto;
      padding: 12vw 0;
   }

   #sec4 .row-2 .box .col {
      padding: 8vw 5.3vw 0;
   }

   #sec4 .row-2 .box h2 {
      line-height: 1.5;
   }

   #sec4 .row-2 .box .txt {
      padding-top: 4vw;
   }

   #sec4 .row-2 .banner {
      padding: 0 5.3vw;
   }

   #sec4 .row-2 .banner li+li {
      padding-top: 8vw;
   }

   #sec4 .row-2 .banner a {
      display: grid;
      align-items: center;
      text-align: center;
      font-weight: 700;
      font-size: 6.4vw;
      line-height: 1;
      letter-spacing: 0;
      color: #fff;
   }

   #sec4 .row-2 .banner a span,
   #sec4 .row-2 .banner a img {
      grid-area: 1/1;
   }

   #sec4 .row-2 .banner a span {
      position: relative;
      z-index: 1;
   }

   #sec4 .row-2 .bg-parallax {
      min-height: 80vw;
      position: absolute;
      bottom: -40vw;
      left: 0;
   }

   #sec4 .row-3 {
      position: relative;
   }

   #sec4 .row-3:before {
      content: '';
      width: 100%;
      height: 100%;
      background: url("../img/english/sec4-bg-2.png") no-repeat center top/cover;
      position: absolute;
      top: 40vw;
      left: 0;
   }

   #sec4 .row-3 .wrap:before {
      content: '';
      width: 49vw;
      height: 57.8vw;
      background: url("../img/english/sec4-deco-1.png") no-repeat center top/cover;
      position: absolute;
      top: 27vw;
      right: 0;
   }

   #sec4 .recommended-menu {
      position: relative;
      z-index: 1;
   }

   #sec4 .recommended-menu h3 {
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center #000;
      font-size: 7vw;
      margin: 0 auto;
      padding: 1vw 0 2vw;
      color: #fff;
   }

   #sec4 .recommended-menu .note {
      color: #fff;
      padding-top: 3vw;
   }

   #sec4 .recommended-menu .slider-fade {
      background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
      margin-top: 6vw;
      position: relative;
   }

   #sec4 .recommended-menu .slider-fade:before {
      content: '';
      width: 50vw;
      height: 50vw;
      background: url("../img/english/sec4-deco-2.png") no-repeat center top/cover;
      position: absolute;
      top: 50vw;
      left: -25vw;
   }

   #sec4 .recommended-menu .slider-fade h4 {
      padding-top: 20vw;
   }

   #sec4 .recommended-menu .slider-fade .price {
      padding-top: 4vw;
   }

   #sec4 .recommended-menu .slider-fade .txt {
      padding: 4vw 5.3vw 8vw;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 2vw;
      position: absolute;
      top: 57vw;
      right: 16vw;
      left: 16vw;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li {
      width: 100%;
      height: 12vw;
      background-color: #000;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li button {
      width: 100%;
      height: 100%;
      opacity: 0.3;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li:nth-child(1) button {
      background: url("../img/english/sec4-photo-5.jpg") no-repeat center top/cover;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li:nth-child(2) button {
      background: url("../img/english/sec4-photo-6.jpg") no-repeat center top/cover;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li.slick-active button {
      opacity: 1;
   }

   #sec4 .row-4 {
      padding: 15vw 0 17vw;
      background: url("../img/english/sec4-deco-3.png") no-repeat bottom right/50vw auto;
   }

   #sec4 .row-4 .box {
      background: url(../img/shared/bg-pattern-02.jpg) repeat;
      color: #392817;
      padding: 8vw 4vw;
   }

   #sec4 .row-4 .box h3 {
      font-size: 6vw;
      text-align: center;
      margin-bottom: 5vw;
   }

   #sec4 .row-4 .box ul {
      border-top: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec4 .row-4 .box ul li {
      padding: 3px 0;
      border-bottom: 1px dotted rgba(57, 40, 23, 0.5);
   }

   #sec4 .row-4 .box ul li a {
      display: block;
      max-width: max-content;
      margin: 0 auto;
   }

   #sec4 .row-4 .button {
      text-align: center;
      padding-top: 5vw;
   }

   #sec4 .row-4 .button p {
      margin-top: 5vw;
   }

   #sec4 .row-4 .button a {
      background-image: url(../img/index/sec4-ushi-btn-bg.png);
   }
}

@media only screen and (min-width: 768px) {
   #sec4 .ttl {
      font-size: 26px;
   }

   #sec4 .price {
      font-size: 24px;
   }

   #sec4 .row-1 {
      position: relative;
   }

   #sec4 .row-1 .bg-parallax {
      background-image: url("../img/english/sec4-bg-img.jpg");
      min-height: 645px;
   }

   #sec4 .row-1 .logo,
   #sec4 .row-1 .catch {
      position: absolute;
      right: 0;
   }

   #sec4 .row-1 .logo {
      width: 290px;
      bottom: 0;
      z-index: 2;
   }

   #sec4 .row-1 .catch {
      width: 557px;
      bottom: -22px;
      z-index: 2;
   }

   #sec4.fix-logo .row-1 .logo,
   #sec4.fix-logo .row-1 .catch {
      position: fixed;
      bottom: 0;
   }

   #sec4.fix-logo .row-1 .logo {
      bottom: 22px;
   }

   #sec4 .row-2 {
      position: relative;
   }

   #sec4 .row-2:after {
      content: '';
      width: 100%;
      height: 1000px;
      background: url("../img/english/sec4-bg-1.png") no-repeat center bottom/cover;
      position: absolute;
      top: 0;
      left: 0;
   }

   #sec4 .row-2 .box {
      position: relative;
      z-index: 1;
   }

   #sec4 .row-2 .box figure {
      width: 50%;
      max-width: 750px;
      position: absolute;
      top: -163px;
      left: 0;
   }

   #sec4 .row-2 .box .col {
      width: 600px;
      margin-left: 49%;
      padding: 110px 0 140px;
   }

   #sec4 .row-2 .box h2 {
      line-height: 50px;
   }

   #sec4 .row-2 .box h2 span {
      display: inline-block;
      background: url("../img/shared/bg-pattern-04.jpg") repeat center top;
      padding: 0 15px 6px;
   }

   #sec4 .row-2 .box h2 span:not(:last-child) {
      margin-bottom: 8px;
   }

   #sec4 .row-2 .box .txt {
      padding: 47px 0 0 14px;
   }

   #sec4 .row-2 .banner {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 51px;
      width: 95%;
      max-width: 1303px;
      margin: 0 auto;
      position: relative;
      z-index: 1;
   }

   #sec4 .row-2 .banner a {
      display: grid;
      align-items: center;
      position: relative;
      color: #fff;
      font-weight: 700;
      font-size: 32px;
      line-height: 68px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #sec4 .row-2 .banner a:after {
      content: '';
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5);
      position: absolute;
      top: 0;
      left: 0;
      transition: all 0.3s;
      opacity: 0;
   }

   #sec4 .row-2 .banner a img,
   #sec4 .row-2 .banner a span {
      grid-area: 1/1;
   }

   #sec4 .row-2 .banner a span {
      position: relative;
      z-index: 1;
   }

   #sec4 .row-2 .banner a:hover {
      opacity: 1;
   }

   #sec4 .row-2 .banner a:hover:after {
      opacity: 1;
   }

   #sec4 .row-2 .bg-parallax {
      background-image: url("../img/english/sec4-bg-img-1.jpg");
      min-height: 1285px;
      position: absolute;
      top: 0;
      left: 0;
   }

   #sec4 .row-3 {
      position: relative;
      padding: 124px 0 118px;
   }

   #sec4 .row-3:before {
      content: '';
      width: 100%;
      height: 1100px;
      background: url("../img/english/sec4-bg-2.png") no-repeat center bottom/cover;
      position: absolute;
      top: 343px;
      left: 0;
   }

   #sec4 .row-3:after {
      content: '';
      width: 490px;
      height: 578px;
      background: url("../img/english/sec4-deco-1.png") no-repeat center top/cover;
      position: absolute;
      top: 290px;
      right: 0;
   }

   #sec4 .row-3 .wrap {
      z-index: 1;
   }

   #sec4 .row-3 .deco {
      width: 444px;
      position: absolute;
      bottom: 56px;
      left: 0;
   }

   #sec4 .recommended-menu h3 {
      width: 751px;
      background: url(../img/english/line_ttl.jpg) repeat-x top center, url(../img/english/line_ttl.jpg) repeat-x bottom center #000;
      color: #fff;
      text-align: center;
      margin: 0 auto;
      padding: 3px 0 6px;
   }

   #sec4 .recommended-menu .note {
      color: #fff;
      padding-top: 35px;
      padding-bottom: 42px;
   }

   #sec4 .recommended-menu .slider-fade {
      background: url(../img/shared/bg-pattern-01.jpg) repeat center top;
      padding-bottom: 17px;
      position: relative;
   }

   #sec4 .recommended-menu .slider-fade:before {
      content: '';
      width: 512px;
      height: 512px;
      background: url("../img/english/sec4-deco-2.png") no-repeat center top/cover;
      position: absolute;
      bottom: -60px;
      left: -320px;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots {
      display: flex;
      gap: 10px;
      position: absolute;
      top: 505px;
      right: 10px;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li {
      width: 108px;
      height: 85px;
      background-color: #000;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li button {
      width: 100%;
      height: 100%;
      opacity: 0.3;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li:nth-child(1) button {
      background: url("../img/english/sec4-photo-5.jpg") no-repeat center top/cover;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li:nth-child(2) button {
      background: url("../img/english/sec4-photo-6.jpg") no-repeat center top/cover;
   }

   #sec4 .recommended-menu .slider-fade .slick-dots li.slick-active button {
      opacity: 1;
   }

   #sec4 .recommended-menu .slider-fade h4 {
      padding-top: 40px;
   }

   #sec4 .recommended-menu .slider-fade .price {
      line-height: 40px;
      padding-top: 28px;
   }

   #sec4 .recommended-menu .slider-fade .txt {
      max-width: 751px;
      margin: 0 auto;
      padding-top: 20px;
      text-align: justify;
   }

   #sec4 .row-4 .wrap {
      z-index: 1;
   }

   #sec4 .row-4 .box {
      background: url("../img/shared/bg-pattern-02.jpg") repeat center top;
      padding: 42px 0 77px;
   }

   #sec4 .row-4 .box h3 {
      font-weight: 500;
      font-size: 37px;
      text-align: center;
   }

   #sec4 .row-4 .box ul {
      max-width: 510px;
      font-size: 20px;
      line-height: 48px;
      margin: 0 auto;
      padding-top: 37px;
   }

   #sec4 .row-4 .box ul li {
      border-top: 2px dotted #c6b394;
      border-bottom: 2px dotted #c6b394;
      padding: 0 33px;
   }

   #sec4 .row-4 .box ul li+li {
      border-top: 0;
   }

   #sec4 .row-4 .button {
      display: flex;
      justify-content: center;
      gap: 100px;
      padding-top: 80px;
   }

   #sec4 .row-4 .button a {
      background-image: url(../img/index/sec4-ushi-btn-bg.png);
      height: 67px;
      font-weight: 500;
      padding-left: 22px;
   }

   #sec4 .row-4 .button a:hover {
      background-image: url("../img/index/sec4-ushi-btn-bg_on.png"), url("../img/index/sec4-ushi-btn-bg.png");
   }
}

#map {
   background: url("../img/shared/bg-pattern-01.jpg") repeat center top;
   position: relative;
}

@media only screen and (max-width: 767px) {
   #map {
      padding: 0 0 17vw;
   }

   #map:before {
      content: '';
      width: 100%;
      background: url("../img/english/map-bg.png") no-repeat center top/cover;
      position: absolute;
      top: -37vw;
      bottom: 0;
      left: 0;
   }

   #map .wrap {
      padding: 0 2.6vw;
   }

   #map h2 {
      width: max-content;
      color: #2f1c07;
      font-weight: 600;
      font-size: 8vw;
      letter-spacing: 0;
      line-height: 1;
      background: url("../img/index/sec5-icon.png") no-repeat center left/8.9vw auto;
      margin: 0 auto;
      padding-left: 11vw;
   }

   #map figure {
      padding-top: 8vw;
   }
}

@media only screen and (min-width: 768px) {
   #map {
      padding: 96px 0 140px;
   }

   #map:before {
      content: '';
      width: 100%;
      background: url("../img/english/map-bg.png") no-repeat center top/cover;
      position: absolute;
      top: -95px;
      bottom: 0;
      left: 0;
   }

   #map:after {
      content: '';
      width: 460px;
      height: 540px;
      background: url("../img/english/sec4-deco-3.png") no-repeat center top/cover;
      position: absolute;
      top: -380px;
      right: 0;
   }

   #map .wrap {
      z-index: 1;
   }

   #map h2 {
      color: #2f1c07;
      font-weight: 600;
      font-size: 45px;
      letter-spacing: 0.05em;
      line-height: 45px;
      background: url("../img/index/sec5-icon.png") no-repeat top 6px left/51px auto;
      margin-left: 13px;
      padding: 0 0 23px 61px;
   }

   #map figure {
      margin-right: -1px;
   }
}

@media only screen and (max-width: 767px) {
   .sec4-popup {
      padding: 12vw 5.3vw;
   }

   .sec4-popup:before {
      content: '';
      height: 100%;
      background: url("../img/english/sec4-popup-deco.png") no-repeat bottom right, url("../img/shared/bg-pattern-02.jpg") repeat center top;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 16vw;
   }

   .sec4-popup .box {
      position: relative;
   }

   .sec4-popup figure {
      padding-bottom: 6vw;
   }

   .sec4-popup h2 {
      padding-bottom: 4vw;
   }

   .sec4-popup .txt {
      background: url("../img/english/sec4-dot.png") repeat center top;
      line-height: 51px;
      padding-bottom: 3px;
   }

   .popup-burger .head {
      padding-top: 12vw;
   }

   .popup-burger .logo {
      width: 50vw;
      margin: 0 auto;
   }

   .popup-burger .tel {
      color: #5e4d3c;
      margin: 6vw 2.6vw 0;
      padding: 3vw 0;
   }

   .popup-burger .tel small {
      display: inline-block;
      font-size: 12px;
      line-height: 14px;
   }

   .popup-burger .txt-info {
      letter-spacing: 0;
      line-height: 21px;
      text-align: left;
      padding-top: 8vw;
   }

   .popup-burger .txt-info dl {
      display: grid;
      grid-template-columns: 90px 1fr;
      border-bottom: 1px solid #d7d0c4;
      padding-bottom: 12px;
   }

   .popup-burger .txt-info dl+dl {
      padding-top: 12px;
   }

   .popup-burger .txt-info dl dd a {
      border-bottom: 1px solid;
   }

   .popup-burger .txt-info dl dd a:hover {
      border-color: transparent;
   }

   .popup-burger .photo {
      position: relative;
      padding-top: 6vw;
   }

   .popup-burger .photo figcaption {
      position: absolute;
      bottom: 2vw;
      left: 2vw;
      font-weight: 600;
      font-size: 4vw;
      letter-spacing: 0;
      line-height: 1.5;
      text-align: left;
   }

   .popup-burger .photo figcaption span {
      display: inline-block;
      background: url("../img/shared/bg-pattern-04.jpg") repeat center top;
      padding: 0 2vw;
   }

   .popup-burger .photo figcaption span:not(:last-child) {
      margin-bottom: 1vw;
   }
}

@media only screen and (min-width: 768px) {
   .sec4-popup {
      max-width: 1100px;
      margin: 0 auto;
      padding: 100px 0 60px;
      position: relative;
   }

   .sec4-popup:before {
      content: '';
      height: 100%;
      background: url("../img/english/sec4-popup-deco.png") no-repeat bottom right, url("../img/shared/bg-pattern-02.jpg") repeat center top;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 145px;
   }

   .sec4-popup .box {
      display: grid;
      grid-template-columns: 1fr 394px;
      align-items: center;
      gap: 30px;
      padding: 0 30px 0 50px;
      position: relative;
   }

   .sec4-popup h2 {
      font-size: 37px;
      padding-bottom: 30px;
   }

   .sec4-popup .txt {
      background: url("../img/english/sec4-dot.png") repeat center top;
      line-height: 51px;
      padding-bottom: 3px;
   }

   .sec4-popup .remodal-close-top {
      right: 50px;
   }

   .popup-burger .head {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 60px;
      padding-top: 90px;
   }

   .popup-burger .logo {
      width: 280px;
   }

   .popup-burger .tel {
      width: 370px;
      font-size: 16px;
   }

   .popup-burger .tel small {
      display: inline-block;
      font-size: 14px;
      line-height: 17px;
   }

   .popup-burger .txt-info {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 40px;
      text-align: left;
      line-height: 26px;
      padding-top: 60px;
   }

   .popup-burger .txt-info dl {
      display: grid;
      grid-template-columns: 135px 1fr;
      border-bottom: 1px solid #d7d0c4;
      padding-bottom: 12px;
   }

   .popup-burger .txt-info dl+dl {
      padding-top: 12px;
   }

   .popup-burger .txt-info dl dd a {
      border-bottom: 1px solid;
   }

   .popup-burger .txt-info dl dd a:hover {
      border-color: transparent;
   }

   .popup-burger .photo {
      max-width: 941px;
      margin: 60px auto 0;
      position: relative;
   }

   .popup-burger .photo figcaption {
      font-weight: 600;
      font-size: 22px;
      letter-spacing: 0;
      line-height: 37px;
      position: absolute;
      bottom: 40px;
      left: 40px;
      text-align: left;
   }

   .popup-burger .photo figcaption span {
      display: inline-block;
      background: url("../img/shared/bg-pattern-04.jpg") repeat center top;
      padding: 0 15px;
   }

   .popup-burger .photo figcaption span:not(:last-child) {
      margin-bottom: 10px;
   }
}


.txt_center {
   text-align: center;
   position: relative;
   z-index: 9;
   font-size: 14px;
}

@media only screen and (min-width: 768px) {
   .txt_center {
      text-align: center;
      position: relative;
      z-index: 9;
      font-size: 16px;
      padding: 0 0 10px 0;
      color: #fff;
   }
}

@media only screen and (min-width: 768px) {
   .pagetop {
      bottom: 130px;
   }
}