@charset "UTF-8";
/*
Theme Name: ReBorn RWD
Theme URI:
Description:
Author:
Author URI:
Version:
*/
/*-----------------------------------------------------------

	Reset Style

---------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
  max-width: 100%;
}

html {
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a:focus {
  outline: none;
}

ins {
  text-decoration: none;
}

mark {
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

button, input, select, textarea {
  outline: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 100%;
}

input, textarea {
  background-image: -webkit-linear-gradient(hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0));
  appearance: none;
  border-radius: 0; /* Removing the inner shadow, rounded corners on iOS inputs */
}

input[type=checkbox] {
  appearance: checkbox;
}

input[type=radio] {
  appearance: radio;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

img {
  -ms-interpolation-mode: bicubic;
  vertical-align: middle;
}

/*-----------------------------------------------------------

	Common

---------------------------------------------------------- */
/* style
-------------------------------------- */
body {
  font-size: 14px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", arial, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  background-color: #f3ebe3;
  color: #4f483f;
}

/* text */
strong.marker.yellow {
  background: linear-gradient(transparent 40%, #ff9 40%);
}

/* margin */
.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

/* link */
a {
  color: #000;
  text-decoration: none;
}

a:hover {
  color: #000;
}

a:active, a:focus {
  outline: 0;
}

/* image */
a img {
  transition: 0.3s linear;
}

a img:hover {
  opacity: 0.6;
}

/* font */
.gosic {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

.serif {
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.wf-notosans {
  font-family: "Noto Sans Japanese";
}

.wf-sawarabi {
  font-family: "Sawarabi Mincho";
}

/* float */
.f-left {
  float: left;
}

.f-right {
  float: right;
}

/* clearfix */
.clearfix {
  width: 100%;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/* display */
.pc-only {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .pc-only {
    display: block !important;
  }
}

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

.btn-sp-reserve {
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: 140px;
  margin: 0 auto;
  text-align: center;
}
.btn-sp-reserve a {
  display: block;
  padding: 12px;
  background-color: #E94009;
  border-bottom: 1px solid #AD360E;
  border-radius: 40px;
  color: #fff;
}
.btn-sp-reserve a:hover {
  opacity: 0.6;
}
.btn-sp-reserve a .dashicons {
  position: relative;
  top: -1px;
}

/* fadein系 */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1.4s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 4-1 ふわっ（左から）*/
.fadeLeft {
  animation-name: fadeLeftAnime;
  animation-duration: 1.4s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* 4-1 ふわっ（右から） */
.fadeRight {
  animation-name: fadeRightAnime;
  animation-duration: 1.4s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger,
.fadeLeftTrigger,
.fadeRightTrigger {
  opacity: 0;
}

/*-----------------------------------------------------------

	header

---------------------------------------------------------- */
#header .desc {
  background-color: #2d180e;
  color: #fff;
}
#header .desc .desc-inner {
  position: relative;
  padding: 4px 0;
  text-align: center;
  font-size: 12px;
}
@media screen and (min-width: 768px) {
  #header .desc .desc-inner {
    width: 940px;
    margin: 0 auto;
    text-align: left;
  }
  #header .desc .desc-inner .info {
    position: absolute;
    right: 0;
    top: 3px;
  }
}
#header .inner {
  position: relative;
  width: 90%;
  margin: 0 auto;
  padding: 14px 0 18px;
}
@media screen and (min-width: 768px) {
  #header .inner {
    width: 940px;
    height: 130px;
    padding: 0 0;
  }
}
#header .inner .logo {
  position: relative;
}
#header .inner .logo img {
  width: 140px;
  height: auto;
}
@media screen and (min-width: 768px) {
  #header .inner .logo {
    top: 45px;
  }
  #header .inner .logo img {
    width: 180px;
  }
}
#header .inner .overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000000;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s linear;
}
#header .inner .overlay .overlay-contents {
  box-sizing: border-box;
  width: 80%;
  margin: 0 auto;
  padding-top: 100px;
  text-align: center;
}
#header .inner .overlay .overlay-contents p {
  color: #fff;
  font-size: 14px;
  line-height: 1.8;
}
#header .inner .overlay .overlay-contents .text-message {
  margin-bottom: 40px;
  line-height: 2;
}
#header .inner .overlay .overlay-contents .btn-tel a {
  box-sizing: border-box;
  display: block;
  padding: 14px;
  margin-bottom: 30px;
  border-radius: 4px;
  background-color: #56b730;
  font-size: 24px;
  color: #fff;
}
#header .inner .overlay .overlay-contents .text-tel {
  margin-bottom: 20px;
  font-size: 14px;
}
#header .inner .overlay .overlay-contents .text-tel span {
  font-size: 26px;
}
#header .inner .overlay .overlay-contents .btn-close {
  text-decoration: underline;
  font-size: 16px;
}
#header .inner .overlay.is-open {
  opacity: 1;
  visibility: visible;
}
#header .inner .contact-sp .tel {
  position: absolute;
  top: 12px;
  right: 90px;
  font-size: 50px;
}
#header .inner .contact-sp .tel span {
  font-size: 30px;
}
#header .inner .contact-sp .email {
  position: absolute;
  top: 12px;
  right: 52px;
}
#header .inner .contact-sp .email span {
  font-size: 30px;
}
#header .inner .nav-toggle {
  position: absolute;
  z-index: 10002;
  right: 0;
  top: 14px;
  width: 28px;
  height: 36px;
  cursor: pointer;
}
#header .inner .nav-toggle div {
  position: relative;
}
#header .inner .nav-toggle span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background: #2d180e;
  left: 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
#header .inner .nav-toggle span:nth-child(1) {
  top: 0;
}
#header .inner .nav-toggle span:nth-child(2) {
  top: 9px;
}
#header .inner .nav-toggle span:nth-child(3) {
  top: 18px;
}
#header .inner .nav {
  position: absolute;
  top: 20px;
  right: -10px;
  width: 760px;
}
#header .inner .nav ul li {
  text-align: center;
  float: left;
  font-size: 20px;
  margin-left: 10px;
}
#header .inner .nav ul li a {
  display: block;
  height: auto;
  padding: 20px 10px;
  transition: 0.2s linear;
}
#header .inner .nav ul li a:hover {
  opacity: 0.6;
  transform: scale(0.9);
}
#header .inner .nav ul li span {
  display: block;
  font-size: 12px;
  color: #b2a87e;
}
#header.open .nav-toggle span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(315deg);
  -moz-transform: rotate(315deg);
  transform: rotate(315deg);
}
#header.open .nav-toggle span:nth-child(2) {
  width: 0;
  left: 50%;
}
#header.open .nav-toggle span:nth-child(3) {
  top: 11px;
  -webkit-transform: rotate(-315deg);
  -moz-transform: rotate(-315deg);
  transform: rotate(-315deg);
}
#header .nav-sp {
  display: none;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #2d180e;
}
#header .nav-sp ul li {
  width: 70%;
  margin: 0 auto;
  padding: 8px;
  text-align: center;
  font-size: 20px;
}
#header .nav-sp ul li span {
  display: block;
  margin-top: -4px;
  font-size: 12px;
}
#header .nav-sp ul li a {
  display: block;
  color: #fff;
}

/*-----------------------------------------------------------

	contents

---------------------------------------------------------- */
#slide {
  background-color: #000;
  text-align: center;
}
#slide img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) {
  #contents {
    width: 940px;
    margin: 0 auto 50px;
  }
}

