/*
=============================================================

  大枠のレイアウト

=============================================================
*/
#contents.tl-layout {
  padding-top: 20px!important;}
#contents.tl-layout p {
  margin-bottom: 0;}
#contents.tl-layout .tl-block + .tl-block {
  margin-top: 50px;}
.pcn {
  display: none;}
.spn {
  display: inline-block;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout {
  margin-top: 5vw;
  padding-top: 0!important;}
#contents.tl-layout p {
  font-size: 3.6vw;}
#contents.tl-layout .tl-block + .tl-block {
  margin-top: 10vw;}
.pcn {
  display: inline-block;}
.spn {
  display: none;}
}

/*
=============================================================

  MV

=============================================================
*/
#tl-contents .mv {
  width: 100%;
  height: 500px;
  background-repeat: no-repeat;
  background-size: 2000px auto;
  background-position: top center;}
#tl-contents .mv figure {
  display: none;}
#tl-contents .mv.ptosis {
  background-image: url(img/mv_ptosis_pc.jpg);}
#tl-contents .mv.sebaceous-cyst {
  background-image: url(img/sebaceous-cyst.jpg);}
#tl-contents .mv.threadlift {
  background-image: url(img/threadlift.jpg);}
#tl-contents .mv.eyes {
  background-image: url(img/eyes.jpg);}
#tl-contents .mv.hyaluron {
  background-image: url(img/hyaluron.jpg);}
#tl-contents .mv.dark-circles {
  background-image: url(img/dark-circles.jpg);}
#tl-contents .mv.epicanthoplasty {
  background-image: url(img/mv_epicanthoplasty_pc.jpg);}
#tl-contents .mv.mole {
  background-image: url(img/mv_mole_pc.jpg);}
#tl-contents .mv.hircismus {
  background-image: url(img/mv_hircismus_pc.jpg);}
#tl-contents .mv.glamorous-line {
  background-image: url(img/mv_glamorous-line_pc.jpg);}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#tl-contents .mv {
  height: auto;
  background: none;}
#tl-contents .mv figure {
  display: block;
  margin: 0;
  padding: 0;}
#tl-contents .mv figure img {
  width: 100%;
  height: auto;}
}

/*
=============================================================

  パンクズ

=============================================================
*/
#contents.tl-layout #breadcrumbs {
  text-align: right;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout #breadcrumbs {
  margin-bottom: 3vw;}
}

/*
=============================================================

  h3をh2に書き換え  01

=============================================================
*/
#contents.tl-layout .tl-h2-01 {
  position: relative;
  text-align: left;
  margin: 2em 0 1em;
  margin-top: 0;
  padding: 10px 0;
  background-color: transparent;
  border-bottom: 3px solid #ddd;
  color: #424242;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.4;
  clear: both;}
#contents.tl-layout .tl-h2-01:before {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  display: block;
  width: 180px;
  height: 3px;
  font-weight: 600;
  background: #499A94;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h2-01 {
  margin-bottom: 3vw;
  padding: 2vw 0;
  border-bottom: 2px solid #ddd;
  font-size: 5vw;}
#contents.tl-layout .tl-h2-01:before {
  bottom: -2px;
  width: 30vw;
  height: 2px;}
}

/*
=============================================================

  h3をh2に書き換え  02

=============================================================
*/
#contents.tl-layout .tl-h2-02 {
  position: relative;
  text-align: left;
  margin: 2em 0 1em;
  margin-top: 0;
  padding: 10px 0;
  background-color: transparent;
  text-align: center;
  color: #417571;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.4;
  clear: both;}
#contents.tl-layout .tl-h2-02:before {
  display: none;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h2-02 {
  margin-bottom: 3vw;
  padding: 2vw 0;
  border-bottom: 2px solid #ddd;
  font-size: 5vw;}
}

/*
=============================================================

  h3を書き換え 01

=============================================================
*/
#contents.tl-layout .tl-h3-01 {
  margin: 0 0 15px 0;
  padding: 0 0 0 25px;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;}
#contents.tl-layout .tl-h3-01:before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 13px;
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -6px;
  background-color: #898A6B;}
#contents.tl-layout .tl-h3-01:after {
  display: none;}
#contents.tl-layout .tl-h3-01.mt30 {
  margin-top: 30px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h3-01 {
  margin: 0 0 3vw 0;
  padding: 0 0 0 5vw;
  font-size: 4.5vw;
  line-height: 1.4;}
#contents.tl-layout .tl-h3-01:before {
  top: 3.2vw;
  width: 3vw;
  height: 3vw;
  margin-top: -1.4vw;}
