@charset "UTF-8";
/*----------------------------------------------------------------------
------------------------------------------------------------------------

File Name:
Note:


New Creation:	.
Last Change:	2018/12/06 16:12:24.


Created By		Yoshiaki Murakami

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
------------------------------------------------------------------------
目次

1.	共通使用変数定義
2.	Function
3.	Layout
4.	Object

------------------------------------------------------------------------
----------------------------------------------------------------------*/
body > .l-container {
  min-height: 100vh;
}

.sp {
  display: none !important;
}

html {
  scroll-padding-top: 58px;
  min-width: 1034px;
}

body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
}
body > .p-h1,
body > .p-header,
body > main,
body > .p-footer {
  margin: 0 auto;
  width: 988px;
}
body.full {
  background: 0;
}
body.full > .p-h1,
body.full > .p-header,
body.full > main,
body.full > .p-footer {
  width: 100%;
}
body.full > .p-header .p-header__nav {
  width: 100%;
}
body.sp-only .p-main > .p-container,
body.sp-only .p-main > *:not(.p-container) {
  margin-right: auto;
  margin-left: auto;
  width: var(--baseWidth);
  box-sizing: border-box;
}
body.sp-only .p-main img {
  width: 100%;
  height: auto;
}
body.sp-only .p-main .sp {
  display: block !important;
}
body.sp-only .p-main .pc {
  display: none !important;
}

.c-nav {
  padding: 1px 0 5px;
  height: 58px;
  background: url(../../../img/nav_bg_l.gif) 0 0 repeat-x;
  box-sizing: border-box;
}
.c-nav__list {
  display: flex;
  position: relative;
  justify-content: center;
}
.c-nav__item {
  height: 52px;
  background-position: 0 0;
  background-repeat: no-repeat;
}
.c-nav__item a {
  display: block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  transition: opacity 0.15s linear;
  display: block;
  height: 100%;
}
.c-nav__item a:hover {
  opacity: 0;
}
.c-nav__item.is-active a {
  opacity: 0;
}
.c-nav .about {
  width: 114px;
  background-image: url(../../../img/nav_about_a.png?v=1);
}
.c-nav .about a {
  background-image: url(../../../img/nav_about.png?v=1);
}
.c-nav .troubles {
  width: 129px;
  background-image: url(../../../img/nav_troubles_a.png?v=1);
}
.c-nav .troubles a {
  background-image: url(../../../img/nav_troubles.png?v=1);
}
.c-nav .contents {
  width: 95px;
  background-image: url(../../../img/nav_contents_a.png?v=1);
}
.c-nav .contents a {
  background-image: url(../../../img/nav_contents.png?v=1);
}
.c-nav .case {
  width: 68px;
  background-image: url(../../../img/nav_case_a.png?v=1);
}
.c-nav .case a {
  background-image: url(../../../img/nav_case.png?v=1);
}
.c-nav .price {
  width: 68px;
  background-image: url(../../../img/nav_price_a.png?v=1);
}
.c-nav .price a {
  background-image: url(../../../img/nav_price.png?v=1);
}
.c-nav .campaign {
  width: 110px;
  background-image: url(../../../img/nav_campaign_a.png?v=1);
}
.c-nav .campaign a {
  background-image: url(../../../img/nav_campaign.png?v=1);
}
.c-nav .doctor {
  width: 110px;
  background-image: url(../../../img/nav_doctor_a.png?v=1);
}
.c-nav .doctor a {
  background-image: url(../../../img/nav_doctor.png?v=1);
}
.c-nav .access {
  width: 123px;
  background-image: url(../../../img/nav_access_a.png?v=1);
}
.c-nav .access a {
  background-image: url(../../../img/nav_access.png?v=1);
}
.c-nav .qa {
  width: 111px;
  background-image: url(../../../img/nav_qa_a.png?v=1);
}
.c-nav .qa a {
  background-image: url(../../../img/nav_qa.png?v=1);
}

.c-fixed-contents {
  position: fixed;
  right: calc(50% - 494px - 39px - 5px);
  bottom: calc(50% - 202px);
  z-index: 0;
  width: 38px;
  opacity: 0;
  transition: opacity 0.15s linear;
  pointer-events: none;
}
.c-fixed-contents.is-show {
  z-index: 1;
  opacity: 1;
  pointer-events: auto;
}
.c-fixed-item + .c-fixed-item {
  margin-top: 10px;
}
.c-fixed-item.pagetop a:hover > * {
  opacity: 1;
}
.c-fixed-cv__item {
  margin-top: 10px;
  background-position: 0 0;
  background-repeat: no-repeat;
  box-shadow: 3px 3px 6px #777;
}
.c-fixed-cv__item.consultation {
  background: url(../../../img/link_mail_h.png?v=2);
}
.c-fixed-cv__item.counseling {
  background: url(../../../img/link_counseling_h.png);
}