/* page-top */
.page-top .attention {
  box-sizing: border-box;
  width: 90%;
  margin: 20px auto;
  padding: 14px;
  border: 1px solid #CDB48B;
  border-radius: 24px;
  background-color: #fff;
  text-align: center;
}
.page-top .attention a {
  text-decoration: underline;
  color: #867D5F;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .page-top .attention {
    width: 540px;
    margin: 40px auto;
  }
  .page-top .attention a {
    font-size: 14px;
  }
}
.page-top .service-area {
  background-color: #000;
}
.page-top .service-area .inner {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0;
}
.page-top .service-area .inner ul {
  overflow-x: scroll;
  white-space: nowrap;
  text-align: center;
}
.page-top .service-area .inner ul li {
  width: 160px;
  display: inline-block;
  margin-right: 10px;
}
.page-top .service-area .inner ul li img {
  width: 100%;
  height: auto;
  border-radius: 2px;
}
.page-top .service-area .inner ul li img:hover {
  box-shadow: 0 0 20px #fff;
}
@media screen and (min-width: 768px) {
  .page-top .service-area .inner {
    width: 98%;
  }
  .page-top .service-area .inner ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    overflow-x: hidden;
  }
  .page-top .service-area .inner ul li {
    width: 24%;
    margin-bottom: 0;
    margin-right: 0;
  }
}
.page-top .about-area {
  overflow: hidden;
  margin: 50px 0 60px;
}
.page-top .about-area h2 {
  margin-bottom: 30px;
}
.page-top .about-area h2 img {
  max-width: 100%;
  height: auto;
}
.page-top .about-area .message {
  width: 80%;
  margin: 0 auto 40px;
}
.page-top .about-area .message h3 {
  margin-bottom: 20px;
  font-size: 17px;
}
.page-top .about-area .message p {
  margin-bottom: 20px;
  line-height: 1.8;
}
.page-top .about-area .message p.more {
  text-align: right;
}
.page-top .about-area .message p.more a {
  color: #4f483f;
}
.page-top .about-area .photo {
  text-align: center;
  width: 80%;
  margin: 0 auto;
}
.page-top .about-area .photo img {
  max-width: 100%;
  height: auto;
}
.page-top .about-area .important {
  margin-top: 20px;
  padding: 20px;
  border-top: 6px solid #E4DBD1;
  border-right: 1px solid #E4DBD1;
  border-left: 1px solid #E4DBD1;
  border-bottom: 1px solid #E4DBD1;
  background-color: #fff;
}
.page-top .about-area .important .title {
  font-weight: bold;
}
.page-top .about-area .important .title span {
  display: block;
  font-size: 12px;
}
.page-top .about-area .important p:last-of-type {
  margin-bottom: 0;
}
.page-top .about-area .important p {
  margin-bottom: 20px;
  line-height: 1.8;
  text-align: left;
}
.page-top .about-area .important p a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .page-top .about-area .message {
    width: 630px;
    float: left;
    color: #4f483f;
  }
  .page-top .about-area .message h3 {
    font-size: 26px;
    font-weight: normal;
    margin-bottom: 20px;
  }
  .page-top .about-area .message p {
    line-height: 1.8;
    margin-bottom: 15px;
  }
  .page-top .about-area .message .more {
    text-align: right;
  }
  .page-top .about-area .photo {
    width: 250px;
    float: right;
  }
}
.page-top .point-area {
  width: 80%;
  margin: 0 auto 60px;
}
@media screen and (min-width: 768px) {
  .page-top .point-area {
    width: 100%;
  }
}
.page-top .point-area .area-title {
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px;
  font-weight: normal;
}
.page-top .point-area .area-title::after {
  content: "";
  display: block;
  width: 80px;
  margin: 0 auto;
  padding-bottom: 20px;
  border-bottom: 1px solid #615a51;
}
.page-top .point-area .list-point .point {
  margin-bottom: 20px;
}
.page-top .point-area .list-point .point .photo img {
  max-width: 100%;
  height: auto;
}
.page-top .point-area .list-point .point .detail {
  box-sizing: border-box;
  position: relative;
  top: -20px;
  left: -20px;
  width: 90%;
  background-color: #fff;
  padding: 20px;
  box-shadow: 0 0 10px #ddd;
}
.page-top .point-area .list-point .point .detail .ttl {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 16px;
}
.page-top .point-area .list-point .point .detail .ex {
  line-height: 1.8;
  font-size: 12px;
}
.page-top .point-area .list-point .point .detail .photo-ba {
  margin-top: 20px;
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-top .point-area .list-point .point .detail .photo-ba li {
  width: 30%;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-top .point-area .list-point .point .detail .photo-ba li {
    width: 18%;
  }
}
.page-top .point-area .list-point .point .detail .photo-ba img {
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
  padding: 4px;
  border: 1px solid #ddd;
}
.page-top .point-area .list-point .point .detail .btn-reserve {
  display: block;
  padding: 18px;
  background-color: #A01547;
  border-bottom: 1px solid #AD360E;
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .page-top .point-area .list-point .point .detail .btn-reserve {
    width: 60%;
    margin: 0 auto;
  }
}
.page-top .point-area .list-point .point .detail .btn-reserve:hover {
  opacity: 0.6;
}
.page-top .point-area .list-point .point .detail .btn-reserve .icon {
  position: relative;
  top: -1px;
}
.page-top .point-area .list-point .point:nth-of-type(even) .detail {
  left: 20px;
  margin-left: 10%;
}
@media screen and (min-width: 768px) {
  .page-top .point-area .list-point .point {
    position: relative;
    width: 100%;
    min-height: 400px;
  }
  .page-top .point-area .list-point .point .photo {
    position: absolute;
    top: 0;
    right: 0;
    width: 500px;
  }
  .page-top .point-area .list-point .point .detail {
    position: absolute;
    left: 40px;
    top: 80px;
    width: 480px;
    padding: 30px;
  }
  .page-top .point-area .list-point .point .detail .ttl {
    font-size: 24px;
  }
  .page-top .point-area .list-point .point .detail .ex {
    font-size: 14px;
  }
  .page-top .point-area .list-point .point:nth-of-type(even) .photo {
    left: 0;
  }
  .page-top .point-area .list-point .point:nth-of-type(even) .detail {
    right: 40px;
    left: auto;
    margin-left: 0;
  }
}
@media screen and (min-width: 768px) {
  .page-top .point-area .list-point .bridal {
    height: 600px;
  }
}
.page-top .point-area .list-check li {
  margin-bottom: 4px;
  font-weight: bold;
}
.page-top .point-area .list-check li::before {
  content: "✓";
  color: red;
}
@media screen and (min-width: 768px) {
  .page-top .point-area .list-check {
    width: 600px;
    margin: 0 auto;
  }
  .page-top .point-area .list-check li {
    margin-bottom: 8px;
    font-size: 18px;
  }
}
.page-top .campaign-area {
  width: 90%;
  margin: 0 auto 60px;
}
@media screen and (min-width: 768px) {
  .page-top .campaign-area {
    width: 100%;
  }
}
.page-top .campaign-area h2 {
  margin-bottom: 25px;
  font-size: 24px;
  font-weight: normal;
  color: #4f483f;
}
.page-top .campaign-area h2 span {
  display: block;
  font-size: 12px;
  color: #b2a87e;
}
.page-top .campaign-area .campaign li {
  box-sizing: border-box;
  margin-bottom: 40px;
  background-color: #FAF6F1;
}
.page-top .campaign-area .campaign li .photo img {
  width: 100%;
  height: auto;
}
.page-top .campaign-area .campaign li .detail {
  padding: 14px 20px;
}
.page-top .campaign-area .campaign li .detail .ttl {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 16px;
}
.page-top .campaign-area .campaign li .detail .kakaku {
  margin-bottom: 10px;
}
.page-top .campaign-area .campaign li .detail .kakaku .time {
  display: inline-block;
  margin-right: 8px;
  padding: 4px 12px;
  border-radius: 4px;
  color: #fff;
  background-color: #302924;
  font-size: 12px;
}
.page-top .campaign-area .campaign li .detail .big {
  font-weight: bold;
  font-size: 18px;
  color: #E11C01;
}
.page-top .campaign-area .campaign li .detail .del {
  text-decoration: line-through;
  color: #999;
}
.page-top .campaign-area .campaign li .detail .tax {
  font-size: 11px;
}
@media screen and (min-width: 768px) {
  .page-top .campaign-area .campaign {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .page-top .campaign-area .campaign li {
    width: 460px;
    margin-bottom: 30px;
  }
  .page-top .campaign-area .campaign li .photo {
    padding: 20px 20px 0 20px;
  }
  .page-top .campaign-area .campaign li .photo img {
    box-shadow: 0 0 10px #ddd;
  }
  .page-top .campaign-area .campaign li .detail .ttl {
    font-size: 20px;
  }
}
.page-top .campaign-area .btn-reserve {
  width: 90%;
  margin: 0 auto 20px;
  text-align: center;
}
.page-top .campaign-area .btn-reserve a {
  display: block;
  padding: 18px;
  background-color: #E94009;
  border-bottom: 1px solid #AD360E;
  border-radius: 4px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
.page-top .campaign-area .btn-reserve a:hover {
  opacity: 0.6;
}
.page-top .campaign-area .btn-reserve a .dashicons {
  position: relative;
  top: 1px;
}
@media screen and (min-width: 768px) {
  .page-top .campaign-area .btn-reserve {
    width: 460px;
  }
}
.page-top .campaign-area .btn-reserve.hotpepper a {
  background-color: #A01547;
}
.page-top .campaign-area .btn-reserve.hotpepper a .icon {
  position: relative;
  top: -1px;
}
.page-top .reserve-area {
  margin-bottom: 60px;
  padding: 40px 0 0;
  background-color: #2a201c;
}
@media screen and (min-width: 768px) {
  .page-top .reserve-area {
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  .page-top .reserve-area .inner {
    width: 940px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}
.page-top .reserve-area .inner .detail {
  width: 80%;
  margin: 0 auto 40px;
}
.page-top .reserve-area .inner .detail .text {
  margin-bottom: 30px;
}
.page-top .reserve-area .inner .detail .text p {
  margin-bottom: 20px;
  color: #fff;
  font-size: 16px;
}
.page-top .reserve-area .inner .detail .line {
  margin-bottom: 20px;
}
.page-top .reserve-area .inner .detail .line img {
  max-width: 100%;
  height: auto;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve {
  width: 100%;
  margin: 0 auto 20px;
  text-align: center;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve a {
  display: block;
  padding: 18px;
  background-color: #E94009;
  border-bottom: 1px solid #AD360E;
  border-radius: 4px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve a:hover {
  opacity: 0.6;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve a .dashicons {
  position: relative;
  top: 1px;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve.hotpepper a {
  background-color: #A01547;
}
.page-top .reserve-area .inner .detail .btn .btn-reserve.hotpepper a .icon {
  position: relative;
  top: -1px;
}
.page-top .reserve-area .inner .detail .btn .tel {
  margin-bottom: 20px;
}
.page-top .reserve-area .inner .detail .btn .tel img {
  max-width: 100%;
  height: auto;
}
.page-top .reserve-area .inner .photo {
  text-align: center;
}
.page-top .reserve-area .inner .photo img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-top .reserve-area .inner .detail {
    width: 400px;
    margin: 0;
    padding-top: 20px;
  }
  .page-top .reserve-area .inner .photo {
    width: 485px;
  }
  .page-top .reserve-area .inner .photo img {
    max-width: 100%;
  }
}
.page-top .topics-area {
  width: 90%;
  margin: 0 auto;
}
.page-top .topics-area h2 {
  margin-bottom: 25px;
  font-size: 24px;
  font-weight: normal;
  color: #4f483f;
}
.page-top .topics-area h2 span {
  display: block;
  font-size: 12px;
  color: #b2a87e;
}
.page-top .topics-area .news {
  margin-bottom: 60px;
  position: relative;
}
.page-top .topics-area .blog {
  position: relative;
}
.page-top .topics-area ul li {
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px solid #978e6f;
}
.page-top .topics-area ul li .title a {
  color: #706744;
}
.page-top .topics-area ul li .title a:hover {
  text-decoration: underline;
}
.page-top .topics-area .more {
  position: absolute;
  top: 10px;
  right: 0;
}
.page-top .topics-area .more a {
  display: block;
  padding: 4px 12px;
  font-size: 12px;
  background-color: #978e6f;
  border-radius: 2px;
  color: #fff;
}
.page-top .topics-area .more a:hover {
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  .page-top .topics-area {
    width: 100%;
  }
  .page-top .topics-area .news {
    width: 450px;
    float: left;
  }
  .page-top .topics-area .blog {
    width: 450px;
    float: right;
  }
  .page-top .topics-area ul li .date {
    width: 75px;
    float: left;
  }
  .page-top .topics-area ul li .title {
    width: 340px;
    float: right;
  }
}

/* single.php
-------------------------------------- */
/* page.php
-------------------------------------- */
/* common */
.page .header {
  height: 200px;
  background-color: #302924;
  background-repeat: no-repeat;
  background-size: cover;
}
.page .header .inner {
  width: 90%;
  margin: 0 auto;
}
.page .header .inner .page-title {
  padding-top: 52px;
  font-size: 36px;
  text-align: center;
  color: #fff;
  text-shadow: 0 0 30px #777;
}
.page .header .inner .page-title span {
  display: block;
  position: relative;
  top: -10px;
  font-size: 24px;
}
@media screen and (min-width: 768px) {
  .page .header {
    height: 300px;
  }
  .page .header .inner {
    width: 900px;
  }
  .page .header .inner .page-title {
    padding-top: 85px;
    font-size: 58px;
  }
  .page .header .inner .page-title span {
    font-size: 34px;
  }
}
.page .contents {
  width: 90%;
  margin: 40px auto;
}
@media screen and (min-width: 768px) {
  .page .contents {
    width: 940px;
  }
}
.page .sec {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 1px dashed #E4DBD2;
}
.page .sec:last-of-type {
  border-bottom: none;
}
.page h2.title {
  font-size: 20px;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  color: #4F483F;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page h2.title {
    font-size: 24px;
  }
}

.bottom-contact-area {
  text-align: center;
  border: 4px double #B2A99E;
  background-color: #fff;
  padding: 30px;
}
@media screen and (min-width: 768px) {
  .bottom-contact-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.bottom-contact-area .contact {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #B2A99E;
}
@media screen and (min-width: 768px) {
  .bottom-contact-area .contact {
    width: 400px;
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
    margin-right: 40px;
    padding-right: 40px;
    border-right: 1px solid #B2A99E;
  }
}
.bottom-contact-area .contact .tel {
  color: #E63F08;
  font-size: 20px;
}
.bottom-contact-area .contact .tel span {
  font-size: 32px;
  font-weight: bold;
}
.bottom-contact-area .contact .tel span a {
  color: #E63F08;
}
@media screen and (min-width: 768px) {
  .bottom-contact-area .contact .tel span {
    font-size: 42px;
  }
}
.bottom-contact-area .contact .email {
  margin: 15px auto 0;
}
.bottom-contact-area .contact .email a {
  display: block;
  background-color: #E94009;
  color: #fff;
  padding: 14px 0;
  border-radius: 4px;
  border-bottom: 1px solid #aa320b;
}
@media screen and (min-width: 768px) {
  .bottom-contact-area .contact .email {
    width: 340px;
  }
}
@media screen and (min-width: 768px) {
  .bottom-contact-area .line {
    width: 300px;
    padding-top: 40px;
  }
}
.bottom-contact-area .line img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .bottom-contact-area .line img {
    width: 300px;
  }
}
.bottom-contact-area .line p {
  margin-top: 10px;
}

/* news blog 共通 */
/* pager */
.pager {
  text-align: center;
  margin: 40px 0 10px;
}

a.page-numbers,
.pager .current {
  display: inline-block;
  background: #1C1002;
  padding: 8px 14px;
  margin: 0 2px 15px;
  text-align: center;
  font-size: 14px;
  color: #fff;
}

.pager .current {
  background: #FFB017;
  color: rgb(255, 255, 255);
}

.pager a:hover {
  background-color: #FFB017;
  color: #FFF;
}

@media screen and (min-width: 768px) {
  .page-article #main {
    width: 700px;
    float: right;
  }
  .page-article #sidebar {
    width: 200px;
    float: left;
  }
}
.page-article #sidebar .side-area {
  margin-bottom: 30px;
}
.page-article #sidebar .side-area .title {
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #B2A99E;
}
.page-article #sidebar .side-area .list li {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px dashed #E4DBD2;
}
.page-article #sidebar .side-area .list li time {
  display: inline-block;
  margin-right: 4px;
  color: #B2A99E;
}
.page-article .article-list-area .article .has-thumbnail {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px dashed #E4DBD2;
}
.page-article .article-list-area .article .has-thumbnail .photo {
  text-align: center;
  margin-bottom: 20px;
}
.page-article .article-list-area .article .has-thumbnail .photo img {
  width: 80%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-article .article-list-area .article .has-thumbnail .photo {
    width: 200px;
    float: left;
    margin-bottom: 0;
  }
  .page-article .article-list-area .article .has-thumbnail .photo img {
    width: 100%;
    height: auto;
  }
}
.page-article .article-list-area .article .has-thumbnail .photo img {
  box-sizing: border-box;
  padding: 4px;
  border: 1px solid #B2A99E;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .page-article .article-list-area .article .has-thumbnail .detail {
    width: 480px;
    float: right;
  }
}
.page-article .article-list-area .article .has-thumbnail .detail .title {
  font-size: 16px;
  margin-bottom: 10px;
}
.page-article .article-list-area .article .has-thumbnail .detail p a {
  text-decoration: underline;
}
.page-article .article-list-area .article .no-thumbnail {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px dashed #E4DBD2;
}
.page-article .article-list-area .article .no-thumbnail .title {
  font-size: 16px;
  margin-bottom: 10px;
}
.page-article .article-list-area .article .no-thumbnail p a {
  text-decoration: underline;
}
.page-article .article-area .article .article-header h1 {
  font-size: 24px;
  margin-bottom: 20px;
}
.page-article .article-area .article .article-contents img {
  max-width: 100%;
  height: auto;
}
.page-article .article-area .article .article-contents p {
  margin: 20px 0;
  line-height: 1.8;
}
.page-article .post-link {
  margin: 40px 0 60px;
  padding-top: 30px;
  border-top: 1px solid #B2A99E;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.page-article .post-link li.home {
  margin: 0 20px;
}
.page-article .post-link li a:hover {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .page-article .post-link li.home {
    margin: 0 40px;
  }
}

/* news */
.page-news .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/news/header.jpg);
}