#contents.tl-layout .tl-h3-01.mt30 {
  margin-top: 5vw;}
}

/*
=============================================================

  h3を書き換え 02

=============================================================
*/
#contents.tl-layout .tl-h3-02 {
  margin: 0 0 20px 0;
  padding: 0;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.0;
  color: #499A94;}
#contents.tl-layout .tl-h3-02:after {
  display: none;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h3-02 {
  margin: 0 0 3.5vw 0;
  line-height: 1.4;
  text-align: center;
  font-size: 4.8vw;}
}

/*
=============================================================

  h3を書き換え 03

=============================================================
*/
#contents.tl-layout .tl-h3-03 {
  margin: 0;
  padding: 15px 30px;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.0;
  background-color: #499A94;
  color: #fff;}
#contents.tl-layout .tl-h3-03:after {
  display: none;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h3-03 {
  padding: 3vw;
  text-align: center;
  font-size: 4.5vw;
  line-height: 1.4;}
}

/*
=============================================================

  h3を書き換え 04

=============================================================
*/
#contents.tl-layout .tl-h3-04 {
  margin: 0;
  padding: 15px 30px;
  border-bottom: none!important;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.0;
  color: #fff;}
#contents.tl-layout .tl-h3-04:after {
  display: none;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-h3-04 {
  padding: 3vw;
  text-align: center;
  font-size: 4.5vw;
  line-height: 1.4;}
}


/*
=============================================================

  listの書き換え 01

=============================================================
*/
#contents.tl-layout .tl-list-01 {
  list-style-type: none;
  margin: 0 0 30px 0;}
#contents.tl-layout .tl-list-01 li {
  position: relative;
  padding-left: 15px;}
#contents.tl-layout .tl-list-01 li:before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background-color: #499A94;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-list-01 {
  margin: 0 0 5vw 0;}
#contents.tl-layout .tl-list-01 li {
  padding-left: 5vw;
  font-size: 3.6vw;}
#contents.tl-layout .tl-list-01 li:before {
  top: 2.2vw;
  width: 2vw;
  height: 2vw;}
}

/*
=============================================================

  listの書き換え 02

=============================================================
*/
#contents.tl-layout .tl-list-02 {
  list-style-type: none;
  margin: 30px 0 0 0;}
#contents.tl-layout .tl-list-02 li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px 60px;
  background-color: #E1E8E1;}
#contents.tl-layout .tl-list-02 li + li {
  margin-top: 20px;}
#contents.tl-layout .tl-list-02 li figure {
  margin: 0;}
#contents.tl-layout .tl-list-02 li figure img {
  width: 400px;
  height: auto;}
#contents.tl-layout .tl-list-02 li > div {
  flex: 1;
  margin-right: 40px;}
.tl-h3-01 + .tl-list-02 {
  margin-top: 0!important;}
#contents.tl-layout .tl-list-02 .title {
  margin: 0 0 20px 0;
  padding: 0;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.0;
  color: #499A94;}
#contents.tl-layout .tl-list-02 .title:after {
  display: none;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-list-02 {
  margin: 5vw 0 0 0;}
#contents.tl-layout .tl-list-02 li {
  flex-direction: column;
  padding: 7vw 5vw;}
#contents.tl-layout .tl-list-02 li + li {
  margin-top: 5vw;}
#contents.tl-layout .tl-list-02 li figure {
  margin: 0;}
#contents.tl-layout .tl-list-02 li figure img {
  width: 100%;
  max-width: 100%;
  padding: 0;}
#contents.tl-layout .tl-list-02 li > div {
  width: 100%;
  margin-right: 0;
  margin-bottom: 5vw;}
#contents.tl-layout .tl-list-02 .title {
  margin: 0 0 3.5vw 0;
  line-height: 1.4;
  text-align: center;
  font-size: 4.8vw;}
}

/*
=============================================================

  listの書き換え 03

=============================================================
*/
#contents.tl-layout .tl-list-03 {
  list-style-type: none;
  margin: 30px 0 0 0;}
#contents.tl-layout .tl-list-03 li + li {
  margin-top: 30px;}
#contents.tl-layout .tl-list-03 li .box {
  padding: 40px 60px;
  border: 1px solid #499A94;}
#contents.tl-layout .tl-list-03 li .box dl dt {
  position: relative;
  margin-bottom: 10px;
  padding-left: 25px;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.0;
  color: #499A94;}
#contents.tl-layout .tl-list-03 li .box dl dt:before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background-color: #499A94;}
#contents.tl-layout .tl-list-03 li .box dl dd {
  margin-bottom: 0;}
#contents.tl-layout .tl-list-03 li .box dl dd + dt {
  margin-top: 20px;}
