@charset "UTF-8";
/* main */
/* ----------------------------------------------------------------------------*/
#main {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.15rem;
  color: #000000;
  padding-bottom: min(10vw, 160px);
  /*------------------------------

    開発環境の初期化

  ------------------------------*/
}
@media screen and (max-width: 767px) {
  #main {
    padding-bottom: 18vmin;
  }
}
#main *,
#main *::before,
#main *::after {
  box-sizing: border-box;
}
#main a,
#main button {
  cursor: revert;
}
#main ol,
#main ul,
#main menu {
  list-style: none;
}
#main img {
  max-width: 100%;
}
#main table {
  border-collapse: collapse;
}
#main textarea {
  white-space: revert;
}
#main meter {
  -webkit-appearance: revert;
  appearance: revert;
}
#main ::placeholder {
  color: unset;
}
#main :where([hidden]) {
  display: none;
}
#main :where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}
#main :where([draggable=true]) {
  -webkit-user-drag: element;
}
#main body {
  margin: 0;
  padding: 0;
}
#main a,
#main button {
  cursor: revert;
}
#main ol,
#main ul,
#main menu {
  list-style: none;
}
#main img {
  max-width: 100%;
}
#main table {
  border-collapse: collapse;
}
#main textarea {
  white-space: revert;
}
#main meter {
  -webkit-appearance: revert;
  appearance: revert;
}
#main ::placeholder {
  color: unset;
}
#main :where([hidden]) {
  display: none;
}
#main :where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}
#main :where([draggable=true]) {
  -webkit-user-drag: element;
}
#main .l-inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #main .l-inner {
    max-width: 1200px;
  }
}
@media (max-width: 1280px) {
  #main .l-inner {
    padding: 0 40px;
  }
}
@media screen and (max-width: 767px) {
  #main .l-inner {
    padding: 0;
    max-width: 86.6666666667vw;
  }
}
#main sup {
  font-size: 0.6em !important;
}
@media only screen and (min-width: 768px) {
  #main .display-sp {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  #main .display-pc {
    display: none !important;
  }
}
#main input,
#main select,
#main button {
  appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", Yu Gothic Medium, "游ゴシック", Yu Gothic, sans-serif;
}
#main .shoplist-heading {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  #main .shoplist-heading {
    width: min(68.75vw, 1100px);
    padding-top: min(3.75vw, 60px);
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist-heading {
    padding-top: 5.3333333333vmin;
    padding-right: 4vmin;
    padding-left: 4vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist-heading__columns {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
    line-height: 1;
  }
}
#main .shoplist-heading__columns__h1 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  #main .shoplist-heading__columns__h1 {
    font-size: min(1.875vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist-heading__columns__h1 {
    font-size: 5.3333333333vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist-heading__columns__txt {
    margin-left: min(1.25vw, 20px);
    font-size: min(1.125vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist-heading__columns__txt {
    font-size: 3.2vmin;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist-heading__number {
    font-size: 3.2vmin;
  }
}
#main .shoplist-heading__number__em {
  font-weight: bold;
  padding-right: 0.2em;
}
@media screen and (max-width: 767px) {
  #main .shoplist-heading__number__em {
    font-size: 5.3333333333vmin;
  }
}
#main .shoplist {
  position: relative;
  width: 100%;
  overflow-x: clip;
  color: #000;
  /*============================
  side
  ============================*/
  /*============================
  main
  ============================*/
  /*============================
  notice
  ============================*/
  /*============================
  &__list
  ============================*/
  /*============================
  error
  ============================*/
}
#main .shoplist img {
  vertical-align: bottom;
}
#main .shoplist a {
  transition: 0.3s all;
  text-decoration: none;
  color: #000;
}
@media (any-hover: hover) {
  #main .shoplist a:hover {
    opacity: 0.6;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: min(68.75vw, 1100px);
    margin-inline: auto;
    padding-top: min(3.75vw, 60px);
  }
  #main .shoplist .pc {
    display: block;
  }
  #main .shoplist .sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist {
    padding-top: 5.3333333333vmin;
  }
  #main .shoplist .pc {
    display: none;
  }
  #main .shoplist .sp {
    display: block;
  }
  #main .shoplist:has(.js-config.is-open) .shoplist__list {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side {
    width: min(17.5vw, 280px);
  }
}
#main .shoplist__side__head {
  position: relative;
  display: flex;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__head {
    align-items: center;
    justify-content: space-between;
    margin-bottom: min(2.125vw, 34px);
    padding-bottom: min(1.25vw, 20px);
    border-bottom: min(0.125vw, 2px) solid #777777;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__head {
    display: none;
  }
}
#main .shoplist__side__head .head {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__head .head {
    font-size: min(1.25vw, 20px);
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__head .reset {
    font-size: min(0.875vw, 14px);
    text-decoration: underline;
    cursor: pointer;
  }
}
#main .shoplist__side__head .number {
  white-space: nowrap;
  letter-spacing: 0.075em;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__head .number {
    position: absolute;
    top: 0;
    left: 100%;
    margin-left: min(4.625vw, 74px);
    font-size: min(0.875vw, 14px);
  }
}
#main .shoplist__side__config {
  position: relative;
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__config {
    height: 17.3333333333vmin;
  }
  #main .shoplist__side__config.is-sticky .shoplist__side__config__head {
    position: fixed;
    top: 62px;
    right: 0;
    left: 0;
    z-index: 1000;
    box-shadow: 0 0.8vmin 0.8vmin 0 rgba(0, 0, 0, 0.1);
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__config__head {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__config__head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3.2vmin;
    width: 100%;
    height: 17.3333333333vmin;
    border-top: 2.6666666667vmin solid #f6f6f6;
    border-right: 4vmin solid #f6f6f6;
    border-bottom: 2.6666666667vmin solid #f6f6f6;
    border-left: 4vmin solid #f6f6f6;
    background-color: #fff;
    cursor: pointer;
  }
  #main .shoplist__side__config__head .icn {
    display: block;
    width: 2.6666666667vmin;
    height: 2.1333333333vmin;
    background: url(../img/im-config.png) no-repeat center/contain;
  }
  #main .shoplist__side__config__head .txt {
    display: block;
    font-size: 3.2vmin;
  }
}
#main .shoplist__side__config__body {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__config__body {
    gap: min(3.75vw, 60px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__config__body {
    position: fixed;
    inset: 0;
    overflow: auto;
    padding: 20vmin 0 26.6666666667vmin;
    background-color: #fff;
    z-index: 10000;
    transition: 0.2s all;
  }
  #main .shoplist__side__config__body:not(.is-open) {
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__config__body__head {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__config__body__head {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4vmin;
    height: 14.6666666667vmin;
    background-color: #f6f6f6;
    z-index: 10;
  }
  #main .shoplist__side__config__body__head .txt {
    display: block;
    font-size: 4vmin;
  }
  #main .shoplist__side__config__body__head .number {
    font-size: 3.2vmin;
  }
  #main .shoplist__side__config__body__head .icn {
    position: absolute;
    top: 0;
    right: 4.8vmin;
    bottom: 0;
    display: block;
    width: 5.3333333333vmin;
    height: 5.3333333333vmin;
    margin: auto 0;
    rotate: 45deg;
    cursor: pointer;
  }
  #main .shoplist__side__config__body__head .icn::before, #main .shoplist__side__config__body__head .icn::after {
    content: "";
    position: absolute;
    inset: 0;
    display: block;
    height: 0.4vmin;
    margin: auto;
    background-color: #333;
  }
  #main .shoplist__side__config__body__head .icn::before {
    rotate: 90deg;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__config__buttons {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__config__buttons {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    gap: 2.6666666667vmin;
    margin-top: 4vmin;
    padding: 4vmin;
    background-color: #fff;
    z-index: 10;
  }
  #main .shoplist__side__config__buttons__reset {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25.3333333333vmin;
    height: 12vmin;
    border-radius: 0.6666666667vmin;
    border: 0.2666666667vmin solid #e6e6e6;
    font-size: 3.4666666667vmin;
    cursor: pointer;
  }
  #main .shoplist__side__config__buttons__shoplist {
    flex: 1;
    height: 12vmin;
    border-radius: 0.6666666667vmin;
    background-color: #000;
    font-size: 3.4666666667vmin;
    color: #fff;
    cursor: pointer;
  }
}
#main .shoplist__side__section {
  position: relative;
}
#main .shoplist__side__section .selectbox-wrap {
  position: relative;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section .selectbox-wrap {
    margin-bottom: min(3.75vw, 60px);
  }
}
#main .shoplist__side__section .selectbox-wrap:after {
  content: "";
  position: absolute;
  display: block;
  background: url(../img/im-select.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section .selectbox-wrap:after {
    width: min(1.125vw, 18px);
    height: min(0.4375vw, 7px);
    top: min(0.625vw, 10px);
    right: min(1.125vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section .selectbox-wrap:after {
    top: 50%;
    transform: translateY(-50%);
    width: 4vmin;
    height: 1.4666666667vmin;
    right: 4vmin;
  }
}
#main .shoplist__side__section .selectbox {
  width: 100%;
  line-height: 1;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section .selectbox {
    padding-bottom: min(1.5vw, 24px);
    border-bottom: min(0.125vw, 2px) solid #e6e6e6;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section .selectbox {
    padding: 4vmin;
    border-bottom: 0.2666666667vmin solid #e6e6e6;
  }
}
#main .shoplist__side__section__head {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__head {
    padding-bottom: min(1.5vw, 24px);
    border-bottom: min(0.125vw, 2px) solid #e6e6e6;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4vmin;
    border-bottom: 0.2666666667vmin solid #e6e6e6;
    cursor: pointer;
  }
  #main .shoplist__side__section__head:not(.is-open) .icn::before {
    rotate: 90deg;
  }
  #main .shoplist__side__section__head:not(.is-open) + .js-acc-panel {
    position: absolute;
    top: 0;
    left: -100vw;
    opacity: 0;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__head.is-disabled {
    color: #cccccc;
    pointer-events: none;
  }
  #main .shoplist__side__section__head.is-disabled .icn::before, #main .shoplist__side__section__head.is-disabled .icn::after {
    background-color: #cccccc;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__head .icn {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__head .icn {
    position: relative;
    display: block;
    width: 4vmin;
    height: 4vmin;
  }
  #main .shoplist__side__section__head .icn::before, #main .shoplist__side__section__head .icn::after {
    content: "";
    position: absolute;
    inset: 0;
    display: block;
    height: 0.2666666667vmin;
    margin: auto;
    background-color: #333;
    transition: 0.5s rotate;
  }
}
#main .shoplist__side__section__head.js-hide ,
#main .shoplist__side__section__body.js-hide {
  display: none;
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__body {
    margin-bottom: 4vmin;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__list {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  #main .shoplist__side__section__list::before {
    content: "";
    position: absolute;
    inset: 0;
    display: block;
    width: 1px;
    margin: auto;
    background-color: #e6e6e6;
  }
  #main .shoplist__side__section__list::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    height: 0.2666666667vmin;
    background-color: #e6e6e6;
  }
}
#main .shoplist__side__section__list__item.js-hide {
  display: none;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__list__item {
    border-bottom: min(0.125vw, 2px) solid #e6e6e6;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__list__item {
    border-bottom: 0.2666666667vmin solid #e6e6e6;
  }
}
#main .shoplist__side__section__list__item .checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__list__item .checkbox {
    height: min(3.625vw, 58px);
    padding: 0 min(1.25vw, 20px);
    gap: min(0.9375vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__list__item .checkbox {
    height: 13.6vmin;
    padding-left: 4vmin;
    gap: 2.6666666667vmin;
  }
}
#main .shoplist__side__section__list__item .checkbox:has(:checked) .checkbox__input {
  background-image: url(../img/im-checkbox-checked.png);
}
#main .shoplist__side__section__list__item .checkbox__input {
  position: relative;
  display: block;
  background: url(../img/im-checkbox.png) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__list__item .checkbox__input {
    width: min(1.4375vw, 23px);
    height: min(1.4375vw, 23px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__list__item .checkbox__input {
    width: 5.3333333333vmin;
    height: 5.3333333333vmin;
  }
}
#main .shoplist__side__section__list__item .checkbox__input input {
  position: absolute;
  top: 0;
  left: -100vw;
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__list__item .checkbox__txt {
    font-size: min(1vw, 16px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__list__item .checkbox__txt {
    font-size: 2.9333333333vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__side__section__reset {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: min(1.25vw, 20px);
    margin-left: auto;
    width: min(5.625vw, 90px);
    height: min(2.125vw, 34px);
    border: min(0.125vw, 2px) solid #e6e6e6;
    border-radius: min(0.25vw, 4px);
    font-size: min(1vw, 16px);
    cursor: pointer;
    transition: opacity 0.5s;
  }
  #main .shoplist__side__section__reset:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__side__section__reset {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__main {
    width: min(46.625vw, 746px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__main {
    padding-top: 4vmin;
    padding-left: 4vmin;
    padding-right: 4vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__main__attention {
    margin-top: min(0.625vw, 10px);
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__main__attention {
    font-size: 2.6666666667vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__main__number {
    line-height: 1;
    font-size: min(1.125vw, 18px);
  }
}
#main .shoplist__main__number__em {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  #main .shoplist__main__number__em {
    font-size: min(1.5vw, 24px);
    margin-right: min(0.3125vw, 5px);
  }
}
#main .shoplist__notice {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #main .shoplist__notice {
    gap: min(0.5vw, 8px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__notice {
    gap: 2.6666666667vmin;
    padding: 0 4vmin;
    margin-bottom: 5.3333333333vmin;
  }
}
#main .shoplist__notice .icn {
  display: block;
}
@media screen and (min-width: 768px) {
  #main .shoplist__notice .icn {
    width: min(1.3125vw, 21px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__notice .icn {
    width: 5.4666666667vmin;
  }
}
#main .shoplist__notice .txt {
  flex: 1;
  color: #000;
}
@media screen and (min-width: 768px) {
  #main .shoplist__notice .txt {
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__notice .txt {
    font-size: 2.6666666667vmin;
  }
}
#main .shoplist__list {
  position: relative;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list {
    display: flex;
    flex-wrap: wrap;
    margin-top: min(2.5vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list {
    margin-top: 12vmin;
  }
}
#main .shoplist__list__item {
  transition: 0.5s opacity;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item {
    width: min(22.8125vw, 365px);
    padding-top: min(3.125vw, 50px);
    padding-bottom: min(3.125vw, 50px);
    border-bottom: 1px solid #e5e5e5;
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item {
    margin-top: 8vmin;
    padding-bottom: 8vmin;
    border-bottom: 1px solid #e5e5e5;
  }
}
#main .shoplist__list__item:not(.is-active) {
  position: absolute;
  top: 0;
  left: -100vw;
  opacity: 0;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item.is-min-two {
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item.is-odd {
    padding-right: min(3.125vw, 50px);
  }
}
#main .shoplist__list__item.is-odd:last-child {
  border-right: 1px solid #e5e5e5;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item.is-even {
    padding-left: min(3.125vw, 50px);
    border-left: 1px solid #e5e5e5;
  }
}
#main .shoplist__list__item .industry {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .industry {
    margin: max(-0.25vw, -4px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .industry {
    margin: -1vmin;
  }
}
#main .shoplist__list__item .industry__item {
  border: 1px solid #000000;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .industry__item {
    margin: min(0.25vw, 4px);
    padding: min(0.3125vw, 5px) min(0.625vw, 10px);
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .industry__item {
    margin: 1vmin;
    padding: 0.6666666667vmin 2.6666666667vmin;
    font-size: 2.9333333333vmin;
  }
}
#main .shoplist__list__item .name {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .name {
    margin-top: min(1.875vw, 30px);
    font-size: min(1.5vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .name {
    margin-top: 4vmin;
    font-size: 5.3333333333vmin;
  }
}
#main .shoplist__list__item .map {
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .map {
    margin-top: min(1.875vw, 30px);
    font-size: min(1.125vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .map {
    margin-top: 2.1333333333vmin;
    font-size: 4vmin;
  }
}
#main .shoplist__list__item .map__anchor {
  display: inline-block;
  transition: opacity 0.5s;
}
#main .shoplist__list__item .map__anchor:hover {
  opacity: 0.6;
}
#main .shoplist__list__item .map__anchor__small {
  display: inline-block;
  position: relative;
}
#main .shoplist__list__item .map__anchor__small:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: block;
  background: url(../img/im-window.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .map__anchor__small:after {
    width: min(1vw, 16px);
    height: min(0.9375vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .map__anchor__small:after {
    width: 3.0666666667vmin;
    height: 2.9333333333vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .map__anchor__small {
    font-size: min(0.875vw, 14px);
    padding-right: min(0.9375vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .map__anchor__small {
    font-size: 2.6666666667vmin;
    padding-right: 2.6666666667vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .links {
    margin-top: min(0.625vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .links {
    margin-top: 1.3333333333vmin;
  }
}
#main .shoplist__list__item .links__item {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .links__item:not(:first-child) {
    margin-top: min(0.3125vw, 5px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .links__item:not(:first-child) {
    margin-top: 0.6666666667vmin;
  }
}
#main .shoplist__list__item .links__item__anchor {
  line-height: 1.3;
  display: inline-block;
  transition: opacity 0.5s;
  text-decoration: underline;
}
#main .shoplist__list__item .links__item__anchor:hover {
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .links__item__anchor {
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .links__item__anchor {
    font-size: 2.6666666667vmin;
  }
}
#main .shoplist__list__item .links__item__anchor__small {
  display: inline-block;
  position: relative;
  text-decoration: underline;
}
#main .shoplist__list__item .links__item__anchor__small:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: block;
  background: url(../img/im-window.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .links__item__anchor__small:after {
    width: min(1.0625vw, 17px);
    height: min(0.9375vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .links__item__anchor__small:after {
    width: 2.5333333333vmin;
    height: 2.6666666667vmin;
  }
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .links__item__anchor__small {
    padding-right: min(1.25vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .links__item__anchor__small {
    padding-right: 2.6666666667vmin;
  }
}
#main .shoplist__list__item .tel {
  display: flex;
  flex-wrap: nowrap;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .tel {
    margin-top: min(1.5625vw, 25px);
    font-size: min(1.125vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .tel {
    margin-top: 4vmin;
    font-size: 4vmin;
  }
}
#main .shoplist__list__item .tel__num {
  transition: opacity 0.5s;
}
#main .shoplist__list__item .tel__num:hover {
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .tel__num {
    margin-left: min(0.625vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .tel__num {
    margin-left: 1.3333333333vmin;
  }
}
#main .shoplist__list__item .town {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .town {
    margin: min(1.28125vw, 20.5px) max(-0.25vw, -4px) max(-0.25vw, -4px) max(-0.25vw, -4px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .town {
    margin: 3.4vmin -1vmin -1vmin -1vmin;
  }
}
#main .shoplist__list__item .town__item {
  color: #ffffff;
  background-color: #000000;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .town__item {
    margin: min(0.25vw, 4px);
    padding: min(0.3125vw, 5px) min(0.625vw, 10px);
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .town__item {
    margin: 1vmin;
    padding: 0.6666666667vmin 2.6666666667vmin;
    font-size: 2.9333333333vmin;
  }
}
#main .shoplist__list__item .key__item {
  border: 1px solid #000000;
}
@media screen and (min-width: 768px) {
  #main .shoplist__list__item .key__item {
    margin: min(0.25vw, 4px);
    padding: min(0.3125vw, 5px) min(0.625vw, 10px);
    font-size: min(0.875vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__list__item .key__item {
    margin: 1vmin;
    padding: 0.6666666667vmin 2.6666666667vmin;
    font-size: 2.9333333333vmin;
  }
}
#main .shoplist__error {
  display: none;
  padding: 4em;
  background-color: #f6f6f6;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #main .shoplist__error {
    font-size: min(1vw, 16px);
  }
}
@media screen and (max-width: 767px) {
  #main .shoplist__error {
    font-size: 3.2vmin;
  }
}
#main .shoplist__error.is-active {
  display: block;
}