@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

p {
  color: #4c4c4c;
}

a img {
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

a img:hover {
  opacity: 0.6;
  cursor: pointer;
}

body {
  -webkit-animation: topfadeIn 4s ease 0s 1 normal;
  animation: topfadeIn 4s ease 0s 1 normal;
  color: #4c4c4c;
  font-family: '游明朝体', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', 'Noto Serif JP', serif;
  font-size: 18px;
  overflow-x: hidden;
}

@-webkit-keyframes topfadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes topfadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

/*************************************************************************************
pc sp 切り替え
**************************************************************************************/
.sp {
  display: block !important;
}

.pc {
  display: none;
}

.ipad-inline {
  display: none;
}

@media screen and (min-width:768px) {
  .sp {
    display: none !important;
  }

  .pc {
    display: block;
  }
}

@media screen and (min-width:1366px) {
  .ipad-inline {
    display: inline;
    letter-spacing:
  }
}

/*************************************************************************************
letter-spancing
**************************************************************************************/
.letter-spancing0 {
  letter-spacing: 0 !important;
}

/*************************************************************************************
fv
**************************************************************************************/
.fv_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100vh;
  background-color: rgba(128, 128, 255, 0.2);
  background: url(./img/fv_bg.jpg) center center / cover no-repeat;
  text-align: center;
}

/*
#bg-video {
  position: fixed;
  left: 50%;
  top: 50%;
  min-width: 100%;
  min-height: 100%;
  height: auto;
  z-index: -100;
  background-size: cover;
  background-position: center;
  margin: auto;
  -webkit-transform: translatex(-50%) translatey(-50%);
  transform: translatex(-50%) translatey(-50%);
}
*/
.logo_wrap {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 70%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  margin: auto;
  left: 0;
  bottom: 0;
  right: 0;
  bottom: 0;
}

@media screen and (min-width:1400px) {
  .logo_wrap {
    width: 39%;
  }
}

.fade {
  -webkit-animation: fadeIn 3s ease-in-out 0s 1 normal;
  animation: fadeIn 3s ease-in-out 0s 1 normal;
}

.fade_logo01 {
  opacity: 0;
  position: absolute;
  -webkit-animation: fadeInfadeOut 3s ease-in-out 1.5s 1 normal;
  animation: fadeInfadeOut 3s ease-in-out 1.5s 1 normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards
}