#contents.tl-layout .tl-list-03 li + li dl {
  margin-top: 20px;}
#contents.tl-layout .tl-list-03 p + dl {
  margin-top: 30px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-list-03 {
  margin: 5vw 0 0 0;}
#contents.tl-layout .tl-list-03 li + li {
  margin-top: 5vw;}
#contents.tl-layout .tl-list-03 li .box {
  padding: 5vw;}
#contents.tl-layout .tl-list-03 li .box dl {
  margin: 0;}
#contents.tl-layout .tl-list-03 li .box dl dt {
  margin-bottom: 2vw;
  padding-left: 5vw;
  font-size: 4.2vw;}
#contents.tl-layout .tl-list-03 li .box dl dt:before {
  width: 3vw;
  height: 3vw;
  margin-top: -1.5vw;}
#contents.tl-layout .tl-list-03 li .box dl dd {
  font-size: 3.6vw;}
#contents.tl-layout .tl-list-03 li .box dl dd + dt {
  margin-top: 5vw;}
#contents.tl-layout .tl-list-03 li + li dl {
  margin-top: 5vw!important;}
#contents.tl-layout .tl-list-03 p + dl {
  margin-top: 5vw!important;}
}

/*
=============================================================

  共通：flex01

=============================================================
*/
#contents.tl-layout .flex01 {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;}
#contents.tl-layout .flex01 > div {
  flex: 1;
  margin-right: 60px;}
#contents.tl-layout .flex01 figure {
  margin: 0;}
#contents.tl-layout .flex01 figure img {
  width: 400px;
  height: auto;}
#contents.tl-layout .flex01 + div {
  margin-top: 20px;}
#contents.tl-layout .flex01 + div .txt {
  margin-bottom: 20px;}
#contents.tl-layout .flex01 + .flex01 {
  margin-top: 30px;}
#contents.tl-layout .flex01 .title {
  margin-bottom: 20px;
  padding: 15px 30px 17px;
  background-color: #499A94;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.0;
  color: #fff;}
#contents.tl-layout .flex01.w100 > div {
  width: 100%;
  margin-right: 0;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .flex01 {
  flex-direction: column;
  margin-top: 7vw;}
#contents.tl-layout .flex01 > div {
  width: 100%;
  margin-right: 0;}
#contents.tl-layout .flex01 figure {
  margin: 5vw 0 0 0;}
#contents.tl-layout .flex01 figure img {
  width: 100%;
  max-width: 100%;
  padding: 0;}
#contents.tl-layout .flex01 + div {
  margin-top: 5vw;}
#contents.tl-layout .flex01 + div .txt {
  margin-bottom: 3vw;}
#contents.tl-layout .flex01 + .flex01 {
  margin-top: 7vw;}
#contents.tl-layout .flex01 .title {
  margin-bottom: 3.5vw;
  padding: 2vw 5vw;
  text-align: center;
  font-size: 4.5vw;
  line-height: 1.5;}
}

/*
=============================================================

  共通：flex02

=============================================================
*/
#contents.tl-layout .flex02 {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;}
#contents.tl-layout .flex02 > div {
  width: 49%;}
#contents.tl-layout .flex02 .box {
  padding: 40px 60px;}
#contents.tl-layout .flex02 .box dl dt {
  position: relative;
  margin-bottom: 10px;
  padding: 2px 0;
  padding-left: 30px;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.4;
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: left center;}
#contents.tl-layout .flex02 .box dl dd {
  margin-bottom: 0;}
#contents.tl-layout .flex02 .box dl dd + dt {
  margin-top: 20px;}
#contents.tl-layout .flex02 .left h3 {
  background-color: #E3899C;}
#contents.tl-layout .flex02 .left .box {
  border: solid #898A6B;
  border-width: 0 1px 1px;}
#contents.tl-layout .flex02 .left .box dl dt {
  color: #E3899C;
  background-image: url(img/icon_flex02_left.png);}
#contents.tl-layout .flex02 .right h3 {
  background-color: #767676;}
#contents.tl-layout .flex02 .right .box {
  border: solid #767676;
  border-width: 0 1px 1px;}
#contents.tl-layout .flex02 .right .box dl dt {
  color: #424242;
  background-image: url(img/icon_flex02_right.png);}
#contents.tl-layout .flex02 .left.w100 {
  width: 100%;}
#contents.tl-layout .flex02 .left.w100 .box {
  margin-bottom: 10px;
  border: 1px solid #898A6B;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .flex02 {
  flex-direction: column;
  margin-top: 5vw;}
#contents.tl-layout .flex02 > div {
  width: 100%;}
