@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Roboto);


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

html {
-ms-text-size-adjust:100%;
-webkit-text-size-adjust:100%;
}
body {
color:#444;
font-family: sans-serif;
line-height:1.0;
}

br {letter-spacing:0;}
ul, li {list-style:none;}
img, a img {border:0; text-decoration:none; vertical-align:top;}
mark {background:#ff0; color:#000;}
b, strong {font-weight:bold;}
table {border-collapse:collapse; border-spacing:0;}
td, th {padding:0;}
hr {box-sizing:content-box; height:0;}
button, input, optgroup, select, textarea {color:inherit; font:sans-serif; margin:0;}
button {overflow: visible;}
button, select {text-transform:none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance:button; cursor:pointer;}
input[type="checkbox"], input[type="radio"] {box-sizing:border-box; padding:0;}
textarea {overflow:auto;}

div:after, ul:after {content:""; display:block; clear:both;}
.wrap:after {content:""; display:block; clear:both;}
.cf:before,
.cf:after {content:""; display:table;}
.cf:after {clear:both;}
.cf {zoom:1;}

a {background-color:transparent; outline:0;}
a:link    {color:#44a039; text-decoration:none;}
a:visited {color:#44a039; text-decoration:none;}
a:hover   {color:#1a428c; text-decoration:underline;}
a:active  {color:#99CCFF; text-decoration:none;}

/* -------------------------------------------------------
Layout
---------------------------------------------------------- */
.policy_wrap {
  font-size: 90%;
  line-height: 1.8;
}
.policy_block {
  margin-top: 2em;
}
.policy_block dl + dl {
  margin-top: 2em;
}
.policy_block dt {
  margin-bottom: .5em;
  font-weight: bold;
}
.list_disc {
  padding-left: 1em;
}
.list_disc li {
  list-style-type: disc;
}



/* -------------------------------------------------------
Detail
---------------------------------------------------------- */

/* -------------------------------------------------------
for SmartPhone
---------------------------------------------------------- */
@media only screen and (max-width:959px){
  .pcv {
    display: none;
  }

  html {
    height: 100%;
  }
  body {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    font-family: sans-serif;
  }

  /* header -------------- */
  .site_header {
    height: 60px;
    /*margin: 0 0 32px;*/
    background: #fff;
  }
  .title {
    padding-left: 16px;
  }
  .intro {
    padding: 8px 8px 0;
    font-size: 10px;
  }
  .title img {
    height: 30px;
  }

  /* contents -------------- */
  .top_contents_body {}
  .contents_body {
    flex: 1;
    padding: 0 0 80px;
  }

  .inner_box {
    padding: 0 8px;
  }

  .btn_w,
  .btn_wr {
    display: inline-block;
  }
  .btn_w a {
    display: block;
    padding: 0 1em;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 20px;
    font-weight: bold;
    line-height: 48px;
    text-decoration: none;
    transition: all .5s ease;
  }
  .btn_wr a {
    display: block;
    padding: 0 1em;
    background: #fff;
    border: 1px solid #44a039;
    border-radius: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 20px;
    font-weight: bold;
    line-height: 40px;
    text-decoration: none;
    transition: all .5s ease;
  }




  /* TOP */
  /*
  .mainv_block {
    height: 240px;
    background: url(../images/main_v_bg.jpg) no-repeat center;
    background-size: cover;
  }
  .mainv_block .mainv_comment {
    padding: 48px 16px;
    color: #111;
    font-size: 150%;
    font-weight: bold;
    text-align: center;
  }*/

  .top_mainv {
    box-sizing: border-box;
    width: 100%;
    height: 300px;
    background-position:center center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .top_mainv_t {
    color: #fff;
    font-size: 130%;
    line-height: 1.5;
    font-weight: bold;
    text-align:center;
    text-shadow: 1px 1px 1px #000;
  }


  .topconcept_block {
    padding: 64px 0;
    background: #f5f3ef;
  }
  .topconcept_block h2 {
    margin: 0 0 32px;
    padding: 0 16px;
    text-align: center;
  }
  .topconcept_block h2 img {
    width: 100%;
    max-width: 420px;
  }

  .top_c_img {
    margin: 0 0 32px;
    text-align: center;

  }
  .top_c_img img {
    width: 100%;
    max-width: 480px;
  }
  .top_c_comment {
    color: #442e20;
  }
  .top_cc_t {
    margin: 0 0 1em;
    padding: 0 8px;
    font-family: serif;
    font-size: 140%;
    font-weight: bold;
    line-height: 1.5;
  }
  .top_c_comment p {
    margin: 0 0 2em;
    padding: 0 8px;
    font-size: 90%;
    line-height: 1.7;
    letter-spacing: .1em;
  }


  .topmenu_block {
    padding: 64px 0;
    background: url(../images/topmenu_bg_r.jpg) repeat center top;
  }
  .tm_t {
    margin: 0 0 32px;
    text-align: center;
  }
  .tm_t h2 {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    font-size: 100%;
    font-weight: 200;
  }
  .tm_t h2:before,
  .tm_t h2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #333;
  }
  .tm_t h2:before {
    left: 0;
  }
  .tm_t h2:after {
    right: 0;
  }

  .tm_b .dsp_tc {
    margin: 0 0 80px;
  }
  .tm_b .last {
    margin: 0;
  }

  .tm_b h3 {
    height: 70px;
    background: url(../images/tm_line.png) no-repeat center bottom;
    font-family: serif;
    font-size: 150%;
    text-align: center;
    text-shadow: 0 1px 3px rgba(0,0,0,0.2);
  }
  .tm_b h3 a {
    color: #442e20;
  }
  .tm_img {
    width: 300px;
    height: 200px;
    overflow: hidden;
    margin: 0 auto 16px;
    text-align: center;
  }
  .tm_img img {
    width: 300px;
  }
  .tm_b p {
    margin: 0 0 1em;
    font-size: 110%;
    line-height: 1.7;
  }


  .top_info {
    padding: 64px 0 32px;
  }
  .ti_txt {
    /*margin: 0 0 48px;*/
  }
  .ti_txt .logo {
    margin: 0 0 8px;
  }
  .ti_txt .logo img {
    height: 30px;
  }
  .ti_txt .logo span {
    display: block;
    margin-left: 60px;
    font-size: 10px;
  }
  .top_shop_comment {
    margin: 0 0 24px;
    padding: 0 12px;
    font-size: 90%;
    line-height: 1.5;
  }

  .ti_spec {
  }
  .ti_spec p {
    margin: 0 0 1em;
    font-size: 100%;
    line-height: 1.2;
  }

  .sp_maplink {
    margin: 0 0 32px;
  }

  .sp_telinfo {
    width: 100%;
    margin: 0 0 24px;
  }
  .sp_telinfo p {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 1.2;
  }
  .spbr {
    display: block;
    margin: 0 0 8px;
    font-size: 16px;
  }
  .ibg {
    display: block;
    margin: 0 0 8px;
    padding: 4px 8px;
    background: #f4f0e7;
    font-size: 12px;
  }

  .map_btn {
    display: inline-block;
  }
  .sptel {
    padding: 0 8px;
  }
  .sptel a {
    display: block;
    width: 100%;
    background: #fff;
    border: 1px solid #44a039;
    border-radius: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 24px;
    font-weight: bold;
    line-height: 48px;
    text-decoration: none;
    text-align: center;
    transition: all .5s ease;
  }
  .map_btn a {
    display: block;
    padding: 0 2em;
    background: #fff;
    border: 1px solid #44a039;
    border-radius: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 100%;
    font-weight: bold;
    line-height: 48px;
    text-decoration: none;
    transition: all .5s ease;
  }

  .ti_att {
    margin-left: 16px;
    padding: 8px 0 0;
    font-size: 90%;
    line-height: 1.5;
  }


  .top_info .fb_box {
    text-align: center;
  }
  .fb_box .vt {
    display: none;
  }
  .fb_box img {
    width: 100%;
    max-width: 400px;
  }




  .top_btn {
    text-align: center;
  }


  /* SUB */
  .contents_title {
    height: 160px;
    text-align: center;
  }
  .contents_title.bg_a {
    background: url(../images/sub_bg.jpg) no-repeat center bottom;
    background-size: cover;
  }
  .contents_title.bg_b {
    background: url(../images/sub_bg_b.jpg) no-repeat center top;
    background-size: cover;
  }
  /*
  .contents_title h2 {
    padding: 40px 0 0;
    color: #fff;
    font-size: 140%;
  }
  */
  .contents_title .title_block {
    padding: 40px 0 0;
  }
  .title_block h2 {
    padding: 1em 0;
    font-family: serif;
    font-size: 140%;
    line-height: 1.4;
  }
  .title_block h2.t1 {
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }
  .title_block h2.t2 {
    /*background: rgba(33,22,10,0.5);*/
    color: #fff;
    text-shadow: 0 2px 2px rgba(0,0,0,0.5);
  }


  .preamble {
    margin: 40px 0 40px;
    padding: 0 8px;
    text-align: left;
  }
  .preamble h3 {
    color: #935938;
    /*font-family: "Hiragino Mincho ProN", "Sawarabi Mincho", serif;*/
    font-family: serif;
    font-size: 120%;
    font-weight: nomal;
    line-height: 1.6;
  }
  .preamble p {
    margin-top: 1em;
    font-size: 100%;
    line-height: 1.7;
  }

  .section_intro {
    margin: 40px 0 40px;
    padding: 0 8px;
    text-align: left;
  }


  .section_t {
    margin: 0 0 40px;
    text-align: center;
  }
  .section_t h2 {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    color: #442e20;
    font-family: serif;
    font-size: 140%;
    line-height: 1.4;
  }
  .section_t h2:before,
  .section_t h2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #442e20;
  }
  .section_t h2:before {
    left: 0;
  }
  .section_t h2:after {
    right: 0;
  }

  .hd3 {
    margin-bottom: 8px;
    padding-bottom: 48px;
    background: url(../images/tm_line.png) no-repeat center bottom;
    font-family: serif;
    color: #935938;
    font-size: 150%;
    text-align: center;
  }

  .cta {
    padding: 16px;
    background: #f9f9f9;
  }
  .cta_info {
    margin-bottom: 16px;
    line-height: 1.6;
    text-align: center;
  }
  .cta_tel {
    margin-bottom: 16px;
  }
  .cta_tel a {
    display: block;
    background: #44a039;
    border-radius: 8px;
    box-shadow: 0 2px 3px rgba(0,0,0,0.2);
    color: #fff;
    font-size: 120%;
    font-weight: bold;
    text-decoration: none;
    line-height: 48px;
    text-align: center;
  }
  .cta_box p {
    font-size: 80%;
    line-height: 1.4;
  }

  .text {
    padding: 0 8px;
  }
  .text.mgt {
    margin-top: 24px;
  }
  .text p {
    margin-bottom: 1em;
    color: #666;
    font-size: 100%;
    line-height: 1.7;
  }
  .text .pic {
    margin-bottom: 32px;
    text-align: center;
  }
  .text .pic img {
    width: 100%;
    max-width: 640px;
  }



  /* grid---------------- */
  .grid_box {
    padding: 0 8px;
  }
  .grid_box + .grid_box {
    margin-top: 32px;
  }
  .grid_box .g_img {
    text-align: center;
  }
  .g_img img {
    margin-bottom: 16px;
    max-width: 100%;
  }
  .c_img {
    text-align: center;
  }
  .c_img img {
    width: 60%;
  }
  .g_info {
    margin-top: 16px;
    margin-bottom: 32px;
  }
  .g_info h3 {
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #b5aa90;
    color: #935938;
    font-family: serif;
    font-size: 140%;
    font-weight: bold;
    line-height: 1.6;
  }
  .g_info p {
    color: #666;
    line-height: 1.8;
  }
  .logo_s {
    height: 24px;
  }

  .kodawari_t {
    margin-bottom: .6em;
    color: #64890c;
    font-size: 18px;
    font-weight: bold;
  }

  /* biginner */
  .faq {
    margin-top: 32px;
  }
  .faq h3 {
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #b5aa90;
    color: #935938;
    font-family: serif;
    font-size: 140%;
    font-weight: bold;
    line-height: 1.6;
  }
  .faqindex {
    margin-bottom: 32px;
    padding: 8px;
    border: 1px solid #ddd;
  }
  .faqindex ul {
    padding: 8px 0 8px 1em;
  }
  .faqindex li {
    list-style: disc;
    margin-bottom: 8px;
    line-height: 1.4;
  }
  .faqindex li:last-child {
    margin: 0;
  }

  .faq dt {
    margin-top: -1em;
    padding-top: 1em;
    color: #935938;
    font-weight: bold;
    line-height: 1.7;
  }
  .faq dd {
    margin-bottom: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 1em;
    border-bottom: 1px dotted #b5aa90;
    color: #444;
    font-weight: 200;
    line-height: 1.7;
  }


  /* メニュー（体質改善） */
  .menu_section {
    margin-bottom: 40px;
  }
  .menu_section:last-child {
    margin-bottom: 0;
  }

  ul.menu_link {
    padding: 1em 1em;
    border-top: 1px solid #eadcc7;
    border-bottom: 1px solid #eadcc7;
    font-size: 100%;
    text-align: center;
  }
  ul.menu_link li {
    margin-bottom: .5em;
  }
  ul.menu_link li:last-child {
    margin: 0;
  }
  ul.menu_link li a {
    display: block;
    border: 1px solid #eadcc7;
    border-radius: 8px;
    color: #7a6434;
    text-decoration: none;
    line-height: 40px;
  }

  .pin {
    margin-top: -40px;
    padding-top: 40px;
  }

  .menu_box {
    padding: 16px 8px;
    background: #f9f4ef url(../images/waku2.png) no-repeat right top;
  }
  .menu_box.mbbg2 {
    /*background: #f7f0ea;*/
    background-image: linear-gradient(-90deg, #efd1b6, #fff5f2);
    background-image: -moz-linear-gradient(-90deg, #efd1b6, #fff5f2);
    background-image: -webkit-gradient(linear, left top, right bottom, from(#efd1b6), to(#fff5f2));
  }
  .menu_box + .menu_box {
    margin-top: 32px;
  }
  .menu_box .m_b_fx {
  }
  .m_b_fx .m_b_info {
    margin-bottom: 16px;
    padding: 0 8px;
  }
  .m_b_fx .m_b_info h4 {
    margin-bottom: 8px;
    color: #3c7a09;
    font-size: 120%;
    font-weight: bold;
    line-height: 1.4;
  }
  .m_b_fx .m_b_info h4 span {
    font-size: 80%;
  }
  .m_b_fx .m_b_info h4.op {
    color: #7a4e25;
  }
  .m_b_fx .m_b_info p {
    font-size: 90%;
    line-height: 1.7;
  }
  .m_b_fx .m_b_price {
  }
  .m_b_fx .m_b_price table {
    width: 100%;
    line-height: 1.6;
  }
  .m_b_fx .m_b_price th {
    padding: .5em 0;
    background: #e5e0ce;
    border-right: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
    border-left: 1px dotted #ccc;
    font-size: 90%;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
  }
  .m_b_fx .m_b_price td {
    padding: .5em;
    background: #fffcf0;
    border: 1px dotted #ccc;
    text-align: center;
    vertical-align: middle;
  }
  .m_b_fx .m_b_price td .fm {
    font-size: 90%;
  }

  .menu_txt {
    margin-bottom: 32px;
    color: #666;
    line-height: 1.8;
  }
  .menu_txt_title {
    display: block;
    padding: .5em 1em;
    background: #935938;
    color: #fff;
    text-align: center;
  }
  .mgt16 {
    margin-top: 10px;
  }

  /* concept */
  .s_border_tb {
    padding-top: 1em;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .concept_box {
    margin-top: 32px;
    padding: 16px 16px 24px;
    background: #ffeac1;
    color: #3d1b04;
    font-size: 100%;
    line-height: 1.6;
    text-align: center;
  }
  .concept_box h3 {
    font-size: 120%;
  }
  .c_b_title {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    font-size: 16px;
  }
  .c_b_title:before,
  .c_b_title:after{
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: black;
  }
  .c_b_title:before {left:0;}
  .c_b_title:after {right: 0;}

  .concept_block {
    margin-top: 40px;
  }
  .concept_block img {
    width: 100%;
  }

  .concept_block_title {
    margin-bottom: 40px;
    text-align: center;
  }
  .concept_block_title img {
    width: 100%;
  }

  .point_box {
  }
  .point_box + .point_box {
    margin-top: 24px;
  }
  .point_box .p_b_head {
    width: 160px;
    margin: 0 auto 16px;
  }
  .point_box .p_b_body {
    padding: 0 16px 16px;
    border-bottom: 1px dotted #ccc;
    line-height: 1.8;
  }
  .p_b_head div {
    position: relative;
    width: 128px;
    height: 128px;
    margin: 0 auto;
    background: #997e41;
    border-radius: 64px;
    text-align: center;
    vertical-align: middle;
  }
  .p_b_head span {
    position: absolute;
    display: block;
    width: 128px;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    color: #fff;
    font-size: 24px;
    line-height: 1.4;
  }
  .p_b_body span {
    display: block;
    font-size: 90%;
    text-align: center;
  }
  .p_b_body p {
    font-size: 100%;
  }

  .concept_block_sup {
    margin: 32px 0;
    padding: 0 16px;
    font-size: 120%;
    line-height: 1.8;
  }



  .arr {
    margin-top: 40px;
  }
  .arr img {
    width: 100px;
  }

  .concept_img {
    margin-top: 24px;
    text-align: center;
  }
  .concept_img img {
    width: 100%;
  }
  .concept_aori {
    margin: 48px 0 32px;
    color: #935938;
    font-size: 100%;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
  }
  .concept_aori img {
    display: inline-block;
    height: 24px;
    margin: 0 8px;
    vertical-align: top;
  }
  .concept_aori2 {
    margin: 32px 0;
    color: #935938;
    line-height: 1.6;
    text-align: center;
  }

  .pic_block {
    letter-spacing: -0.4em;
    width: 100%;
    text-align: center;
  }
  .pic_block li {
    letter-spacing: normal;
    display: inline-block;
    width: calc(50% - 16px);
    max-width: 200px;
    margin: 0 8px 16px;
    text-align: left;
    vertical-align: top;
  }
  .pic_block li .pic_title {
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px dotted #997e41;
    text-align: center;
  }
  .pic_block li figure img {
    width: 100%;
    height: auto;
    margin-bottom: 8px;
  }
  .pic_block li figure figcaption {
    font-size: 12px;
    font-weight: 200;
    line-height: 1.4;
  }

  /* salon */
  .owner_block {
    margin: 48px 0 0;
  }
  .owner_block_dst {
  }
  .owner_img {
    margin: 0 0 1em;
    text-align: center;
  }
  .owner_img img {
    width: 100%;
    max-width: 400px;
  }

  .owner_txt {
  }
  .owner_t_catch {
    margin: 0 0 .5em;
    color: #442e20;
    font-family: serif;
    font-size: 140%;
    font-weight: normal;
    line-height: 1.4;
  }
  .owner_txt p {
    font-size: 90%;
    line-height: 1.8;
    letter-spacing: .1em;
  }


  .staff_block {
    margin: 96px 0 0;
  }
  .staff_list {}
  .staff_list ul {
  }
  .staff_list ul li {
    margin: 0 0 32px;
  }
  .staff_img {
    height: 200px;
    overflow: hidden;
    margin: 0 0 16px;
    padding: 0 16px;
    background: #f3f3f3;
    text-align: center;
  }
  .staff_img img {
    height: 100%;
    max-height: 200px;
  }
  .staff_name {
    margin: 0 0 8px;
  }
  .staff_list ul li p {
    font-size: 90%;
    line-height: 1.6;
  }


  .info_block {
    margin: 96px 0 0;
  }
  .info_block_dst {
  }
  .info_block_dst .salon_info {
  }
  .salon_info {
    margin: 0 0 32px;
  }
  .salon_info table {
    width: 100%;
    border-top: 1px dotted #ccc;
    font-weight: normal;
  }
  .salon_info th {
    width: 6em;
    padding: 1em 0;
    border-bottom: 1px dotted #ccc;
    font-weight: normal;
    line-height: 1.5;
    text-align: left;
    vertical-align: middle;
  }
  .salon_info td {
    padding: 1em 0;
    border-bottom: 1px dotted #ccc;
    line-height: 1.5;
    vertical-align: middle;
  }

  .info_block_dst .maparea {
  }
  .maparea iframe {
    width: 100%;
    height: 240px;
  }
  .salon_info .telnum {
    font-size: 18px;
  }
  .salon_info .att {
    font-size: 14px;
  }





  /* footer -------------- */
  .gototop {
    text-align: center;
  }
  .gototop a {
    display: inline-block;
    padding: 8px 16px;
    background: #cbd8da;
    border-radius: 4px 4px 0 0;
    color: #666;
    font-size: 12px;
    text-decoration: none;
    text-align: center;
  }
  .site_footer {
    background: #dee4e5;
  }
  .footer-inner {
    padding: 16px 0;
    text-align: center;
  }
  .ft {
    margin-bottom: 8px;
    color: #818a8c;
    font-size: 12px;
  }
  .cp {
    color: #818a8c;
    font-size: 12px;
  }


}/* end SP */





/* -------------------------------------------------------
for PC
---------------------------------------------------------- */
@media only screen and (min-width:960px){
  .spv {
    display: none;
  }
  html {
    height: 100%;
  }
  body {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    font-family: 'Roboto', 'Noto Sans Japanese', "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
    zoom:1;
  }

  .fs_sans {
    font-family: 'Roboto', 'Noto Sans Japanese', "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
  }
  .fs_min {
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  }


  /* header -------------- */
  .site_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 960px;
    background: rgba(255,255,255,0.9);
    border-bottom: 1px solid #d8d2bc;
    z-index: 100;
  }
  .header-inner {
    position: relative;
    width: 960px;
    height: 120px;
    margin: 0 auto;
  }
  .title {
    position: absolute;
    top: 32px;
    left: 0;
  }
  .title img {
    height: 40px;
  }
  .intro {
    margin: 0 0 8px;
    font-size: 12px;
  }
  .h_info {
    position: absolute;
    top: 8px;
    right: 0;
    font-size: 14px;
  }
  .h_telnum {
    font-size: 20px;
    font-weight: bold;
  }
  .h_telnum a {
    color: #44a039;
  }
  .gnav {
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .gnav ul {
    letter-spacing: -0.4em;
    border-left: 1px dotted #eee;
  }
  .gnav ul li {
    letter-spacing: normal;
    display: inline-block;
    border-right: 1px dotted #eee;
  }
  .gnav ul li a {
    display: block;
    padding: 32px 1em;
    /*background: rgba(255,255,255,0.8);*/
    color: #7a6434;
    font-size: 15px;
    font-weight: 400;
    text-decoration: none;
    transition: all .5s ease;
  }
  .gnav ul li a:hover {
    background: #f4f2e8;
  }


  /* contents -------------- */
  .top_contents_body {}
  .contents_body {
    flex: 1;
    /*margin-top: 120px;*/
    padding: 0 0 80px;
  }

  .inner_box {
    width: 960px;
    margin: 0 auto;
  }

  .btn_w,
  .btn_wr {
    display: inline-block;
  }
  .btn_w a {
    display: block;
    padding: 0 3em;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 14px;
    font-weight: 500;
    line-height: 48px;
    text-decoration: none;
    transition: all .5s ease;
  }
  .btn_wr a {
    display: block;
    padding: 0 3em;
    background: #fff;
    border: 1px solid #44a039;
    border-radius: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    color: #44a039;
    font-size: 14px;
    font-weight: 500;
    line-height: 40px;
    text-decoration: none;
    transition: all .5s ease;
  }

  .dsp_table {
    display: table;
    width: 100%;
    vertical-align: top;
  }
  .dsp_tc {
    display: table-cell;
    vertical-align: top;
  }





  /* TOP */
  /*
  .mainv_block {
    position: relative:
    width: 100%;
    min-width: 960px;
    height: 720px;
    background: url(../images/main_v_bg.jpg) no-repeat center;
    background-size: cover;
  }
  .mainv_block .mainv_comment {
    position: absolute;
    top: 100px;
    right: 0;
    bottom: 0;
    left: 0;
    height: 200px;
    margin: auto;
    color: #fff;
    font-size: 40px;
    font-weight: 300;
    text-align: center;
    text-shadow: 0 0 10px #333;
  }
  */
  .top_mainv {
    box-sizing: border-box;
    width: 100%;
    height: 100vh;
    background-position:center center;
    background-size: cover;
    /*display: flex; 画面中央にする
    align-items: center;
    justify-content: center; */
    position: relative;
  }
  .top_mainv_t {
    position: absolute;
    top: 30%;
    right: 10%;
    /*color: #fff;*/
    color: #333;
    font-size: 30px;
    line-height: 1.5;
    font-weight: bold;
    /*text-shadow: 1px 1px 1px #000;*/
  }



  .topconcept_block {
    width: 100%;
    min-width: 960px;
    padding: 100px 0;
    /*background: #fff;*/
    background: url(../images/topmenu_bg_r.jpg) repeat center top;
    background-attachment: fixed;
  }
  .topconcept_block h2 {
    margin: 0 0 40px;
    text-align: center;
  }
  .topconcept_block .top_c_img {
    float: right;
    width: 400px;
  }
  .top_c_img img {
    width: 100%;
  }
  .topconcept_block .top_c_comment {
    float: left;
    width: 560px;
    color: #442e20;
  }


  .top_c_comment .top_cc_t {
    margin: 0 0 .5em;
    padding: 0 32px 0 0;
    font-size: 26px;
    font-weight: 400;
    line-height: 1.4;
  }
  .top_c_comment p {
    margin: 0 0 32px;
    padding: 0 40px 0 0;
    font-size: 15px;
    font-weight: 200;
    line-height: 1.8;
    letter-spacing: .1em;
  }
  .top_btn > .btn_w a:hover {
    position: relative;
    top: 1px;
    box-shadow: none;
    color: #e50012;
  }

  .topmenu_block {
    width: 100%;
    min-width: 960px;
    padding: 100px 0;
    background: url(../images/top_bg2.jpg) repeat center top;
    /*background-size: cover;*/
  }
  .tm_t {
    margin: 0 0 48px;
    text-align: center;
  }
  .tm_t h2 {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    font-size: 20px;
    font-weight: 200;
  }
  .tm_t h2:before,
  .tm_t h2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #333;
  }
  .tm_t h2:before {
    left: 0;
  }
  .tm_t h2:after {
    right: 0;
  }

  .tm_b .dsp_tc {
    width: 300px;
  }
  .pc_pd30 {
    padding: 0 30px;
  }
  .tm_b h3 {
    height: 70px;
    background: url(../images/tm_line.png) no-repeat center bottom;
    font-size: 20px;
    text-align: center;
  }
  .tm_b h3 a {
    color: #333;
    text-decoration: none;
    transition: all .5s ease;
  }
  .tm_b h3 a:hover {
    color: #e50012;
    border-bottom: 1px solid #e50012;
  }

  .tm_img {
    width: 300px;
    height: 200px;
    overflow: hidden;
    margin: 0 0 16px;
    text-align: center;
  }
  .tm_img img {
    width: 300px;
  }
  .tm_b p {
    margin: 0 0 1em;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.7;
  }
  .tm_b .btn_wr a:hover {
    position: relative;
    top: 1px;
    box-shadow: none;
    border: 1px solid #e50012;
    color: #e50012;
  }

  .top_info {
    padding: 100px 0;
  }
  .top_info .ti_txt {
    position: relative;
    width: 560px;
  }
  .top_info .fb_box {
    width: 400px;
    text-align: right;
  }

  .ti_txt .logo {
    margin: 0 0 8px;
  }
  .ti_txt .logo img {
    height: 40px;
  }
  .ti_txt .logo span {
    display: block;
    margin-left: 54px;
    font-size: 10px;
  }
  .top_shop_comment {
    margin: 0 0 24px;
    padding: 0 40px 0 12px;
    font-size: 12px;
    line-height: 1.5;
  }
  .top_salonlink {
    font-size: 14px;
  }

  .ti_spec {
    padding: 0 40px 0 16px;
  }
  .ti_spec p {
    margin: 0 0 1em;
    line-height: 1.2;
  }

  .line_qr {
    position: absolute;
    right: 32px;
    bottom: 0;
    width: 120px;
    height: 120px;
    font-size: 10px;
    text-align: center;
  }
  .line_qr img {
    margin-bottom: 4px;
    width: 120px;
  }


  .ti_att {
    display: inline-block;
    margin-left: 92px;
    font-size: 12px;
  }
  .top_telnum {
    color: #44a039;
    font-size: 20px;
    font-weight: bold;
  }
  .top_maparea {
    margin: 0 0 16px;
  }
  .top_maparea iframe {
    width: 500px;
    height: 200px;
  }
  .ibg {
    display: inline-block;
    box-sizing: border-box;
    width: 6em;
    margin-right: 8px;
    padding: 4px 0;
    background: #f4f0e7;
    font-size: 14px;
    font-weight: 200;
    text-align: center;
  }




  /* SUB */
  .contents_title {
    position: relative;
    width: 100%;
    min-width: 960px;
    /*height: 240px;*/
    height: 360px;
    text-align: center;
  }
  .contents_title.bg_a {
    background: url(../images/sub_bg.jpg) no-repeat center top;
    /*background-size: cover;*/
    background-attachment: fixed;
  }
  .contents_title.bg_b {
    background: url(../images/sub_bg_b.jpg) no-repeat center top;
    /*background-size: cover;*/
    background-attachment: fixed;
  }

  .contents_title .title_block {
    /*padding: 72px 0 0;*/
    position: absolute;
    right: 0;
    bottom: 64px;
    left: 0;
    text-align: center;
  }
  .title_block h2 {
    padding: 1em 0;
    color: #fff;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  }
  .title_block h2.t1 {
    font-size: 30px;
    font-weight: bold;
    text-shadow: 0 2px 2px rgba(0,0,0,0.2);
  }
  .title_block h2.t2 {
    font-size: 30px;
    font-weight: bold;
    text-shadow: 0 2px 2px rgba(0,0,0,0.5);
  }

  /*
  .section_t {
    text-align: center;
  }
  .section_t h2 {
    display: inline-block;
    margin: 0 0 48px;
    padding: 0 0 8px;
    border-bottom: 1px solid #E50012;
    color: #555;
    font-size: 150%;
    font-weight: normal;
  }
  */


  .preamble {
    margin: 64px 0 80px;
    text-align: center;
  }
  .preamble h3 {
    color: #935938;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 32px;
    font-weight: normal;
    line-height: 1.6;
  }
  .preamble p {
    margin-top: 1em;
    color: #666;
    font-size: 14px;
    font-weight: 200;
    line-height: 1.6;
  }


  .section_intro {
    margin: 40px 0 40px;
    text-align: left;
  }
  .section_intro p {
    line-height: 1.8;
    letter-spacing: 1px;
  }


  .section_t {
    margin: 0 0 56px;
    text-align: center;
  }
  .section_t h2 {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    font-size: 24px;
    font-weight: 200;
  }
  .section_t h2:before,
  .section_t h2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #333;
  }
  .section_t h2:before {
    left: 0;
  }
  .section_t h2:after {
    right: 0;
  }

  .hd3 {
    margin-bottom: 32px;
    padding-bottom: 40px;
    background: url(../images/tm_line.png) no-repeat center bottom;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
    color: #935938;
    font-size: 24px;
    text-align: center;
  }



  .cta {
    width: 100%;
    margin: 40px auto 0;
    /*background: #f9f9f9;*/
    background: url(../images/bg1.jpg) no-repeat center center;
    display: table;
  }
  .cta_info {
    display: table-cell;
    position: relative;
    box-sizing: border-box;
    width: 50%;
    padding: 16px;
    text-align: right;
    vertical-align: middle;
  }
  .cta_info .box_r {
    position: absolute;
    top: 0;
    right: 0;
    height: auto;
    text-align: left;
  }
  .cta_info p {
    margin-top: 1em;
    font-size: 14px;
    line-height: 1.7;
  }
  .cta_box {
    display: table-cell;
    box-sizing: border-box;
    width: 50%;
    padding: 16px;
    vertical-align: middle;
  }
  .cta_tel {
    font-size: 32px;
  }
  .cta_box p {
    margin-top: 8px;
    font-size: 12px;
  }
  .text.mgt {
    margin-top: 32px;
  }
  .text p {
    margin-bottom: 1.5em;
    color: #666;
    font-size: 100%;
    font-weight: 200;
    line-height: 2.0;
  }
  .text .pic {
    float: left;
    margin-right: 40px;
    margin-bottom: 32px;
  }
  .text .pic img {
    width: 430px;
  }


  /* biginner */
  .grid {
    width: 960px;
    margin: 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }
  .grid_box {
    box-sizing: border-box;
    width: 50%;
    padding: 0 40px;
  }
  .grid_box:nth-child(even){
    /*padding-top: 100px;*/
    padding-top: 16px;
  }

  .grid_box .g_img {
    position: relative;
    width: 430px;
    margin: 0 auto;
    overflow: hidden;
    text-align: center;
  }
  .g_img img {
    max-width: 100%;
  }
  .g_info {
    margin-top: 16px;
  }
  .g_info h3 {
    margin-bottom: 32px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #b5aa90;
    color: #935938;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
  }
  .g_info p {
    margin-bottom: 1em;
    color: #666;
    font-weight: 200;
    line-height: 1.9;
  }

  .logo_s {
    height: 32px;
  }

  .kodawari_t {
    margin-bottom: .6em;
    color: #64890c;
    font-size: 18px;
    font-weight: bold;
  }

  .faq {
    margin-top: 40px;
  }
  .faq h3 {
    margin-bottom: 32px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #b5aa90;
    color: #935938;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
  }
  .faq h3 span {
    display: inline-block;
    margin-left: 16px;
    font-weight: normal;
  }
  .faq dt {
    margin-bottom: 8px;
    color: #935938;
    font-size: 110%;
    font-weight: bold;
    line-height: 1.8;
  }
  .faq dd {
    margin-bottom: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 1em;
    border-bottom: 1px dotted #b5aa90;
    color: #444;
    font-weight: 200;
    line-height: 1.9;
  }

  /* メニュー（体質改善） */
  .menu_section {
    margin-bottom: 80px;
  }
  .menu_info {
    margin-bottom: 32px;
    text-align: center;
  }


  ul.menu_link {
    letter-spacing: -0.4em;
    margin-top: 40px;
    padding: 1.5em 0;
    border-top: 1px solid #eadcc7;
    border-bottom: 1px solid #eadcc7;
    font-size: 16px;
    text-align: center;
  }
  ul.menu_link li {
    letter-spacing: normal;
    display: inline-block;
    margin: 0 1em 0 0;
  }
  ul.menu_link li:after {
    content: "｜";
    margin-left: 1em;
    color: #eadcc7;
    font-weight: 200;
  }
  ul.menu_link li:last-child:after {
    content: "";
    margin: 0;
  }
  ul.menu_link li a {
    color: #7a6434;
  }

  .pin {
    margin-top: -152px;
    padding-top: 152px;
  }


  .menu_box {
    padding: 16px;
    background: #fcf8f4 url(../images/waku3.png) no-repeat right bottom;
  }
  .menu_box.mbbg2 {
    /*background: #f7f0ea;*/
    background-image: linear-gradient(-90deg, #efd1b6, #fff5f2);
    background-image: -moz-linear-gradient(-90deg, #efd1b6, #fff5f2);
    background-image: -webkit-gradient(linear, left top, right bottom, from(#efd1b6), to(#fff5f2));
  }
  .menu_box + .menu_box {
    margin-top: 32px;
  }
  .menu_box .m_b_fx {
    display: flex;
    width: 100%;
  }
  .m_b_fx .m_b_info {
    flex: 1;
    padding: 8px 32px 16px 8px;
  }
  .m_b_fx .m_b_info h4 {
    margin-bottom: 8px;
    color: #3c7a09;
    font-size: 18px;
    font-weight: bold;
  }
  .m_b_fx .m_b_info h4 span {
    font-size: 14px;
  }
  .m_b_fx .m_b_info h4.op {
    color: #7a4e25;
  }
  .m_b_fx .m_b_info p {
    font-size: 14px;
    line-height: 1.8;
  }
  .m_b_fx .m_b_price {
    width: 400px;
  }
  .m_b_fx .m_b_price table {
    width: 100%;
    line-height: 1.6;
  }
  .m_b_fx .m_b_price th {
    padding: .5em 0;
    background: #e5e0ce;
    border-right: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
    border-left: 1px dotted #ccc;
    font-size: 14px;
    text-align: center;
    vertical-align: middle;
  }
  .m_b_fx .m_b_price td {
    padding: .5em;
    background: #fffcf0;
    border: 1px dotted #ccc;
    text-align: center;
    vertical-align: middle;
  }
  .m_b_fx .m_b_price td .fm {
    font-size: 14px;
  }

  .kakaku_att {
    margin-top: 16px;
    color: #666;
    font-size: 12px;
    text-align: right;
  }

  .menu_txt {
    margin-bottom: 32px;
    color: #666;
    font-weight: 200;
    line-height: 1.9;
  }
  .menu_txt_title {
    display: inline-bock;
    padding: .5em 1em;
    background: #935938;
    color: #fff;
  }
  .mgt16 {
    margin-top: 10px;
  }

  /* concept */
  .concept_box {
    margin-top: 40px;
    padding: 16px 16px 24px;
    background: #ffeac1;
    color: #3d1b04;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.8;
    text-align: center;
  }
  .concept_box h3 {
    font-size: 30px;
    font-weight: bold;
  }
  .c_b_intro {
    font-size: 20px;
  }
  .c_b_title {
    position: relative;
    display: inline-block;
    padding: 0 55px;
    font-size: 16px;
  }
  .c_b_title:before,
  .c_b_title:after{
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: black;
  }
  .c_b_title:before {left:0;}
  .c_b_title:after {right: 0;}
  .c_b_sup {}



  .concept_block {
    margin-top: 80px;
  }
  .concept_block_title {
    margin-bottom: 40px;
    text-align: center;
  }
  .concept_block_title p {
    margin-bottom: 8px;
    color: #847132;
    font-size: 24px;
    text-align: center;
  }
  .concept_block_title h3 {
    color: #997e41;
    font-size: 40px;
    line-height: 54px;
  }
  .concept_block_title img {
    display: inline-block;
    height: 54px;
    margin-right: 16px;
    vertical-align: top;
  }

  .point_box {
    display: flex;
    width: 100%;
    text-align: left;
    align-items: center;
  }
  .point_box + .point_box {
    margin-top: 24px;
  }
  .point_box .p_b_head {
    width: 160px;
  }
  .point_box .p_b_body {
    flex: 1;
    line-height: 2.0;
  }
  .p_b_head div {
    position: relative;
    width: 128px;
    height: 128px;
    background: #997e41;
    border-radius: 64px;
    text-align: center;
    vertical-align: middle;
  }
  .p_b_head span {
    position: absolute;
    display: block;
    width: 128px;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    color: #fff;
    font-size: 24px;
    line-height: 1.4;
  }
  .p_b_body span {
    display: block;
    font-size: 14px;
  }
  .p_b_body p {
    font-size: 18px;
  }

  .concept_block_sup {
    margin-top: 40px;
    font-size: 18px;
    line-height: 1.8;
  }


  .arr {
    margin-top: 40px;
  }
  .arr img {
    width: 120px;
  }

  .concept_img {
    margin-top: 40px;
    text-align: center;
  }
  .concept_aori {
    margin: 56px 0;
    color: #935938;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 32px;
    line-height: 1.6;
    text-align: center;
  }
  .concept_aori img {
    display: inline-block;
    height: 42px;
    margin: 0 8px;
    vertical-align: top;
  }
  .concept_aori2 {
    margin: 56px 0;
    color: #935938;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 28px;
    line-height: 1.6;
    text-align: center;
  }

  .pic_block {
    letter-spacing: -0.4em;
    width: 100%;
  }
  .pic_block li {
    letter-spacing: normal;
    display: inline-block;
    width: 176px;
    margin: 0 8px;
    vertical-align: top;
  }
  .pic_block li .pic_title {
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px dotted #997e41;
    text-align: center;
  }
  .pic_block li figure img {
    width: 100%;
    height: auto;
    margin-bottom: 8px;
  }
  .pic_block li figure figcaption {
    font-size: 12px;
    font-weight: 200;
    line-height: 1.4;
  }

  /* salon */
  .owner_block {
    margin: 96px 0 0;
  }
  .owner_block_dst {
    display: table;
    width: 100%;
  }
  .owner_img {
    display: table-cell;
    width: 50%;
    overflow: hidden;
    text-align: left;
    vertical-align: top;
  }
  .owner_img img {
    max-width: 400px;
  }

  .owner_txt {
    display: table-cell;
    width: 50%;
    box-sizing: border-box;
    padding: 0 0 0 1em;
    vertical-align: top;
  }
  .owner_t_catch {
    margin: 0 0 1em;
    font-size: 24px;
    font-weight: normal;
    line-height: 1.3;
  }
  .owner_txt p {
    font-size: 100%;
    font-weight: 200;
    line-height: 1.8;
    letter-spacing: .1em;
  }


  .staff_block {
    margin: 96px 0 0;
  }
  .staff_list {}
  .staff_list ul {
    letter-spacing: -0.4em;
  }
  .staff_list ul li {
    letter-spacing: normal;
    display: inline-block;
    width: 300px;
    margin: 0 16px 16px 0;
  }
  .staff_img {
    width: 300px;
    height: 200px;
    overflow: hidden;
    margin: 0 0 16px;
    background: #f3f3f3;
  }
  .staff_name {
    margin: 0 0 8px;
  }
  .staff_list ul li p {
    font-size: 14px;
    font-weight: 200;
    line-height: 1.6;
  }


  .info_block {
    margin: 96px 0 0;
  }
  .info_block_dst {
    display: table;
    width: 100%;
  }
  .info_block_dst .salon_info {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }
  .salon_info table {
    width: 95%;
    border-top: 1px dotted #ccc;
    font-weight: normal;
  }
  .salon_info th {
    width: 6em;
    padding: 1em 0;
    border-bottom: 1px dotted #ccc;
    font-weight: normal;
    line-height: 1.5;
    text-align: left;
    vertical-align: middle;
  }
  .salon_info td {
    padding: 1em 0;
    border-bottom: 1px dotted #ccc;
    line-height: 1.5;
    vertical-align: middle;
  }

  .info_block_dst .maparea {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }
  .maparea iframe {
    width: 100%;
    height: 364px;
  }
  .salon_info .telnum {
    font-size: 18px;
  }
  .salon_info .att {
    font-size: 14px;
  }


  /* pagetop */
  .pagetop {
    position: fixed;
    right: 32px;
    bottom: 32px;
  }
  .pagetop a {
    display: block;
    width: 48px;
    height: 48px;
    background: #44a039;
    border-radius: 24px;
    color: #fff;
    text-decoration: none;
    line-height: 48px;
    text-align: center;
  }


  /* footer -------------- */
  .site_footer {
    width: 100%;
    min-width: 960px;
    /*background: #e50012;*/
    background: #dee4e5;
  }
  .footer-inner {
    width: 960px;
    margin: 0 auto;
    padding: 32px 0;
    text-align: center;
  }
  .ft {
    margin-bottom: 8px;
    color: #818a8c;
    font-size: 12px;
  }
  .cp {
    /*color: #fff;*/
    color: #818a8c;
    font-size: 12px;
  }


  /* スクロールエフェクト */
  /* 画面外にいる状態 */
  .fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 1000ms;
  }
  /* 画面内に入った状態 */
  .fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
  }
  /* 2つ目の要素に200msのdelayをかける */
  .effect > div .fadein:nth-of-type(2) {
    -moz-transition-delay: 200ms;
    -webkit-transition-delay: 200ms;
    -o-transition-delay: 200ms;
    -ms-transition-delay: 200ms;
  }
  /* 3つ目の要素に400msのdelayをかける */
  .effect > div .fadein:nth-of-type(3) {
  -moz-transition-delay:400ms;
  -webkit-transition-delay:400ms;
  -o-transition-delay:400ms;
  -ms-transition-delay:400ms;
  }


  .p_mgt_32 {margin-top: 32px;}
  .p_mgt_40 {margin-top: 40px;}
  .p_mgt_48 {margin-top: 40px;}
  .p_mgt_56 {margin-top: 40px;}

}/* end PC */



/* -------------------------------------------------------
Common
---------------------------------------------------------- */
.fs80 {font-size:80%;}
.fs90 {font-size:90%;}
.fs100 {font-size:100%;}
.fs120 {font-size:120%;}
.fs150 {font-size:150%;}
.fs10px {font-size:10px;}
.fs11px {font-size:11px;}
.fs12px {font-size:12px;}
.fs13px {font-size:13px;}
.fs14px {font-size:14px;}
.fs15px {font-size:15px;}
.fs16px {font-size:16px;}
.fs17px {font-size:17px;}
.fs18px {font-size:18px;}

.lh15 {line-height:1.5;}
.lh16 {line-height:1.6;}
.lh17 {line-height:1.7;}
.lh18 {line-height:1.8;}
.lh20 {line-height:2.0;}

.mgb5 {margin-bottom:5px;}
.mgb10 {margin-bottom:10px;}
.mgb15 {margin-bottom:15px;}
.mgb20 {margin-bottom:20px;}
.mgb30 {margin-bottom:30px;}
.mgb40 {margin-bottom:40px;}
.mgb50 {margin-bottom:50px;}
.mgb80 {margin-bottom:80px;}
.mgb100 {margin-bottom:100px;}
.mgb05em {margin-bottom:0.5em;}
.mgb1em {margin-bottom:1em;}
.mgb15em {margin-bottom:1.5em;}
.mgb2em {margin-bottom:2em;}

.pdlr10 {padding:0 10px;}
.pdlr20 {padding:0 20px;}
.pdlr30 {padding:0 30px;}
.pdlr1em {padding:0 1em;}
.pdlr2em {padding:0 2em;}

.tac {text-align:center;}
.tal {text-align:left;}
.tar {text-align:right;}

.fwb {font-weight:bold;}

.red {color: #e50012;}



