html, body {
  overflow-x: hidden;
}

.content {
  width: 100VW;
}

#service2, #service3 {
  display: none;
}

.top-access__map {
  width: 100%;
  max-width: 414px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.top-access .googlemap {
  width: 100%;
  padding: 0 0 403px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.top_map {
  width: 100%;
  max-width: 406px;
  height: auto;
  margin: 0 auto;
}

@media all and (max-width: 768px) {
  .top-access__map {
    margin: 0 auto;
  }
  .top-access .googlemap {
    padding: 0 0 403px;
  }
}

@media all and (max-width: 406px) {
  .top-access__map {
    margin: 0 auto;
  }
  .top-access .googlemap {
    padding: 0 0 calc(100vw * 0.88);
  }
}

@media all and (min-width: 769px) {
  .top-access {
    margin-bottom: 0;
    padding-bottom: 200px;
  }
}

@media screen and (max-width: 768px) {
  .main-visual {
    height: 180px;
    background-position: center -20px;
  }
}

.main-visual {
  width: 100vw;
  background: initial;
  background-image: url("../img/top/bg_main.jpg");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

@media all and (min-width: 769px) {
  body {
    margin-top: 130px;
  }
  #header-fixed {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 101;
  }
  #header-fixed::after {
    content: '';
    display: block;
    width: 100vw;
    height: 20px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(transparent));
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
  }
}

@media all and (min-width: 769px) {
  .header__sns {
    margin: 0;
  }
  .header__inner {
    min-width: 900px;
  }
  .header-nav__list {
    width: 60%;
    min-width: 900px;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .header__shop-info {
    margin: 0 45px;
  }
  .header-nav__list li {
    width: calc(100% / 11 * 2);
    text-align: center;
    position: relative;
    color: #aa4451;
  }
  .header-nav__list li a {
    color: #aa4451;
    font-weight: bold;
    display: inline-block;
    width: 100%;
  }
  .header-nav__list li::after {
    position: absolute;
    right: 0;
    color: #aa4451;
  }
  .header-nav__list li#acord1 {
    width: calc(100% / 11 * 3);
  }
  .mb70 {
    margin-bottom: 70px;
  }
}

@media all and (max-width: 768px) {
  .header-nav {
    overflow-x: scroll;
  }
  .header__logo {
    display: inline-block;
  }
  .section-title + p {
    margin-top: 20px;
  }
  .mb70 {
    margin-bottom: 20px;
  }
}

input#menu_bar01 {
  display: none;
}

@media all and (min-width: 769px) {
  label {
    display: inline-block;
    line-height: 1;
    cursor: pointer;
    width: calc(100% - (6px * 2 + 1rem));
    font-weight: bold;
  }
  #acord1 {
    margin: 0 auto;
    padding: 0;
    position: relative;
  }
  #acord1 a {
    display: block;
    padding: 10px 0;/************20181217更新箇所（サイドのパディングを０に）***************/
    text-decoration: none;
    color: #aa4451;
    line-height: 1;
    font-weight: normal;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  #acord1 a:hover {
    background-color: #aa4451;
    color: #fff;
  }
  #acord1 ul {
    margin: 0;
    padding: 0;
    background: #fff;
    list-style: none;
    position: absolute;
  }
  #acord1 ul li {
    max-height: 0;
    overflow-y: hidden;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
  }
  #links01 {
    width: calc(100% - 1rem);
    margin-top: 7px !important;
  }
  #menu_bar01:checked ~ #links01 li,
  #menu_bar02:checked ~ #links02 li {
    max-height: 46px;
    opacity: 1;
    width: 100%;
  }
  #menu_bar01:checked ~ #links01 li:nth-of-type(odd),
  #menu_bar02:checked ~ #links02 li:nth-of-type(odd) {
    background-color: #FFF7F3;
  }
}

@media all and (max-width: 768px) {
  #acord1 {
    padding: 15px 0 0 15px;
  }
  #acord1 label {
    color: #313131;
  }
  #links01 {
    list-style: none;
    padding: 0;
  }
  #links01 li:last-of-type {
    background: initial;
  }
  .header-nav__list li.-menu a {
    color: #ec6d81;
  }
}

@media all and (min-width: 769px) {
  .menu-detail {
    position: relative;
  }
  .anker {
    position: absolute;
    top: -200px;
  }
  .anker2 {
    position: absolute;
    top: -500px;
  }
}

