#para img {
  object-position: left top;
}

.sec3-content {
  color: #000;
  position: relative;
  z-index: 0;
}

.sec3-content:before {
  content: '';
  height: 72vw;
  background: #fff;
  position: absolute;
  left: 0;
  right: 0;
  top: 18vw;
  z-index: -1;
  transform: skewY(15deg);
}

.sec3-content h2 {
  font-size: 39.4667vw;
  line-height: 33vw;
  letter-spacing: -0.135em;
  white-space: nowrap;
  margin-left: -7vw;
}

.sec3-content h3 {
  line-height: 10vw;
  margin: 8vw 0 13vw;
}

.sec3-content .title {
  position: relative;
  z-index: 1;
  padding: 21vw 0 0 4vw;
  margin-top: -11vw;
}

.sec3-content .title h4 {
  display: table;
  font-size: 12vw;
  letter-spacing: 0;
  line-height: 10vw;
  position: relative;
  z-index: 1;
}

.sec3-content .title h4 small {
  font-size: 4vw;
  letter-spacing: 0.12em;
  margin-left: 2vw;
}

.sec3-content .title .num {
  font-size: 46.6667vw;
  line-height: 37vw;
  letter-spacing: -0.12em;
  opacity: 0.2;
  position: absolute;
  left: -5vw;
  top: 0;
}

.sec3-content .title h5 {
  font-size: 5.33334vw;
  line-height: 8.66667vw;
  letter-spacing: 0.1em;
  margin: 12vw 0 6vw;
  position: relative;
}

.sec3-content .title h5:before {
  content: '';
  width: 6.667vw;
  height: 3px;
  background: #0fa317;
  position: absolute;
  left: 1vw;
  top: -4vw;
}

.sec3-content .txt {
  padding: 0 4vw;
}

.sec3-content .row1 {
  background: #fff;
}

.sec3-content .row1 .img1 {
  margin: 0 -3%;
}

.sec3-content .row1 .img2 {
  padding: 8vw 4vw 0;
}

.sec3-content .row2 {
  background: #fff;
  padding: 16vw 0 20vw;
}

.sec3-content .row2 .img-grp {
  margin: 0 -3%;
}

.sec3-content .row2 .img-grp li {
  width: 32%;
}

.sec3-content .row2 .img-grp .img1 {
  margin-top: 22vw;
}

.sec3-content .row2 .img-grp .img2 {
  margin-top: 11vw;
}

.sec3-content .row3 {
  color: #fff;
  position: relative;
  z-index: 1;
  padding-bottom: 22vw;
}

.sec3-content .row3 .bg-para {
  height: 106.67vw;
  clip-path: polygon(0 9%, 100% 0%, 100% 90%, 0% 100%);
  margin-top: -11vw;
}

.sec3-content .row3 .bg-para .img-parallax img {
  object-position: 34%;
}

.sec3-content .row3 .box {
  background: rgba(0, 0, 0, 0.7);
  position: relative;
  z-index: 2;
  margin: -19vw 0 -7vw -6%;
  padding: 25vw 6vw 20vw 6vw;
}

.sec3-content .row3 .img {
  margin: 0 -5.5% 0 5vw;
}

.sec3-content .row3 .ttl {
  line-height: 12vw;
  margin: -8vw -5vw 0 5vw;
}

.sec3-content .row3 .ttl .fz60 {
  display: inline-block;
  position: relative;
}

.sec3-content .row3 .ttl .ico1 {
  margin: 0 1vw 0 -6vw;
  transform: rotate(35deg);
  top: -6vw;
}

.sec3-content .row3 .ttl .ico2 {
  transform: rotate(28deg);
  top: 4vw;
  margin-right: -4vw;
}

.sec3-content .row3 .ttl .r1 {
  position: relative;
  padding-bottom: 3vw;
}

.sec3-content .row3 .ttl .r1:before {
  content: '';
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: -8vw;
}

.sec3-content .row3 .ttl .r1:after {
  content: '';
  width: 33vw;
  height: 1px;
  background: #fff;
  position: absolute;
  left: -10vw;
  bottom: -1vw;
}

