@CHARSET "UTF-8";


body {
	-webkit-text-size-adjust: 100%;
	color:#604d3f;
	font-family: irohamaru-mikami, sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size:12px;
}
/* PC */
@media only screen and (min-width:769px) {
	body {
		font-size:18px;
	}
}
section {color:#604d3f;}

h2 {
	display: inline-block;
}

/* 施術ページで使うCSS ***************************** */
.treatment_h2 {
	text-align:center;
	display:block;
	width:80%;
	margin:auto;
	font-size:1.2em;
	line-height:2.5em;
	border-top: 2px solid #604d3f;
	border-bottom: 2px solid #604d3f;
	color:#604d3f;
}
.treatment_h3 {
	text-align:center;
	display:block;
	width:80%;
	margin:auto;
	font-size:1.1em;
	line-height:2.0em;
	background-color:#ea9aa2;
	border-radius: 10px;
	color:#fff;
}
/* PC */
@media only screen and (min-width:769px) {
	.treatment_h2 {
		width:100%;
		font-size:1.8em;
	}
	.treatment_h3 {
		width:90%;
		font-size:1.8em;
	}
}

/* ピンクの下線 */
.round-cap-bottom:after, .round-cap-bottom2:after {
    background-color: #ffeaec; /* 線色 */
    border-radius: 10px; /* 線幅の半分 */
    content: "";
    display: block;
    height: 20px; /* 線幅 */
}

.round-cap-bottom span {
	font-size:1.2em;
	padding:0 2.0em;
}
/* PC */
@media only screen and (min-width:769px) {
.round-cap-bottom span {
	font-size:1.5em;
	padding:0 6.0em;
}
}

/* こんな方におすすめ */
.treatment_list {
	display : flex;
	justify-content:start;
	flex-direction:row;
	flex-wrap:wrap;
	width:80%;
	margin:auto;
	margin-top:1.5em;
}
.treatment_list li {
	margin-bottom:1.5em;
}
.ticon {
	width:20%;
	display: flex;align-items: center;justify-content:center;
}
.ticon img {
	width:60%;
}
.ttxt{
	width:80%;
	font-size:1.2em;
	display: flex;align-items: center;justify-content:flex-start;
}

/* PC */
@media only screen and (min-width:769px) {
	.treatment_list {
		width:100%;
	}
	.ticon {
		width:10%;
	}
	.ttxt{
		width:40%;
	}
}

/* お客様の声吹き出し */
.balloon2-left {
  position: relative;
  display: inline-block;
  width: 100%;
  color: #555;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #ffecee;
  border-radius: 10px;
  box-sizing: border-box;
  padding:2.0em 1.5em;
}

.balloon2-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}

.balloon2-left:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #ffecee;
  z-index: 1;
}

.balloon2-left p {
  margin: 0;
  padding: 0;
}