@media all and (min-width: 769px) {
  .top-access__info-detail {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-item-align: center;
    align-self: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .top-access__info-detail dt {
    width: 4rem;
    padding: 0 1rem 0 4rem;
  }
  .top-access__info-detail dd {
    width: calc(100% - 10rem);
  }
  .top-access__info-detail dd span {
    padding: 0;
  }
}

.top-introduction__text p {
  text-align: left;
}

.top-introduction__text p br {
  line-height: 2.5;
}

.top-introduction__text p br.norp {
  display: none;
}

.top-profile__text {
  text-align: left;
}

.top-profile__text br {
  line-height: 2.5;
}

.top-profile__text br.norp {
  display: none;
}

.top-profile__img {
  margin-top: 0 !important;
}

.header__shop-info dt.open {
  background: initial;
}

@media all and (max-width: 1429px) {
  .erase {
    display: none;
  }
}

@media all and (min-width: 1025px) and (max-width: 1248px) {
  .erase2 {
    display: none;
  }
}

.top-service {
  padding-bottom: 100px;
}

.menu .contents-title span {
  display: block;
  font-weight: normal;
  font-size: 2rem;
  letter-spacing: 0.2rem;
}

.menu img.icon {
  vertical-align: text-bottom;
  margin-right: 1rem;
}

.menu .photo_box .photo {
  width: calc(900px * 0.3);
  height: calc(900px * 0.3 / 4 * 3);
  background-position: bottom center;
}

.menu .photo_box .ref1 {
  background-image: url("../img/menu/reflexology_01.jpg");
}

.menu .photo_box .ref2 {
  background-image: url("../img/menu/reflexology_02.jpg");
}

.menu .photo_box .ref3 {
  background-image: url("../img/menu/reflexology_03.jpg");
}

.menu .photo_box .ref4 {
  background-image: url("../img/menu/reflexology_04.jpg");
}

.menu .photo_box .ref5 {
  background-image: url("../img/menu/reflexology_05.jpg");
}

.menu .photo_box .ref6 {
  background-image: url("../img/menu/reflexology_06.jpg");
}

.menu .photo_box .oil1 {
  background-image: url("../img/menu/oiltreatment_01.jpg");
}

.menu .photo_box .oil2 {
  background-image: url("../img/menu/oiltreatment_02.jpg");
}

.menu .photo_box .oil3 {
  background-image: url("../img/menu/oiltreatment_03.jpg");
}

.menu .photo_box .oil4 {
  background-image: url("../img/menu/oiltreatment_04.jpg");
}

.menu .photo_box .oil5 {
  background-image: url("../img/menu/oiltreatment_05.jpg");
}

.menu .photo_box .oil6 {
  background-image: url("../img/menu/oiltreatment_06.jpg");
}

.photo .subspan {
  display: block;
  font-size: 1.5rem;
  margin-top: 1.5rem;
  line-height: 2;
}

.photo section {
  width: 900px;
  margin: 0 auto 100px;
}

.photo section:last-of-type {
  margin-bottom: 0;
}

.photo .photo_sec1 {
  background-image: url("../img/photo/photo_bg1.jpg");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 2.5;
}

.photo .photo_sec1 p {
  padding: 3rem;
}

.photo .photo_sec3 {
  background-image: url("../img/photo/photo_bg2.jpg");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 2.5;
  position: relative;
}

.photo .photo_sec3 p {
  padding: 3rem 0 3rem 500px;
}

.photo .photo_box .photo {
  width: calc(900px * 0.45);
  height: calc(900px * 0.45 / 4 * 3);
  background-position: center;
}

.photo .photo_box .mat1 {
  background-image: url("../img/photo/maternity_01_thumb.jpg");
}

.photo .photo_box .mat2 {
  background-image: url("../img/photo/maternity_02_thumb.jpg");
}

.photo .photo_box .mat3 {
  background-image: url("../img/photo/maternity_03_thumb.jpg");
}

.photo .photo_box .mat4 {
  background-image: url("../img/photo/maternity_04_thumb.jpg");
}

.photo .photo_box .mat5 {
  background-image: url("../img/photo/maternity_05_thumb.jpg");
}

.photo .photo_box .mat6 {
  background-image: url("../img/photo/maternity_06_thumb.jpg");
}

.photo .photo_box .mat7 {
  background-image: url("../img/photo/maternity_07_thumb.jpg");
}

.photo .photo_box .mat8 {
  background-image: url("../img/photo/maternity_08_thumb.jpg");
}

.photo .photo_box .nbp1 {
  background-image: url("../img/photo/newborn_1.jpg");
}

.photo .photo_box .nbp2 {
  background-image: url("../img/photo/newborn_2.jpg");
}

.photo .photo_box .nbp3 {
  background-image: url("../img/photo/newborn_3.jpg");
}

.photo .photo_box .nbp4 {
  background-image: url("../img/photo/newborn_4.jpg");
}

.photo .photo_box .nbp5 {
  background-image: url("../img/photo/newborn_5.jpg");
}

.photo .photo_box .nbp6 {
  background-image: url("../img/photo/newborn_6.jpg");
}

.photo .sub_section {
  background: url(../img/share/line_headline.png) left bottom repeat-x;
  padding-bottom: 2rem;
}

.photo .sub_section ul li {
  margin-bottom: 1rem;
}

.photo .sub_section ul li p {
  line-height: 3;
}

.photo .sub_section.no_border {
  background: initial;
}

.photo .photo_obj {
  text-align: center;
  margin: 50px auto;
}

.menu .photo_box, .photo .photo_box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.menu .photo_box .photo, .photo .photo_box .photo {
  margin-bottom: 2rem;
  background-color: black;
  background-repeat: no-repeat;
  background-size: cover;
}

.menu .photo_box .photo:hover, .photo .photo_box .photo:hover {
  opacity: 0.7;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.menu .photo_box .photo a, .photo .photo_box .photo a {
  display: block;
  width: 100%;
  height: 100%;
}

@media all and (max-width: 767px) {
  .menu .contents-title span {
    font-size: 1.25rem;
  }
  .menu .photo_box .photo {
    width: calc(100vw * 0.3);
    height: calc(100vw * 0.3 / 4 * 3);
  }
  .photo {
    padding: 0 5vw;
  }
  .photo .subspan {
    display: inline-block;
    font-size: 1rem;
    margin-top: 0;
    line-height: 1;
    background-color: transparent;
    color: #aa4451;
  }
  .photo section {
    width: 100%;
  }
  .photo .photo_sec1 {
    background-position: right top;
    text-align: left;
    line-height: 2;
  }
  .photo .photo_sec1 p {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1.5rem;
  }
  .photo .photo_sec3 {
    background-position: left top;
    text-align: left;
    line-height: 2;
  }
  .photo .photo_sec3 p {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1.5rem;
  }
  .photo .photo_box .photo {
    width: calc(90vw * 0.35);
    height: calc(90vw * 0.35 / 4 * 3);
    background-position: center;
  }
  .photo .price-table th {
    text-align: center;
  }
  .photo .price-table td {
    text-align: left;
  }
  .photo .price-table.table_photo th {
    width: 100%;
  }
  .photo .price-table tfoot td {
    text-align: left;
  }
  .photo .photo_obj2 {
    background-color: transparent;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .photo .photo_obj2 img {
    width: 100%;
  }
  .photo .photo_obj2 div img {
    width: initial;
  }
  br.noRp {
    display: none;
  }
}

.odr1 {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.odr2 {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.odr3 {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

.ppbox {
  height: 100%;
  width: 100%;
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 999;
  display: none;
}

.ppbox:target {
  display: table;
}

.pplink {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.pplink:hover {
  opacity: initial;
}

.ppimg {
  background-color: #fff;
  display: block;
  max-width: 80vw;
  max-height: 80vh;
}

.ppimgBG {
  display: inline-block;
  background-color: #FFF;
  padding: 10px;
}

.price-table.table_photo {
  margin-bottom: 2rem;
}

.price-table.table_photo th {
  width: 30%;
}

.price-table tfoot td {
  background: transparent;
  color: #aa4451;
  font-weight: normal;
  border: 0;
  padding: 0;
}

.photo_obj2 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  background-color: #fff;
}

.photo_obj2_center {
  text-align: center;
}

#instafeed {
  width: 530px;
  height: 515px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#instafeed .insta-box {
  z-index: 1;
  width: 30%;
  height: 30%;
  overflow: hidden;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

#instafeed .insta-box div {
  color: transparent;
  background-color: transparent;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#instafeed .insta-box div:hover {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.6);
}

#instafeed .insta-box div span {
  display: block;
  margin: 0 5px;
  padding-top: calc((100% - 1rem)/2 - 0.5rem);
}

#instafeed .insta-box a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.instagram {
  width: 530px;
  margin: 0 auto;
}

p.widget_bt {
  text-align: right;
  margin-bottom: 100px;
}

@media all and (max-width: 768px) {
  .instagram, #instafeed {
    width: 100vw;
    height: auto;
    argin: 0 auto;
  }
  #instafeed {
    padding: 0 5vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  #instafeed .insta-box {
    width: calc(80vw / 3);
    height: calc(80vw / 3);
    margin-bottom: 10px;
  }
  p.widget_bt {
    padding: 0 5vw;
  }
}

.menu-detail .section-title {
  margin-bottom: 10px;
  font-size: 2.2rem;
}

.menu_price {
  font-size: 2rem;
  display: block;
  margin: 0 auto 15px;
  text-align: center;
}

@media all and (max-width: 767px) {
  .menu-detail .section-title {
    font-size: 1.25rem;
  }
  .menu_price {
    font-size: 1.2rem;
  }
}

.menu-detail__text p {
  width: 70%;
}

/*IE11*/
_:-ms-lang(x)::-ms-backdrop, #links01 li {
  font-size: 0.75rem;
}

/*EDGE*/
_:-ms-lang(x)::backdrop, #links01 li {
  font-size: 0.7rem;
}

_:-ms-lang(x)::backdrop, #acord1 a {
  padding: 10px 0;
}