#contents.tl-layout .flex02 > div + div {
  margin-top: 5vw;}
#contents.tl-layout .flex02 .box {
  padding: 5vw;}
#contents.tl-layout .flex02 .box dl {
  margin: 0;}
#contents.tl-layout .flex02 .box dl dt {
  margin-bottom: 2vw;
  padding-left: 5vw;
  font-size: 4.2vw;
  padding: .5vw 0;
  background-size: 5vw;
  padding-left: 7vw;}
#contents.tl-layout .flex02 .box dl dd {
  font-size: 3.6vw;}
#contents.tl-layout .flex02 .box dl dd + dt {
  margin-top: 5vw;}
#contents.tl-layout .flex02 .left.w100 .box {
  margin-bottom: 3.5vw;}
}

/*
=============================================================

  共通：flex03

=============================================================
*/
#contents.tl-layout .flex03 {
  display: flex;
  justify-content: space-between;}
#contents.tl-layout .flex03 .left {
  width: 640px;}
#contents.tl-layout .flex03 .left ul {
  display: flex;
  list-style-type: none;
  margin: 0;}
#contents.tl-layout .flex03 .left ul li {
  position: relative;}
#contents.tl-layout .flex03 .left ul li:before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  padding: 5px 20px 7px;
  background-color: #499A94;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.0;
  z-index: 2;}
#contents.tl-layout .flex03 .left ul li:nth-child(1):before {
  content: '手術前';}
#contents.tl-layout .flex03 .left ul li:nth-child(2):before {
  content: '手術後';}
#contents.tl-layout .flex03 .left ul li.week:before {
  content: '術後1週間';}
#contents.tl-layout .flex03 .left ul li.moth:before {
  content: '術後1ヵ月';}
#contents.tl-layout .flex03 .left ul li.tyokugo:before {
  content: '手術直後';}
#contents.tl-layout .flex03 .right {
  flex: 1;
  margin-left: 60px;}
#contents.tl-layout .flex03 .right dl dt {
  position: relative;
  margin-bottom: 10px;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.0;}
#contents.tl-layout .flex03 .right dl dd {
  margin-bottom: 0;
  font-size: 15px;}
#contents.tl-layout .flex03 .right dl dd + dt {
  margin-top: 20px;}
#contents.tl-layout .flex03 + .flex03 {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px dashed #499A94;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .flex03 {
  flex-direction: column;}
#contents.tl-layout .flex03 .left {
  width: 100%;}
#contents.tl-layout .flex03 .left ul {
  width: 100%;}
#contents.tl-layout .flex03 .left ul li {
  width: 50%;}
#contents.tl-layout .flex03 .left ul li img {
  width: 100%;
  max-width: 100%;
  padding: 0;}
#contents.tl-layout .flex03 .left ul li:before {
  padding: 2vw 5vw;
  font-size: 3.6vw;}
#contents.tl-layout .flex03 .right {
  width: 100%;
  margin-top: 5vw;
  margin-left: 0;}
#contents.tl-layout .flex03 .right dl {
  margin: 0;
  padding: 0 3vw;}
#contents.tl-layout .flex03 .right dl dt {
  margin-bottom: 2vw;
  font-size: 3.6vw;}
#contents.tl-layout .flex03 .right dl dd {
  font-size: 3.4vw;}
#contents.tl-layout .flex03 .right dl dd + dt {
  margin-top: 3vw;}
#contents.tl-layout .flex03 + .flex03 {
  margin-top: 5vw;
  padding-top: 5vw;}
}

/*
=============================================================

  二重整形：flex04

=============================================================
*/
#contents.tl-layout .flex04 {
  margin-top: 30px;}
#contents.tl-layout .flex04 ul {
  position: relative;
  margin: 0;
  list-style-type: none;
  row-gap: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;}
#contents.tl-layout .flex04 ul::before {
  content:"";
  display: block;
  width:23.5%;
  order:1;}
#contents.tl-layout .flex04 ul::after {
  content:"";
  display: block;
  width:23.5%;}
#contents.tl-layout .flex04 ul.list3 {
  justify-content: space-around;}
#contents.tl-layout .flex04 ul li {
  width: 23.5%;}
#contents.tl-layout .flex04 ul li figure {
  margin: 0;
  margin-bottom: 10px;}
#contents.tl-layout .flex04 ul li .stitle {
  position: relative;
  margin: 0 0 10px 0;
  padding: 0 0 0 25px;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.0;
  color: #499A94;}
#contents.tl-layout .flex04 ul li .stitle:before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 6px;
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -6px;
  background-color: #499A94;}