.p-h1 {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 24px;
  color: #b3a79c;
  background: url(../../../img/h1_bg.gif) 0 0/contain repeat-x;
  overflow: hidden;
  white-space: nowrap;
  transform: translateX(-50%);
}

body > .p-header {
  display: flex;
  position: relative;
  flex-direction: column;
  padding-bottom: 58px;
  background: url(../../../img/h1_bg.gif) left top repeat-x, #524840;
}
body > .p-header::before {
  content: "";
  display: block;
  width: 100%;
  height: 24px;
}
body > .p-header .p-header__inner {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  border: 3px solid;
  background: linear-gradient(#90857c, #2b2722);
  border-image-source: linear-gradient(#3a332c, #a69d94);
  border-image-slice: 1;
}
body > .p-header .p-header__logo {
  padding: 24px 0 28px 23px;
}
body > .p-header .p-header__logo a:hover > * {
  opacity: 0.5;
}
body > .p-header .p-header__inquiry {
  display: flex;
  align-items: center;
  position: absolute;
  top: 36px;
  right: 31px;
}
body > .p-header .p-header__nav {
  position: absolute;
  top: 114px;
  min-width: 988px;
}
body > .p-header .p-header__nav.headroom--not-top {
  position: fixed;
  top: 0;
  z-index: 10000;
}
body > .p-header .p-header__submenu {
  position: absolute;
  z-index: 10;
  padding-top: 5px;
  opacity: 0;
  transition: all 0.15s linear;
  pointer-events: none;
}
body > .p-header .p-header__submenu.is-active {
  opacity: 1;
  pointer-events: all;
}
body > .p-header .p-header__submenu__list {
  display: flex;
  border: 1px solid #c5bbb3;
}
body > .p-header .p-header__submenu__item {
  position: relative;
  width: 209px;
  height: 98px;
}
body > .p-header .p-header__submenu__item a::after {
  transition: all 0.15s linear;
  content: "";
  position: absolute;
  right: 12px;
  bottom: 5px;
  width: 10px;
  height: 10px;
  background: url(../../../img/arrow/arrow2.png) 0 0 no-repeat;
}
body > .p-header .p-header__submenu__item a:hover {
  opacity: 1;
}
body > .p-header .p-header__submenu__item a:hover::after {
  background-image: url(../../../img/arrow/arrow2_h.png);
}
body > .p-header .p-header__submenu__item.liposuction a {
  background-image: url(../../../img/nav_contents_liposuction.jpg);
}
body > .p-header .p-header__submenu__item.breast-hip a {
  background-image: url(../../../img/nav_contents_breast-hip.jpg);
}
body > .p-header .p-header__submenu__item.antiaging a {
  background-image: url(../../../img/nav_contents_antiaging.jpg);
}

.p-tel {
  margin-right: 15px;
  width: 186px;
}
.p-tel__list {
  display: flex;
  margin-bottom: 9px;
  width: 186px;
}
.p-tel__list__item {
  padding: 4px 0 3px;
  width: 36px;
  border-bottom: 1px solid #56514c;
  border-left: 1px solid #56514c;
  background-color: rgba(0,0,0,.15);
  cursor: pointer;
  text-align: center;
}
.p-tel__list__item a:hover > * {
  opacity: 1;
}
.p-tel__list__item a:hover img {
  opacity: 0.5;
}
.p-tel__list__item:last-child {
  border-right: 1px solid #56514c;
}
.p-tel__list__item.is-active {
  padding: 3px 0 4px;
  border-top: 1px solid #56514c;
  border-bottom: 0;
  background-color: transparent;
}
.p-tel__contents {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.15s linear;
}
.p-tel__contents.is-active {
  opacity: 1;
}
.p-tel__contents__wrapper {
  position: relative;
  height: 35px;
}

.p-info {
  display: flex;
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  width: 439px;
  height: 66px;
}
.p-info__list {
  display: flex;
  margin-bottom: 2px;
}
.p-info__item {
  height: 28px;
  border: 2px solid #29211b;
  background-position: 0 0;
  background-repeat: no-repeat;
}
.p-info__item + .p-info__item {
  margin-left: 2px;
}
.p-info__item.line {
  position: absolute;
  top: 0;
  right: 0;
  height: 62px;
  background: url(../../../img/header_cv_line_h.png) left top no-repeat;
}
.p-info__item.mail {
  margin-bottom: 0;
  background-image: url(../../../img/header_info_mail_h.png?v=2);
}
.p-info__item.counseling {
  margin-bottom: 0;
  background-image: url(../../../img/header_info_counseling_h.png?v=2);
}
.p-info a:hover img {
  opacity: 0;
}

.p-search {
  position: static;
  width: 336px;
  border: 2px solid #332a27;
  box-sizing: border-box;
}
.p-search__form {
  display: flex;
  width: 332px;
}
.p-search__form__input {
  display: block;
  padding: 10px;
  width: 259px;
  height: 28px;
  border: 0;
  border-right: 2px solid #332a27;
  font-size: 1.4em;
  box-sizing: border-box;
}
.p-search__form__button {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
}

.p-topicpath {
  margin: 0 30px;
}
.p-topicpath__list {
  display: flex;
}
.p-topicpath__item {
  margin-right: 0.5em;
  line-height: 30px;
  color: #7f7875;
}
.p-topicpath__item::before {
  content: " > ";
  display: inline-block;
}
.p-topicpath__item:first-child::before {
  content: "";
}
.p-topicpath__item:last-child a {
  color: #7f7875;
}
.p-topicpath__item a {
  display: inline-block;
  white-space: nowrap;
  color: #6d9dd0;
}
.p-topicpath__item a:hover {
  text-decoration: none;
  color: #ec7c78;
}
.p-topicpath__item a:hover > * {
  opacity: 1;
}

body > .p-footer {
  position: relative;
  z-index: 1000;
  margin-top: auto;
  background: #f5f2f0;
  color: #7f7875;
}
body > .p-footer a {
  color: #7f7875;
}
body > .p-footer .p-footer__clinic__list {
  display: flex;
  padding: 9px 0;
  background: #efece9;
}
body > .p-footer .p-footer__clinic__item {
  position: relative;
  flex-basis: 20%;
  border-right: 1px solid #c7bcb5;
  border-left: 1px solid #fff;
}
body > .p-footer .p-footer__clinic__item:first-child {
  border-left: 0;
}
body > .p-footer .p-footer__clinic__item:last-child {
  border-right: 0;
}
body > .p-footer .p-footer__clinic__item a::before {
  content: "";
  display: block;
  position: absolute;
  top: -9px;
  right: 0;
  bottom: -9px;
  left: 0;
  transition: all 0.15s linear;
}
body > .p-footer .p-footer__clinic__item a::after {
  content: "";
  position: absolute;
  right: 10px;
  bottom: 0;
  width: 10px;
  height: 10px;
  background: url(../../../img/arrow/arrow2.png) 0 0 no-repeat;
}
body > .p-footer .p-footer__clinic__item a:hover > * {
  opacity: 1;
}
body > .p-footer .p-footer__clinic__item a:hover::before {
  background-color: rgba(255,255,255,.5);
}
body > .p-footer .p-footer__clinic__item a:hover::after {
  background-image: url(../../../img/arrow/arrow2_h.png);
}
body > .p-footer .p-footer__clinic__item img {
  border-bottom: 1px solid #c7bcb5;
}
body > .p-footer .p-footer__clinic__item .pic {
  margin-bottom: 7px;
  text-align: center;
}
body > .p-footer .p-footer__clinic__item .address {
  text-align: center;
  line-height: 1.2;
  font-size: 1em;
  color: #7f7875;
}
body > .p-footer .p-footer__nav {
  border-top: 1px solid #ccc3ba;
}
body > .p-footer .p-footer__sitemap {
  display: flex;
  padding: 36px 70px 18px;
  border-bottom: 1px solid #baafa6;
}
body > .p-footer .p-footer__text {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 0;
  border-top: 1px solid #fff;
  text-align: center;
  line-height: 1.6;
  font-size: 1em;
}
body > .p-footer .p-footer__copyright {
  box-sizing: border-box;
  padding-top: 45px;
  height: 70px;
  background: url(../../../img/copyright_bg.gif) center 0 no-repeat, linear-gradient(#a3978e, #84776e 25%, #665a50 50%, #4d433b 75%, #3a342e);
  text-align: center;
  font-size: 1em;
  color: #fff;
}
body > .p-footer .p-sitemap__contents {
  flex-basis: 25%;
}
body > .p-footer .p-sitemap__contents.others {
  flex: 1;
  flex-basis: 50%;
}
body > .p-footer .p-sitemap__contents.others .p-page__list {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 21em;
}
body > .p-footer .p-sitemap__contents.others .p-page__item a {
  font-size: 1.4em;
  color: #595350;
}
body > .p-footer .p-sitemap__contents.others .p-page__item a:hover {
  color: #ec7c78;
}
body > .p-footer .p-sitemap__title {
  margin-bottom: 12px;
  font-size: 1.4em;
  color: #595350;
}
body > .p-footer .p-page__item {
  margin-bottom: 12px;
}
body > .p-footer .p-page__item a {
  padding-left: 18px;
  background: url(../../../img/arrow/arrow2.png) 0 center no-repeat;
  text-decoration: none;
  font-size: 1.2em;
  color: #7f7875;
}
body > .p-footer .p-page__item a:hover {
  color: #ec7c78;
}
/*# sourceMappingURL=layout.css.map */