.voce_tbl {width:80%;margin:auto;margin-top:3.0em;font-size:1.0em;border-collapse: separate;border-spacing: 0px 1.0em;}
.voce_tbl th {text-align:center;vertical-align:middle;width:10%;padding:0.5em;}
.voce_tbl th img {width:100%;}
.voce_tbl td  {text-align:left;vertical-align:middle;color:#604d3f;padding-left:2.0em;border:none;}
.voce_tbl td p {text-align:right;font-size:0.9em;}
@media only screen and (max-width: 768px) {
	.voce_tbl {width:100%;}
	.voce_tbl th {width:15%;}
}
/* 施術ページで使うCSS ***************************** */


.demo03 {width:100%;margin-top:3.0em;font-size:1.0em;}
.demo03 th {text-align:center;vertical-align:middle;background: #ea9aa2;color:#fff;border: 3px solid #fff;padding:0.5em;width:35%;}
.demo03 td  {padding:0.5em;padding-right:4.0em;text-align: right;vertical-align:middle;background: #fff8f9;border: 3px solid #fff;width:65%;}
/* SP */
@media only screen and (max-width: 768px) {
	.demo03 {font-size:1.0em;}
	.demo03 th {width:40%;font-size:1.0em;}
	.demo03 td {width:60%;font-size:1.0em;}
}

.demo04 {width:100%;margin-top:3.0em;font-size:1.2em;}
.demo04 th {text-align:center;vertical-align:middle;background:#ea9aa2;color:#fff;border: 3px solid #fff;padding:0.5em;}
.demo04 td  {text-align:center;vertical-align:middle;background:#fff8f9;border: 3px solid #fff;padding:0.5em;}
/* SP */
@media only screen and (max-width: 768px) {
	.demo04 {font-size:0.8em;}
	.demo04 th {font-size:0.8em;}
	.demo04 td {font-size:0.8em;}
}

.detail_tbl {width:100%;margin-top:3.0em;font-size:1.0em;border-collapse: separate;border-spacing: 0px 0.5em;}
.detail_tbl th {padding:0.5em;text-align:center;border:none;font-size:1.2em;vertical-align:middle;background-color:#ffeaec;color:#efaeb4;width:12.0em;}
.detail_tbl td {padding:0.5em;text-align:left;border:none;vertical-align:middle;background-color:#fff8f9;color:#604d3f;padding-left:2.0em;}

/* SP */
@media only screen and (max-width: 768px) {
  .detail_tbl tr {
    display:block;
    margin-bottom: 10px;
  }
  .detail_tbl th {
    display:block;
    width: 100%;
  }
  .detail_tbl td {
    display:block;
    width: 100%;
    padding-left:0.5em;
  }
}


/* SP */
.contents {
	width:100%;
	margin:auto;
	padding:0 0.5em 0;
	margin-bottom:3.0em;
}
/* PC */
@media only screen and (min-width:769px) {
	.contents {
		width:900px;
	}
}


/* tab CSS ***************************************** */
/*tabの形状*/
.tab{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: 2px solid #ea9aa2;
}
.tab li{
	width:24%;
	text-align: center;
	border-top: 2px solid #fff0f1;
	border-left: 2px solid #fff0f1;
	border-right: 2px solid #fff0f1;
	border-radius: 10px 10px 0 0;
	color:#604d3f;
}
.tab li a{
  display: block;
  margin:0 2px;
  padding:10px 0;
}
@media (max-width: 768px) {
	.tab li a{font-size:0.5em;}
}
/*liにactiveクラスがついた時の形状*/
.tab li.active{
  border-top: 2px solid #ea9aa2;
  border-left: 2px solid #ea9aa2;
  border-right: 2px solid #ea9aa2;
  border-radius: 10px 10px 0 0;
  background:#ea9aa2;
}
.tab li.active a{
  color:#fff;
}
/*エリアの表示非表示と形状*/
.area {
  display: none;/*はじめは非表示*/
  opacity: 0;/*透過0*/
  background: #fff;
  padding:50px 20px;
}
/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
    display: block;/*表示*/
    animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards;
}
@keyframes displayAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*========= レイアウトのためのCSS ===============*/
ul{
  list-style:none;
}
a{
  color:#333;
  text-decoration: none;
}
.wrapper{
  width:100%;
  max-width: 960px;
  margin:30px auto;
    background:#fefefe;
}
.area li{
  padding: 10px;
  border-bottom: 1px solid #ddd;
}




/* flexbox CSS ***************************************** */

/* flexの子供の幅 */
.flexchild_w10, .flexchild_w20, .flexchild_w30, .flexchild_w40, .flexchild_w50, .flexchild_w60, .flexchild_w70, .flexchild_w80, .flexchild_w90{width:100%;}
.flexchild_w05, .flexchild_w15, .flexchild_w25, .flexchild_w35, .flexchild_w45, .flexchild_w55, .flexchild_w65, .flexchild_w75, .flexchild_w85, .flexchild_w95{width:100%;}
/* PC */
@media only screen and (min-width:769px) {
	.flexchild_w10{width:10%;}
	.flexchild_w20{width:20%;}
	.flexchild_w30{width:30%;}
	.flexchild_w40{width:40%;}
	.flexchild_w50{width:50%;}
	.flexchild_w60{width:60%;}
	.flexchild_w70{width:70%;}
	.flexchild_w80{width:80%;}
	.flexchild_w90{width:90%;}
	.flexchild_w05{width:5%;}
	.flexchild_w15{width:15%;}
	.flexchild_w25{width:25%;}
	.flexchild_w35{width:35%;}
	.flexchild_w45{width:45%;}
	.flexchild_w55{width:55%;}
	.flexchild_w65{width:65%;}
	.flexchild_w75{width:75%;}
	.flexchild_w85{width:85%;}
	.flexchild_w95{width:95%;}
}
.flexchild_middle{
  display: flex;
  justify-content: center;
  align-items: center;
}
.flex_reverse{flex-direction: row-reverse;}

/* SP */
.flexbox01 {
	display : flex;
	justify-content:center;
	flex-wrap:wrap;
	width:100%;
	margin:0 auto;
}
.col2 {
	width:100%;
	pdding:0 1.0em 0;
}
.col2_b {
	width:50%;
	pdding:0 1.0em 0;
}
.col2_b img {
	width:80%;
}
.col4 {
	width:50%;
	pdding:0 1.0em 0;
}
.col_img{
	text-align: center;
	width:100%;
	padding:0.5em;
}
.col_img img { width:50%; }
.col_txt {
	width:100%;
}

.col_flow_left {
	background-color:#ffeaec;
	color:#604d3f;
	padding:1.5em 1.5em 1.5em;
	border: 2px solid #ffeaec;
	border-radius: 10px 0 0 10px;
	width:35%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;

	position: relative;
}
.col_flow_left:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -18px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #ffeaec transparent transparent transparent;
  border-width: 18px 40px 0 40px;
}
.col_flow_right {
	background-color:#fff;
	color:#604d3f;
	padding:1.5em 1.5em 1.5em;
	border: 2px solid #ffeaec;
	border-radius: 0 10px 10px 0;
	width:65%;
	display: table-cell;
	vertical-align: middle;
}


.title001 {
	margin:0 0.5em 0;
	background-color:#ffeaec;
	color:#604d3f;
	border-radius: 20px;
	font-size:1.5em;
	text-align: center;
	line-height: 1.5em;
	padding:10px 0;
	outline: 4px solid rgb(255, 255, 255);
	outline-offset: -8px;
}
.menu {
	width:100%;
	margin-top:0.5em;
}
.menu li {
	width:45%;
	display: inline-block;
	margin-bottom:0.5em;
}
.menu li a {
	display: inline-block;
	width:100%;
	border: 2px solid #ffeaec;
	border-radius: 5px;
	padding:0.5em 0 0.5em;
	font-size:0.9em;
	color:#604d3f;
}
.menu li a:hover {
	background-color:#ffeaec;
}
.linkbtn01 {
	display: inline-block;
	width:95%;
	border: 3px solid #604d3f;
	padding:1.0em;
	border-radius: 20px;
	font-size:1.2em;
	margin-bottom:1.0em;
}
@media (max-width: 768px) {
	.linkbtn01 {font-size:0.8em;}
}

.no {
	color:#ea9aa2;
}
@media only screen and (min-width:769px) {
	.no {
		padding-right:1.0em;
	}
}

/* PC */
@media only screen and (min-width:769px) {
	.col2 {
		width:50%;
	}
	.col2_b img {
		max-width:210px;
	}
	.col4 {
		width:25%;
	}
	.col_img{
		width:20%;
		padding:1.0em;
	}
	.col_img img {
		width:100%;
	}
	.col_txt {
		width:80%;
	}
	.col_flow_left {
		font-size:1.2em;
		text-align: left;
	}
	.col_flow_right {
		font-size:1.1em;
	}

}



/* スライダーCSS ***************************************** */
/* SP */
@media (max-width: 768px) {
	.slider_sec {
		width:100%;
		margin:0;
		padding:0;
		background-color:#ffeaec;
		padding:1.5em 10px 1.5em;
	}
	.slider_wrap {
		width:100%;
		margin:auto;
		background-color:#fff;
		border-radius: 40px;
		padding:2.0em 2.0em;
	}
}

/* PC */
@media (min-width: 769px) {
	.slider_sec {
		margin:0;
		padding:0;
		background-color:#ffeaec;
		padding:3.0em 0 3.0em;
	}
	.slider_wrap {
		width:1000px;
		margin:auto;
		background-color:#fff;
		border-radius: 40px;
		padding:3.0em 3.0em;
	}
}


/* 画面上部 CSS ***************************************** */
/* SP */
	.page-ttl {
	  background: #ffeaec;
	  width: 100%;
	  margin: 0 0 10px;
	}
	.page-ttl h1 {
	  padding:3.0em 0 3.0em;
	  text-align: center;
	  color: #604d3f;
	  width: 100%;
	}
	.page-ttl h1 .jp {
	  display: block;
	  font-size: 1.0em;
	}
	.page-ttl h1 .en {
	  display: block;
	  font-size: 1.5em;
	}

/* PC */
@media (min-width: 769px) {
	.page-ttl {
	  width: 100%;
	}

	.page-ttl h1 {
	}

	.page-ttl h1 .jp {
	  font-size: 1.2em;
	}

	.page-ttl h1 .en {
	  font-size: 2.5em;
	}
}