#contents.tl-layout .flex04 ul li span.stitle {
  padding: 0;
  display: block;
  line-height: 1.4;}
#contents.tl-layout .flex04 ul li span.stitle::before {
  content: initial;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .flex04 {
  margin-top: 5vw;}
#contents.tl-layout .flex04 ul {
  row-gap: 0;}
#contents.tl-layout .flex04 ul.list3 {
  justify-content: space-between;}
#contents.tl-layout .flex04 ul li {
  width: 48%;
  margin-top: 5vw;}
#contents.tl-layout .flex04 ul li:nth-child(-n+2) {
  margin-top: 0;}
#contents.tl-layout .flex04 ul li figure {
  margin: 0;
  margin-bottom: 3vw;}
#contents.tl-layout .flex04 ul li .stitle {
  margin: 0 0 3vw 0;
  padding: 0 0 0 5vw;
  font-size: 4.5vw;}
#contents.tl-layout .flex04 ul li .stitle:before {
  width: 3vw;
  height: 3vw;
  margin-top: -1.4vw;}
#contents.tl-layout .flex04 ul li span.stitle {
  font-size: 4vw;
}
#contents.tl-layout .flex04 ul li .stitle + p {
  font-size: 3.5vw;}
}

/*
=============================================================

  二重整形：flex05

=============================================================
*/
#contents.tl-layout .flex05 {
  margin-top: 30px;}
#contents.tl-layout .flex05 ul {
  margin: 0;
  list-style-type: none;
  display: flex;
  justify-content: space-between;}
#contents.tl-layout .flex05 ul li {
  width: 32%;
  background-color: #fff;}
#contents.tl-layout .flex05 ul li .stitle {
  padding: 10px 0 12px;
  text-align: center;
  background-color: #499A94;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.0;
  color: #fff;}
#contents.tl-layout .flex05 ul li .stitle + p {
  padding: 20px 30px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .flex05 {
  margin-top: 5vw;}
#contents.tl-layout .flex05 ul {
  flex-direction: column;}
#contents.tl-layout .flex05 ul li {
  width: 100%;}
#contents.tl-layout .flex05 ul li .stitle {
  padding: 3vw 0;
  font-size: 4.5vw;}
#contents.tl-layout .flex05 ul li .stitle + p {
  padding: 3.5vw 5vw;}
}

/*
=============================================================

  共通：detail

=============================================================
*/
#contents.tl-layout .tl-detail {
  margin-top: 20px;
  line-height: 1.5;}
#contents.tl-layout .tl-detail dl {
  display: flex;
  border-bottom: 1px solid #499A94;
  padding: 20px;}
#contents.tl-layout .tl-detail dt {
  width: 10%;
  min-width: 100px;
  text-align: center;
  align-self: center;
  font-weight: 600;}
#contents.tl-layout .tl-detail dd {
  padding-left: 20px;
  margin: 0;
  color: #424242;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-detail {
  margin-top: 5vw;
  font-size: 3.6vw;}
#contents.tl-layout .tl-detail dl {
  flex-direction: column;
  align-items: baseline;
  padding: 3vw;}
#contents.tl-layout .tl-detail dt {
  text-align: left;
  align-self: baseline;
  width: initial;
  min-width: auto;}
#contents.tl-layout .tl-detail dd {
  padding-left: 0;
  padding-top: 2vw;
  font-size: 3.5vw;}
}
/*
=============================================================

  共通：price 01

=============================================================
*/
#contents.tl-layout .tl-price {
  margin-top: 20px;
  border: 1px solid #E0E0E0;
  line-height: 1.0;}
#contents.tl-layout .tl-price caption {
  caption-side: bottom;
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.6;
  color: #424242;}
#contents.tl-layout .tl-price thead td {
  background-color: #E0E0E0;
  font-weight: 600;}
#contents.tl-layout .tl-price tbody tr {
  border-top: 2px solid #E0E0E0;}
#contents.tl-layout .tl-price th {
  min-width: 300px;
  padding: 20px 30px;
  border: none;
  text-align: center;
  font-weight: 600;}
#contents.tl-layout .tl-price td {
  min-width: 300px;
  padding: 20px 30px;
  border: none;
  text-align: center;
  color: #499A94;}
#contents.tl-layout .tl-price tbody td {
  font-size: 18px;}
#contents.tl-layout .tl-price thead tr td.last {
  border-left: 2px solid rgba(255, 255, 255, .5)!important;}
#contents.tl-layout .tl-price tr td.last {
  border-left: 2px solid #E0E0E0!important;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-price {
  width: 100%;
  border: none;
  margin-top: 5vw;
  line-height: 1.5;
  font-size: 3.6vw;}