.sec3-content .row3 .ttl .r2 {
  display: table;
  margin: 2.5vw 0 0 auto;
  position: relative;
  padding-bottom: 2vw;
}

.sec3-content .row3 .ttl .r2:before {
  content: '';
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: -4vw;
  right: 8.5vw;
}

.sec3-content .row3 .ttl .r2:after {
  content: '';
  width: 31vw;
  height: 1px;
  background: #fff;
  position: absolute;
  right: -10vw;
  bottom: -1vw;
}

@media screen and (max-width: 767px) {
  .sec3-content h3.fz50 {
    font-size: 8vw;
  }
  .sec3-content .row3 .ttl.fz50 {
    font-size: 7.8vw;
  }
  .sec3-content .row3 .ttl.fz50 .fz77 {
    font-size: 12.13334vw;
  }
  .sec3-content .row3 .ttl.fz50 .fz43 {
    font-size: 6.8vw;
  }
  .sec3-content .row3 .ttl.fz50 .fz60 {
    font-size: 9.46667vw;
  }
}

@media screen and (min-width: 768px) {
  .sec3-content {
    margin-top: -114px;
  }
  .sec3-content:before {
    height: 1000px;
    top: 97px;
    transform: skewY(15.5deg);
  }
  .sec3-content:after {
    content: '';
    background-image: url("../img/kyobashi/sec3_bg1.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 953px;
    height: 595px;
    position: absolute;
    right: 0;
    top: -288px;
    z-index: -2;
  }
  .sec3-content h2 {
    max-width: 1349px;
    width: 92%;
    font-size: 350px;
    line-height: 300px;
    letter-spacing: -0.128em;
    margin: 0 auto;
    text-align: right;
    position: relative;
    z-index: 1;
  }
  .sec3-content h3 {
    line-height: 40px;
    margin: 67px 0 100px;
    position: relative;
    z-index: 1;
  }
  .sec3-content .title {
    padding: 152px 0 0 69px;
    margin-top: 0;
  }
  .sec3-content .title h4 {
    font-size: 78px;
    line-height: 65px;
  }
  .sec3-content .title h4 small {
    font-size: 20px;
    margin-left: 28px;
  }
  .sec3-content .title .num {
    font-size: 350px;
    line-height: 255px;
    left: 0;
  }
  .sec3-content .title h5 {
    font-size: 30px;
    line-height: 45px;
    margin: 80px 0 0 -4px;
  }
  .sec3-content .title h5:before {
    width: 50px;
    height: 5px;
    left: 6px;
    top: -27px;
  }
  .sec3-content .txt {
    padding: 0;
  }
  .sec3-content .row1 {
    position: relative;
    z-index: 0;
  }
  .sec3-content .row1:before {
    content: '';
    width: 836px;
    height: 1px;
    background: #9e9e9e;
    position: absolute;
    left: calc(50% - 816px);
    top: -166px;
    transform: rotate(32.7deg);
    z-index: -1;
  }
  .sec3-content .row1:after {
    content: '';
    width: 800px;
    height: 1px;
    background: #9e9e9e;
    position: absolute;
    left: calc(50% - 865px);
    top: -231px;
    transform: rotate(-44.5deg);
    z-index: -1;
  }
  .sec3-content .row1 .title {
    position: absolute;
    top: 41px;
    left: -64px;
  }
  .sec3-content .row1 .img1 {
    width: 796px;
    margin: 0 -250px 0 auto;
    position: relative;
    z-index: 1;
  }
  .sec3-content .row1 .img2 {
    padding: 0;
    width: 600px;
    float: left;
    margin-left: -100px;
    position: relative;
    z-index: 0;
  }
  .sec3-content .row1 .img2:before {
    content: '';
    width: 674px;
    height: 589px;
    border-left: 1px solid #0fa317;
    border-bottom: 1px solid #0fa317;
    position: absolute;
    left: 93px;
    top: -180px;
    z-index: -1;
  }
  .sec3-content .row1 .img2:after {
    content: '';
    width: 1px;
    height: 135px;
    background: #0fa317;
    position: absolute;
    right: -168px;
    bottom: -232px;
  }
  .sec3-content .row1 .img2 img {
    margin-top: -136px;
  }
  .sec3-content .row1 .txt {
    width: 455px;
    float: right;
    margin: 76px -0px 0 0;
  }
  .sec3-content .row2 {
    padding: 187px 0 0;
  }
  .sec3-content .row2 .img-grp {
    width: 805px;
    margin: 0;
    position: absolute;
    left: -258px;
    z-index: 1;
  }
  .sec3-content .row2 .img-grp li {
    width: 256px;
  }
  .sec3-content .row2 .img-grp .img1 {
    margin-top: 200px;
  }
  .sec3-content .row2 .img-grp .img2 {
    margin-top: 100px;
  }
  .sec3-content .row2 .col {
    position: relative;
    z-index: 2;
    width: 570px;
    margin: 0 -32px 0 auto;
    padding-top: 79px;
  }
  .sec3-content .row2 .col .title {
    margin: 0 -33px 0 -15px;
    padding-left: 129px;
  }
  .sec3-content .row2 .col .title h4 small {
    margin-left: 9px;
    position: relative;
    top: -3px;
  }
  .sec3-content .row2 .col .title .num {
    letter-spacing: -0.095em;
  }
  .sec3-content .row2 .col .txt {
    margin: 38px 0 0 113px;
  }
  .sec3-content .row2 .img4 {
    width: 786px;
    margin: -160px 0 0 107px;
    position: relative;
  }
  .sec3-content .row2 .img4:before {
    content: '';
    background-image: url("../img/kyobashi/sec3_line.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 561px;
    height: 525px;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .sec3-content .row3 {
    padding-bottom: 100px;
  }
  .sec3-content .row3 .bg-para {
    height: 860px;
    clip-path: polygon(0 17.6%, 100% 0%, 100% 83%, 0% 100%);
    margin-top: -245px;
  }
  .sec3-content .row3 .box {
    width: 701px;
    margin: -394px 0 -408px -100px;
    padding: 76px 80px 72px 51px;
  }
  .sec3-content .row3 .title {
    padding-left: 128px;
  }
  .sec3-content .row3 .title h4 {
    letter-spacing: 0.01em;
  }
  .sec3-content .row3 .title h4 small {
    margin-left: 12px;
    position: relative;
    top: -3px;
  }
  .sec3-content .row3 .title .num {
    letter-spacing: -0.1em;
  }
  .sec3-content .row3 .txt {
    margin: 40px 0 0 127px;
  }
  .sec3-content .row3 .img {
    width: 750px;
    margin: 0 -250px 0 auto;
  }
  .sec3-content .row3 .ttl {
    line-height: 60px;
    margin: -272px 0 82px -48px;
  }
  .sec3-content .row3 .ttl .ico1 {
    margin: 0 -1px 0 -31px;
    transform: rotate(-5deg);
    top: -20px;
  }
  .sec3-content .row3 .ttl .ico2 {
    transform: rotate(-4deg);
    top: 12px;
    margin: 0 22px 0 -10px;
  }
  .sec3-content .row3 .ttl .r1 {
    width: 700px;
    padding: 0 0 23px 58px;
  }
  .sec3-content .row3 .ttl .r1:before {
    right: 0;
  }
  .sec3-content .row3 .ttl .r1:after {
    width: 300px;
    left: -158px;
    bottom: -7px;
  }
  .sec3-content .row3 .ttl .r2 {
    display: block;
    width: 480px;
    margin: 23px 0 0 322px;
    padding: 0 0 12px 19px;
  }
  .sec3-content .row3 .ttl .r2:before {
    left: 0;
    right: 0;
  }
  .sec3-content .row3 .ttl .r2:after {
    width: 300px;
    right: -90px;
    bottom: -8px;
  }
}

@media screen and (min-width: 1200px) {
  .sec3-content .row1 .title {
    left: -99px;
  }
  .sec3-content .row1 .txt {
    margin-right: -32px;
  }
}

@media screen and (min-width: 1250px) {
  .sec3-content .row2 .img-grp {
    left: -210px;
  }
  .sec3-content .row2 .col {
    margin-right: -97px;
  }
}

.sec4-content {
  padding: 30vw 0;
  clip-path: polygon(0 0, 100% 15vw, 100% 100%, 0% 100%);
}

.sec4-content .note {
  margin: 2vw 0 15vw;
}

.sec4-content h3 {
  font-size: 12.66667vw;
  line-height: 10vw;
  letter-spacing: 0;
  padding: 0 0 5vw 7vw;
  position: relative;
}

.sec4-content h3:before {
  content: '';
  height: 1px;
  background: #dedede;
  position: absolute;
  left: 44vw;
  right: 0;
  top: 4vw;
}

.sec4-content h3:after {
  content: '';
  height: 1px;
  background: #dedede;
  position: absolute;
  left: 7vw;
  right: -10vw;
  bottom: 0;
}

.sec4-content h3 small {
  font-size: 5.3334vw;
  letter-spacing: 0.12em;
}

.sec4-content .row {
  position: relative;
}

.sec4-content .row:before {
  content: '';
  border: 1px solid #dedede;
  border-top: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 4vw;
  bottom: 0;
}

.sec4-content .row:after {
  content: '';
  width: 6vw;
  height: 1px;
  background: #dedede;
  position: absolute;
  left: 0;
  top: 4vw;
}

.sec4-content .row1 {
  padding-bottom: 17vw;
}

.sec4-content .row1 ul {
  margin: 8vw 5vw 0;
}

.sec4-content .row1 ul li + li {
  margin-top: 10px;
}

.sec4-content .row1 .box,
.sec4-content .row4 .box {
  background: #000;
  margin: 8vw 5vw 0;
  padding: 9vw 6% 15vw;
}

.sec4-content .row1 .box .ttl,
.sec4-content .row4 .box .ttl {
  font-size: 5.3334vw;
  line-height: 8vw;
  letter-spacing: 0.12em;
  position: relative;
  z-index: 0;
  margin-bottom: 6vw;
}

.sec4-content .row1 .box .ttl:before,
.sec4-content .row4 .box .ttl:before {
  content: '';
  height: 1px;
  background: #b8b6af;
  position: absolute;
  left: 0;
  right: 0;
  top: 3.5vw;
  z-index: -1;
}

.sec4-content .row1 .box .ttl span,
.sec4-content .row4 .box .ttl span {
  display: block;
  width: 60%;
  margin: 0 auto;
  background: url("../img/kyobashi/ttl_deco1.png") no-repeat left top/2vw, url("../img/kyobashi/ttl_deco2.png") no-repeat right top/2vw, #000;
}

.sec4-content .row1 .box .sttl,
.sec4-content .row4 .box .sttl {
  font-size: 17.5px;
  letter-spacing: 0.12em;
}

.sec4-content .row1 .box .sttl span,
.sec4-content .row4 .box .sttl span {
  display: inline-block;
  margin-left: 10px;
  position: relative;
  top: -2px;
}

.sec4-content .row1 .box .sttl span img,
.sec4-content .row4 .box .sttl span img {
  width: 10px;
  margin-right: 8px;
}

.sec4-content .row1 .box .txt1,
.sec4-content .row4 .box .txt1 {
  font-size: 12px;
}

.sec4-content .row1 .box .txt2,
.sec4-content .row4 .box .txt2 {
  line-height: 27.5px;
}

.sec4-content .row1 .box .col,
.sec4-content .row4 .box .col {
  border-bottom: 1px dotted #908f89;
  padding-bottom: 5vw;
  margin-bottom: 5vw;
}

.sec4-content .row1 .box .col:last-child,
.sec4-content .row4 .box .col:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.sec4-content .row2 {
  margin: 10vw 0;
  padding-bottom: 10vw;
}

.sec4-content .row2 h3:before {
  left: 46vw;
}

.sec4-content .row4 h3:before {
    left: 46vw!important;
}

.sec4-content .row2 .price {
  margin: 8vw 7% 0;
  font-size: 5.33334vw;
  line-height: 7vw;
}

.sec4-content .row2 .price span {
  font-size: 6.66667vw;
}

.sec4-content .row2 .price small {
  font-size: 4vw;
}

.sec4-content .row3 {
  margin: 10vw 0;
  padding-bottom: 10vw;
}

.sec4-content .row3 h3:before {
  left: 38vw;
}

.sec4-content .row3 ul {
  margin: 8vw 5vw 0;
  line-height: 23px;
}

.sec4-content .row3 ul li + li {
  margin-top: 10px;
}

.sec4-content .row4 li {
	line-height: 2;
    padding-bottom: 15px;
  }

.sec4-content .btn {
  margin-top: 15vw;
}

.sec4-content .btn a {
  display: block;
  background: #000;
  font-size: 5.06667vw;
  line-height: 7vw;
  letter-spacing: 0.2em;
  padding: 4.8vw 0 5.2vw;
  text-align: center;
  position: relative;
}

.sec4-content .btn a:after {
  content: '';
  width: 3vw;
  background-image: url("../img/kyobashi/icon_link.png");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10%;
}

@media screen and (max-width: 767px) {
  .sec4-content h2.fz50 {
    font-size: 8vw;
  }
  .sec4-content .row1 ul li span {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .sec4-content {
    padding: 260px 0 199px;
    clip-path: polygon(0 0, 100% 197px, 100% 100%, 0% 100%);
  }
  .sec4-content .note {
    margin: 57px 0 51px;
  }
  .sec4-content h3 {
    font-size: 125px;
    line-height: 90px;
    padding: 0 0 19px 12px;
  }
  .sec4-content h3:before {
    left: 379px;
    right: -41px;
    top: 48px;
  }
  .sec4-content h3:after {
    left: -37px;
    right: -50vw;
  }
  .sec4-content h3 small {
    font-size: 40px;
    margin-top: -9px;
  }
  .sec4-content .row:before {
    left: -99px;
    right: -41px;
    top: 48px;
  }
  .sec4-content .row:after {
    width: 99px;
    left: -99px;
    top: 48px;
  }
  .sec4-content .row1 {
    padding-bottom: 74px;
  }
  .sec4-content .row1 ul {
    font-size: 20px;
    line-height: 30px;
    margin: 50px 20px 0;
  }
  .sec4-content .row1 ul li + li {
    margin-top: 30px;
  }
  .sec4-content .row1 .box,
  .sec4-content .row4 .box{
    width: 900px;
    margin: 61px 0 0 19px;
    padding: 49px 56px 58px;
  }
  .sec4-content .row1 .box .ttl,
  .sec4-content .row4 .box .ttl {
    font-size: 30px;
    line-height: 42px;
    margin-bottom: 30px;
  }
  .sec4-content .row1 .box .ttl:before,
  .sec4-content .row4 .box .ttl:before {
    top: 18px;
  }
  .sec4-content .row1 .box .ttl span,
  .sec4-content .row4 .box .ttl span {
    width: 290px;
    margin: 0 auto;
    background-size: auto;
  }
  .sec4-content .row1 .box .sttl,
  .sec4-content .row4 .box .sttl {
    font-size: 30px;
  }
  .sec4-content .row1 .box .sttl span,
  .sec4-content .row4 .box .sttl span{
    margin-left: 8px;
  }
  .sec4-content .row1 .box .sttl span img,
  .sec4-content .row4 .box .sttl span img {
    width: 20px;
    margin-right: 7px;
  }
  .sec4-content .row1 .box .txt1,
  .sec4-content .row4 .box .txt1 {
    font-size: 16px;
    margin: 1px 0 14px 5px;
  }
  .sec4-content .row1 .box .txt2,
  .sec4-content .row4 .box .txt2 {
    line-height: 30px;
  }
  .sec4-content .row1 .box .blk,
  .sec4-content .row4 .box .blk {
    flex-wrap: wrap;
    position: relative;
  }
  .sec4-content .row1 .box .blk:before,
  .sec4-content .row4 .box .blk:before{
    content: '';
    width: 1px;
    border-left: 1px dashed #afaea6;
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
  }
  .sec4-content .row1 .box .blk:after,
  .sec4-content .row4 .box .blk:after{
    content: '';
    height: 1px;
    border-top: 1px dashed #afaea6;
    position: absolute;
    left: 0;
    right: 0;
    top: 47%;
  }
  .sec4-content .row1 .box .col,
  .sec4-content .row4 .box .col{
    width: 50%;
    border-bottom: none;
    padding: 7px 40px 45px 64px;
    margin-bottom: 0;
  }
  .sec4-content .row1 .box .col:nth-child(2),
  .sec4-content .row4 .box .col:nth-child(2) {
    padding: 7px 55px 45px 45px;
  }
  .sec4-content .row1 .box .col:nth-child(3),
  .sec4-content .row4 .box .col:nth-child(3) {
    padding: 48px 40px 0px 64px;
  }
  .sec4-content .row1 .box .col:last-child,
  .sec4-content .row4 .box .col:last-child {
    padding: 48px 55px 0px 45px;
  }
  .sec4-content .row2 {
    margin: 85px 0 81px;
    padding-bottom: 54px;
  }
  .sec4-content .row2 h3:before {
    left: 394px;
  }
  .sec4-content .row2 h3:after {
    left: -50vw;
    right: 26px;
  }
.sec4-content .row4 h3:before {
    left: 394px!important;
  }
  .sec4-content .row2 .price {
    margin: 43px 18px 0;
    font-size: 25px;
    line-height: 40px;
    letter-spacing: 0.12em;
  }
  .sec4-content .row2 .price span {
    font-size: 40px;
    letter-spacing: 0.13em;
  }
  .sec4-content .row2 .price small {
    font-size: 20px;
    letter-spacing: 0.09em;
  }
  .sec4-content .row2 .price small.db {
    margin: 4px 0 -6px;
  }
  .sec4-content .row3 {
    margin: 85px 0 81px;
    padding-bottom: 54px;
  }
  .sec4-content .row3 h3:before {
    left: 305px;
  }
  .sec4-content .row3 ul {
    font-size: 20px;
    margin: 50px 19px 0;
    line-height: 30px;
  }
  .sec4-content .row3 ul li + li {
    margin-top: 30px;
  }
  .sec4-content .btn {
    width: 530px;
    margin: 103px auto 0;
  }
  .sec4-content .btn a {
    font-size: 30px;
    line-height: 40px;
    padding: 31px 0 29px 8px;
  }
  .sec4-content .btn a:after {
    width: 18px;
    right: 51px;
    bottom: 4px;
    transition: 0.3s all ease-in-out;
  }
  .sec4-content .btn a:hover {
    background: #0fa317;
  }
	.sec4-content .row4 ul {
    font-size: 16px;
  }
	.sec4-content .row4 li {
	line-height: 2;
    padding-bottom: 15px;
  }
}

.remodal {
  padding: 10vw 5% 5vw;
}

.remodal .md-ttl {
  font-size: 20vw;
  line-height: 20vw;
  letter-spacing: 0;
}

.remodal .md-note {
  margin: 3vw 0 10vw;
}

.remodal .md-blk .md-sttl {
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.1em;
  padding: 10px 0 7px;
  margin-bottom: 15px;
}

.remodal .md-blk dl {
  width: 100%;
  display: table;
  border-bottom: 1px solid #a9a9a9;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.remodal .md-blk dl dt {
  display: table-cell;
  text-align: left;
}

.remodal .md-blk dl dd {
  display: table-cell;
  text-align: right;
  white-space: nowrap;
  padding-left: 15px;
}

.remodal .md-blk .item {
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .remodal {
    padding: 79px 30px 77px;
  }
  .remodal .md-ttl {
    font-size: 125px;
    line-height: 90px;
  }
  .remodal .md-note {
    margin: 53px 0 76px;
  }
  .remodal .md-blk .md-sttl {
    font-size: 25px;
    padding: 10px 0 9px;
    margin-bottom: 14px;
  }
  .remodal .md-blk dl {
    margin-bottom: 13px;
  }
  .remodal .md-blk .col {
    width: 310px;
  }
  .remodal .md-blk .item {
    margin-bottom: 53px;
  }
}

.shopinfo-content {
  color: #000;
  padding: 19vw 0 15vw;
  position: relative;
  z-index: 0;
}

.shopinfo-content:after {
  content: '';
  width: 77%;
  background: #fff;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0px;
  z-index: -2;
}

.shopinfo-content h2 {
  margin: 0 0 10vw 26%;
}

.shopinfo-content .box {
  margin-left: 16%;
}

.shopinfo-content .box .img {
  width: 91.712%;
  position: relative;
  line-height: 0;
}

.shopinfo-content .box .img:before {
  content: '';
  width: 3.47vw;
  height: 25.334vw;
  background: #0fa317;
  position: absolute;
  left: -2vw;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.shopinfo-content .come {
        text-align: left;
    font-size: 12px;
    margin: 5vw -6% 0 24%;
    line-height: 1.5;
	}

.shopinfo-content .box .col {
  padding: 6vw 0 0 10%;
}

.shopinfo-content .box .col .ttl {
  font-size: 5.3334vw;
  line-height: 7vw;
  margin-bottom: 4vw;
}

.shopinfo-content .box .col .ttl small {
  font-size: 3.2vw;
}

.shopinfo-content .box .col .tel {
  font-size: 4vw;
  letter-spacing: 0.06em;
  line-height: 7vw;
}

.shopinfo-content .box .col .tel span {
  font-size: 6.66667vw;
  letter-spacing: 0.05em;
  margin-bottom: 1vw;
}

.shopinfo-content .box .col .tel span small {
  font-size: 4.66667vw;
  letter-spacing: 0.05em;
}

.shopinfo-content .box .col .tel small.db {
  color: #4b4b4b;
  font-size: 10px;
  line-height: 15px;
}

.shopinfo-content .info {
  margin: 13vw -6% 0 24%;
}

.shopinfo-content .info dl {
  width: 100%;
  display: table;
  font-size: 12px;
  line-height: 22.5px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #d4d4d4;
  text-align: left;
}

.shopinfo-content .info dl dt {
  width: 80px;
  display: table-cell;
}

.shopinfo-content .info dl dd {
  display: table-cell;
}

.shopinfo-content .info dl dd span {
  display: none;
}

.shopinfo-content .cancel {
  position: relative;
  margin: 13vw -2% 0 25%;
}

.shopinfo-content .cancel:before {
  content: '';
  border: 1px solid #000;
  position: absolute;
  left: 0;
  right: 0;
  top: 2vw;
  bottom: 0;
}

.shopinfo-content .cancel .ttl {
  position: relative;
  font-size: 4vw;
  line-height: 4vw;
  letter-spacing: 0.06em;
  margin-bottom: 5vw;
  text-align: center;
}

.shopinfo-content .cancel .ttl:before {
  content: '';
  height: 1px;
  background: #000;
  position: absolute;
  left: 0;
  right: 0;
  top: 2vw;
}

.shopinfo-content .cancel .ttl span {
  background: #fff;
  position: relative;
  z-index: 1;
  padding: 0 1vw;
}

.shopinfo-content .cancel .txt {
  padding: 0 9% 6vw;
  font-size: 13px;
  line-height: 25px;
}

.shopinfo-content .sns_icon {
    margin: 5vw -6% 0 21%;
	display: flex;
}

.shopinfo-content .txt-deco {
  font-size: 24vw;
  line-height: 16vw;
  letter-spacing: 0;
  position: absolute;
  left: 3vw;
  top: -1vw;
  z-index: -1;
}

.shopinfo-content .txt-deco .txt-latin {
  display: block;
  letter-spacing: -0.14em;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(1) {
  transition-duration: 2.7s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(2) {
  transition-duration: 2.6s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(3) {
  transition-duration: 2.5s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(4) {
  transition-duration: 2.3s;
  margin-top: 13vw;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(5) {
  transition-duration: 2s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(6) {
  transition-duration: 1.5s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(7) {
  transition-duration: 1s;
}

.shopinfo-content .txt-deco .txt-latin span:nth-child(8) {
  transition-duration: 0.5s;
}

@media screen and (min-width: 768px) {
  .shopinfo-content {
    /*padding: 157px 0 140px;*/
    padding: 157px 0 350px;
  }
  .shopinfo-content:after {
    width: calc(100% - 293px);
  }
  .shopinfo-content h2 {
    text-align: left;
    margin: 0 0 83px 293px;
  }
  .shopinfo-content .box {
    border: 1px solid #0fa317;
    margin-left: 0;
    display: flex;
  }
  .shopinfo-content .box .img {
    width: 410px;
  }
  .shopinfo-content .box .img img {
    width: 100%;
    height: 291px;
    object-fit: cover;
    object-position: 50%;
  }
  .shopinfo-content .box .img:before {
    width: 20px;
    height: 150px;
    left: -15px;
  }
	.shopinfo-content .come {
	margin: 10px 0 0 425px;
    text-align: center;
		font-size: 15px;
	}
  .shopinfo-content .box .col {
    width: calc(100% - 410px);
    padding: 38px 0 0 60px;
  }
  .shopinfo-content .box .col .ttl {
    font-size: 29px;
    line-height: 42px;
    margin: 0 0 24px 3px;
  }
  .shopinfo-content .box .col .ttl small {
    font-size: 16px;
    margin-top: -6px;
  }
  .shopinfo-content .box .col .tel {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.09em;
  }
  .shopinfo-content .box .col .tel span {
    font-size: 40px;
    letter-spacing: 0.06em;
    margin: 7px 0 16px;
  }
  .shopinfo-content .box .col .tel span small {
    font-size: 30px;
  }
  .shopinfo-content .box .col .tel small.db {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.09em;
  }
  .shopinfo-content .info {
    width: 700px;
    margin: 67px 0 0 295px;
  }
  .shopinfo-content .info dl {
    font-size: 16px;
    line-height: 28px;
    padding-bottom: 11px;
    margin-bottom: 16px;
  }
  .shopinfo-content .info dl dt {
    width: 145px;
  }
  .shopinfo-content .info dl dd span {
    display: inline-block;
  }
  .shopinfo-content .cancel {
    width: 580px;
    margin: 58px 0 0 296px;
  }
  .shopinfo-content .cancel:before {
    top: 20px;
  }
  .shopinfo-content .cancel .ttl {
    font-size: 20px;
    line-height: 40px;
    letter-spacing: 0.08em;
    margin: 0 0 11px 24px;
    text-align: left;
  }
  .shopinfo-content .cancel .ttl:before {
    top: 20px;
  }
  .shopinfo-content .cancel .ttl span {
    padding: 0 5px;
  }
  .shopinfo-content .cancel .txt {
    padding: 0 15px 23px 28px;
    font-size: 16px;
    line-height: 28px;
  }
  .shopinfo-content .sns_icon {
    display: flex;
    width: 700px;
    margin: 35px 0 0 285px;
	}
  .shopinfo-content .txt-deco {
    font-size: 400px;
    line-height: 200px;
    top: -26px;
    left: 27px;
  }
  .shopinfo-content .txt-deco .txt-latin {
    letter-spacing: -0.128em;
  }
  .shopinfo-content .txt-deco .txt-latin span:nth-child(4) {
    margin-top: 102px;
  }
}

@media screen and (min-width: 1350px) {
  .shopinfo-content:after {
    width: calc(50% + 375px);
  }
  .shopinfo-content h2 {
    margin-left: 243px;
  }
  .shopinfo-content .info {
    margin-left: 245px;
  }
  .shopinfo-content .cancel {
    margin-left: 246px;
  }
  .shopinfo-content .sns_icon {
    display: flex;
    margin-left: 235px;
	}
}

.gmap-content {
  padding-bottom: 15vw;
}

.gmap-content .gmap {
  height: 480px;
  position: relative;
}

.gmap-content .gmap iframe {
  width: 100%;
  height: 100%;
  border: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.gmap-content .btn-link {
  width: 90%;
  margin: 10vw auto 0;
}

@media screen and (min-width: 768px) {
  .gmap-content {
    padding-bottom: 46px;
  }
  .gmap-content .gmap {
    height: 650px;
  }
  .gmap-content .btn-link {
    width: 340px;
    margin: 66px auto 26px;
  }
  .gmap-content .btn-link a {
    padding-right: 9px;
  }
  .gmap-content .btn-link a:after {
    right: calc(50% - 126px);
  }
  .gmap-content .print a {
    color: #949494;
  }
  .gmap-content .print a:hover {
    text-decoration: underline;
  }
}
