@charset "UTF-8";
/* Scss Document */
.wrapper {
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  color: #000;
}

img, source {
  width: 100%;
  height: auto;
}

picture {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  color: #000;
  padding: 0;
}

.inner {
  max-width: 1000px;
  margin: 0 auto;
}

.font-en {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  letter-spacing: 0 !important;
}

.body_text {
  font-size: 14px;
  line-height: 1.85;
  color: #5E5E5E;
  font-weight: 400;
}

a {
  transition: all 0.3s ease-in-out;
}
a:hover {
  opacity: 0.7;
}

.note {
  font-size: 12px;
  line-height: 1.85;
  color: #5E5E5E;
  font-weight: 400;
}

.blue {
  color: #004C71;
}

.red {
  color: #AD002D;
}

.bold {
  font-weight: bold;
}

.bc_wrap {
  margin-left: 33px;
  font-size: 10px;
}
.bc_wrap .breadcrumbs ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #5E5E5E;
  font-weight: 400;
}
.bc_wrap .breadcrumbs ul li a span {
  color: #5E5E5E;
  font-weight: 400;
}

.accordion_box {
  display: none;
  margin: 0;
  padding: 0;
  border: none;
}

.accordion_title {
  cursor: pointer;
}

.top_wrap {
  margin-top: 90px;
}
.top_wrap h1 .en {
  font-family: "Times New Roman", serif;
  letter-spacing: 0.1em;
  font-weight: 400;
  font-size: 50px;
  line-height: 1;
}
.top_wrap h1 .jp {
  display: block;
  margin-top: 15px;
  font-size: 14px;
  color: #BCBCBC;
  font-weight: 400;
}
.top_wrap .body_text {
  margin-top: 40px;
}

.shops .inner {
  max-width: 800px;
  padding-top: 40px;
  padding-bottom: 80px;
}
.shops h2 {
  font-size: 20px;
  padding-left: 25px;
  position: relative;
}
.shops h2::before {
  content: "";
  display: block;
  background: #000;
  width: 20px;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.shops h2:not(:first-child) {
  margin-top: 50px;
}
.shops .shop_list_wrap {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 15px;
  width: 100%;
}
.shops .shop_list_wrap li {
  width: 100%;
}
.shops .shop_list_wrap li h3 {
  background: #002638;
  height: 70px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 16px;
  position: relative;
}
.shops .shop_list_wrap li h3::before {
  content: "";
  display: block;
  background: url(../Contents/ImagesPkg/arrow_white.svg) no-repeat center center;
  width: 8px;
  height: 4px;
  position: absolute;
  right: 32px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}
.shops .shop_list_wrap li h3.close {
  border-radius: 5px 5px 0 0;
}
.shops .shop_list_wrap li h3.close::before {
  transform: translateY(-50%) rotate(180deg);
}
.shops .shop_list_wrap li h4 {
  font-size: 14px;
  color: #5E5E5E;
  height: 50px;
  background: #F0F4F9;
  padding: 0 15px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border: solid 1px #fff;
  position: relative;
}
.shops .shop_list_wrap li h4::before {
  content: "販売";
  background: #004C71;
  color: #fff;
  font-size: 12px;
  border-radius: 5px;
  padding: 5px 8px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.shops .shop_list_wrap li h4.treatment::after {
  content: "施術";
  background: #AD002D;
  color: #fff;
  font-size: 12px;
  border-radius: 5px;
  padding: 5px 8px;
  position: absolute;
  top: 50%;
  right: 65px;
  transform: translateY(-50%);
}
.shops .shop_list_wrap li h4.treatment_only::before {
  content: "施術";
  background: #AD002D;
  color: #fff;
  font-size: 12px;
  border-radius: 5px;
  padding: 5px 8px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.shops .shop_list_wrap li h4.amenities::before {
  content: "アメニティ";
  background: #AD002D;
  color: #fff;
  font-size: 12px;
  border-radius: 5px;
  padding: 5px 8px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.shops .shop_list_wrap li h4.web::before {
  content: "WEB販売";
  background: #004C71;
  color: #fff;
  font-size: 12px;
  border-radius: 5px;
  padding: 5px 8px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.shops .shop_list_wrap li.abroad, .shops .shop_list_wrap li.ec {
  background: #F0F4F9;
  padding: 30px;
  border: solid 1px #fff;
}
.shops .shop_list_wrap li.abroad h4, .shops .shop_list_wrap li.ec h4 {
  background: none;
  border: none;
  height: auto;
  padding: 0;
}
.shops .shop_list_wrap li.abroad h4::before, .shops .shop_list_wrap li.ec h4::before {
  right: 0;
}
.shops .shop_list_wrap li.abroad h4::after, .shops .shop_list_wrap li.ec h4::after {
  right: 50px;
}
.shops .shop_list_wrap li.abroad .body_text, .shops .shop_list_wrap li.ec .body_text {
  margin-top: 10px;
}
.shops .shop_list_wrap li.abroad .body_text a, .shops .shop_list_wrap li.ec .body_text a {
  font-size: 14px;
  text-decoration: underline;
  color: #5E5E5E;
}
.shops .shop_list_wrap li .accordion_box.store {
  padding: 30px;
}
.shops .shop_list_wrap li .accordion_box.store .flex_wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 30px;
}
.shops .shop_list_wrap li .accordion_box.store .flex_wrap iframe {
  width: 280px;
  height: 160px;
}
.shops .shop_list_wrap li .accordion_box.store .flex_wrap .body_text {
  flex: 1;
}
.shops .shop_list_wrap li .accordion_box.store .flex_wrap .body_text a {
  text-decoration: underline;
  color: #5E5E5E;
}
.shops .shop_list_wrap li .accordion_box.store .flex_wrap .body_text a[href^="tel:"] {
  pointer-events: none;
  text-decoration: none;
}

.bg_blue {
  background: #F0F4F9;
}
.bg_blue .inner {
  padding: 80px 0;
  max-width: 800px;
}
.bg_blue h2 {
  font-size: 20px;
  padding-left: 25px;
  position: relative;
}
.bg_blue h2::before {
  content: "";
  display: block;
  background: #000;
  width: 20px;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.bg_blue .body_text {
  margin-top: 10px;
}
.bg_blue .detail_link {
  margin-top: 30px;
  display: block;
  background: #002638;
  height: 70px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.bg_blue .detail_link::before {
  content: "";
  display: block;
  background: url(../Contents/ImagesPkg/arrow_white.svg) no-repeat center center;
  width: 8px;
  height: 4px;
  position: absolute;
  right: 32px;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
}
.bg_blue .detail_link .font-en {
  font-size: 16px;
  color: #fff;
}/*# sourceMappingURL=shop_new.css.map */