#contents.tl-layout .tl-price caption {
  margin-top: 2vw;
  font-size: 3.2vw;}
#contents.tl-layout .tl-price th {
  width: 60%;
  min-width: auto;
  padding: 3vw;}
#contents.tl-layout .tl-price td {
  width: 40%;
  min-width: auto;
  padding: 3vw;}
#contents.tl-layout .tl-price tbody td {
  font-size: 4vw;}
}

/*
=============================================================

  共通：price 02

=============================================================
*/
#contents.tl-layout .tl-price02 {
  margin-top: 20px;
  border: 1px solid #E0E0E0;
  line-height: 1.0;}
#contents.tl-layout .tl-price02 caption {
  caption-side: bottom;
  margin-top: 10px;
  font-size: 12px;
  color: #424242;}
#contents.tl-layout .tl-price02 thead td {
  background-color: #E0E0E0;
  font-weight: 600;}
#contents.tl-layout .tl-price02 tbody tr {
  border-top: 2px solid #E0E0E0;}
#contents.tl-layout .tl-price02 th {
  min-width: 300px;
  padding: 20px 30px;
  border: none;
  text-align: center;
  font-weight: 600;}
#contents.tl-layout .tl-price02 td {
  min-width: 300px;
  padding: 20px 30px;
  border: none;
  text-align: center;
  color: #499A94;}
#contents.tl-layout .tl-price02 tbody td {
  font-size: 18px;}
#contents.tl-layout .tl-price02 thead td:last-child {
  border-left: 1px solid #fff;}
#contents.tl-layout .tl-price02 tbody td:last-child {
  border-left: 1px solid #E0E0E0;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-price02 {
  width: 100%;
  border: none;
  margin-top: 5vw;
  line-height: 1.5;
  font-size: 3.6vw;}
#contents.tl-layout .tl-price02 caption {
  margin-top: 2vw;
  font-size: 3.2vw;}
#contents.tl-layout .tl-price02 th {
  width: 25%;
  min-width: auto;
  padding: 3vw;}
#contents.tl-layout .tl-price02 td {
  width: 37.5%;
  min-width: auto;
  padding: 3vw;}
#contents.tl-layout .tl-price02 tbody td {
  font-size: 4vw;}
}


/*
=============================================================

  共通：faq

=============================================================
*/
#contents.tl-layout .tl-faq dt {
  position: relative;
  margin-bottom: 20px;
  padding-left: 35px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 22px;}
#contents.tl-layout .tl-faq dt:before {
  pointer-events: none;
  content: 'Q.';
  position: absolute;
  top: -1px;
  left: 0;
  color: #499A94;
  line-height: 1.6;}
#contents.tl-layout .tl-faq dt h3 {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 22px;
  line-height: 1.6;
  font-weight: 600;}
#contents.tl-layout .tl-faq dt h3:after {
  display: none;}
#contents.tl-layout .tl-faq dd {
  margin: 0 0 0 30px;
  padding: 0 0 0 30px;
  border-left: 1px solid #499A94;}
#contents.tl-layout .tl-faq dd + dt {
  margin-top: 30px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-faq {
  margin: 0;
  padding: 0;}
#contents.tl-layout .tl-faq dt {
  margin-bottom: 3.5vw;
  padding-left: 7vw;
  font-size: 4vw;}
#contents.tl-layout .tl-faq dt:before {
  top: 0;
  font-size: 4.2vw;}
#contents.tl-layout .tl-faq dt h3 {
  line-height: 1.5;
  font-size: 4.2vw;}
#contents.tl-layout .tl-faq dt h3:after {
  display: none;}
#contents.tl-layout .tl-faq dd {
  margin: 0 0 0 1vw;
  padding: 0 0 0 6vw;
  font-size: 3.5vw;}
#contents.tl-layout .tl-faq dd + dt {
  margin-top: 5vw;}
}

/*
=============================================================

  共通：optout

=============================================================
*/
#contents.tl-layout .tl-optout {
  margin-top: 30px;
  border: 1px solid #ddd;
  padding: 20px;
  background-color: #f5f5f5;
}
#contents.tl-layout .tl-optout h3 {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin: 0 0 12px;
}
#contents.tl-layout .tl-optout h4 {
  font-size: 16px;
  font-weight: bold;
  color: #499A94;
  margin: 15px 0 5px;
}
#contents.tl-layout .tl-optout p {
  margin: 0 0 8px;
  font-size: 14px;
}
#contents.tl-layout .tl-optout .tl-optout-note {
  font-size: 13px;
  color: #888;
}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-optout {
  margin-top: 7vw;
  padding: 5vw;
}
#contents.tl-layout .tl-optout h3 {
  font-size: 4.2vw;
  margin: 0 0 3vw;
}
#contents.tl-layout .tl-optout h4 {
  font-size: 3.8vw;
  margin: 4vw 0 1.5vw;
}
#contents.tl-layout .tl-optout p {
  margin: 0 0 2vw;
  font-size: 3.4vw;
}
#contents.tl-layout .tl-optout .tl-optout-note {
  font-size: 3.2vw;
}}

