@charset "UTF-8";
/* CSS Document */
/* Scss Document */
/* Scss Document */
/*
@mixin sp_size{
  @media screen and (max-width: $mobile) {
    @content;
  }
}

@mixin tab_size{
  @media screen and (max-width: $tablet) {
    @content;
  }
}

@mixin pc_size{
  @media screen and (max-width: $desktop) {
    @content;
  }
}
*/
#titleimg {
  background: url("/img/clinical_care/image_title_sp.png") no-repeat center/cover; }

#menu > div {
  margin-bottom: 60px; }

#contents h2 {
  color: #BEB255;
  font-size: 1.5rem; }
  #contents h2 span {
    font-family: 'Cormorant Garamond', serif;
    font-size: 3.3rem; }
#contents h3 {
  margin-bottom: 5px;
  font-size: 2.5rem; }
  #contents h3:before {
    content: '';
    display: inline-block;
    vertical-align: baseline;
    width: 14px;
    height: 14px;
    margin-right: 6px;
    background: #fff;
    border-radius: 50%; }

.list_wrap {
  margin-bottom: 60px; }
  .list_wrap:last-child {
    margin-bottom: 0; }
  .list_wrap > *:last-child {
    margin-bottom: 0; }
  .list_wrap .menu_info {
    display: inline-block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px; }
    .list_wrap .menu_info > * {
      flex: 0 1 100%;
      width: 100%;
      max-width: 100%; }
    .list_wrap .menu_info .name {
      font-size: 1.7em; }
      .list_wrap .menu_info .name span {
        display: inline-block;
        vertical-align: baseline;
        padding-right: 4px;
        width: 40px;
        line-height: 1; }
    .list_wrap .menu_info .price {
      margin-bottom: 10px;
      text-align: right;
      font-size: 1.6rem; }
      .list_wrap .menu_info .price span {
        margin-left: 6px;
        font-size: 2.3rem; }
    .list_wrap .menu_info .img_wrap {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      -ms-flex-align: stretch;
      align-items: stretch;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .list_wrap .menu_info .img_wrap div {
        flex: 0 1 100%;
        width: 100%;
        max-width: 100%;
        margin-bottom: 20px; }
    .list_wrap .menu_info .txt {
      font-size: 1.6rem; }

.shaving .list_wrap .menu_info .name, .bridal_course .list_wrap .menu_info .name {
  font-size: 1.7em; }
  .shaving .list_wrap .menu_info .name span, .bridal_course .list_wrap .menu_info .name span {
    width: 28px; }

.program_list {
  margin: 0 -5px 40px; }
  .program_list li {
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    display: inline-block;
    vertical-align: middle;
    height: 40px;
    margin: 3px 5px;
    padding: 4px 12px;
    line-height: 32px;
    color: #604c3f;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    border-radius: 4px;
    background: #c9bc9c; }
    .program_list li.high {
      line-height: 16px; }
    .program_list li span {
      display: block; }
    .program_list li:after {
      content: '';
      display: inline-block;
      vertical-align: middle;
      position: absolute;
      z-index: 2;
      top: 50%;
      left: calc(100% + 6px);
      transform: translateY(-50%);
      width: 0;
      height: 0;
      border-width: 6px;
      border-color: transparent;
      border-style: solid;
      border-left-color: #604c3f; }
    .program_list li:last-child:after {
      content: none; }

.option_menu .flex_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 40px; }
  .option_menu .flex_box .box {
    box-sizing: border-box;
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%;
    margin: 10px 0;
    padding: 20px 10px;
    border: 3px double #FFF;
    text-align: center; }
    .option_menu .flex_box .box p + p {
      line-height: 1;
      margin-top: 10px; }
    .option_menu .flex_box .box .sub_name {
      font-size: 2.5rem; }
    .option_menu .flex_box .box .price {
      font-size: 2rem; }
      .option_menu .flex_box .box .price span {
        margin-left: 15px; }
    .option_menu .flex_box .box .txt {
      line-height: 1.5;
      text-align: left; }
.option_menu .name {
  font-size: 1.2em;
  padding-bottom: 10px; }

.skin_care .description {
  margin: -20px auto 40px; }
  .skin_care .description .description_list li {
    margin-bottom: 40px; }
    .skin_care .description .description_list li h3 {
      margin-top: 10px; }
    .skin_care .description .description_list li p + h3 {
      margin-top: 20px; }

.scalp_care .txt {
  margin-bottom: 10px; }
.scalp_care .program_list {
  margin-bottom: 10px; }
.scalp_care .info_txt {
  margin-bottom: 20px; }
  .scalp_care .info_txt .info_list {
    display: flex;
    margin-top: 40px; }
    .scalp_care .info_txt .info_list li {
      margin-bottom: 40px; }
      .scalp_care .info_txt .info_list li p {
        padding-left: 1.4rem;
        text-indent: -1.6rem;
        margin-top: 10px; }
        .scalp_care .info_txt .info_list li p + p {
          margin-top: 5px; }

.head_spa .txt {
  margin-bottom: 20px; }
.head_spa .info_txt {
  font-size: 1.5rem; }
.head_spa .feature {
  border: 1px solid;
  padding: 20px; }
.head_spa .program_list ul {
  margin-bottom: 20px; }
.head_spa .program_list .info_txt p {
  padding-left: 1.4rem;
  text-indent: -1.6rem;
  font-size: 1.5rem; }
  .head_spa .program_list .info_txt p + p {
    margin-top: 5px; }

#message .owter_wrapper {
  margin-top: 0;
  padding: 50px 0; }
#message h2 {
  margin-bottom: 20px;
  font-size: 2.2rem;
  text-align: center;
  color: #fff;
  border: none; }
  #message h2 span {
    display: inline-block;
    vertical-align: baseline;
    font-size: 1.2em; }
