.main-visual {
  margin-top: 0;
  margin-bottom: calc(80 / 750 * 100vw);
  height: calc(680 / 750 * 100vw);
  background: linear-gradient(#ee2013 0, #f74813 50%, #ff6512 85%, #ff6513 100%);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.overlay-text {
    display: block;
  width: calc(176 / 375 * 100vw);
  transform: translateY(calc(-17 / 375 * 100vw));
}

.main-cars {
  width: calc(285 / 375 * 100vw);
  height: calc(116 / 375 * 100vw);
  position: absolute;
  left: 50%;
  bottom: calc(18 / 750 * 100vw);
  transform: translateX(-50%);
  opacity: .85;
}

.car-c {
  width: calc(96 / 375 * 100vw);
  position: absolute;
  top: calc(29 / 375 * 100vw);
  left: 0;
}
.car-a {
  width: calc(105 / 375 * 100vw);
  position: absolute;
  top: calc(20 / 375 * 100vw);
  right: 0;
}
.car-b {
  width: calc(146 / 375 * 100vw);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-52%);
}


/*main*/
h1{
  font-size: 1.1rem;
  margin-bottom: calc(80 / 750 * 100vw);
}

section h2{
  font-size: 1.3rem;
    color: #ff6512;
  margin-bottom: .2rem;
}

.detail-inner{
  display: flex;
  flex-direction: column;
  
  & .image-out{
    margin-bottom: calc(40 / 750 * 100vw);

  & img{
    width: 100%;
  }
  }
  
  & h3{
    font-size: 1.6rem;
    color: #ff6512;
  }
  
  & h3 + p{
    margin-bottom: calc(40 / 750 * 100vw);
  }
  
  & h4{
    margin-bottom: .2rem;
    padding: 0.1rem 0.5rem 0.2rem;
  background-color: #ff6512;
  display: inline-block;
  border-radius: .3rem;
  color: #fff;
  }
  
  & h4 + p{
    font-weight: 700;
    margin-bottom: calc(40 / 750 * 100vw);
  }
  
}
.links{
    margin-bottom: calc(40 / 750 * 100vw);
    display: flex;
    justify-content: space-between;
    
    & a{
      width: 48%;
    }
  }

.m-s-area{
  display: flex;
  flex-direction: column;
}
.g-map{
  aspect-ratio: 11 / 10;
  width: 100%;
  height: auto;
  margin-bottom: calc(40 / 750 * 100vw);
}
.image-out2{
  margin-bottom: calc(60 / 750 * 100vw);
  & img{
    width: 100%;
  }
}

.link-gm{
  margin-bottom: calc(60 / 750 * 100vw);
  display: block;
  text-align: center;
  padding: .5rem;
  font-size:1.3rem;
  color: #fff;
  background-color: #ff6512;
  border-radius: .5rem;
  position: relative;
  & span{
    width: 3.4%;
        height: 26.2%;
    background-color: #fff;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    top:50%;
    right: 5.6%;
    transform: translateY(-50%);
  }
}