.fade_logo02 {
  opacity: 0;
  position: absolute;
  -webkit-animation: fadeIn 1.5s ease-in-out 5s 1 normal;
  animation: fadeIn 1.5s ease-in-out 5s 1 normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes fadeIn {
  0% {
    display: block;
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes fadeInfadeOut {
  0% {
    opacity: 0
  }

  50% {
    opacity: 1
  }

  100% {
    display: none;
    opacity: 0
  }
}

@keyframes fadeInfadeOut {
  0% {
    opacity: 0
  }

  50% {
    opacity: 1
  }

  100% {
    display: none;
    opacity: 0
  }
}

/*************************************************************************************
ヘッダー
**************************************************************************************/
.menu-open_btn {
  background: url(./img/menu-open_gray.png) center center / contain no-repeat;
  position: fixed;
  top: 25px;
  right: 25px;
  height: 30px;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  width: 30px;
  z-index: 1000;
}

.home .menu-open_btn {
  background: url(./img/menu-open_white.png) center center / contain no-repeat;
  -webkit-animation: topfadeIn 4s ease 5s 1 normal;
  animation: topfadeIn 4s ease 5s 1 normal;
  opacity: 0;
}

.home.moved .menu-open_btn {
  background: url(./img/menu-open_white.png) center center / contain no-repeat;
  opacity: 1;
}

.home.moved.scrolled .menu-open_btn {
  background: url(./img/menu-open_gray.png) center center / contain no-repeat;
  opacity: 1;
}

.menu-open_btn:hover {
  opacity: 0.6 !important;
  cursor: pointer;
}

.menu {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background:
    url(./img/menu_bg01.png) left 8px top 8px / 100px 100px no-repeat,
    url(./img/menu_bg02.png) right 8px bottom 8px / 100px 100px no-repeat;
  background-color: rgba(255, 255, 255, 0.8);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 37px;
  position: fixed;
  top: 0;
  height: 100vh;
  height: calc(var(--vh) * 100);
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  right: -500px;
  width: 500px;
  max-width: 100vw;
  z-index: 10000;
  overflow: hidden;
}

.open .menu {
  right: 0px;
}

.menu-close_btn {
  background: url(./img/menu-close_btn.png) center center / contain no-repeat;
  position: absolute;
  top: 20px;
  right: 20px;
  height: 18px;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  width: 87px;
  z-index: 1000;
}

.menu-close_btn:hover {
  opacity: 0.6;
  cursor: pointer;
}

.menu_navi {
  color: #7F7F7F;
}

.menu_navi a {
  padding: 0 24px;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

.menu_navi a:hover {
  cursor: pointer;
  opacity: 0.6;
}

.menu_navi_blank::after {
  background: #999999;
  content: "";
  display: block;
  height: 1px;
  margin: 12px 0;
}

.menu_follow {
  margin: 0 0 0 24px;
}

.menu_sns_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 6px 0 0 24px;
}

.menu_sns_wrap a {
  height: 36px;
  margin: 0 20px 0 0;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  padding: 0;
  width: 36px;
}

.menu_sns a:hover {
  cursor: pointer;
  opacity: 0.6;
}

.menu_line {
  background: url(./img/menu_line.png) center center / contain no-repeat;
}

.menu_instagram {
  background: url(./img/menu_instagram.png) center center / contain no-repeat;
}

.menu_facebook {
  background: url(./img/menu_facebook.png) center center / contain no-repeat;
}

@media screen and (max-height:500px) {
  .menu {
    font-size: 10px;
    line-height: 20px;
  }
}

@media screen and (min-width:1366px) {
  .menu {
    background:
      url(./img/menu_bg01.png) left 15px top 15px / 174px 174px no-repeat,
      url(./img/menu_bg02.png) right 15px bottom 15px / 174px 174px no-repeat;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 18px;
    line-height: 48px;
  }

  .menu-open_btn {
    height: 41px;
    width: 41px;
    top: 50px;
    right: 50px;
  }

  .menu-close_btn {
    top: 50px;
    right: 50px;
  }

  .menu_navi {
    width: 258px;
  }

  .menu_navi li {
    /*margin: 0 0 0 30px;*/
  }

  .menu_navi a {
    padding: 0 30px;
  }

  .menu_navi_blank::after {
    height: 1px;
    margin: 15px 0;
    width: 250px;
  }

  .menu_follow {
    margin: 0 0 0 30px;
  }

  .menu_sns_wrap {
    margin: 6px 0 0 30px;
  }

  .menu_sns_wrap a {
    margin: 0 20px 0 0;
    padding: 0;
  }
}

/*************************************************************************************
トップページ タイトル
**************************************************************************************/
.top_title {
  display: block;
  height: 15vw;
  margin: 0 auto;
  width: 100vw;
}

@media screen and (min-width:1366px) {
  .top_title {
    height: 200px;
    width: 1366px;
  }
}

/*************************************************************************************
キャンペーン
**************************************************************************************/
.flyer_wrap {
  background: #fff;
  margin: 0 auto;
  max-width: 1366px;
}

.slick-dotted.slick-slider {
  background-color: #fff !important;
  margin-bottom: 0 !important;
  padding-bottom: 20px !important;
}

.slick-dots {
  bottom: 25px !important;
  margin: 0 auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100px !important;
}

.slick-dots li {
  height: 10px;
  margin: 0 5px !important;
  width: 10px;
}

.slick-dots li button:before {
  font-size: 10px !important;
}

.slick-dots li button {
  padding: 10px !important;
}

.slick-dots li button:before {
  border-radius: 100px;
  border: 1px solid #CA94DF;
  color: #CA94DF !important;
  content: "" !important;
  height: 10px !important;
  opacity: 0.8 !important;
  width: 10px !important;
}

.slick-dots li.slick-active button:before {
  background: #CA94DF;
  border-radius: 100px;
  color: #CA94DF !important;
  content: "" !important;
}

.slick-next {
  right: 25px !important;
}

.slick-prev {
  left: 25px !important;
  z-index: 9999;
}

.slick-next:before {
  color: #CA94DF !important;
  content: "▶" !important;
  display: none;
  opacity: 1 !important;
}

.slick-prev:before {
  color: #CA94DF !important;
  content: "◀" !important;
  display: none;
}

@media screen and (min-width:1366px) {
  .slick-dots li {
    height: 15px;
    margin: 0 10px !important;
    width: 15px;
  }

  .slick-dots li button:before {
    font-size: 15px !important;
  }

  .slick-dots li button {
    padding: 10px !important;
  }

  .slick-dots li button:before {
    height: 15px !important;
    width: 15px !important;
  }

  .slick-dots {
    bottom: 74px !important;
  }

  .slick-dotted.slick-slider {
    padding-bottom: 40px !important;
  }
}

/*************************************************************************************
コロナウイルス対策 徹底中！
**************************************************************************************/
.corona {
  display: block;
  height: 380px;
  margin: 0 auto;
  max-height: calc((100vw - 60px) * 0.32);
  max-width: calc(100vw - 60px);
  width: 1187px;
}

/*************************************************************************************
menu
**************************************************************************************/
.menu_wrap {
  width: 100%;
}

.menu_content {
  width: 100vw;
}

.menu_txt {
  position: relative;
  height: 100vw;
  width: 100vw;
}

.bodycare_txt {
  background: url(./img/bodycare_txt.png) center center / contain no-repeat;
}

.eyelish_txt {
  background: url(./img/eyelish_txt_220324.png) center center / contain no-repeat;
}

.nail_txt {
  background: url(./img/nail_txt.png) center center / contain no-repeat;
}

.menu_btn_wrap {
  background: url(./img/menu_btn_hover.png) center center / contain no-repeat;
  bottom: 0;
  left: 0;
  height: 8vw;
  right: 0;
  margin: auto;
  position: absolute;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  width: 43vw;
}

.bodycare_txt .menu_btn_wrap {
  bottom: 20vw;
}

.eyelish_txt .menu_btn_wrap {
  bottom: 25vw;
}

.nail_txt .menu_btn_wrap {
  bottom: 28vw;
}

.menu_btn_wrap:hover {
  cursor: pointer;
}

.menu_btn_wrap img {
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

.menu_btn_wrap:hover img {
  opacity: 0;
}

.menu_img {
  width: 100%;
}

@media screen and (min-width:768px) {
  .menu_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    max-width: 1366px;
    width: 100%;
  }

  .menu_wrap_reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .menu_txt {
    max-height: 683px;
    max-width: 683px;
    height: 50vw;
    width: 50%;
  }

  .menu_btn_wrap {
    height: 50px;
    height: calc(50 / 683 * 50vw);
    width: 270px;
    width: calc(270 / 683 * 50vw);
  }

  .bodycare_txt .menu_btn_wrap {
    bottom: 140px;
    bottom: calc(140 / 683 * 50vw);
  }

  .eyelish_txt .menu_btn_wrap {
    bottom: 172px;
    bottom: calc(172 / 683 * 50vw);
  }

  .nail_txt .menu_btn_wrap {
    bottom: 190px;
    bottom: calc(190 / 683 * 50vw);
  }

  .menu_btn {
    height: 50px;
    height: calc(50 / 683 * 50vw);
    width: 270px;
    width: calc(270 / 683 * 50vw);
  }

  .menu_img {
    max-height: 683px;
    max-width: 683px;
    height: 50vw;
    width: 50%;
  }
}

@media screen and (min-width:1366px) {
  .bodycare_txt .menu_btn_wrap {
    bottom: 140px;
  }

  .eyelish_txt .menu_btn_wrap {
    bottom: 172px;
  }

  .nail_txt .menu_btn_wrap {
    bottom: 190px;
  }

  .menu_btn_wrap {
    height: 50px;
    width: 270px;
  }

  .menu_btn {
    height: 50px;
    width: 270px;
  }
}

/*************************************************************************************
サロン
**************************************************************************************/
.salon_wrap {
  height: 278vw;
  width: 100%;
}

.salon_txt {
  height: 139vw;
  position: relative;
}

.salon01 {
  background: url(./img/salon01.png) center center / contain no-repeat;
}

.salon02 {
  background: url(./img/salon02.png) center center / contain no-repeat;
}

.googlemap {
  bottom: 43vw;
  left: 0;
  height: 2vw;
  margin: auto;
  right: 0;
  position: absolute;
  width: 18vw;
}

@media screen and (min-width:768px) {
  .salon_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 950px;
    height: calc(950 / 683 * 50vw);
    margin: 0 auto;
    max-width: 1366px;
    width: 100%;
  }

  .salon_txt {
    height: 950px;
    height: calc(950 / 683 * 50vw);
    max-width: 683px;
    width: 50%;
  }

  .googlemap {
    bottom: 296px;
    bottom: calc(296 / 683 * 50vw);
    height: 15px;
    height: calc(15 / 683 * 50vw);
    width: 123px;
    width: calc(123 / 683 * 50vw);
  }
}

@media screen and (min-width:1366px) {
  .salon_wrap {
    height: 950px;
  }

  .salon_txt {
    height: 950px;
  }

  .googlemap {
    bottom: 296px;
    height: 15px;
    width: 123px;
  }
}

/*************************************************************************************
マップ
**************************************************************************************/
.map_wrap {
  height: 178vw;
  width: 100%;
}

.map {
  height: 89vw;
  width: 100%;
}

@media screen and (min-width:768px) {
  .map_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    height: calc(608 / 1366 * 100vw);
    max-height: 608px;
    width: 100%;
    max-width: 1366px;
  }

  .map {
    height: calc(608 / 683 * 50vw);
    max-height: 608px;
    width: 50%;
    max-width: 683px;
  }
}

/*************************************************************************************
ミニバナー
**************************************************************************************/
.minibnr_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 10vw auto;
  width: 100%;
}