/*
=============================================================

  共通：flow

=============================================================
*/
#contents.tl-layout .tl-flow {
  margin-top: 30px;}
#contents.tl-layout .tl-flow ul {
  margin: 0;
  list-style-type: none;}
#contents.tl-layout .tl-flow ul li {
  position: relative;
  display: flex;
  justify-content: space-between;}
#contents.tl-layout .tl-flow ul li + li {
  margin-top: 20px;}
#contents.tl-layout .tl-flow ul li figure {
  margin: 0;
  padding: 0;}
#contents.tl-layout .tl-flow ul li figure img {
  width: 200px;
  height: auto;}
#contents.tl-layout .tl-flow ul li > div {
  flex: 1;
  margin-left: 60px;}
#contents.tl-layout .tl-flow ul li > div .title {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  line-height: 1.0;}
#contents.tl-layout .tl-flow ul li > div .title span {
  position: relative;
  top: 2px;
  display: inline-block;
  margin-right: 20px;
  padding: 5px 15px;
  border-radius: 100vh;
  background-color: #499A94;
  color: #fff;}
#contents.tl-layout .tl-flow ul li > div .title i {
  font-style: normal;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  color: #499A94;}
#contents.tl-layout .tl-flow ul + h3 {
  margin-top: 30px;}
#contents.tl-layout .tl-flow .box {
  border: 1px solid #499A94;
  margin-top: 30px;
  padding: 0 60px 40px 60px;}
#contents.tl-layout .tl-flow .box h3 {
  font-family: "Noto Sans JP", sans-serif;
  border-bottom: none;
  padding-left: 30px;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 -60px 30px -60px;
  background-color: #499A94;}
#contents.tl-layout .tl-flow .box h3::after {
  content: initial;}
#contents.tl-layout .tl-flow .box .title {
  position: relative;
  margin-bottom: 10px;
  padding-left: 25px;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.0;
  color: #499A94;}
#contents.tl-layout .tl-flow .box .title::before {
  pointer-events: none;
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background-color: #499A94;
}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-flow {
  margin-top: 5vw;}
#contents.tl-layout .tl-flow ul li + li {
  margin-top: 7vw;}
#contents.tl-layout .tl-flow ul li figure {
  width: 30vw;}
#contents.tl-layout .tl-flow ul li figure img {
  width: 100%;
  max-width: 100%;
  padding: 0;}
#contents.tl-layout .tl-flow ul li > div {
  margin-left: 5vw;}
#contents.tl-layout .tl-flow ul li > div .title {
  margin-bottom: 3vw;}
#contents.tl-layout .tl-flow ul li > div .title span {
  white-space: nowrap;
  top: 0;
  margin-right: 3vw;
  padding: 1.5vw 3vw;
  font-size: 3.2vw;}
#contents.tl-layout .tl-flow ul li > div .title i {
  line-height: 1.3;
  font-size: 4.2vw;}
#contents.tl-layout .tl-flow ul li > div .title + p {
  font-size: 3.5vw;}
#contents.tl-layout .tl-flow ul + h3 {
  margin-top: 5vw;}
#contents.tl-layout .tl-flow .box {
  margin-top: 5vw;
  padding: 0 5vw 5vw 5vw;}
#contents.tl-layout .tl-flow .box h3 {
  padding-left: 5vw;
  font-size: 4.8vw;
  margin: 0 -5vw 5vw -5vw;
  background-color: #499A94;}
#contents.tl-layout .tl-flow .box .title {
  margin-bottom: 2vw;
  padding-left: 5vw;
  font-size: 4.2vw;}
#contents.tl-layout .tl-flow .box .title::before {
  width: 3vw;
  height: 3vw;
  margin-top: -1.5vw;}
}

/*
=============================================================

  ヒアルロン酸注入：01

=============================================================
*/
#contents.tl-layout .hyaluron01 {
  margin-top: 20px;}
#contents.tl-layout .hyaluron01 p + .tl-h3-01 {
  margin-top: 30px!important;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .hyaluron01 {
  margin-top: 7vw!important;}
#contents.tl-layout .hyaluron01 p + .tl-h3-01 {
  margin-top: 5vw!important;}
}