/* blog */
.page-blog .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/blog/header.jpg);
}

/* about */
.page-about .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/about/header2.jpg);
}
.page-about .guide-area {
  box-sizing: border-box;
  border: 1px solid #d8cdc2;
  border-radius: 4px;
  padding: 20px;
  box-shadow: 0 0 5px #D8CDC2 inset;
}
.page-about .guide-area h2 {
  margin-bottom: 10px;
  font-size: 16px;
}
.page-about .guide-area ul li {
  position: relative;
  margin-left: 18px;
  margin-bottom: 4px;
}
.page-about .guide-area ul li::before {
  position: absolute;
  top: 4px;
  left: -17px;
  font-size: 8px;
  content: "● ";
  color: #D8CDC2;
}
.page-about .flow-area .flow li {
  box-sizing: border-box;
  border-radius: 4px;
  border: 1px solid #D8CDC2;
  background-color: #fff;
  margin-bottom: 10px;
}
.page-about .flow-area .flow li.arrow {
  text-align: center;
  background-color: #F3EBE3;
  border: none;
  padding: 20px 0;
}
.page-about .flow-area .flow li.arrow img {
  width: 25px;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-about .flow-area .flow li.arrow img {
    width: 50px;
  }
}
.page-about .flow-area .flow li .photo {
  background-color: #fff;
}
.page-about .flow-area .flow li .photo img {
  box-sizing: border-box;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-about .flow-area .flow li .photo {
    width: 300px;
    float: left;
    padding: 20px;
  }
}
.page-about .flow-area .flow li .detail {
  padding: 30px 30px 10px 30px;
}
.page-about .flow-area .flow li .detail h3 {
  font-size: 18px;
  margin-bottom: 15px;
}
.page-about .flow-area .flow li .detail p {
  margin-bottom: 20px;
  line-height: 1.8;
}
.page-about .flow-area .flow li .detail p a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .page-about .flow-area .flow li .detail {
    width: 570px;
    float: right;
    padding: 20px 20px 20px 0;
  }
}
.page-about .voice-area .list-voice .voice {
  box-sizing: border-box;
  border-radius: 4px;
  border: 1px solid #D8CDC2;
  background-color: #fff;
  margin-bottom: 20px;
  padding: 20px;
}
.page-about .voice-area .list-voice .voice .voice-header {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #D8CDC2;
}
.page-about .voice-area .list-voice .voice .voice-header .ttl {
  font-weight: bold;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .page-about .voice-area .list-voice {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-about .voice-area .list-voice .voice {
    width: 450px;
  }
}

/* price */
.page-price .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn_rwd/images/contents/price/header2.jpg);
  background-position: center;
}
.page-price .price-area .price {
  margin-bottom: 50px;
  padding-top: 4px;
}
.page-price .price-area .price h3 {
  margin-bottom: 30px;
}
.page-price .price-area .price table {
  margin-top: 30px;
  margin-bottom: 30px;
}
.page-price .price-area .price table caption {
  text-align: center;
  margin-bottom: 10px;
}
.page-price .price-area .price table caption span {
  border-left: 1px solid #FE6E14;
  border-top: 1px solid #FE6E14;
  border-right: 1px solid #FE6E14;
  padding: 10px 30px;
  background-color: #FE6E14;
  color: #fff;
  position: relative;
  top: -5px;
}
.page-price .price-area .price table tr {
  border-bottom: 10px solid #F3EBE2;
}
.page-price .price-area .price table th {
  display: block;
  text-align: center;
  padding: 20px 0;
  font-size: 16px;
  background-color: #faf6f1;
  border-bottom: 1px dashed #e5ddd5;
}
.page-price .price-area .price table th .photo {
  margin-bottom: 10px;
}
.page-price .price-area .price table th .photo img {
  max-width: 90%;
  height: auto;
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .page-price .price-area .price table th .photo img {
    width: 100%;
  }
}
.page-price .price-area .price table .explain p {
  margin-bottom: 15px;
}
.page-price .price-area .price table .explain p:last-of-type {
  margin-bottom: 0;
}
.page-price .price-area .price table .explain p span {
  font-weight: bold;
  color: #FE6E14;
}
.page-price .price-area .price table .explain .before-after {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 4px;
}
.page-price .price-area .price table .explain .before-after li {
  margin-bottom: 10px;
  width: 32%;
}
.page-price .price-area .price table .explain .before-after li img {
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  border: 4px solid #fff;
}
@media screen and (min-width: 768px) {
  .page-price .price-area .price table .explain .before-after li {
    width: 24%;
  }
}
.page-price .price-area .price table td {
  display: block;
  padding: 20px;
  background-color: #faf6f1;
}
.page-price .price-area .price table td a {
  text-decoration: underline;
  color: #FD7530;
}
.page-price .price-area .price table td .kakaku {
  margin-bottom: 10px;
}
.page-price .price-area .price table td .kakaku .time {
  display: inline-block;
  margin-right: 8px;
  padding: 4px 12px;
  border-radius: 4px;
  color: #fff;
  background-color: #302924;
  font-size: 12px;
}
.page-price .price-area .price table td .big {
  font-weight: bold;
  font-size: 18px;
  color: #E11C01;
}
.page-price .price-area .price table td .del {
  text-decoration: line-through;
  color: #999;
}
.page-price .price-area .price table td .tax {
  font-size: 11px;
}
.page-price .price-area .price table td .bikou {
  display: block;
  font-size: 11px;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .page-price .price-area .price table caption {
    text-align: left;
  }
  .page-price .price-area .price table th {
    display: table-cell;
    vertical-align: middle;
    width: 200px;
    font-size: 14px;
    padding: 20px 20px;
  }
  .page-price .price-area .price table td {
    display: table-cell;
    padding: 20px 10px;
    vertical-align: middle;
  }
  .page-price .price-area .price table .explain {
    width: 400px;
  }
}
.page-price .price-area .price .btn-reserve {
  width: 90%;
  margin: 0 auto 20px;
  text-align: center;
}
.page-price .price-area .price .btn-reserve a {
  display: block;
  padding: 18px;
  background-color: #E94009;
  border-bottom: 1px solid #AD360E;
  border-radius: 4px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
.page-price .price-area .price .btn-reserve a:hover {
  opacity: 0.6;
}
.page-price .price-area .price .btn-reserve a .dashicons {
  position: relative;
  top: 1px;
}
@media screen and (min-width: 768px) {
  .page-price .price-area .price .btn-reserve {
    width: 460px;
  }
}
.page-price .price-area .price .btn-reserve.hotpepper a {
  background-color: #A01547;
}
.page-price .price-area .price .btn-reserve.hotpepper a .icon {
  position: relative;
  top: -1px;
}

/* access */
.page-access .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/access/header2.jpg);
}
.page-access .access-area .photo {
  margin-bottom: 40px;
}
.page-access .access-area .photo img {
  max-width: 100%;
  height: auto;
}
.page-access .access-area .photo .photo-main {
  margin-bottom: 4px;
}
.page-access .access-area .photo .photo-thumb {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-access .access-area .photo .photo-thumb li {
  width: 24%;
  margin-bottom: 4px;
}
.page-access .access-area .detail h3 {
  border-top: 4px double #CDB17E;
  border-bottom: 4px double #CDB17E;
  padding: 15px;
  font-size: 24px;
  color: #2D180E;
  margin-bottom: 20px;
  text-align: center;
}
.page-access .access-area .detail h3 span {
  display: block;
  font-size: 14px;
  color: #CDB17E;
}
.page-access .access-area .detail p {
  margin-bottom: 20px;
}
.page-access .access-area .detail p span {
  font-weight: bold;
}
.page-access .access-area .detail .line .qr {
  margin-bottom: 10px;
  text-align: center;
}
.page-access .access-area .detail .line .qr img {
  max-width: 260px;
  height: auto;
}
.page-access .access-area .detail .line p {
  text-align: center;
  background-color: #00B901;
  color: #fff;
  font-weight: bold;
  padding: 14px;
  border-radius: 24px;
}
@media screen and (min-width: 768px) {
  .page-access .access-area .detail .line {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .page-access .access-area .detail .line .qr {
    width: 100px;
  }
  .page-access .access-area .detail .line .qr img {
    width: 140px;
  }
  .page-access .access-area .detail .line p {
    width: 220px;
    border-radius: 40px;
  }
}
.page-access .access-area .detail .address {
  line-height: 1.8;
}
.page-access .access-area .detail .address a {
  color: #978E6F;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .page-access .access-area .photo {
    width: 460px;
    float: left;
  }
  .page-access .access-area .photo .photo-main {
    margin-bottom: 5px;
  }
  .page-access .access-area .photo .photo-thumb li {
    margin-bottom: 8px;
  }
  .page-access .access-area .detail {
    width: 430px;
    float: right;
    padding-top: 20px;
  }
  .page-access .access-area .detail h3 {
    text-align: left;
  }
}
.page-access .map-area {
  margin-bottom: 40px;
}
.page-access .map-area iframe {
  width: 100%;
  height: 300px;
}
@media screen and (min-width: 768px) {
  .page-access .map-area iframe {
    height: 450px;
  }
}

/* contact */
.page-contact .header {
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/contact/header2.jpg);
}
.page-contact .contact-area .contact-form {
  margin-bottom: 50px;
  background-color: #e8ded4;
}
.page-contact .contact-area .contact-form tr {
  border-bottom: 1px dashed #fff;
}
.page-contact .contact-area .contact-form th {
  display: block;
  text-align: left;
  padding: 20px 20px 0 20px;
}
.page-contact .contact-area .contact-form th .hissu {
  display: inline-block;
  margin-left: 10px;
  font-weight: normal;
  padding: 2px 4px;
  border-radius: 2px;
  color: #ba0505;
}
.page-contact .contact-area .contact-form td {
  display: block;
  padding: 5px 20px 20px 20px;
}
.page-contact .contact-area .contact-form td .text-form {
  border: 1px solid #b2acac;
  padding: 8px;
  width: 100%;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-area .contact-form td .text-form-short {
  border: 1px solid #b2acac;
  padding: 8px;
  width: 260px;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-area .contact-form td .date {
  border: 1px solid #b2acac;
  padding: 4px;
  width: 180px;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-area .contact-form td .text-area {
  border: 1px solid #b2acac;
  padding: 8px;
  width: 100%;
  box-sizing: border-box;
  border-radius: 4px;
}
.page-contact .contact-area .contact-form td label {
  display: block;
  height: 5px;
}
.page-contact .contact-area .contact-form td select {
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #B2ACAC;
  padding: 8px;
  border-radius: 4px;
}
.page-contact .contact-area .send-btn {
  margin: 40px 0 0;
  display: block;
  width: 100%;
  padding: 15px;
  margin: 0 auto;
  border: none;
  background-color: #398F14;
  text-align: center;
  color: #FFFFFF;
  border-radius: 4px;
  font-size: 18px;
}
.page-contact .contact-area .send-btn:hover {
  cursor: pointer;
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  .page-contact .contact-area .contact-form th {
    display: table-cell;
    vertical-align: middle;
    width: 230px;
    text-align: right;
    padding: 20px;
  }
  .page-contact .contact-area .contact-form td {
    display: table-cell;
    padding: 20px 20px 0 20px;
  }
  .page-contact .contact-area .send-btn {
    width: 60%;
  }
}

/* gfcharge */
.page-gfcharge .header {
  background-color: #472716;
}
.page-gfcharge img {
  max-width: 100%;
  height: auto;
}
.page-gfcharge p {
  line-height: 1.4;
}
.page-gfcharge .section-full {
  margin: 0 auto 50px;
}
.page-gfcharge .section {
  width: 90%;
  margin: 0 auto 50px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .section {
    width: 940px;
  }
}
.page-gfcharge .fs24 {
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .fs24 {
    font-size: 24px;
  }
}
.page-gfcharge .fs42 {
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .fs42 {
    font-size: 42px;
  }
}
.page-gfcharge .fs60 {
  font-size: 26px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .fs60 {
    font-size: 60px;
  }
}
.page-gfcharge .tab {
  margin: 0 auto 40px;
  text-align: center;
  border-bottom: 1px solid #BBAD5C;
}
.page-gfcharge .tab li {
  width: 400px;
  display: inline-block;
  margin: 0 20px;
}
.page-gfcharge .tab li a {
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
  font-size: 32px;
  color: #fff;
  border-radius: 4px 4px 0 0;
  background-color: #e4d4c6;
  position: relative;
  bottom: -1px;
  padding: 14px 0;
}
.page-gfcharge .tab li a.selected {
  background-color: #BBAD5C;
  color: #fff;
}
.page-gfcharge .full-text {
  margin: 80px 0 40px;
  padding: 30px 0;
  background-color: #F3A227;
  text-align: center;
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .full-text {
    margin: 100px 0 60px;
    font-size: 24px;
  }
}
.page-gfcharge .area-headphoto {
  height: 200px;
  margin-bottom: 60px;
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/gfcharge/photo1.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-headphoto {
    height: 650px;
  }
}
.page-gfcharge .area-about {
  text-align: center;
}
.page-gfcharge .area-about .list {
  width: 90%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-about .list {
    width: 100%;
  }
}
.page-gfcharge .area-care {
  margin: 40px auto;
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0 0 10px #ccc;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-care {
    width: 988px;
    margin: 40px auto 60px;
  }
}
.page-gfcharge .area-facial {
  margin: 40px auto;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-facial {
    width: 1205px;
    margin: 40px auto 60px;
  }
}
.page-gfcharge .area-point {
  text-align: center;
  background-color: #23120C;
  border-top: 4px solid #B9A24D;
  border-bottom: 4px solid #B9A24D;
}
.page-gfcharge .area-flow {
  text-align: center;
}
.page-gfcharge .area-flow .flow-photo {
  width: 90%;
  margin: 0 auto 40px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-flow .flow-photo {
    width: 100%;
    margin: 0 auto 60px;
  }
}
.page-gfcharge .area-close {
  text-align: center;
  background-color: #FCC882;
}
.page-gfcharge .area-close .full-text {
  padding-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-close .full-text {
    padding-bottom: 30px;
  }
}
.page-gfcharge .area-close .photo {
  height: 250px;
  margin-top: -70px;
  margin-bottom: -40px;
  background-image: url(http://esthetic-reborn.com/wp-content/themes/reborn/images/contents/gfcharge/photo-close.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .page-gfcharge .area-close .photo {
    height: 758px;
    margin-bottom: -90px;
  }
}
.page-gfcharge .area-beforeafter {
  width: 100%;
  text-align: center;
  margin: -30px auto 0;
}

/* hermosa */
.page-hermosa .header {
  background-color: #472716;
}
.page-hermosa img {
  max-width: 100%;
  height: auto;
}
.page-hermosa p {
  line-height: 1.4;
}
.page-hermosa .section-full {
  margin: 0 auto 50px;
}
.page-hermosa .section {
  width: 90%;
  margin: 0 auto 50px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .section {
    width: 940px;
  }
}
.page-hermosa .fs24 {
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .fs24 {
    font-size: 24px;
  }
}
.page-hermosa .fs42 {
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .fs42 {
    font-size: 42px;
  }
}
.page-hermosa .fs60 {
  font-size: 26px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .fs60 {
    font-size: 60px;
  }
}
.page-hermosa .area-head {
  margin-bottom: 40px;
}
.page-hermosa .area-head .photo {
  margin-bottom: 40px;
}
.page-hermosa .area-head .photo img {
  width: 100%;
  height: auto;
}
.page-hermosa .area-head .page-title {
  text-align: center;
  font-size: 24px;
  text-shadow: 0 0 4px #fff;
}
.page-hermosa .area-head .page-title span {
  display: block;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-head .page-title {
    font-size: 48px;
  }
  .page-hermosa .area-head .page-title span {
    font-size: 24px;
  }
}
.page-hermosa .area-item {
  width: 90%;
  margin: 0 auto 40px;
}
.page-hermosa .area-item ul {
  margin-bottom: 30px;
}
.page-hermosa .area-item ul li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-radius: 6px;
  text-align: center;
  background-color: #fff;
  box-shadow: 0 0 6px #ddd;
}
.page-hermosa .area-item ul li .photo {
  margin-bottom: 20px;
}
.page-hermosa .area-item ul li .photo img {
  border-radius: 6px 6px 0 0;
}
.page-hermosa .area-item ul li .detail p {
  font-weight: bold;
  font-size: 16px;
}
.page-hermosa .area-item .explain {
  margin-bottom: 30px;
}
.page-hermosa .area-item .explain p {
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.7;
  font-size: 16px;
}
.page-hermosa .area-item .nmn {
  box-sizing: border-box;
  padding: 20px;
  background-color: #faf3ec;
}
.page-hermosa .area-item .nmn p {
  font-size: 12px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-item {
    width: 980px;
  }
  .page-hermosa .area-item ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hermosa .area-item ul li {
    width: 460px;
  }
  .page-hermosa .area-item ul li .detail p {
    font-size: 18px;
  }
  .page-hermosa .area-item .explain p {
    font-size: 20px;
  }
  .page-hermosa .area-item .nmn p {
    font-size: 14px;
  }
}
.page-hermosa .area-about {
  box-sizing: border-box;
  background-color: #fff;
  padding: 40px 0;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about {
    padding: 40px 0 80px;
  }
}
.page-hermosa .area-about .explain {
  width: 90%;
  margin: 0 auto 40px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .explain {
    width: 980px;
  }
}
.page-hermosa .area-about .explain h2 {
  margin-bottom: 40px;
  padding: 10px;
  text-align: center;
  background-color: #4F483F;
  color: #fff;
  font-size: 18px;
}
.page-hermosa .area-about .explain h3 {
  margin-bottom: 20px;
  font-size: 16px;
}
.page-hermosa .area-about .explain p {
  margin-bottom: 20px;
  line-height: 1.7;
  font-size: 16px;
}
.page-hermosa .area-about .flow {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 40px;
  padding: 40px 0;
  background-color: #f7f7f7;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .flow {
    width: 980px;
    margin: 0 auto 60px;
    padding: 80px 20px 20px;
  }
}
.page-hermosa .area-about .flow .arrow:after {
  position: absolute;
  top: -50px;
  left: -20px;
  content: "⬇";
  color: #fff;
  font-size: 248px;
  text-shadow: 0 0 8px #eee;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .flow .arrow:after {
    content: "➡";
    top: -140px;
    left: 120px;
    font-size: 300px;
  }
}
.page-hermosa .area-about .flow ul {
  overflow: hidden;
  width: 60%;
  margin: 0 0 0 30%;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .flow ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }
}
.page-hermosa .area-about .flow ul li {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 14px;
  padding: 14px;
  text-align: center;
  background-color: #CDBEA5;
  font-size: 16px;
  font-weight: bold;
  box-shadow: 0 0 6px #bcbcbc;
  border: 2px solid #fff;
}
.page-hermosa .area-about .flow ul li:nth-child(2) {
  background-color: #d9cbb3;
}
.page-hermosa .area-about .flow ul li:nth-child(3) {
  background-color: #e4d6bf;
}
.page-hermosa .area-about .flow ul li:nth-child(4) {
  background-color: #ebdec8;
}
.page-hermosa .area-about .flow ul li:nth-child(5) {
  background-color: #f6ecdc;
}
.page-hermosa .area-about .flow ul li:last-child {
  margin-bottom: 0;
}
.page-hermosa .area-about .flow ul li span {
  display: block;
  font-size: 12px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .flow ul li {
    width: 19%;
    margin-bottom: 0;
  }
}
.page-hermosa .area-about .damaroller {
  width: 90%;
  margin: 0 auto 40px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .damaroller {
    width: 980px;
  }
}
.page-hermosa .area-about .damaroller h3 {
  margin-bottom: 20px;
  padding: 10px;
  text-align: center;
  border: 1px solid #4F483F;
  font-size: 16px;
}
.page-hermosa .area-about .damaroller p {
  margin-bottom: 20px;
  line-height: 1.7;
  font-size: 16px;
}
.page-hermosa .area-about .nmn {
  box-sizing: border-box;
  width: 90%;
  margin: 0 auto 40px;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 0 12px #ddd;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-about .nmn {
    width: 700px;
    margin: 0 auto 70px;
  }
}
.page-hermosa .area-about .nmn p {
  font-size: 12px;
  line-height: 1.7;
}
.page-hermosa .area-flow {
  padding: 40px 0;
  background: linear-gradient(-135deg, #af769b, #59163f) fixed;
}
.page-hermosa .area-flow .flow {
  width: 70%;
  margin: 0 auto;
}
.page-hermosa .area-flow .flow li {
  margin-bottom: 30px;
}
.page-hermosa .area-flow .flow li .photo {
  margin-bottom: 10px;
}
.page-hermosa .area-flow .flow li .photo img {
  max-width: 100%;
  height: auto;
  border-radius: 2px;
  box-shadow: 0 0 8px #491736;
  border: 6px solid #fff;
}
.page-hermosa .area-flow .flow li .detail p {
  text-align: center;
  font-size: 18px;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-flow .flow {
    width: 980px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hermosa .area-flow .flow li {
    width: 150px;
    margin-bottom: 0;
  }
  .page-hermosa .area-flow .flow li .photo img {
    border: 2px solid #fff;
  }
}
.page-hermosa .area-effect {
  padding: 40px 0;
  background-color: #fff;
}
.page-hermosa .area-effect .effect {
  width: 90%;
  margin: 0 auto 60px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-effect .effect {
    width: 980px;
  }
}
.page-hermosa .area-effect .effect h2 {
  position: relative;
  text-align: center;
  border-bottom: 1px solid #7e6612;
  margin-bottom: 40px;
  color: #7e6612;
  font-size: 16px;
}
.page-hermosa .area-effect .effect h2 span {
  position: relative;
  bottom: -14px;
  background-color: #fff;
  padding: 0 12px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-effect .effect h2 {
    margin-bottom: 60px;
  }
  .page-hermosa .area-effect .effect h2 span {
    font-size: 24px;
  }
}
.page-hermosa .area-effect .effect ol {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
}
.page-hermosa .area-effect .effect ol li {
  box-sizing: border-box;
  width: 48%;
  margin-bottom: 12px;
  padding: 20px;
  text-align: center;
  background-color: #712e57;
  color: #fff;
  box-shadow: 0 0 10px #ccc;
}
.page-hermosa .area-effect .effect ol li:nth-child(odd) {
  background-color: #8e637f;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-effect .effect ol {
    width: 800px;
  }
  .page-hermosa .area-effect .effect ol li {
    width: 30%;
    font-size: 18px;
  }
}
.page-hermosa .area-effect .beforeafter h2 {
  margin-bottom: 40px;
  padding: 20px;
  background-color: #321301;
  text-align: center;
  color: #fff;
  font-size: 16px;
}
.page-hermosa .area-effect .beforeafter h2 span {
  display: block;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-effect .beforeafter h2 {
    font-size: 24px;
  }
  .page-hermosa .area-effect .beforeafter h2 span {
    font-size: 16px;
  }
}
.page-hermosa .area-effect .beforeafter .hikaku .photo {
  width: 90%;
  margin: 0 auto;
}
.page-hermosa .area-effect .beforeafter .hikaku .photo:first-of-type {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #7E6612;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-effect .beforeafter .hikaku {
    width: 980px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hermosa .area-effect .beforeafter .hikaku .photo {
    width: 400px;
  }
  .page-hermosa .area-effect .beforeafter .hikaku .photo:first-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.page-hermosa .area-price {
  padding: 40px 0;
}
.page-hermosa .area-price .price {
  width: 90%;
  margin: 0 auto;
  background-color: #FEFEF8;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-price .price {
    width: 980px;
  }
}
.page-hermosa .area-price .price h2 {
  background-color: #CF9E58;
  margin-bottom: 20px;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #fff;
}
.page-hermosa .area-price .price .course {
  box-sizing: border-box;
  width: 80%;
  margin: 0 auto 30px;
  padding: 0 0 30px 0;
}
.page-hermosa .area-price .price .course h3 {
  margin-bottom: 14px;
  text-align: center;
  font-size: 24px;
}
.page-hermosa .area-price .price .course .time {
  display: inline-block;
  position: relative;
  top: -4px;
  padding: 6px 12px;
  margin-right: 10px;
  font-size: 12px;
  border-radius: 24px;
  background-color: #492612;
  color: #fff;
}
.page-hermosa .area-price .price .course .yen {
  display: inline-block;
  font-weight: bold;
  color: #CA0400;
  font-size: 24px;
}
.page-hermosa .area-price .price .course .yen .zei {
  font-size: 14px;
}
.page-hermosa .area-price .price .first {
  border-bottom: 1px solid #635D40;
}
@media screen and (min-width: 768px) {
  .page-hermosa .area-price .price .course-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 10px 40px 30px;
  }
  .page-hermosa .area-price .price .course-list .course {
    width: 450px;
    margin: 0 0 0 0;
    padding: 10px;
    text-align: center;
  }
  .page-hermosa .area-price .price .course-list .first {
    border-bottom: none;
  }
}