.minibnr {
  display: block;
  height: 20vw;
  margin: 0 auto;
  width: 80vw;
}

.minibnr_txt {
  height: 13vw;
  margin: 0 auto 7vw;
  width: 80vw;
}

@media screen and (min-width:768px) {
  .minibnr_wrap {
    margin: calc(137 / 1366 * 100vw) auto calc(82 / 1366 * 100vw);
    width: 100%;
    max-width: 1366px;
  }

  .minibnr_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 683px;
    width: 50%;
  }

  .minibnr {
    height: calc(100 / 1366 * 100vw);
    max-height: 100px;
    width: calc(400 / 1366 * 100vw);
    max-width: 400px;
  }

  .minibnr_txt {
    height: calc(66 / 1366 * 100vw);
    max-height: 66px;
    margin: 0 auto;
    width: calc(400 / 1366 * 100vw);
    max-width: 400px;
  }
}

@media screen and (min-width:1366px) {
  .minibnr_wrap {
    margin: 137px auto 82px;
  }
}

/*************************************************************************************
footer
**************************************************************************************/
footer {
  background: url(./img/footer_bg.png) center center / cover no-repeat;
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  padding: 10vw 0;
  width: 100%;
}

.footer-menu_wrap {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto 10vw;
  width: 100%;
}