/*店舗情報*/
.shop-link{
  width: 100%;
  margin-bottom: calc(18 / 375 * 100vw);
  position: relative;
  border: 2px solid #ff6512;
  border-radius: calc(10 / 375 * 100vw);
  background: linear-gradient(#ff5900 0, #ffbd4a 100%);
  color: #fff;
  font-size: 1.7rem;
  font-weight: 700;
  padding: calc(17 / 375 * 100vw) calc(60 / 375 * 100vw) calc(17 / 375 * 100vw) calc(13 / 375 * 100vw);
  box-shadow: 0 calc(7 / 375 * 100vw) #ff6512;
  
  & .cir{
    width: calc(45.4 / 375 * 100vw);
    height: calc(45.4 / 375 * 100vw);
    background-color: #fff6e3;
    border-radius: 50%;
    position: absolute;
    top:50%;
    right:calc(9 / 375 * 100vw);
    transform: translateY(-50%);
  }
  
  & .tri{
    width: calc(16.8 / 375 * 100vw);
        height: calc(23.8 / 375 * 100vw);
    background-color: #ff6512;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-34%, -50%);
  }
}

@media screen and (min-width: 601px) {
  
  .main-visual {
  margin-bottom: calc(60 / 1000 * 100vw);
  height: calc(528 / 1000 * 100vw);
}
  
  .overlay-text {
  width: calc(266 / 1000 * 100vw);
    max-width: 266px;
  transform: translateY(calc(-96 / 1000 * 100vw));
}
  
  .main-cars {
  width: calc(594 / 1000 * 100vw);
    max-width: 594px;
  height: calc(242 / 1000 * 100vw);
    max-height: 242px;
  bottom: calc(36 / 1000 * 100vw);
}
  
  .car-c {
  width: calc(200 / 1000 * 100vw);
    max-width: 200px;
  top: calc(60 / 1000 * 100vw);
}
.car-a {
  width: calc(220 / 1000 * 100vw);
  max-width: 220px;
  top: calc(40 / 1000 * 100vw);
}
.car-b {
  width: calc(305 / 1000 * 100vw);
max-width: 305px;
}
  
  h1{
    width: 62.5%;
    font-size: 1.5vw;
  margin-bottom: calc(60 / 1000 * 100vw);
  }
  
  .detail-inner{
    flex-direction: row;
    
    & .image-out{
      width: 50%;
      max-width: 500px;
      margin-bottom: 0;
    }
    
    & .shop-data{
      width: 50%;
    }
  }
  
  section h2{
  margin-bottom: .6rem;
}
  
  .shop-data{
    padding-left: 4%;
    margin-bottom: 0;
}
  .detail-inner{
    
     & h3 + p {
    margin-bottom: calc(30 / 1000 * 100vw);
  }
     & h4 + p {
    margin-bottom: calc(30 / 1000 * 100vw);
  }
  }
  
  .links{
    margin-bottom: calc(30 / 1000 * 100vw);
    
    & a{
      width: 70%;
    }
  }
  
  .m-s-area{
  flex-direction: row;
    justify-content:space-between;
    margin-bottom: calc(20 / 1000 * 100vw);
}
  .g-map{
    margin-bottom: 0;
    width: 53%;
    aspect-ratio: 530 / 328;
  }
  .image-out2{
    margin-bottom: 0;
    width: 44%;
  }
  
  .link-gm{
    width: 53%;
  }
  
  
  .shop-link{
    font-size:2.1rem;
    text-align: center;
    padding: .7rem 0 .8rem;
    border-radius: 10px;
    box-shadow: 0 calc(8 / 1000 * 680 / 750 * 100vw) #ff6512;
    margin-bottom: calc(36 / 1000 * 680 / 750 * 100vw);
    
      & .cir {
    width: calc(61.8 / 1000 * 680 / 750 * 100vw);
    height: calc(61.8 / 1000 * 680 / 750 * 100vw);
    right: calc(10 / 1000 * 680 / 750 * 100vw);
  }
    & .tri {
    width: calc(22.6 / 1000 * 680 / 750 * 100vw);
    height: calc(32.1 / 1000 * 680 / 750 * 100vw);
  }
    
  }
  
  .contact-link {
     width: 100%;
    justify-content: space-evenly;
    margin-bottom: calc(36 / 1000 * 680 / 750 * 100vw);
    
  & a {
    width: calc(680 / 750 * 36vw);
  }
    
    & .tel-area{
      width: calc(680 / 750 * 36vw);
      font-weight: 700;
      color:#ff6512;
      aspect-ratio: 600 / 215;
      background-size: contain;
    background-repeat: no-repeat;
      position: relative;
      
      & p{
        position: absolute;
        display: inline-block;
top: 4.5vw;
  left: 9vw;
  font-size: 3.1vw;
      }
    }
}
  .links2{
    display: none;
  }

}

@media screen and (min-width: 811px) {
  
  .main-visual {
    margin-bottom: 60px;
    max-height: 528px;
  }
  .overlay-text {
  transform: translateY(-90px);
}
  .main-cars {
    bottom: 36px;
  }
  .car-c {
  top: initial;
    bottom: 23px;
}
.car-a {
  top: initial;
  bottom: 10px;
}
.car-b {
  width: calc(305 / 1000 * 100vw);
max-width: 305px;
}
  
  section{
    margin-bottom: 50px;
  }
  
h1{
    font-size: 1rem;
  margin-bottom: 60px;
  }
  
  .detail-inner {
    & h3 + p {
      margin-bottom: 30px;
    }
    & h4 + p{
      margin-bottom: 30px;
    }
  }
  
  .links{
    margin-bottom: 30px;
  }
  
  .m-s-area {
    margin-bottom: 20px;
  }

  .link-gm {
    margin-bottom: 50px;
  & span {
    width: 18px;
    height: 21px;
    right: 17px;
  }
}
  
    .shop-link{
      padding: 22px 0 24px;
      box-shadow: 0 6px #ff6512;
      margin-bottom: 0;
      
      & .cir {
    width: 61px;
    height: 61px;
    right:10px;
  }
    & .tri {
    width: 23px;
    height: 32px;
  }
  }
  
  .contact-link {
     width: 64%;
    max-width: 600px;
    flex-direction: row;
    justify-content: space-between;
    
    & a {
      width: 46%;
    max-width: 280px;
  }
    
    & .tel-area{
      width:  46%;
    max-width: 280px;
      
      & p{
        font-size: 1.7rem;
        top:36%;
        left: 28%;
      }
    }
  }
  .shop-access{
    margin-bottom: 60px;
  }
}
