.shop {
  background: #E8ECF7;
}
.shop .under_content {
  margin: -130px 0 0;
  padding: 0;
  background: white;
  z-index: 1;
  position: relative;
}
@media (min-width: 760px) {
  .shop .under_content {
    width: 94.53vw;
    padding: 170px 0 98px;
    margin-bottom: 177px;
  }
  .shop .under_content .inner1200 {
    max-width: calc(1220px + 5.47vw);
    padding-left: calc(5.47vw + 10px);
  }
}
@media (max-width: 760px) {
  .shop .under_content {
    margin-top: 0;
  }
}
.shop .main {
  overflow: hidden;
  display: flex;
  justify-content: center;
  position: relative;
}
.shop .main:before {
  content: "";
  background: rgba(189, 197, 220, 0.7411764706);
  height: 1365px;
  width: 960px;
  position: absolute;
  top: -540px;
  left: -555px;
  rotate: 33.5deg;
}
@media (max-width: 760px) {
  .shop .main:before {
    height: 130%;
    width: 50vw;
    position: absolute;
    top: -31vw;
    left: -16vw;
    rotate: 32deg;
  }
}
.shop .main:after {
  content: "";
  background: rgba(43, 39, 144, 0.5803921569);
  height: 1365px;
  width: 960px;
  position: absolute;
  top: 120px;
  bottom: 0;
  left: -327px;
  rotate: -47.5deg;
}
@media (max-width: 760px) {
  .shop .main:after {
    height: 220vw;
    width: 80vw;
    position: absolute;
    top: -20vw;
    bottom: 0;
    left: -10vw;
    rotate: -43.5deg;
  }
}
.shop .main .main_txt {
  position: absolute;
  left: 104px;
  bottom: 210px;
  color: white;
  display: flex;
  align-items: flex-end;
  text-align: left;
  gap: 40px;
  z-index: 9;
}
@media (max-width: 760px) {
  .shop .main .main_txt {
    left: 4vw;
    bottom: 5vw;
    gap: 5vw;
  }
  .shop .main .main_txt .logo {
    width: 19vw;
  }
}
.shop .main .main_txt .fs30 {
  letter-spacing: 0.13em;
  display: block;
  padding: 4px 0 5px;
}
@media (max-width: 760px) {
  .shop .main .main_txt .fs30 {
    font-size: 2.9333333333vw !important;
  }
}
.shop .main .main_txt .bebas {
  letter-spacing: 0.04em;
}
@media (max-width: 760px) {
  .shop .main .main_txt .bebas {
    font-size: 9.6vw !important;
  }
}
.shop .main .main_img img {
  max-width: -moz-fit-content;
  max-width: fit-content;
}
@media (max-width: 760px) {
  .shop .main .main_img img {
    height: 400px;
  }
}
.shop .campaign {
  padding: 0 0 30px;
}
@media (max-width: 760px) {
  .shop .news .center {
    text-align: left;
  }
}
.shop .news .btn_area {
  margin: 38px auto;
}
@media (min-width: 1147.1px) {
  .shop .news .btn_area {
    max-width: 761px;
    transform: translateX(120px);
  }
}
@media (max-width: 1147px) {
  .shop .news .btn_area {
    margin: 38px 0 38px 170px;
    padding-left: 80px;
  }
}
@media (max-width: 760px) {
  .shop .news .btn_area {
    margin: 8vw auto;
    padding: 0;
  }
}
.shop .feature {
  padding: 90px 0;
  background: #D3DAEF;
}
@media (max-width: 760px) {
  .shop .feature {
    padding: 13vw 0;
  }
  .shop .feature .fs18 {
    font-size: 3.7333333333vw !important;
  }
  .shop .feature img {
    width: 100%;
  }
}
.shop .feature .bebas {
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 760px) {
  .shop .feature .bebas {
    font-size: 8vw !important;
    margin-bottom: 5vw;
  }
}
.shop .feature .flex + .flex {
  margin-top: 30px;
}
@media (max-width: 760px) {
  .shop .feature .flex + .flex {
    margin-top: 8vw;
  }
}
.shop .feature .feature_box {
  padding: 52px 59px 62px;
  line-height: 2;
  letter-spacing: 0.04em;
  font-size: 18px;
  background: white;
}
@media (max-width: 760px) {
  .shop .feature .feature_box {
    font-size: 4.2666666667vw !important;
    padding: 8vw;
  }
}
.shop .feature .ttl_feature {
  margin-bottom: 17px;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 760px) {
  .shop .feature .ttl_feature {
    font-size: 5.8666666667vw !important;
    display: inline-block;
    margin-bottom: 5vw;
  }
  .shop .feature .ttl_feature .fs57 {
    font-size: 11.4666666667vw !important;
  }
  .shop .feature .ttl_feature .bebas {
    display: inline-block;
    margin-bottom: 3vw;
  }
}
.shop .feature .ttl_feature .fs28 {
  display: inline-block;
  transform: translateY(-15px);
  border-bottom: 4px solid;
}
@media (max-width: 760px) {
  .shop .feature .ttl_feature .fs28 {
    font-size: 5.6vw !important;
    transform: translateY(-3vw);
  }
}
.shop .members {
  padding: 95px 0 50px;
}
@media (max-width: 760px) {
  .shop .members {
    padding: 13vw 0;
  }
  .shop .members .fs18 {
    font-size: 3.7333333333vw !important;
  }
  .shop .members .bebas {
    font-size: 8vw !important;
    margin-bottom: 5vw;
  }
}
.shop .members .members_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 50px;
}
@media (max-width: 1359px) {
  .shop .members .members_list {
    justify-content: center;
  }
}
@media (max-width: 760px) {
  .shop .members .members_list {
    gap: 5vw;
  }
}
.shop .program {
  padding: 40px 100px 100px;
  margin-bottom: 110px;
  background: white;
}
@media (max-width: 760px) {
  .shop .program {
    padding: 13vw 5vw 9vw;
    margin-bottom: 10vw;
  }
  .shop .program .fs18 {
    font-size: 3.7333333333vw !important;
  }
  .shop .program .bebas {
    font-size: 8vw !important;
    margin-bottom: 5vw;
  }
}
.shop .program .program_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 38px;
}
@media (max-width: 760px) {
  .shop .program .program_list {
    gap: 5vw;
  }
}
.shop .other {
  padding-bottom: 80px;
}
@media (max-width: 760px) {
  .shop .other {
    padding: 0;
    margin-bottom: 16vw;
  }
  .shop .other .fs18 {
    font-size: 3.7333333333vw !important;
  }
  .shop .other .bebas {
    font-size: 8vw !important;
    margin-bottom: 5vw;
  }
}
.shop .shop_list {
  padding: 80px 0;
  background: white;
}
@media screen and (max-width: 760px) {
  .shop .shop_list {
    padding: 10vw 0;
  }
}
.shop .shop_list .shop_list_inner {
  max-width: 1220px;
  margin: auto;
  padding: 0 10px;
  justify-content: center;
  gap: 26.5px;
}
@media screen and (max-width: 760px) {
  .shop .shop_list .shop_list_inner {
    padding: 0 5vw;
    gap: 5vw;
    font-size: 3.4666666667vw !important;
  }
}
.shop .shop_list .shop_list_inner > li {
  width: calc(24% - 14px);
}
@media screen and (max-width: 760px) {
  .shop .shop_list .shop_list_inner > li {
    width: 47%;
  }
}
.shop .shop_list .shop_list_exterior {
  position: relative;
  margin-bottom: 15px;
  display: block;
}
@media screen and (max-width: 760px) {
  .shop .shop_list .shop_list_exterior {
    margin-bottom: 4.5vw;
  }
  .shop .shop_list .shop_list_exterior img {
    width: 100%;
  }
}
.shop .shop_list .shop_list_exterior .shop_list_exterior_txt {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 20px;
  padding: 6px 20px;
  color: #fff;
  background: #332EA0;
  display: flex;
  align-items: center;
  gap: 18px;
  font-weight: 500;
}
@media screen and (max-width: 760px) {
  .shop .shop_list .shop_list_exterior .shop_list_exterior_txt {
    padding: 1.5vw 2vw;
    font-size: 3.4666666667vw !important;
    gap: 1.6vw;
  }
}
.shop .shop_list .shop_list_exterior .shop_list_exterior_txt:after {
  content: "";
  border: solid transparent;
  width: 0;
  height: 0;
  border-width: 7px 0 7px 10px;
  border-left-color: #fff;
}
@media screen and (max-width: 760px) {
  .shop .shop_list .shop_list_exterior .shop_list_exterior_txt:after {
    border-width: 1.5vw 0 1.5vw 1.5vw;
  }
}
.shop .shop_list li li {
  display: flex;
  gap: 10px;
  margin-bottom: 9px;
}
@media (max-width: 760px) {
  .shop .shop_list li li {
    align-items: center;
    margin-bottom: 1vw;
  }
}
.shop .shop_list li li img {
  margin: 0;
}
.shop .info {
  padding-top: 0;
}