/*
=============================================================

  ヒアルロン酸注入：02

=============================================================
*/
#contents.tl-layout .hyaluron02 {
  margin-top: 30px;}
#contents.tl-layout .hyaluron02 ul {
  margin: 0;
  list-style-type: none;}
#contents.tl-layout .hyaluron02 ul li {
  display: flex;}
#contents.tl-layout .hyaluron02 ul li + li {
  margin-top: 20px;}
#contents.tl-layout .hyaluron02 ul li figure {
  margin: 0;
  padding: 0;}
#contents.tl-layout .hyaluron02 ul li figure img {
  width: 400px;
  max-width: 100%;
  height: auto;
  margin: 0;}
#contents.tl-layout .hyaluron02 ul li > div {
  flex: 1;
  margin-right: 60px;}
#contents.tl-layout .hyaluron02 ul li > div .teki {
  margin-top: 20px;
  padding: 10px 20px 12px;
  border-radius: 100vh;
  background-color: #E1E8E1;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  line-height: 1.4;
  color: #499A94;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .hyaluron02 {
  margin-top: 5vw;}
#contents.tl-layout .hyaluron02 ul {
  margin: 0;
  list-style-type: none;}
#contents.tl-layout .hyaluron02 ul li {
  flex-direction: column-reverse;}
#contents.tl-layout .hyaluron02 ul li + li {
  margin-top: 7vw;}
#contents.tl-layout .hyaluron02 ul li figure {
  margin-bottom: 3vw;}
#contents.tl-layout .hyaluron02 ul li figure img {
  width: 100%;
  padding: 0;}
#contents.tl-layout .hyaluron02 ul li > div {
  width: 100%;
  margin-right: 0;}
#contents.tl-layout .hyaluron02 ul li > div .teki {
  display: flex;
  margin-top: 3vw;
  padding: 2.5vw 3vw;
  border-radius: 2vw;
  font-size: 3.6vw;
  line-height: 1.4;}}
#contents.tl-layout .hyaluron02 ul li > div .teki span {
  white-space: nowrap;}

/*
=============================================================

  粉瘤：01

=============================================================
*/
#contents.tl-layout .tl-block.sebaceous-cyst01 .flex01 {
  margin-top: 0;}
#contents.tl-layout .tl-block.sebaceous-cyst01 .flex01 figure img {
  width: 500px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .tl-block.sebaceous-cyst01 .flex01 figure img {
  width: 100%;}
}

#contents.tl-layout .w500 {
  width: 500px!important;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .w500 {
  width: 100%!important;}
}

/*
=============================================================

  ほくろ・イボ

=============================================================
*/
#contents.tl-layout .method-box {
  margin-top: 20px;
  width: 100%;}
#contents.tl-layout .method-box thead th {
  background-color: #B3C2C1;
  width: calc(100% / 3);
  text-align: center;
  font-size: 22px;
  font-weight: 600;
  padding: 15px 30px;}
#contents.tl-layout .method-box tbody tr {
  padding: 30px;}
#contents.tl-layout .method-box tbody th {
  padding: 30px;}
#contents.tl-layout .method-box tbody td {
  color: #499A94;
  padding: 30px;}
/* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout .method-box {
  margin-top: 5vw;}
#contents.tl-layout .method-box thead th {
  font-size: 3.5vw;
  padding: 2vw;}
#contents.tl-layout .method-box thead th:first-child {
  width: 20%;}
#contents.tl-layout .method-box tbody tr {
  padding: 2vw;}
#contents.tl-layout .method-box tbody th {
  padding: .5vw;
  font-size: 3.2vw;}
#contents.tl-layout .method-box tbody td {
  font-size: 3.2vw;
  padding: 2vw;}
}

/*
=============================================================

  ワキガ

=============================================================
*/
#contents.tl-layout #tl-hircismus p + .tl-h3-01 {
  margin-top: 20px;}
  /* ---------------------------------------------------- sp */
@media (max-width: 480px) {
#contents.tl-layout #tl-hircismus p + .tl-h3-01 {
  margin-top: 3vw;}
}

/*
=============================================================

  グラマラスライン形成（たれ目形成）

=============================================================
*/
#contents.tl-layout #tl-glamorous-line .method-box thead tr th {
  background-color: #499A94;
  width: calc(80% / 3);}
#contents.tl-layout #tl-glamorous-line .method-box thead tr:first-child th:first-child {
  background-color: transparent;
  width: 20%;
  border-top: none;
  border-left: none;}
#contents.tl-layout #tl-glamorous-line .method-box tbody tr th {
  background-color: #B3C2C1;
  text-align: center;}