#message p {
  text-align: center;
  font-size: 1.6rem; }
#message .body {
  border: 1px solid #FFF;
  margin: 20px 0;
  padding: 10px 30px;
  font-size: 1.4rem;
  text-align: center; }
  #message .body span {
    display: inline-block;
    vertical-align: baseline; }
  #message .body b {
    display: inline-block;
    vertical-align: super;
    font-size: 1.0rem;
    -webkit-transform: scale(0.8);
    -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -o-transform: scale(0.8);
    transform: scale(0.8); }
#message .info {
  font-size: 1.1rem; }
  #message .info li {
    padding-left: 2.0rem;
    text-indent: -2.0rem;
    font-size: 1.2rem; }
    #message .info li + li {
      margin-top: 15px; }

/*------------------------------
		1200px以上
------------------------------*/
@media screen and (min-width: 768px) {
  #titleimg {
    background-image: url("/img/clinical_care/image_title_pc.png"); }

  .flex_box {
    display: flex;
    justify-content: space-between; }
    .flex_box div {
      width: 45%; }

  #menu > div {
    margin-bottom: 120px; }

  #contents h2 {
    text-align: left;
    line-height: 1; }
    #contents h2 span {
      margin-right: 12px;
      font-size: 4.3rem; }

  .list_wrap .menu_info .name {
    flex: 0 1 60%;
    width: 60%;
    max-width: 60%;
    font-size: 2.7rem; }
  .list_wrap .menu_info .price {
    flex: 0 1 40%;
    width: 40%;
    max-width: 40%;
    margin-bottom: 32px; }
    .list_wrap .menu_info .price span {
      font-size: 2.4rem; }
  .list_wrap .menu_info .img_wrap {
    margin-bottom: 38px; }
    .list_wrap .menu_info .img_wrap div {
      flex: 0 1 calc((100% - 50px) / 2);
      width: calc((100% - 50px) / 2);
      max-width: calc((100% - 50px) / 2);
      margin-bottom: 0; }
  .list_wrap .menu_info .txt {
    font-size: 1.7rem; }

  .shaving .list_wrap .menu_info .name, .bridal_course .list_wrap .menu_info .name {
    font-size: 1.6em; }
    .shaving .list_wrap .menu_info .name span, .bridal_course .list_wrap .menu_info .name span {
      width: 40px; }

  .program_list {
    margin: 0 -5px 60px; }
    .program_list li {
      font-size: 1.4rem; }

  .option_menu .flex_box .box {
    flex: 0 1 calc((100% - 40px) / 3);
    width: calc((100% - 40px) / 3);
    max-width: calc((100% - 40px) / 3);
    margin: 0;
    padding: 20px; }
  .option_menu .name {
    font-size: 1.2em;
    padding-bottom: 10px; }

  .scalp_care .info_txt .info_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .scalp_care .info_txt .info_list li {
      flex: 0 1 calc((100% - 60px) / 3);
      width: calc((100% - 60px) / 3);
      max-width: calc((100% - 60px) / 3); }
      .scalp_care .info_txt .info_list li p {
        margin-top: 20px; }

  .head_spa .info_txt {
    font-size: 1.5rem; }

  #message .owter_wrapper {
    margin-top: 0;
    padding: 50px 0; }
  #message h2 {
    margin-bottom: 35px;
    font-size: 2.8rem;
    text-align: center;
    line-height: 70px; }
  #message .info {
    font-size: 1.1rem; }
    #message .info li {
      padding-left: 2.0rem;
      text-indent: -2.0rem; }
      #message .info li + li {
        margin-top: 15px; }
  #message p {
    font-size: 1.8rem; }

  .skin_care .description .description_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .skin_care .description .description_list li {
      flex: 0 1 calc((100% - 45px) / 4);
      width: calc((100% - 45px) / 4);
      max-width: calc((100% - 45px) / 4);
      margin-bottom: 0; }
      .skin_care .description .description_list li h3 {
        margin-top: 20px; }
      .skin_care .description .description_list li p + h3 {
        margin-top: 20px; } }
/*------------------------------
		1024px以下
------------------------------*/
/*------------------------------
		768px以下
------------------------------*/