/* hair */
.page-hair img {
  max-width: 100%;
  height: auto;
}
.page-hair p {
  line-height: 1.4;
}
.page-hair .section-full {
  margin: 0 auto 50px;
}
.page-hair .section {
  width: 90%;
  margin: 0 auto 50px;
}
@media screen and (min-width: 768px) {
  .page-hair .section {
    width: 940px;
  }
}
.page-hair .fs24 {
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-hair .fs24 {
    font-size: 24px;
  }
}
.page-hair .fs42 {
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .page-hair .fs42 {
    font-size: 42px;
  }
}
.page-hair .fs60 {
  font-size: 26px;
}
@media screen and (min-width: 768px) {
  .page-hair .fs60 {
    font-size: 60px;
  }
}
.page-hair .area-head {
  margin-bottom: 40px;
}
.page-hair .area-head .photo {
  margin-bottom: 40px;
}
.page-hair .area-head .photo img {
  width: 100%;
  height: auto;
}
.page-hair .area-head .page-title {
  text-align: center;
  font-size: 24px;
  text-shadow: 0 0 4px #fff;
}
.page-hair .area-head .page-title span {
  display: block;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-head .page-title {
    font-size: 48px;
  }
  .page-hair .area-head .page-title span {
    font-size: 24px;
  }
}
.page-hair .area-item {
  width: 90%;
  margin: 0 auto 40px;
}
.page-hair .area-item ul {
  margin-bottom: 30px;
}
.page-hair .area-item ul li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-radius: 6px;
  text-align: center;
  background-color: #fff;
  box-shadow: 0 0 6px #ddd;
}
.page-hair .area-item ul li .photo {
  margin-bottom: 20px;
}
.page-hair .area-item ul li .photo img {
  border-radius: 6px 6px 0 0;
}
.page-hair .area-item ul li .detail p {
  font-weight: bold;
  font-size: 16px;
}
.page-hair .area-item .explain {
  margin-bottom: 30px;
}
.page-hair .area-item .explain p {
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.7;
  font-size: 16px;
}
.page-hair .area-item .nmn {
  box-sizing: border-box;
  padding: 20px;
  background-color: #faf3ec;
}
.page-hair .area-item .nmn p {
  font-size: 12px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-item {
    width: 980px;
  }
  .page-hair .area-item ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hair .area-item ul li {
    width: 460px;
  }
  .page-hair .area-item ul li .detail p {
    font-size: 18px;
  }
  .page-hair .area-item .explain p {
    font-size: 20px;
  }
  .page-hair .area-item .nmn p {
    font-size: 14px;
  }
}
.page-hair .area-about {
  box-sizing: border-box;
  background-color: #fff;
  padding: 40px 0;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about {
    padding: 40px 0 80px;
  }
}
.page-hair .area-about .explain {
  width: 90%;
  margin: 0 auto 40px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .explain {
    width: 980px;
  }
}
.page-hair .area-about .explain h2 {
  margin-bottom: 40px;
  padding: 10px;
  text-align: center;
  background-color: #4F483F;
  color: #fff;
  font-size: 18px;
}
.page-hair .area-about .explain h3 {
  margin-bottom: 20px;
  font-size: 16px;
}
.page-hair .area-about .explain p {
  margin-bottom: 20px;
  line-height: 1.7;
  font-size: 16px;
}
.page-hair .area-about .explain ul {
  margin-bottom: 40px;
}
.page-hair .area-about .explain ul li {
  margin-bottom: 2px;
  font-size: 16px;
}
.page-hair .area-about .explain ul li span {
  font-size: 20px;
}
.page-hair .area-about .explain ul li .text {
  font-size: 16px;
  padding-bottom: 4px;
  border-bottom: 1px dashed #000;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .explain ul {
    margin-bottom: 80px;
  }
  .page-hair .area-about .explain ul li {
    margin-left: 240px;
    margin-bottom: -10px;
  }
  .page-hair .area-about .explain ul li span {
    font-size: 42px;
  }
  .page-hair .area-about .explain ul li .text {
    font-size: 28px;
  }
}
.page-hair .area-about .explain .message {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .explain .message {
    font-size: 42px;
  }
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .area-nmn {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 900px;
    margin: 0 auto 40px;
  }
}
.page-hair .area-about .nmn {
  box-sizing: border-box;
  width: 90%;
  margin: 0 auto 30px;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 0 12px #ddd;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .nmn {
    width: 420px;
    padding: 30px 40px;
  }
}
.page-hair .area-about .nmn p {
  font-size: 14px;
  line-height: 1.7;
}
.page-hair .area-about .nmn p.ttl {
  font-weight: bold;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .nmn p {
    font-size: 18px;
  }
  .page-hair .area-about .nmn p.ttl {
    font-size: 20px;
  }
}
.page-hair .area-about .nmn.geiin .ttl {
  color: #b40138;
}
.page-hair .area-about .nmn.taisaku .ttl {
  color: #1d5ea0;
}
.page-hair .area-about .message2 {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  text-decoration: underline;
  color: #1d5ea0;
}
@media screen and (min-width: 768px) {
  .page-hair .area-about .message2 {
    font-size: 42px;
  }
}
.page-hair .area-flow {
  padding: 40px 0;
  background: linear-gradient(-135deg, #000, #111) fixed;
}
.page-hair .area-flow h2 {
  margin-bottom: 40px;
  text-align: center;
  color: #fff;
  font-size: 24px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-flow h2 {
    font-size: 48px;
  }
}
.page-hair .area-flow .flow {
  width: 100%;
  margin: 0 auto;
}
.page-hair .area-flow .flow li {
  margin-bottom: 30px;
}
.page-hair .area-flow .flow li .photo {
  margin-bottom: 10px;
}
.page-hair .area-flow .flow li .photo img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-hair .area-flow .flow {
    width: 1200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hair .area-flow .flow li {
    width: 399px;
  }
  .page-hair .area-flow .flow li:nth-of-type(2) {
    margin-top: 60px;
  }
  .page-hair .area-flow .flow li:nth-of-type(3) {
    margin-top: 120px;
  }
  .page-hair .area-flow .flow li:nth-of-type(4) {
    margin-top: 0;
  }
  .page-hair .area-flow .flow li:nth-of-type(5) {
    margin-top: 60px;
  }
  .page-hair .area-flow .flow li:nth-of-type(6) {
    margin-top: 120px;
  }
  .page-hair .area-flow .flow li:nth-of-type(7) {
    margin-top: 40px;
  }
  .page-hair .area-flow .flow li:nth-of-type(8) {
    margin-top: 40px;
  }
}
.page-hair .area-effect {
  padding: 40px 0;
  background-color: #fff;
}
.page-hair .area-effect .effect {
  width: 90%;
  margin: 0 auto 60px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-effect .effect {
    width: 980px;
  }
}
.page-hair .area-effect .effect h2 {
  position: relative;
  text-align: center;
  border-bottom: 1px solid #7e6612;
  margin-bottom: 40px;
  color: #7e6612;
  font-size: 16px;
}
.page-hair .area-effect .effect h2 span {
  position: relative;
  bottom: -14px;
  background-color: #fff;
  padding: 0 12px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-effect .effect h2 {
    margin-bottom: 60px;
  }
  .page-hair .area-effect .effect h2 span {
    font-size: 24px;
  }
}
.page-hair .area-effect .effect ol {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
}
.page-hair .area-effect .effect ol li {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 12px;
  padding: 20px;
  text-align: center;
  background-color: #C69E62;
  color: #fff;
  box-shadow: 0 0 10px #ccc;
  font-size: 16px;
}
.page-hair .area-effect .effect ol li:nth-child(odd) {
  background-color: #9a7a4b;
}
@media screen and (min-width: 768px) {
  .page-hair .area-effect .effect ol {
    width: 900px;
  }
  .page-hair .area-effect .effect ol li {
    width: 32%;
    font-size: 20px;
  }
}
.page-hair .area-effect .beforeafter h2 {
  margin-bottom: 40px;
  padding: 20px;
  background-color: #321301;
  text-align: center;
  color: #fff;
  font-size: 16px;
}
.page-hair .area-effect .beforeafter h2 span {
  display: block;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-hair .area-effect .beforeafter h2 {
    font-size: 24px;
  }
  .page-hair .area-effect .beforeafter h2 span {
    font-size: 16px;
  }
}
.page-hair .area-effect .beforeafter .hikaku .photo {
  width: 90%;
  margin: 0 auto;
}
.page-hair .area-effect .beforeafter .hikaku .photo:first-of-type {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #7E6612;
}
@media screen and (min-width: 768px) {
  .page-hair .area-effect .beforeafter .hikaku {
    width: 980px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-hair .area-effect .beforeafter .hikaku .photo {
    width: 460px;
  }
  .page-hair .area-effect .beforeafter .hikaku .photo:first-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.page-hair .area-price {
  padding: 40px 0;
}
.page-hair .area-price .price {
  width: 90%;
  margin: 0 auto;
  background-color: #FEFEF8;
}
@media screen and (min-width: 768px) {
  .page-hair .area-price .price {
    width: 980px;
  }
}
.page-hair .area-price .price h2 {
  background-color: #CF9E58;
  margin-bottom: 20px;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #fff;
}
.page-hair .area-price .price .course {
  box-sizing: border-box;
  width: 80%;
  margin: 0 auto 30px;
  padding: 0 0 30px 0;
}
.page-hair .area-price .price .course h3 {
  margin-bottom: 14px;
  text-align: center;
  font-size: 24px;
}
.page-hair .area-price .price .course .time {
  display: inline-block;
  position: relative;
  top: -4px;
  padding: 6px 12px;
  margin-right: 10px;
  font-size: 12px;
  border-radius: 24px;
  background-color: #492612;
  color: #fff;
}
.page-hair .area-price .price .course .yen {
  display: inline-block;
  font-weight: bold;
  color: #CA0400;
  font-size: 24px;
}
.page-hair .area-price .price .course .yen .zei {
  font-size: 14px;
}
.page-hair .area-price .price .first {
  border-bottom: 1px solid #635D40;
}
@media screen and (min-width: 768px) {
  .page-hair .area-price .price .course-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 10px 40px 30px;
  }
  .page-hair .area-price .price .course-list .course {
    width: 450px;
    margin: 0 0 0 0;
    padding: 10px;
    text-align: center;
  }
  .page-hair .area-price .price .course-list .first {
    border-bottom: none;
  }
}

.page-lp .section {
  padding: 30px 0;
}
@media screen and (min-width: 768px) {
  .page-lp .section {
    padding: 60px 0;
  }
}
.page-lp .section .ttl-level-02 {
  text-align: center;
  margin-bottom: 20px;
  font-size: 20px;
}
.page-lp .section .ttl-level-02::after {
  content: "";
  display: block;
  width: 80px;
  height: 4px;
  background: #333;
  margin: 15px auto 0;
}
.page-lp .section .ttl-level-02 .sub {
  display: block;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .page-lp .section .ttl-level-02 {
    margin-bottom: 40px;
    font-size: 42px;
  }
  .page-lp .section .ttl-level-02::after {
    margin-top: 25px;
  }
  .page-lp .section .ttl-level-02 .sub {
    font-size: 24px;
  }
}
.page-lp .sec-mainvisual .mainvisual {
  text-align: center;
}
.page-lp .sec-mainvisual .mainvisual img {
  width: 100%;
  height: auto;
}

.page-lipocool .sec-mainvisual {
  padding: 0;
}
.page-lipocool .sec-about {
  background-color: #fff;
}
.page-lipocool .sec-about .photo {
  text-align: center;
}
.page-lipocool .sec-about .photo img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-about .photo img {
    width: 1000px;
  }
}
.page-lipocool .sec-what {
  background-color: #fff;
}
.page-lipocool .sec-what .photo {
  text-align: center;
  margin-bottom: 20px;
}
.page-lipocool .sec-what .photo img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-what .photo img {
    width: 1000px;
  }
}
.page-lipocool .sec-what .detail {
  box-sizing: border-box;
  width: 90%;
  margin: 0 auto 20px;
  padding: 20px;
  border-radius: 14px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 4px 24px;
}
.page-lipocool .sec-what .detail p {
  margin-bottom: 14px;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-what .detail {
    width: 900px;
    padding: 40px;
  }
  .page-lipocool .sec-what .detail p {
    font-size: 18px;
  }
}
.page-lipocool .sec-effect {
  background-color: #f5feff;
}
.page-lipocool .sec-effect .photo {
  text-align: center;
}
.page-lipocool .sec-effect .photo img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-effect .photo img {
    width: 1000px;
  }
}
.page-lipocool .sec-effect .effect .feature-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
  padding: 20px;
  list-style: none;
  max-width: 1200px;
  margin: 0 auto;
}
.page-lipocool .sec-effect .effect .feature-list .feature-item {
  display: flex;
  align-items: center;
  padding: 15px 25px;
  color: #fff;
  font-size: 18px;
  border-radius: 10px;
  background: linear-gradient(135deg, #3388ff 0%, #00e5ff 100%);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  position: relative;
}
.page-lipocool .sec-effect .effect .feature-list .feature-item::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 10px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  margin-right: 20px;
  margin-top: -5px;
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-effect .effect .feature-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 40px;
  }
  .page-lipocool .sec-effect .effect .feature-list .feature-item {
    font-size: 18px;
    justify-content: flex-start;
    padding: 24px 25px;
  }
}
.page-lipocool .sec-beforeafter {
  background-color: #fff;
}
.page-lipocool .sec-beforeafter .area-beforeafter {
  width: 90%;
  margin: 0 auto;
}
.page-lipocool .sec-beforeafter .area-beforeafter .ba {
  margin-bottom: 20px;
}
.page-lipocool .sec-beforeafter .area-beforeafter .ba img {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-beforeafter .area-beforeafter {
    width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page-lipocool .sec-beforeafter .area-beforeafter .ba {
    width: 340px;
  }
}
.page-lipocool .sec-price {
  background: linear-gradient(to bottom, #0088ff 0%, #00c2ff 50%, #0088ff 100%);
}
.page-lipocool .sec-price .ttl-level-02 {
  color: #fff;
}
.page-lipocool .sec-price .sec-inner {
  display: flex;
  justify-content: center;
}
.page-lipocool .sec-price .price-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  width: 90%;
  max-width: 900px;
}
@media screen and (min-width: 768px) {
  .page-lipocool .sec-price .price-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
}
.page-lipocool .sec-price .price-container .price-card {
  background: #fff;
  border-radius: 20px;
  padding: 30px 20px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-lipocool .sec-price .price-container .price-card .badge {
  display: inline-block;
  padding: 6px 24px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 20px;
}
.page-lipocool .sec-price .price-container .price-card .badge.first-time {
  background-color: #e8f2ff;
  color: #4a90e2;
}
.page-lipocool .sec-price .price-container .price-card .badge.regular {
  background-color: #f5f5f5;
  color: #888;
}
.page-lipocool .sec-price .price-container .price-card .price-amount {
  color: #333;
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-bottom: 5px;
}
.page-lipocool .sec-price .price-container .price-card .price-amount .number {
  font-size: 44px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.page-lipocool .sec-price .price-container .price-card .price-amount .unit {
  font-size: 24px;
  font-weight: bold;
  margin-left: 4px;
}
.page-lipocool .sec-price .price-container .price-card .tax {
  font-size: 14px;
  color: #888;
}
.page-lipocool .sec-price .price-container .price-card .detail {
  font-size: 18px;
  color: #666;
  margin: 0;
}

/*-----------------------------------------------------------

	side

---------------------------------------------------------- */
#side {
  float: right;
  width: 215px;
}

/*-----------------------------------------------------------

	footer

---------------------------------------------------------- */
#footer {
  width: 100%;
  margin-top: 60px;
  background-color: #302924;
}
@media screen and (min-width: 768px) {
  #footer {
    margin-top: 100px;
  }
}
#footer .inner {
  width: 90%;
  margin: 0 auto;
  padding: 30px 0;
  color: #f1f1f1;
}
#footer .inner .data .info .logo {
  margin-bottom: 20px;
}
#footer .inner .data .info .logo img {
  width: 200px;
  height: auto;
}
#footer .inner .data .info .tel {
  margin-bottom: 20px;
  font-size: 32px;
}
#footer .inner .data .info .tel a {
  color: #f1f1f1;
}
#footer .inner .data .shop {
  margin-bottom: 20px;
}
#footer .inner .data .shop p {
  line-height: 1.8;
}
#footer .inner .data .shop a {
  text-decoration: underline;
  color: #FF7520;
}
@media screen and (min-width: 768px) {
  #footer .inner {
    width: 940px;
  }
  #footer .inner .data {
    margin-bottom: 30px;
  }
  #footer .inner .data .info {
    width: 300px;
    float: left;
  }
  #footer .inner .data .info .tel {
    font-size: 42px;
  }
  #footer .inner .data .shop {
    position: relative;
    width: 300px;
    float: right;
  }
  #footer .inner .data .shop .logo {
    position: absolute;
    top: 20px;
    right: 340px;
  }
}
#footer .inner .copy {
  text-align: center;
  font-size: 12px;
}