.footer-menu01 {
  width: 148px;
}

.footer-menu02 {
  width: 148px;
}

.footer-menu03 {
  width: 148px;
}

.footer-menu04 {
  width: 148px;
}

.footer-menu01 li {
  line-height: 30px;
}

.footer-menu02 li {
  line-height: 30px;
}

.footer-menu03 li {
  line-height: 30px;
}

.footer-menu04 li {
  line-height: 30px;
}

footer li a {
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

footer li a:hover {
  opacity: 0.6;
  cursor: pointer;
}

.sns_btn {
  height: 36px;
  margin: 10px 11px 20px 0;
  width: 36px;
}

.footer_logo {
  display: block;
  height: 39vw;
  margin: 0 auto;
  width: 50vw
}

@media screen and (min-width:768px) {
  footer {
    font-size: 18px;
    /* height: 575px; */
    margin: 0;
    padding: 0;
  }

  .footer-menu_wrap {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin: 0 auto;
    padding: 40px 0 0 100px;
    width: 100%;
    max-width: 1300px;
  }

  .footer-menu01 {
    width: 250px;
  }

  .footer-menu02 {
    width: 250px;
  }

  .footer-menu03 {
    width: 250px;
  }

  .footer-menu04 {
    width: 250px;
  }

  .footer-menu01 li {
    line-height: 52px;
    margin-top: -6px;
  }

  .footer-menu02 li {
    line-height: 38px;
  }

  .footer-menu03 li {
    line-height: 60px;
    margin-top: -10px;
  }

  .footer-menu04 li {
    line-height: 58px;
    margin-top: -9px;
  }

  .footer_let-80 {
    letter-spacing: -0.08em;
  }

  .footer_let40 {
    letter-spacing: 0.04em;
  }

  .footer_let50 {
    letter-spacing: 0.05em;
  }

  .footer_let200 {
    letter-spacing: 0.2em;
  }

  .footer_let300 {
    letter-spacing: 0.3em;
  }

  .footer_let400 {
    letter-spacing: 0.4em;
  }

  .footer_let500 {
    letter-spacing: 0.5em;
  }

  .sns_btn {
    height: 54px;
    margin: 17px 16px 0 0;
    width: 54px;
  }

  .footer_logo {
    height: 225px;
    margin: 114px auto 0;
    padding: 0 0 27px;
    width: 253px;
  }
}

@media screen and (min-width:1366px) {
  .footer-menu01 {
    width: 300px;
  }

  .footer-menu02 {
    width: 300px;
  }

  .footer-menu03 {
    width: 300px;
  }

  .footer-menu04 {
    width: 300px;
  }
}

/*************************************************************************************
下層ページ ヘッダー画像
**************************************************************************************/
.top-img_bg {
  height: 100vh;
  max-height: 56vw;
}

.top-img_content {
  height: 100vh;
  max-height: 56vw;
}

.top-img_content p {
  line-height: 56vw;
  max-height: 56vw;
  text-align: center;
  vertical-align: middle;
  width: 100%;
}

.bodycare .top-img_bg {
  background: url(./img/bodycare_top_bg.png) top left / contain no-repeat;
}

.bodycare .top-img_content {
  background: url(./img/bodycare_top_content.png) top right / contain no-repeat;
}

.bodycare-machine .top-img_bg {
  background: url(./img/bodycare-machine_top_bg.png) top right / contain no-repeat;
}

.bodycare-machine .top-img_content {
  background: url(./img/bodycare-machine_top_content.png) top left / contain no-repeat;
}

.nail .top-img_bg {
  background: url(./img/nail_top_bg.png) top left / contain no-repeat;
}

.nail .top-img_content {
  background: url(./img/nail_top_content.png) top right / contain no-repeat;
}

.eyelash .top-img_bg {
  background: url(./img/eyelash-top_bg.png) top left / contain no-repeat;
}

.eyelash .top-img_content {
  background: url(./img/eyelash-top_content.png) top right / contain no-repeat;
}

.price .top-img_bg {
  background: url(./img/pricelist-top.png) top center / contain no-repeat;
}

.salon .top-img_bg {
  background: url(./img/salon-top_content.png) top right / contain no-repeat;
}

.salon .top-img_content_wrap {
  overflow: hidden;
}

.salon .top-img_content {
  background: url(../img/salon-top_bg01.png) top left / contain no-repeat;
  -webkit-animation: bgAnime 15s infinite;
  animation: bgAnime 15s infinite;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
}

/* --- 段差で背景画像のアニメーションを実行 ----------------- */
.salon .top-img_content.src1 {
  background-image: url(./img/salon-top_bg01.png);
  /* 背景の画像を指定 */
}

.salon .top-img_content.src2 {
  background-image: url(./img/salon-top_bg02.png);
  /* 背景の画像を指定 */
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.salon .top-img_content.src3 {
  background-image: url(./img/salon-top_bg03.png);
  /* 背景の画像を指定 */
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}

@-webkit-keyframes bgAnime {
  0% {
    opacity: 0;
  }

  17% {
    opacity: 1;
  }

  33% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

@keyframes bgAnime {
  0% {
    opacity: 0;
  }

  15% {
    opacity: 1;
  }

  33% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

/*************************************************************************************
all1366
**************************************************************************************/
.all1366 {
  display: block;
  margin: 0 auto;
  /*  max-width: 1366px; */
  width: 100%;
}

/*************************************************************************************
SP100
**************************************************************************************/
.sp100 {
  display: block;
  width: 100vw;
}

@media screen and (min-width:768px) {
  .sp100 {
    display: none;
  }
}

/*************************************************************************************
SP88vw
**************************************************************************************/
.sp88vw {
  display: block;
  margin: 0 auto;
  width: 88vw;
}

@media screen and (min-width:768px) {
  .sp88vw {
    display: none;
  }
}

/*************************************************************************************
mb15vw
**************************************************************************************/
.mb5vw {
  margin: 0 auto 5vw !important;
}

/*************************************************************************************
mb10vw
**************************************************************************************/
.mb10vw {
  margin: 0 auto 10vw !important;
}

@media screen and (min-width:768px) {
  .mb10vw {
    display: none !important;
  }
}

/*************************************************************************************
mb15vw
**************************************************************************************/
.mb15vw {
  margin: 0 auto 15vw !important;
}

/*************************************************************************************
mb20vw
**************************************************************************************/
.mb20vw {
  margin: 0 auto 20vw !important;
}

/*************************************************************************************
mb25vw
**************************************************************************************/
.mb25vw {
  margin: 0 auto 25vw !important;
}

/*************************************************************************************
PC1366
**************************************************************************************/
.pc1366 {
  display: none;
}

@media screen and (min-width:768px) {
  .pc1366 {
    display: block;
    margin: 0 auto;
    max-width: 1366px;
    width: 100%;
  }
}

/*************************************************************************************
vh100_sp
**************************************************************************************/
.vh100_sp {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 100vh;
  /* min-height: 900px; */
  /* height: calc(var(--vh, 1vh) * 100); */
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  width: 100vw;
}

@media screen and (min-width:768px) {
  .vh100_sp {
    display: none;
  }
}

/*************************************************************************************
vh100_pc
**************************************************************************************/
.vh100_pc {
  display: none;
}

@media screen and (min-width:768px) {
  .vh100_pc {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100vh;
    max-height: 1366px;
  }
}

/*************************************************************************************
最新エステマシン  フィットカービング お客様の声
**************************************************************************************/
.fit-carving_voice_sp_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 15px auto 0;
  width: 88vw;
}

.fit-carving_voice_sp_wrap::before {
  color: #4c4c4c;
  display: block;
  content: "♦";
  font-size: 10px;
  width: 15px;
}

.fit-carving_voice_sp {
  font-size: 10px;
  line-height: 15px;
  text-align: justify;
  text-justify: inter-ideograph;
  width: calc(100% - 15px);
}

.fit-carving_voice_sp span {
  white-space: nowrap;
}

@media screen and (min-width:768px) {
  .fit-carving_voice_sp_wrap {
    display: none;
  }

  .fit-carving_voice_sp {
    display: none;
  }
}

/*************************************************************************************
ハイパーナイフメディカル
**************************************************************************************/
.hyper_txt_wrap {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.hyper_txt {
  font-size: 10px;
  line-height: 20px;
  margin: 15vw 0;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

@media screen and (min-width:768px) {
  .hyper_txt_wrap {
    height: calc(384 / 1366 * 100vw);
    margin: auto;
    width: 88vw;
  }

  .hyper_txt {
    display: block;
    font-size: calc(20 / 1366 * 100vw);
    line-height: calc(40 / 1366 * 100vw);
    margin: 0;
    width: auto;
  }
}

@media screen and (min-width:1366px) {
  .hyper_txt_wrap {
    height: 384px;
  }

  .hyper_txt {
    display: block;
    font-size: 20px;
    line-height: 40px;
    margin: 0;
    width: auto;
  }
}

/*************************************************************************************
リリースカッター
**************************************************************************************/
.release_txt_wrap {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.release_txt {
  font-size: 10px;
  line-height: 20px;
  margin: 15vw 0;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

.release_txt span {
  display: block;
  height: 10px;
}

@media screen and (min-width:768px) {
  .release_txt_wrap {
    height: calc(598 / 1366 * 100vw);
  }

  .release_txt {
    display: block;
    font-size: calc(20 / 1366 * 100vw);
    line-height: calc(40 / 1366 * 100vw);
    margin: 0;
    width: 88vw;
  }

  .release_txt span {
    height: calc(20 / 1366 * 100vw);
  }
}

@media screen and (min-width:1366px) {
  .release_txt_wrap {
    height: 598px;
  }

  .release_txt {
    font-size: 20px;
    line-height: 40px;
    width: auto;
  }

  .release_txt span {
    height: 20px;
  }
}

/*************************************************************************************
ネイル
**************************************************************************************/
.fillin-txt {
  font-size: 10px;
  line-height: 20px;
  margin: 15vw auto;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

.fillin-txt span {
  display: block;
  height: 10px;
}

.paragel-txt {
  font-size: 10px;
  line-height: 20px;
  margin: 15vw auto;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

.paragel-txt span {
  display: block;
  height: 10px;
}

@media screen and (min-width:768px) {
  .fillin-txt_wrap {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /*height: 569px;*/
    padding: 65px 0 165px;
  }

  .fillin-txt span {
    height: 20px;
  }

  .fillin-txt {
    display: block;
    font-size: 20px;
    line-height: 38px;
    margin: -10px auto 0;
    text-align: center;
    width: 88vw;
  }

  .paragel-txt_wrap {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 605px;
  }

  .paragel-txt {
    display: block;
    font-size: 20px;
    line-height: 38px;
    margin: 0;
    text-align: center;
    width: auto;
  }

  .paragel-txt span {
    height: 20px;
  }
}

/*************************************************************************************
アイラッシュ
**************************************************************************************/
.bindlock-about_wrap {
  margin: 15vw 0;
}

.bindlock-about_img {
  display: block;
  height: 49vw;
  margin: 0 auto;
  width: 88vw;
}

.bindlock-about_txt {
  font-size: 10px;
  line-height: 20px;
  margin: 10vw auto 0;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

@media screen and (min-width:768px) {
  .bindlock-about_wrap {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: calc(384 / 1366 * 100vw);
    max-height: 384px;
    margin: 0 auto;
    width: 100%;
    max-width: 1366px;
  }

  .bindlock-about_img_wrap {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: calc(384 / 1366 * 100vw);
    max-height: 384px;
    width: 50%;
    max-width: 683px;
  }

  .bindlock-about_img {
    height: calc(250 / 1366 * 100vw);
    max-height: 250px;
    margin: 0;
    width: calc(450 / 1366 * 100vw);
    max-width: 450px;
  }

  .bindlock-about_txt {
    font-size: calc(20 / 1366 * 100vw);
    letter-spacing: -0.05em;
    line-height: calc(40 / 1366 * 100vw);
    padding: 0 6vw 0 0;
    margin: 0;
    vertical-align: middle;
    width: 50%;
    max-width: 683px;
  }
}

@media screen and (min-width:1366px) {
  .bindlock-about_txt {
    font-size: 20px;
    line-height: 40px;
    padding: 0;
  }
}

/*************************************************************************************
固定ページ ポリシー、会社概要、特商法
**************************************************************************************/
.page_title {
  font-size: 20px;
  margin: 100px 0 50px;
  text-align: center;
}

.about_table_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0 50px;
}

.about_table td {
  font-size: 12px;
  line-height: 24px;
  padding: 10px 20px;
}

.page_content {
  margin: 0 auto 100px;
  width: 88vw;
}

.page_content h2 {
  font-size: 16px;
  line-height: 32px;
  margin: 32px 0 16px;
}

.page_content p {
  font-size: 12px;
  line-height: 24px;
}

@media screen and (min-width:1366px) {
  .page_title {
    font-size: 30px;
    margin: 200px 0 100px;
    text-align: center;
  }

  .about_table_wrap {
    margin: 0 0 100px;
  }

  .about_table td {
    font-size: 18px;
    line-height: 36px;
    padding: 25px 50px;
  }

  .page_content {
    width: 800px;
  }

  .page_content h2 {
    font-size: 18px;
    line-height: 36px;
    margin: 36px 0 18px;
  }

  .page_content p {
    font-size: 14px;
    line-height: 28px;
  }
}

/*************************************************************************************
院長あいさつ
**************************************************************************************/
.bodycare-about_img_sp {
  display: block;
  margin: 12vw 6vw 0 44vw;
  height: 50vw;
  vertical-align: bottom;
  position: relative;
  width: 50vw;
  z-index: 100;
}

.bodycare-about_txt_sp {
  display: block;
  height: 92vw;
  margin: -3vw 12vw 12vw 6vw;
  position: relative;
  width: 82vw;
  z-index: 10;
}

@media screen and (min-width:768px) {
  .bodycare-about_img_sp {
    display: none;
  }

  .bodycare-about_txt_sp {
    display: none;
  }
}

/*************************************************************************************
美容矯正 施術のながれ
**************************************************************************************/
.bodycare-flow_wrap_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
  width: 88vw;
}

.bodycare-flow_left {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 28px;
}

.bodycare-flow_right {
  padding: 0 0 0 4vw;
  width: calc(88vw - 28px);
}

.bodycare-flow_number {
  background: #D2AFDF;
  border-radius: 100px;
  color: #fff;
  font-size: 11px;
  line-height: 28px;
  text-align: center;
  width: 28px;
}

.bodycare-flow_line {
  background: #D2AFDF;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 1px;
}

.bodycare-flow_title {
  font-size: 13px;
  letter-spacing: 0.1em;
  line-height: 28px;
}

.bodycare-flow_txt {
  font-size: 10px;
  letter-spacing: 0.05em;
  line-height: 20px;
  padding: 3vw 0 5vw;
  text-align: justify;
  text-justify: inter-ideograph;
}

.bodycare-flow_txt span {
  display: block;
  height: 10px;
}

@media screen and (min-width:768px) {
  .bodycare-flow_wrap_sp {
    display: none;
  }
}

/*************************************************************************************
美容矯正 施術メニュー
**************************************************************************************/
.bodycare-menu_txt_wrap_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 6vw auto;
  width: 88vw;
}

.bodycare-menu_asterisk {
  font-size: 10px;
  line-height: 20px;
  width: 20px;
}

.bodycare-menu_txt {
  font-size: 10px;
  line-height: 20px;
  text-align: justify;
  text-justify: inter-ideograph;
  width: calc(88vw - 20px);
}

@media screen and (min-width:768px) {
  .bodycare-menu_txt_wrap_sp {
    display: none;
  }
}

/*************************************************************************************
美容矯正 オンラインカウンセリング
**************************************************************************************/
.bodycare-online_txt {
  font-size: 10px;
  line-height: 20px;
  margin: 15vw 0;
  text-align: justify;
  text-justify: inter-ideograph;
  width: 88vw;
}

.bodycare-online_txt span {
  display: block;
  height: 10px;
}

.bodycare-onlin_btn {
  -ms-flex-line-pack: justify;
  align-content: space-between;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  width: 88vw;
}

.bodycare-onlin_btn img {
  line-height: 0;
  vertical-align: bottom;
  height: calc(41vw * 100 / 250);
  margin: 0 0 6vw;
  width: 41vw;
}

@media screen and (min-width:768px) {
  .bodycare-onlin_wrap {
    height: 862px;
    margin: auto;
    max-width: 1366px;
    width: 100%;
  }

  .bodycare-onlin_bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    width: 85vw;
  }

  .bodycare-onlin_btn {
    -ms-flex-line-pack: justify;
    align-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: calc(540 / 1366 * 100vw * 240 / 540);
    margin: 0;
    width: calc(540 / 1366 * 100vw);
  }

  .bodycare-onlin_btn_sp {
    display: none;
  }

  .bodycare-onlin_btn img {
    height: calc(250 / 1366 * 100vw * 100 / 250);
    margin: 0;
    width: calc(250 / 1366 * 100vw);
  }

  .bodycare-onlin_price {
    height: calc(551 / 1366 * 100vw * 189 / 551);
    width: calc(551 / 1366 * 100vw);
  }
}

@media screen and (min-width:1366px) {
  .bodycare-onlin_bottom {
    width: 1176px;
  }

  .bodycare-onlin_btn {
    height: 240px;
    width: 540px;
  }

  .bodycare-onlin_btn img {
    height: 100px;
    width: 250px;
  }

  .bodycare-onlin_price {
    height: 189px;
    width: 551px;
  }
}

/*************************************************************************************
プライスリスト
**************************************************************************************/
.price-content {
  font-size: 10px;
  margin: 0 auto;
  max-width: 1266px;
  padding: 0 0 25px;
}

.price-content_purple {
  background:
    url(./img/price-content_bg01.png) top right / 91px 91px no-repeat,
    url(./img/price-content_bg02.png) bottom left / 91px 91px no-repeat;
  background-color: #F8F3FA;
}

.price_title {
  border-bottom: rgba(0, 0, 0, 0.15) 1px solid;
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 62px;
  margin: 0 0 35px;
  padding: 0 25px;
  /* width: 190px; */
}

.price-single_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 17px;
  margin: 0 auto;
  width: 88vw;
}

.price-space {
  display: block;
  height: 5px;
}

.price-single_wrap::before {
  content: "♦"
}

.single_wrap_nosign::before {
  content: "　";
}

.single_wrap_nosign_mermaid::before {
  content: "　　";
}

.price-single_left {
  width: calc(88vw - 65px - 11px);
}

.price-single_right {
  -ms-flex-item-align: end;
  align-self: flex-end;
  text-align: right;
  white-space: nowrap;
  width: 65px;
}

.price_btn {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  display: block;
  font-size: 9px;
  letter-spacing: 0.1em;
  line-height: 50px;
  margin: 38px 25px 0 auto;
  text-align: center;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  width: 200px;
}

.price_btn:hover {
  /*
  background: rgba(0, 0, 0, 0.15);
  color: #fff;
  */
  cursor: pointer;
  opacity: 0.6;
}

.price-content_purple .price_btn {
  border: none;
}

@media screen and (max-width:768px) {
  .price-single_left {
    letter-spacing: 0 !important;
  }
}

@media screen and (min-width:768px) {
  .price-content {
    font-size: 20px;
    padding: 0 0 50px;
    position: relative;
  }

  .price-content_purple {
    background:
      url(./img/price-content_bg01.png) top right / 182px 182px no-repeat,
      url(./img/price-content_bg02.png) bottom left / 182px 182px no-repeat;
    background-color: #F8F3FA;
  }

  .price_title {
    font-size: 28px;
    line-height: 125px;
    margin: 0 0 70px;
    padding: 0 50px;
    /* width: 380px; */
  }

  .price-single_wrap {
    font-size: 20px;
    line-height: 34px;
    margin: 0 auto;
    max-width: 1000px;
  }

  .single_wrap_nosign_mermaid::before {
    content: "　　　　　　　　";
  }

  .price-space {
    height: 10px;
  }

  .price-single_left {
    max-width: 884px;
    width: calc(88vw - 130px - 22px);
  }

  .price-single_right {
    width: 130px;
  }

  .price_btn {
    font-size: 18px;
    line-height: 100px;
    margin: 76px 50px 0 auto;
    width: 400px;
  }
}

@media screen and (min-width:1266px) {
  .single_wrap_nosign_mermaid::before {
    content: "　　　　　　　　　　　　　　";
  }
}

/*************************************************************************************
サロンのご案内
**************************************************************************************/
.salon_purple-bg {
  background: #FBF6FC;
  padding: 6vw 0 0;
  width: 100%;
}

.salon_white-bg {
  background: #FFF;
  padding: 6vw 0 0;
  width: 100%;
}

.salon_title01 {
  background: url(./img/salon_title_bg01.png) center center / contain repeat-x;
}

.salon_title02 {
  background: url(./img/salon_title_bg02.png) center center / contain repeat-x;
}

.salon_title_txt {
  display: block;
  margin: 0 auto;
  max-width: 1366px;
  width: 100%;
}

.salon_purple-bg_profile {
  padding: 6vw 0 12vw;
}

@media screen and (min-width:768px) {
  .salon_purple-bg {
    padding: 40px 0 0;
  }

  .salon_white-bg {
    padding: 40px 0 0;
  }

  .salon_purple-bg_profile {
    padding: 0;
  }

}

@media screen and (min-width:1266px) {
  .salon_purple-bg {
    padding: 80px 0 0;
  }

  .salon_white-bg {
    padding: 80px 0 0;
  }

  .salon_purple-bg_profile {
    padding: 0;
  }
}

/*************************************************************************************
サロンのご案内 下スライドショー
**************************************************************************************/
.slideshow {
  margin: 6vw auto 0;
  text-align: left;
  max-width: 866px;
  width: 88vw;
}

.slideshow div {
  height: 59vw;
  max-height: 577px;
  overflow: hidden;
  position: relative;
  max-width: 866px;
  width: 88vw;
}

.slideshow div div {
  top: 0;
  left: 0;
  position: absolute;
}

.slideshow ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 2vw 0 0;
  max-width: 866px;
  width: 88vw;
}

.slideshow ul li {
  width: 16vw;
  max-width: 150px;
  float: left;
  display: inline;
}

.slideshow02 ul li {
  width: 13vw;
  max-width: 130px;
}

.slideshow .active {
  filter: alpha(opacity=100) !important;
  -moz-opacity: 1 !important;
  opacity: 1 !important;
}

/*
.slideshow ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}
*/
.slideshow ul {
  overflow: hidden;
}

.slideshow a img:hover {
  opacity: inherit;
}

@media screen and (min-width:768px) {
  .slideshow {
    margin: 40px auto 0;
  }

  .slideshow ul {
    margin: 29px 0 0;
  }
}

@media screen and (min-width:1266px) {
  .slideshow {
    margin: 80px auto 0;
  }
}

/*************************************************************************************
サロンのご案内 所在地
**************************************************************************************/
.salon_company01_wrap {
  background: url(../img/salon_company01.png) center center / contain no-repeat;
  height: calc(88vw * 2002 / 1732);
  margin: 0 auto;
  position: relative;
  width: 88vw;
}

.salon_map01 {
  position: absolute;
  right: calc(88vw * 40 / 1732);
  top: calc(248 / 1732 * 88vw);
  width: calc(88vw * 262 / 1732 * 48 / 262);
  width: calc(88vw * 262 / 1732);
}

.salon_company02_wrap {
  background: url(../img/salon_company02.png) center center / contain no-repeat;
  height: calc(88vw * 1704 / 1732);
  margin: 0 auto;
  position: relative;
  width: 88vw;
}

.salon_map02 {
  position: absolute;
  right: calc(88vw * 145 / 1732);
  top: calc(264 / 1732 * 88vw);
  width: calc(88vw * 262 / 1732 * 48 / 262);
  width: calc(88vw * 262 / 1732);
}

@media screen and (min-width:900px) {
  .salon_company01_wrap {
    height: 1001px;
    width: 866px;
  }

  .salon_map01 {
    height: 24px;
    right: 20px;
    top: 124px;
    width: 131px;
  }

  .salon_company02_wrap {
    height: 852px;
    width: 866px;
  }

  .salon_map02 {
    height: 24px;
    right: 145px;
    top: 132px;
    width: 131px;
  }
}
