@charset "utf-8";
/* CSS Document */


@mixin fz($size: 16) {
  font-size: ($size / 10) + rem;
}

html {
  font-size: 62.5%;
}

section.contents {
    margin: 100px 0px;
}
p {
  @include fz(18);
}




/* ここにCSSコードを追加

例:
.example {
    color: red;
}

CSS の知識に磨きをかけるためにご覧ください。
http://www.w3schools.com/css/css_syntax.asp

コメント終わり */ 
/******************************************************************
 * 共通パーツ
******************************************************************/
html.fixed, body.fixed {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}

.c-wrap {
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;	
  width: 90%;	
}

.main.about{
  position: relative;
}

.c-inner {
  max-width: 1300px;
  margin: 0 auto;
}
.c-inner1000 {
  max-width: 1000px;
  margin: 0 auto;
}
@media (max-width: 1399px) {
  .c-inner {
    width: 90%;
  }
}
@media (max-width: 1000px) {  
	.c-inner1000 {
    width: 90%;
  }	
}	
@media screen and (max-width: 750px) {
  .c-inner {
    width: 100%;
    padding: 0 15px;
  }
  .c-inner1000 {
    width: 100%;
    padding: 0 15px;
  }	
}

.c-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

span.red {
    color: #cf0000;
}

span.blue{
    color: #1d7db1;
}

.pink_bk {
    background: #ffcccc;
    padding: 10px 10px;
}

.fw700 {
    font-weight: 700;
}


:root {
    --guideline-color: #aaa;
    font-size: calc(16 / 1920*100vw);
    --color01: #000000;
    --color02: #005D8C;
    --color03: #0099C6;
    --color04: #4BAFC6;
    --color05: #B5B5B5;
    --color06: #F2F2F2;
    --color07: #F2F9FC;
    --color08: #FAEC32;
    --color09: #40b1b4;
    --color10: #;
    --color11: #;
    --color12: #;
    --color13: #;
    --color14: #;
    --color15: #;
    --color16: #;
    --color17: #;
    --color18: #;
    --color19: #;
    --size5px: calc(5 / 1920 * 100vw);
    --size10px: calc(10 / 1920 * 100vw);
    --size15px: calc(15 / 1920 * 100vw);
    --size20px: calc(20 / 1920 * 100vw);
    --size25px: calc(25 / 1920 * 100vw);
    --size30px: calc(30 / 1920 * 100vw);
    --size35px: calc(35 / 1920 * 100vw);
    --size40px: calc(40 / 1920 * 100vw);
    --size45px: calc(45 / 1920 * 100vw);
    --size50px: calc(50 / 1920 * 100vw);
    --size55px: calc(55 / 1920 * 100vw);
    --size60px: calc(60 / 1920 * 100vw);
    --size65px: calc(65 / 1920 * 100vw);
    --size70px: calc(70 / 1920 * 100vw);
    --size75px: calc(75 / 1920 * 100vw);
    --size80px: calc(80 / 1920 * 100vw);
    --size85px: calc(85 / 1920 * 100vw);
    --size90px: calc(90 / 1920 * 100vw);
    --size95px: calc(95 / 1920 * 100vw);
    --size100px: calc(100 / 1920 * 100vw);
    --size105px: calc(105 / 1920 * 100vw);
    --size110px: calc(110 / 1920 * 100vw);
    --size115px: calc(115 / 1920 * 100vw);
    --size120px: calc(120 / 1920 * 100vw);
    --size125px: calc(125 / 1920 * 100vw);
    --size130px: calc(130 / 1920 * 100vw);
    --size135px: calc(135 / 1920 * 100vw);
    --size140px: calc(140 / 1920 * 100vw);
    --size145px: calc(145 / 1920 * 100vw);
}

@media (min-width: 768px) and (max-width: 1299px){
:root {
    --size5px: calc(5 / 1299 * 100vw);
    --size10px: calc(10 / 1299 * 100vw);
    --size15px: calc(15 / 1299 * 100vw);
    --size20px: calc(20 / 1299 * 100vw);
    --size25px: calc(25 / 1299 * 100vw);
    --size30px: calc(30 / 1299 * 100vw);
    --size35px: calc(35 / 1299 * 100vw);
    --size40px: calc(40 / 1299 * 100vw);
    --size45px: calc(45 / 1299 * 100vw);
    --size50px: calc(50 / 1299 * 100vw);
    --size55px: calc(55 / 1299 * 100vw);
    --size60px: calc(60 / 1299 * 100vw);
    --size65px: calc(65 / 1299 * 100vw);
    --size70px: calc(70 / 1299 * 100vw);
    --size75px: calc(75 / 1299 * 100vw);
    --size80px: calc(80 / 1299 * 100vw);
    --size85px: calc(85 / 1299 * 100vw);
    --size90px: calc(90 / 1299 * 100vw);
    --size95px: calc(95 / 1299 * 100vw);
    --size100px: calc(100 / 1299 * 100vw);
    --size105px: calc(105 / 1299 * 100vw);
    --size110px: calc(110 / 1299 * 100vw);
    --size115px: calc(115 / 1299 * 100vw);
    --size120px: calc(120 / 1299 * 100vw);
    --size125px: calc(125 / 1299 * 100vw);
    --size130px: calc(130 / 1299 * 100vw);
    --size135px: calc(135 / 1299 * 100vw);
    --size140px: calc(140 / 1299 * 100vw);
    --size145px: calc(145 / 1299 * 100vw);
    --size150px: calc(150 / 1299 * 100vw);
    --size160px: calc(160 / 1299 * 100vw);
    --size170px: calc(170 / 1299 * 100vw);
    --size180px: calc(180 / 1299 * 100vw);
    --size190px: calc(190 / 1299 * 100vw);
    --size200px: calc(200 / 1299 * 100vw);
}
}

@media (min-width: 768px) and (max-width: 1599px){
:root {
    --size5px: calc(5 / 1599 * 100vw);
    --size10px: calc(10 / 1599 * 100vw);
    --size15px: calc(15 / 1599 * 100vw);
    --size20px: calc(20 / 1599 * 100vw);
    --size25px: calc(25 / 1599 * 100vw);
    --size30px: calc(30 / 1599 * 100vw);
    --size35px: calc(35 / 1599 * 100vw);
    --size40px: calc(40 / 1599 * 100vw);
    --size45px: calc(45 / 1599 * 100vw);
    --size50px: calc(50 / 1599 * 100vw);
    --size55px: calc(55 / 1599 * 100vw);
    --size60px: calc(60 / 1599 * 100vw);
    --size65px: calc(65 / 1599 * 100vw);
    --size70px: calc(70 / 1599 * 100vw);
    --size75px: calc(75 / 1599 * 100vw);
    --size80px: calc(80 / 1599 * 100vw);
    --size85px: calc(85 / 1599 * 100vw);
    --size90px: calc(90 / 1599 * 100vw);
    --size95px: calc(95 / 1599 * 100vw);
    --size100px: calc(100 / 1599 * 100vw);
    --size105px: calc(105 / 1599 * 100vw);
    --size110px: calc(110 / 1599 * 100vw);
    --size115px: calc(115 / 1599 * 100vw);
    --size120px: calc(120 / 1599 * 100vw);
    --size125px: calc(125 / 1599 * 100vw);
    --size130px: calc(130 / 1599 * 100vw);
    --size135px: calc(135 / 1599 * 100vw);
    --size140px: calc(140 / 1599 * 100vw);
    --size145px: calc(145 / 1599 * 100vw);
    --size150px: calc(150 / 1599 * 100vw);
    --size160px: calc(160 / 1599 * 100vw);
    --size170px: calc(170 / 1599 * 100vw);
    --size180px: calc(180 / 1599 * 100vw);
    --size190px: calc(190 / 1599 * 100vw);
    --size200px: calc(200 / 1599 * 100vw);
}
}

.mgt0{
	 margin-top: 0px!important;
}
.mgt10{
	 margin-top: 10px!important;
}
.mgt20{
	 margin-top: 20px!important;
}
.mgt30{
	 margin-top: 30px!important;
}
.mgt40{
	 margin-top: 40px!important;
}
.mgt50{
	 margin-top: 50px!important;
}
.mgt60{
	 margin-top: 60px!important;
}
.mgt100{
	 margin-top: 100px!important;
}
.mgt150{
	 margin-top: 150px!important;
}
.mgt200{
	 margin-top: 200px!important;
}


.mgb0{
	 margin-bottom: 0px!important;
}
.mgb10{
	 margin-bottom: 10px!important;
}
.mgb20{
	 margin-bottom: 20px!important;
}
.mgb30{
	 margin-bottom: 30px!important;
}
.mgb40{
	 margin-bottom: 40px!important;
}
.mgb50{
	 margin-bottom: 50px!important;
}
.mgb60{
	 margin-bottom: 60px!important;
}
.mgb80{
	 margin-bottom: 80px!important;
}
.mgb100{
	 margin-bottom: 100px!important;
}
.mgb150{
	 margin-bottom: 150px!important;
}
.mgb200{
	 margin-bottom: 200px!important;
}



.mgr0{
	 margin-right: 0px!important;
}
.mgr10{
	 margin-right: 10px!important;
}
.mgr20{
	 margin-right: 20px!important;
}
.mgr30{
	 margin-right: 30px!important;
}
.mgr40{
	 margin-right: 40px!important;
}
.mgr50{
	 margin-right: 50px!important;
}
.mgr60{
	 margin-right: 60px!important;
}
.mgr100{
	 margin-right: 100p!importantx;
}
.mgr150{
	 margin-right: 150px!important;
}
.mgr200{
	 margin-right: 200px!important;
}


.mgl0{
	 margin-left: 0px!important;
}
.mgl10{
	 margin-left: 10px!important;
}
.mgl20{
	 margin-left: 20px!important;
}
.mgl30{
	 margin-left: 30px!important;
}
.mgl40{
	 margin-left: 40px!important;
}
.mgl50{
	 margin-left: 50px!important;
}
.mgl60{
	 margin-left: 60px!important;
}
.mgl100{
	 margin-left: 100p!importantx;
}
.mgl150{
	 margin-left: 150px!important;
}
.mgl200{
	 margin-left: 200px!important;
}

.pd05{
    padding: 0px 5px;
}

@media screen and (max-width: 750px) {
.mgt0{
	 margin-top: 0px!important;
}	
.mgt10{
	 margin-top: 5px!important;
}	
.mgt20{
	 margin-top: 10px!important;
}	
.mgt30{
	 margin-top: 15px!important;
}
.mgt40{
	 margin-top: 20px!important;
}
.mgt50{
	 margin-top: 25px!important;
}	
.mgt60{
	 margin-top: 30px!important;
}
.mgt100{
	 margin-top: 50px!important;
}
.mgt150{
	 margin-top: 90px!important;
}
.mgt200{
	 margin-top: 100px!important;
}
	
.mgb0{
	 margin-bottom: 0px!important;
}		
.mgb10{
	 margin-bottom: 5px!important;
}	
.mgb20{
	 margin-bottom: 10px!important;
}	
.mgb30{
	 margin-bottom: 15px!important;
}	
.mgb40{
	 margin-bottom: 20px!important;
}
.mgb50{
	 margin-bottom: 25px!important;
}	
.mgb60{
	 margin-bottom: 30px!important;
}
.mgb80{
	 margin-bottom: 40px!important;
}	
.mgb100{
	 margin-bottom: 50px!important;
}
.mgb150{
	 margin-bottom: 90px!important;
}
.mgb200{
	 margin-bottom: 100px!important;
}

	
.mgr0{
	 margin-right: px!important;
}
.mgr10{
	 margin-right: 5px!important;
}
.mgr20{
	 margin-right: 10px!important;
}
.mgr30{
	 margin-right: 20px!important;
}
.mgr40{
	 margin-right: 20px!important;
}
.mgr50{
	 margin-right: 25px!important;
}
.mgr60{
	 margin-right: 30px!important;
}
.mgr100{
	 margin-right: 50p!importantx;
}
.mgr150{
	 margin-right: 90px!important;
}
.mgr200{
	 margin-right: 100px!important;
}


.mgl0{
	 margin-left: 0px!important;
}	
.mgl10{
	 margin-left: 5px!important;
}
.mgl20{
	 margin-left: 10px!important;
}
.mgl30{
	 margin-left: 20px!important;
}
.mgl40{
	 margin-left: 20px!important;
}
.mgl50{
	 margin-left: 25px!important;
}
.mgl60{
	 margin-left: 30px!important;
}
.mgl100{
	 margin-left: 50p!importantx;
}
.mgl150{
	 margin-left: 90px!important;
}
.mgl200{
	 margin-left: 100px!important;
}	
}	
	
.tac {
    text-align: center;
}

.jcc {
    justify-content: center;
}


.flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.flex.rgt {
   justify-content: flex-start;
}
.flex.lft {
    justify-content: flex-end;
}


.fz24 {
    font-size: 24px;
}
@media screen and (max-width: 750px) {
.fz24 {
    font-size: 18px;
}
}

/*パララックス*/
#parallax{
	/*headerを全画面で見せる*/
	width:100%;
	height: 70vh;
	position: relative;
} 

#parallax:before{
	/*headerの疑似要素に背景画像を指定*/
	content:"";
	position:fixed;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	height: 100vh;
	background:url("../img/sub/clinic-paralla.jpg") no-repeat center;/*背景画像設定※オリジナル画像を設定してください*/
	background-size:cover;
}

#container-about{
	/*下のかぶさるエリアの指定*/
	position: relative;
	z-index:1;
	/*以下はレイアウトのための記述。削除可能*/
	background:#fff;
	padding:30px 0 100px;
}

/*スクロールダウン全体の場所*/
.scrolldown1{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	left:50%;
	bottom:10px;
    /*全体の高さ*/
	height:50px;
}

/*Scrollテキストの描写*/
.scrolldown1 span{
    /*描画位置*/
	position: absolute;
	left:-15px;
	top: -15px;
    /*テキストの形状*/
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.05em;
}

/* 線の描写 */
.scrolldown1::after{
	content: "";
    /*描画位置*/
	position: absolute;
	top: 0;
    /*線の形状*/
	width: 1px;
	height: 30px;
	background: #fff;
    /*線の動き1.4秒かけて動く。永遠にループ*/
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}


@media screen and (max-width: 750px) {
.scrolldown1 span{
    /*描画位置*/
	position: absolute;
	left:-15px;
	top: -15px;
    /*テキストの形状*/
	font-size: 10px;
	letter-spacing: 0.05em;
}
}


/* reset img
-----------------------------------------------------------------*/
img {
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
  height: auto;
  max-width: 100%;
}

main.main.about {
  display: block;
}

@media screen and (min-width: 961px) {
  .pc-none {
    display: none !important;
  }
}

@media (max-width: 960px) and (min-width: 751px) {
  .tb-none {
    display: none !important;
  }
}

@media screen and (max-width: 750px) {
  .sp-none {
    display: none !important;
  }
}

@media (max-width: 750px) {
  .pc {
    display: none !important;
  }
}

@media (min-width: 751px) {
  .sp {
    display: none !important;
  }
}

.tb-over {
  display: none;
}
@media screen and (min-width: 959px) {
  .tb-over {
    display: block;
  }
}

.tb-under {
  display: none;
}
@media screen and (max-width: 959px) {
  .tb-under {
    display: block;
  }
}

/********************************************************************************/


.mv-sub {
	display: flex;
    justify-content: center;
    align-items: center;
    height: 250px;
   /* margin-bottom: 150px;*/
    background: lab(91 0.02 0 / 0.53);
	color: #4a605c;
	font-family: 'Noto Serif JP', serif;
}
.inner {
	width: 90%;
	margin-left: auto;
    margin-right: auto;
}
.inner1340 {
    max-width: 1340px;
	width: 90%;
    margin: 0 auto;
}
.inner800 {
    max-width: 800px;
	width: 90%;
    margin: 0 auto;
}

h1.mv-sub-ttl {
    font-size:3rem;
	font-weight: 400;
	margin-top: 100px;
}

h2.ttl{
    background: linear-gradient(270deg, #5adbcf, #33afd2);;
    color: #fff!important;
    font-weight: 500;
    font-style: normal;
    font-size: 2.5rem;
    letter-spacing: .1em;
    padding-bottom: var(--size25px);
    padding-top: var(--size25px);
    text-align: center;
    margin-bottom: calc(60 / 1920 * 100vw);
	position: relative;
}

h2.ttl:before {
    position: absolute;
    content: "";
    background: url(../img/hdg3_deco01.svg) no-repeat left center / cover;
    width: calc(131 / 1920*100vw);
    height: calc(120 / 1920*100vw);
    left: 0;
    bottom: 0;
    top: 0;
    margin: auto;
	z-index: 100;
}

h2.ttl:after {
    position: absolute;
    content: "";
    background: url(../img/hdg3_deco02.svg) no-repeat left center / cover;
    width: calc(131 / 1920*100vw);
    height: calc(120 / 1920*100vw);
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
	z-index: 100;
}


@media (max-width: 1500px) {
.mv-sub {
    height: 250px;
}
h1.mv-sub-ttlh1.mv-sub-ttl {
    font-size: 3.5rem;
    font-weight: 400;
    margin-top: 50px;
}	
}


@media (max-width: 750px) {
.mv-sub {
    height: 200px;
}
h1.mv-sub-ttl {
    font-size: 6rem;
    font-weight: 400;
	margin-top: 70px;
}	
}


/* ここにCSSコードを追加

例:
.example {
    color: red;
}

CSS の知識に磨きをかけるためにご覧ください。
http://www.w3schools.com/css/css_syntax.asp

コメント終わり */ 


section.test {
    padding: 600px 0px;
    background: #195f7d;
}

div.drop-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: 200px;
  width: 200px;
}


div.drop {
  position: absolute;
  top: -25%;
  width: 100%;
  height: 100%;
  border-radius: 100% 5% 100% 100%;
  transform: rotate(-45deg);
  margin: 0px;
  background: deepskyblue;
  animation: drip 4s forwards;
  z-index: 2;	
}

section.test h1 {
  color: white;
  position: absolute;
  font-size: 4em;
  height: 1.5em;
  top: 0; left: 0; right: 0; bottom: 0;
  z-index: 3;
  margin: auto;
  text-align: center;
  opacity: 0;
  animation: appear 2s 2.5s forwards;
}

@keyframes appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

div.drop-container:before,
div.drop-container:after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 55%;
  right: 50%;
  transform: translate(50%) rotateX(75deg);
  border-radius: 100%;
  opacity: 0;
  width: 75%;
  height: 75%;
  border: 5px solid #00bfff;
  animation: dripple 2s ease-out 1s;
}

div.drop-container:after {
  animation: dripple 2s ease-out 1.7s;
}

@keyframes drip {
  45% {
    top: 0;
    border-radius: 100% 5% 100% 100%;
    transform: rotate(-45deg);
  }
  100% {
    top: 0;
    transform: rotate(0deg);
    border-radius: 100%;
  }
}

@keyframes dripple {
  0% {
    width: 150px;
    height: 150px;
  }
  25% {
    opacity: 1;
  }
  100% {
    width: 500px;
    height: 500px;
    top: -20%;
    opacity: 0;
  }
}


/*診療メニュー */

h3.ttl {
    text-align: center;
    font-size: 2.5rem;
    margin: 100px 0px;
    display: block;
    font-family: "Shippori Mincho", serif;
    background: #ccc0a9;
    color: #fff;
    padding: 35px 0px;
    position: relative;
    z-index: 1;
}
h3.ttl:before, h3.ttl:after {
    position: absolute;
    content: "";
    background: url(../img/common/ttl-sride01.png) repeat left center / auto;
    width: calc(500 / 1920* 100vw);
    height: calc(90 / 1920* 100vw);
    left: 0;
    top: 0;
}
h3.ttl:after {
    left: auto;
    top: auto;
    bottom: 0;
    right: 0;
}

.txt_center {
    text-align: center;
}
p.text {
    margin-bottom: 1.5rem;
    line-height: 1.9;
    letter-spacing: 0.5px;
	font-weight: 500;
}

.two-coulum {
    display: flex;
    justify-content: space-between;
}
.three-coulum {
    display: flex;
}

.coulum20 {
    width: 15%;
}
.coulum30 {
    width: 28%;
}
.coulum40 {
    width: 35%;
}
.coulum50 {
    width: 45%;
}
.coulum60 {
    width: 55%;
}
.coulum70 {
    width: 65%;
}
.coulum80 {
    width: 75%;
}

.aic {
    align-items: center;
}











@media only screen and (min-width: 768px) and (max-width: 1599px){
h3.ttl {
    text-align: center;
    font-size: 3rem;
}	
h3.ttl:before, h3.ttl:after {
    width: calc(460 / 1599* 100vw);
    height: calc(50 / 1599* 100vw);
}
}

@media screen and (max-width: 750px) {
h3.ttl {
    margin: 60px 0px 30px; 
	font-size: 5.5rem;
	
}		
.two-coulum {
    display: flex;
    justify-content: space-around;
	flex-direction: column;
}
	
.coulum20 {
    width: 100%;
}	
.coulum30 {
    width: 100%;
}
.coulum40 {
    width: 100%;
}	
.coulum50 {
    width: 100%;
	margin-bottom: 20px;
}	
.coulum60 {
    width: 100%;
	margin-bottom: 40px;
}
.coulum70 {
    width: 100%;
}
.coulum80 {
    width: 100%;
}	

p.text {
    margin-bottom: 15px;
    line-height: 1.9;
    letter-spacing: 0.5px;
}	
}


.content.news p {
    line-height: 1.5;
    margin-bottom: 20px;
}
.content.news strong {
    font-weight: 600;
}
.edit-post-layout__metaboxes {
    clear: both;
    flex-shrink: 0;
    margin-top: 500px!important;
}
.content.news a {
    text-decoration: underline;
    color: #27c5b4;	
}
.content.news a:hover {
    text-decoration: underline;
	color: #bbddd4;
}
@media screen and (max-width: 750px) {
.content.news p {
    line-height: 1.7;
    margin-bottom: 20px;
}
}	
	

/*こんなお悩みはありませんかbox*/
section.contents.onayami {
    margin: 200px 0px 100px 0px;
}
.onayami-wrap {
    background: url(../img/sub/bk01.jpg) repeat left top / calc(400 / 1920* 100vw);
    position: relative;
	height: 450px;
	margin-bottom: -180px;
}
.onayami-box {
    background: #6ccad3;
    padding: 3rem 5rem;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -20%);
    width: 1340px;
	border-radius: 20px;
}
p.onayami-ttl {
    background: #fff;
    padding: 15px 0px;
    text-align: center;
    color: #6ccad3;
    font-size: 1.5rem;
    margin-bottom: 30px;
}
ul.onayami-list {
    display: flex;
	flex-wrap: wrap;
	color: #fff;
}
.onayami-list li {
    max-width: 545px;
    width: 49%;
    padding-left: calc(45 / 1920* 100vw);
    padding-bottom: calc(20 / 1920* 100vw);
    position: relative;
    line-height: 1.5;
}
.onayami-list:not(:first-child) {
    margin-top: calc(14 / 1920* 100vw);
}
.onayami-list li:before {
	content: "";
    position: absolute;
    background: url(../img/sub/check.svg) no-repeat center / cover;
    width: calc(25 / 1920* 100vw);
    height: calc(25 / 1920* 100vw);
    top: .2em;
    border-radius: 0;
	left: 0;
}

@media only screen and (min-width: 750px) and (max-width: 1599px){
.onayami-wrap {
    height: 300px;
	margin-bottom: -190px;
}
.onayami-box {
    transform: translate(-50%, -40%);
    width: 90%;
}
p.onayami-ttl {
    font-size: 2.3rem;
}
.onayami-list li:before {
    width: calc(25 / 1599* 100vw);
    height: calc(25 / 1599* 100vw);
    top: .2em;
}	
}	

@media screen and (max-width: 750px) {
section.contents {
	margin: 60px 0px;
}
ul.onayami-list {
    flex-direction: column;
}	
.onayami-wrap {
    height: 270px;
}
.onayami-list li {
    max-width: 545px;
    width: 100%;
    padding-left: calc(45 / 750* 100vw);
    padding-bottom: calc(20 / 750* 100vw);
    position: relative;
    line-height: 1.5;
}	
.onayami-box {
    transform: translate(-50%, -40%);
    width: 90%;
	padding: 30px 20px;
}
p.onayami-ttl {
    font-size: 4.8rem;
}
.onayami-list li:before {
    width: calc(25 / 750* 100vw);
    height: calc(25 / 750* 100vw);
    top: .3em;
}		
}

/*こんなお悩みはありませんか？*/

section.contents.bk01 {
    margin: -50px 0px 0px;
    background: url(../img/sub/bk01.jpg) repeat left top / calc(400 / 1920* 100vw);
    height:140px;
}
h3.ttl02 {
    text-align: center;
	font-size: 4rem;
    margin: 100px 0px;
    display: block;
    font-family: "Shippori Mincho", serif;
    color: #727272;
}
h3.ttl02 span {
    font-size: 1.8rem;
}
h3.ttl02 {
  position: relative;
}
h3.ttl02.syoinshin {
    margin: 140px 0px 0px 0px;
    line-height: 1;
}
h3.ttl02.syoinshin:before {
    position: absolute;
    content: url(../img/sub/sonoonayami.png);
    transform: scale(0.5);
    width: 100%;
    height: 100%;
    top: -160px;
    left: 0px;
}
h3.ttl02.syoinshin:after {
    content: "";
    background: #727272;
    width: 1px;
    height: calc(60 / 1920* 100vw);
    margin: calc(30 / 1920* 100vw) auto 0;
    display: block;
}
ul.four-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
ul.four-list li {
    width: 23%;
}
.white-box {
    background: #fff;
    padding: 5rem 3rem;
    border-radius: 30px;
	margin-bottom: 100px;
}
.gray-box {
    background: #f1f1f1;
    padding: 5rem 3rem;
    border-radius: 30px;
	margin-bottom: 100px;
}
.four-coulum {
    display: flex;
	flex-wrap: wrap;
    justify-content: space-around;
}
.four-coulum figure {
    width: 24%;
}
.four-coulum figcaption {
    margin-top: 10px;
}
h4.ttl {
    font-size: 2.3rem;
    font-family: "Shippori Mincho", serif;
    border-left: solid 4px #77c3b1;
    padding: 0px 0px 0px 25px;
    margin: 30px 0px;
}
h4.ttl02 {
    font-size: 2.3rem;
    font-family: "Shippori Mincho", serif;
    margin: 50px 0px;
    padding: 0px 0px 20px;
    text-align: center;
    border-bottom: dotted 2px #27c5b4;
}
h5.ttl {
    font-size: 1.6rem;
    color: #77c3b1;
    margin: 30px 0px;
}
h5.ttl02 {
    font-size: 1.8rem;
    color: #77c3b1;
    margin: 30px 0px;
}
.h5small {
    font-size: 19px;
}
h3.gentei-ttl {
    font-weight: 600;
    display: inline-block;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: solid 1px #c6c6c6;
}



@media only screen and (min-width: 750px) and (max-width: 1599px){
	h3.ttl02.syoinshin {
    margin: 190px 0px 0px 0px;
    line-height: 1;
}
	h3.ttl02.syoinshin:before {
    transform: scale(0.4);
    width: 100%;
    height: 100%;
    top: -130px;
    left: 0px;
}
h3.ttl02 {
    font-size: 5rem;
    margin: 100px 0px;
}
h3.ttl02 span {
    font-size: 2.3rem;
}
h4.ttl {
    font-size: 2.8rem;
	margin: 30px 0px 20px;
	padding: 0px 0px 0px 20px;	
}
h4.ttl02 {
    font-size: 2.8rem;
}	
h5.ttl {
    font-size: 3rem;
    margin: 30px 0px;
}
.h5small {
    /*font-size: 2.3rem;*/
	font-size: max(2.3rem, 18px);
}	
h5.ttl02 {
    font-size: 3.5rem;
    margin: 30px 0px;
}		
}

@media screen and (max-width: 750px) {
section.contents.bk01 {
    padding: 20px 0px 0px;
}	
h3.ttl02.syoinshin:before {
    transform: scale(0.3);
}
h3.ttl02.syoinshin {
    margin: 50px 0px 0px 0px;
    line-height: 1;
}	
h3.ttl02.syoinshin:before {
    transform: scale(0.3);
    top: -110px;
}	
h3.ttl02 {
    text-align: center;
    font-size: 8rem;	
}
h3.ttl02 span {
    font-size: 5rem;
}
h3.ttl02.syoinshin:after {
    height: calc(60 / 750* 100vw);
    margin: calc(30 / 750* 100vw) auto 0;
}
.four-coulum figure {
    width: 48%;
}
.four-coulum figcaption {
    margin: 10px 0px 20px 0px;
}
.white-box {
	margin-bottom: 60px;
}	
h4.ttl {
    font-size: 6.5rem;
	margin: 30px 0px 20px;
    padding: 0px 0px 0px 15px;	
}
h4.ttl02 {
    font-size: 5.5rem;
    margin: 30px 0px 20px;	
}	
h5.ttl {
    font-size: 5.7rem;
    margin: 20px 0px;
}
.h5small {
   font-size: max(1rem, 12px);
}		
h5.ttl02 {
    font-size: 5rem;
    margin: 20px 0px;
}
span.nansei {
   font-size: max(3rem, 14px);
}	
}	

/*施術の流れ*/
.step-ttl {
    font-size: 2rem;
    margin-bottom: 20px;
    font-family: "Shippori Mincho", serif;
    color: #ccc0a9;
    border-bottom: solid 1px #ccc0a9;
    padding: 20px;
}

@media only screen and (min-width: 750px) and (max-width: 1599px){
	.step-ttl {
    font-size: 2.8rem;
    padding: 20px;
}
}
@media screen and (max-width: 750px) {
.step-ttl {
    font-size: 5rem;
    padding: 20px 10px 10px 10px;
}
}


/*医院案内*/
p.tac.about-logo img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    color: #fff;
    text-shadow: 0 0 15px #666;
    text-align: center;
}

h3.ttl2 {
    text-align: center;
    font-size: 3rem;
    margin: 100px 0px;
    color: #595959;
    letter-spacing: .1em;
    background: url(../img/sub/bdr_hdg3.png) no-repeat center bottom / auto;
    padding: 0px 0px 20px;
    position: relative;
    z-index: 1;
    margin: 80px 0px;
    font-family: 'Shippori Mincho', serif;
}
p.map a {
    border: solid 1px #333333;
    color: #858585;
    padding: 2px 20px;
    font-size: 12px;
}
p.map a:hover{
    background: #aaaaaa;
	color: #fff;
    border-radius: 0px;
}
.map span {
    padding-right: 5px;
}
.map span img {
	height: 100%;
    width: 10px;
	padding-bottom: 5px;
    vertical-align: middle;
}
.clinic-photo {
    background: url(../img/sub/lase03.png) #f3f3e9 center;
    padding: 20px 0px 100px;
    margin-top: 150px;
}


@media only screen and (min-width: 768px) and (max-width: 1599px){
h3.ttl2 {
    text-align: center;
    font-size: 4rem;
}	
}

@media screen and (max-width: 750px) {
p.tac.about-logo img {
    width: 50%;
}	
h3.ttl2 {
    margin: 0px 0px 30px; 
	font-size: 7rem;
}	
p.pd05 {
    padding: 0px 5px;
}
p.map a {
    border: solid 1px #333333;
    color: #858585;
    padding: 2px 15px;
    font-size: 10px;
}
.map span img {
	height: 100%;
    width: 8px;
	padding-bottom: 5px;
    vertical-align: middle;
}	
}


section.instagam {
    margin-bottom: 100px;
}
.topic-wrap{
 background: #e2f5f0;
 padding: 2rem;	
}
.topic-box{
 border: solid 1px #fff;
 padding: 50px 30px;	
}
.coulum-wrap{
	display: flex;
    justify-content: space-around;
	align-items: center;
}
.coulum-50{
	width: 48%
}
.topic-ttl {
    font-size: 30px;
    margin: 10px 0px 20px;
    text-align: center;
}
.contents-ttl {
    display: inline-block;
    border: solid 1px;
    padding: 8px 15px;
    margin: 10px 15px 10px 10px;
	width: 30%;
    text-align: center;
}
p.contents-text {
    width: 60%;
}
.topic-ttl:before {
    content: url(../img/top/nairan-img.png);
	margin: 10px 15px 0px;
}
.topic-ttl:after {
    content: url(../img/top/nairan-img2.png);
	margin: 10px 15px 0px;
}

.contents-box {
    display: flex;
    align-items: center;
	justify-content: space-around;
}
span.day-size {
    font-size: 2.5rem;
}

.box27 {
    position: relative;
	margin: 3em 0;
    padding: 1em 1em;
    /*border: solid 3px #fdd736;*/
}
.box27 .box-title {
   position: absolute;
    display: inline-block;
    top: -40px;
    left: -3px;
    padding: 15px 9px;
    height: 40px;
    line-height: 10px;
    font-size: 17px;
    background: #fdd736;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}

.check ul, {
  border: solid 2px #ffb03f;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
  width: 100%!important;
}

 .box27 ul {
  padding: 0.5em 1em 0.5em 3em;
  position: relative;
  width: 100%!important;
}

.check ul li, .box27 ul li {
  line-height: 1.9;
  padding: 0.8em 0;
  list-style-type: none!important;/*ポチ消す*/
}

.service-cont .c-inner .service-box .box27 ul li:before {
  font-family: FontAwesome;
  content: "\f00c";
  position: absolute;
  left : 1em; /*左端からのアイコンまで*/
  color: #bbddd4; /*アイコン色*/
}

.box27 ul li:before  {
  font-family: FontAwesome;
  content: "\f00c";
  position: absolute;
  left : 1.5em; /*左端からのアイコンまで*/
  color: #bbddd4; /*アイコン色*/
}

section.nairan {
    margin: 60px 0px;
}
span.tel-link {
    color: #333333;
    border-bottom: solid 1px #77c3b1;
}
.contents-link {
    text-align: center;
    margin-top: 20px;
    border-top: dotted 2px #77c3b1;
    padding-top: 20px;
	font-size: 17px;
}
.contents-link a {
	position: relative;
	color: #d57070;
}
.contents-link a:after { 
  font-family: FontAwesome;	
  content: "\f0a9";/*アイコンの種類*/
  position: absolute;
  right : -1.5em;/*左端からのアイコンまでの距離*/
  color: #d57070;/*アイコン色*/
}
.contents-link a:hover {
	  color: #f5c0c0;/*アイコン色*/
}
.yoyaku-wrap {
    margin: 30px;
}
.yoyaku-wrap ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.yoyaku-wrap ul li {
    width: 33%;
}
.yoyaku-wrap li a {
	font-size: 22px;
	font-family: "Shippori Mincho", serif;
    background: #77c3b1;
    color: #fff;
    padding: 35px 0px;
    width: 95%;
    display: block;
	text-align: center;
	border-bottom: 5px solid #5e9185;
	-webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.yoyaku-wrap li a:hover {
    margin-top: 3px;
    color: #fff;
    background: #77c3b1;
    border-bottom: 2px solid #5e9185;
}


@media screen and (max-width: 1000px) {
.yoyaku-wrap li a {
    font-size: 20px;
    padding: 35px 0px;
    width: 100%;
}	
}


@media screen and (max-width: 750px) {
section.nairan {
    margin: 60px 0px 100px 0px;
}	
.contents-box {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-direction: column;
}
.contents-ttl {
    width: 100%;
	font-size: 15px;
}
p.contents-text {
    width: 100%;
    font-size: 15px;
	line-height:1.7;
}
.topic-ttl {
    font-size: 20px;
}	
.topic-box{
 border: solid 1px #fff;
 padding: 10px 20px 40px;
}	
span.tel-link {
	font-size: 16px;
}	
.box27 ul {
    padding: 0.5em 1em 0.5em 1.5em;

}
.box27 ul li:before {
    left: 0em;
}
.yoyaku-wrap {
    margin: 30px 0px;
}	
.yoyaku-wrap ul li {
    width: 100%;
	margin:5px 0px;
}
.yoyaku-wrap li a {
    font-size: 18px;
    padding: 25px 0px;
    width: 100%;
}	
}	

/* 美容料金 */
.price table{
	    margin-bottom: 80px;
}
.campaign_box h2 {
	position: relative;
    padding: 0px 0px 5px;
    text-align: center;
    font-size: 24px;
    margin-bottom: 30px;
    color: #27c5b4;
}
.campaign_box h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 3px;
  content: '';
  border-radius: 3px;
  background: #27c5b4;
}
.tablepress>:where(thead,tfoot)>*>th {
	background-color:#bbddd4 !important;
}
.row-1 td.column-1,.row-1 td.column-2 {
    font-weight: 500;
}

td.column-1 {
    background: #eef9f6 !important;
    color: #333;
}
.tablepress>*+tbody>*>*, .tablepress>tbody>*~*>*, .tablepress>tfoot>*>* {
    border-top: 1px solid #d0d0d0!important;
    padding: 15px 10px 15px 30px!important;	
	font-weight: 500;
}
.tablepress>:where(thead,tfoot)>*>th {
    padding: 15px 10px 15px 30px!important;	
}
.beauty .subtop_h3{
	    background-color: #615e70;	
}
.campaign_box{
	text-align: center;
    margin: 50px 0px;
    background-color: #f0f9f5;
    padding: 30px;
	
}

tr.row-1.odd .column-1,tr.row-1.odd .column-2,tr.row-1.odd .column-3,tr.row-1 .column-3,tr.row-1 .column-2,tr.row-1 .column-1{
    text-align: center;
}

table#tablepress-1 td.column-2 {
    text-align: right;
}
table#tablepress-2 td.column-2 {
    text-align: right;
}
table#tablepress-3 td.column-2 {
    text-align: right;
}
table#tablepress-4 td.column-2 {
    text-align: right;
}
table#tablepress-5 td.column-2 {
    text-align: right;
}
table#tablepress-6 td.column-2 {
    text-align: right;
}
table#tablepress-7 td.column-2 {
    text-align: right;
}
table#tablepress-8 td.column-2 {
    text-align: right;
}
table#tablepress-9 td.column-3 {
    text-align: right;
}
table#tablepress-9 td.column-2 {
    text-align: center;
}
table#tablepress-10 td.column-2{
    text-align: right;
}
table#tablepress-11 td.column-2 {
    text-align: right;
}
table#tablepress-12 td.column-2 {
    text-align: right;
}

table#tablepress-13 td.column-3 {
    text-align: right;
}
table#tablepress-13 td.column-2 {
    text-align: center;
}
table#tablepress-14 td.column-3 {
    text-align: right;
}
table#tablepress-14 td.column-2 {
    text-align: center;
}
table#tablepress-15 td.column-3 {
    text-align: right;
}
table#tablepress-15 td.column-2 {
    text-align: center;
}
table#tablepress-16 td.column-2 {
    text-align: right;
}
table#tablepress-17 td.column-2 {
    text-align: right;
}
table#tablepress-18 td.column-2 {
    text-align: right;
}
table#tablepress-19 td.column-2 {
    text-align: right;
}
table#tablepress-20 td.column-2 {
    text-align: right;
}
table#tablepress-21 td.column-2 {
    text-align: right;
}
table#tablepress-22 td.column-3 {
    text-align: right;
}
table#tablepress-22 td.column-2 {
    text-align: center;
}
table#tablepress-23 td.column-3 {
    text-align: right;
}
table#tablepress-23 td.column-2 {
    text-align: center;
}
table#tablepress-26 td.column-2 {
    text-align: right;
}
table#tablepress-27 td.column-2 {
    text-align: center;
}
table#tablepress-27 td.column-3 {
    text-align: right;
}
table#tablepress-29 td.column-2 {
    text-align: right;
}


@media screen and (max-width: 600px) {
.price table{
	    margin-bottom:30px;
}
.campaign_box h2 {
	position: relative;
    padding: 0px 0px 5px;
    text-align: center;
    font-size: 18px;
    margin-bottom: 30px;
    color: #27c5b4;
}
.campaign_box h2:before {
  width: 40px;
  height: 2px;
}
.campaign_box {
    text-align: center;
    margin: 30px 0px 60px;
    background-color: #f0f9f5;
    padding: 30px 10px;
}
.tablepress>*+tbody>*>*, .tablepress>tbody>*~*>*, .tablepress>tfoot>*>* {
    border-top: 1px solid #d0d0d0!important;
    padding: 15px 10px 15px 10px!important;	
	font-weight: 500;
}
.tablepress>:where(thead,tfoot)>*>th {
    padding: 15px 10px 15px 10px!important;	
}	
}


.date {
    margin-bottom: 20px;
}

/*check-listは緑背景に〇*/
.check-list ul {
    list-style: circle;
    padding-left: 3.5rem;
    line-height: 1.7;
}
.check-list ul li {
	margin-bottom: 10px;
}

/*list01は緑●に✓のアイコン*/
.list01 ul {
    padding-left: 2rem;
    line-height: 2.3;
}
.list01 ul li {
	position: relative; /* 相対位置 */
	padding-left: 30px; /* アイコンの幅に合わせてテキストの開始位置を調整 */	
}
.list01 ul li:before {
	font-family: "Font Awesome 5 Free";	
	content:"\f058";
	font-weight:900;
	padding-right:10px;
	color:#bbddd4;
	position: absolute; /* 絶対位置 */
    left: 0; /* 左から0の位置 */
    top: 0; /* 上から0の位置 */	
}
.list01 ul li {
    line-height: 1.9;
}
.check-list {
    background: #eaf8f5;
    padding: 30px 50px;
    margin: 20px;
    border-radius: 10px;
}
span.bk-line01 {
    background: #fff8d4;
}

/*list02は人型のアイコン*/
.list02 ul {
padding-left: 2rem;
}	
.list02 ul li {
	line-height:1.7;
	margin-bottom:10px;
	position: relative; /* 相対位置 */		
    padding-left: 30px;
}
.list02 ul li:before {
	font-family: "Font Awesome 5 Free";	
	content:"\f2bd";
	padding-right:10px;
	color:#a0a0a0;
	position: absolute; /* 絶対位置 */
    left: 0; /* 左から0の位置 */
    top: 0; /* 上から0の位置 */	
}

/*list03は黄色●に！*/
.list03 ul {
padding-left: 2rem;
}
.list03 ul li {
	line-height:1.7;
	margin-bottom:10px;
	position: relative; /* 相対位置 */		
    padding-left: 30px;
}
.list03 ul li:before {
	font-family: "Font Awesome 5 Free";	
	content:"\f06a";
	font-weight:900;	
	padding-right:10px;
	color:#f0c95a;
	position: absolute; /* 絶対位置 */
    left: 0; /* 左から0の位置 */
    top: 0; /* 上から0の位置 */	
}

/*数字*/
.list04 {
    padding-left: 10px;
}
.list04 ul {
padding-left: 2rem;
}
.list04 ul li {
	line-height:1.7;
	margin-bottom:10px;
	position: relative; /* 相対位置 */		
    padding-left: 10px;
	list-style: decimal;
}

/*list-box01は背景ベージュに！黄色●に！*/
.list-box01 {
    background: #f8f5e6;
    padding: 30px 50px;
}
.list-box01 ul {
    padding-left: 2rem;
  display: grid;
  width: fit-content;
  column-gap: 2em;
  grid-template-columns: repeat(4, auto);
}
.list-box01 ul li {
	line-height:1.7;
	margin-bottom:10px;
	position: relative; /* 相対位置 */		
    padding-left: 30px;		
}
.list-box01 ul li:before {
	font-family: "Font Awesome 5 Free";	
	content:"\f111";
	font-weight:900;	
	padding-right:10px;
	color:#f0c95a;
	position: absolute; /* 絶対位置 */
    left: 0; /* 左から0の位置 */
    top: 0; /* 上から0の位置 */	
}

@media screen and (max-width: 1200px) {
.list-box01 ul {
  grid-template-columns: repeat(4, auto);	
}
}
@media screen and (max-width: 1000px) {
.list-box01 ul {
  grid-template-columns: repeat(3, auto);	
}
}

@media screen and (max-width: 768px) {
.list-box01 {
    background: #f8f5e6;
    padding: 30px 20px;
}	
.list-box01 ul {
  grid-template-columns: repeat(1, auto);	
}
}



table#tablepress-24 td.column-1,table#tablepress-24-no-2 td.column-1 {
    text-align: left;
    color: #6ccad3;
    background: #fff !important;
    border: none !important;
    padding: 15px 0px !important;
    font-weight: 500;		
}
table#tablepress-24 td.column-2,table#tablepress-24-no-2 td.column-2 {
    text-align: left;	
    background: #fff;
    border: none !important;
    padding: 15px 0px !important;	
    font-weight: 500;	
}


table#tablepress-25 td.column-1,table#tablepress-25 td.column-2,table#tablepress-28 td.column-1 {
    text-align: center;
    color: #333333;
    background: none !important;
    border: none !important;
	padding: 8px 0px !important;	
}
.career {
    background: #eefffb;
	padding:30px 0px;
}


@media screen and (max-width: 767px) {
table#tablepress-25 td.column-2,table#tablepress-28 td.column-1  {
    text-align: left;
}
}	
	
@media screen and (max-width: 767px) {
.check-list ul {
    padding-left: 11rem;
}
.check-list {
    background: #eaf8f5;
    padding: 30px 0px;
    margin: 0px;
    border-radius: 10px;
}
.list01 ul li {
    line-height: 1.7;
    margin-bottom: 15px;	
}
table#tablepress-24-no-2 td.column-1,table#tablepress-24-no-2 td.column-2 {
    padding: 0px 15px;
}	
}


/* ▼キャプション付き画像全体を囲むボックスの装飾 */
figure {
    display: inline-block;   /* インラインブロック化 */
    margin: 0px 3px 7px 0px; /* 外側に余白を追加(※右に3px・下に7px) */
    background-color: #fff;  /* 背景色 */
}
/* ▼画像に対する装飾 */
figure img {
    display: block;          /* 余計な余白が出ないようにする */
    margin: 0px 0px 3px 0px; /* 下側にだけ3pxの余白を追加 */
}
/* ▼キャプションに対する装飾 */
figcaption {
    font-size: 0.9em;        /* 文字サイズを90%に */
    text-align: center;      /* 中身をセンタリング */
}


p.midashi-ttl {
    font-size: 30px;
    margin-bottom: 40px;
    line-height: 2;
    letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
p.midashi-ttl {
    font-size: 18px;
    margin-bottom: 40px;
    line-height: 2;
    letter-spacing: 2px;
}
}


/*医師紹介*/
.doctor-wrap {
    display: flex;
    align-items: flex-end;
    font-family: 'Shippori Mincho', serif;
    justify-content: space-around;
    margin-bottom: 60px;
}

.doctor-wrap-left {
	width: 35%;
}

.doctor-wrap-right {
    margin-bottom: 100px;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
}
.doctor-name-box01 {
    text-align: right;
}
.doctor-name-box02 {
    display: flex;
    align-items: center;
}
p.incho {
	font-size: 24px;
	background: #e1c7d5;
    color: #ffffff;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    letter-spacing: .1em;
    line-height: 1.14;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
}
p.name {
    font-size: 36px;
}
span.small {
    font-size: 24px;
}

@media screen and (max-width: 1200px) {
    .doctor-wrap {
        display: flex;
        align-items: center;
        font-family: 'Shippori Mincho', serif;
        flex-direction: column;
    }
    .doctor-wrap-left {
        margin: 0 auto;
    }
    .doctor-wrap-right {
        margin-bottom: 0px;
        margin-top: 30px;
    }
.doctor-wrap-left {
    width: 60%;
}
}

@media screen and (max-width: 767px) {
    p.incho {
        font-size:18px;
        width: 70px;
        height: 70px;
    }
    p.name {
        font-size: 26px;
    }
span.small {
    font-size: 16px;
}	
}

/* From Uiverse.io by JaydipPrajapati1910 */ 
button.instagram-btn {
  background: transparent;
  position: relative;
  padding: 5px 15px;
  display: flex;
  align-items: center;
  font-size: 17px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid #77c3b1;
  border-radius: 25px;
  outline: none;
  overflow: hidden;
  color: #77c3b1;
  transition: color 0.3s 0.1s ease-out;
  text-align: center;
  opacity: 0.8;	
}

button.instagram-btn span {
  margin: 10px;
}

button.instagram-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  content: '';
  border-radius: 50%;
  display: block;
  width: 20em;
  height: 20em;
  left: -5em;
  text-align: center;
  transition: box-shadow 0.5s ease-out;
  z-index: -1;
}

button.instagram-btn:hover {
  color: #fff;
  border: 1px solid #77c3b1;
}

button.instagram-btn:hover::before {
  box-shadow: inset 0 0 0 10em #77c3b1;
}

h3.top-news-article__ttl {
    font-size: 17px;
    margin-bottom: 20px;	
}
@media screen and (max-width: 767px) {
h3.top-news-article__ttl {
    font-size: 16px;
    margin-bottom: 20px;	
}
}	
	
/*ブログページ送り*/
.pagination {
    margin: 0px 0px 100px;
    text-align: center;
}

.page-archive a {
    font-weight: 500;
    letter-spacing: 2px;
    background: #bbddd4;
    padding: 15px 30px;
}
.nav-posts {
    display: flex;
    justify-content: center;
}

.page-next a {
    font-weight: 500;
    letter-spacing: 2px;
    background: #f7a05f;
    padding: 15px 30px;
    margin: 0px 20px;
}

.page-prev a {
    font-weight: 500;
    letter-spacing: 2px;
    background: #eeab25;
    padding: 15px 30px;
    margin: 0px 20px;
}
.page-archive {
    margin: 80px 0px;
}


/*ブログページ*/
.main-blog {
    margin-top: -25px;
}


h2.blog-ttl {
    text-align: left;
    font-size: 2.5rem;
    margin: 100px 0px;
    display: block;
    font-family: "Shippori Mincho", serif;
    background: #ccc0a9;
    color: #fff;
    padding: 35px 0px;
    position: relative;
    z-index: 1;
}
h2.blog-ttl span {
    display: block;
    max-width: 1000px;
    margin: 0 auto;
}
h2.blog-ttl:before, h2.blog-ttl:after {
    position: absolute;
    content: "";
    background: url(../img/common/ttl-sride01.png) repeat left center / auto;
    width: calc(200 / 1920 * 100vw);
    height: calc(90 / 1920 * 100vw);
    left: 0;
    top: 0;
}
h2.blog-ttl:after {
    left: auto;
    top: auto;
    bottom: 0;
    right: 0;
}
.main-blog h3 {
	font-size: 2.3rem;
    font-family: "Shippori Mincho", serif;
    border-left: solid 4px #77c3b1;
    padding: 0px 0px 0px 25px;
    margin: 30px 0px;	
}
.main-blog p {
    line-height: 1.8;
	margin-bottom: 30px;
}
.date {
    margin: 40px;
}
article.blog-archive-item .date {
    margin: 10px 0px;
}
article.blog-archive-item .blog-ttl {
    position: relative;	
	font-size: 1.5rem;
    font-family: "Shippori Mincho", serif;
    border-bottom: solid 3px #77c3b1;
	padding: 0px 0px 10px 0px;
    margin: 0px 0px;		
}
article.blog-archive-item .blog-ttl :hover{
	opacity: 0.6;
}
.link-arrow::after {
  right: 0;
  position: absolute;	
  content: '▶';
  margin-left: 25px;
  font-size: 0.9em;
  color: #666;
}
article.blog-archive-item {
    margin: 60px 0px;
}


@media only screen and (min-width: 768px) and (max-width: 1599px) {
   h2.blog-ttl {
        font-size: 3rem;
	    padding: 35px 15px;
	    margin: 50px 0px;
    }
h2.blog-ttl span {	
	width: 90%;
}
    .main-blog h3 {
        font-size: 2.8rem;
        margin: 30px 0px 20px;
        padding: 0px 0px 0px 20px;
    }	
article.blog-archive-item .blog-ttl {
        font-size: 1.5rem;
        margin: 30px 0px 20px;
        padding: 0px 0px 10px 20px;
    }
article.blog-archive-item {
    margin: 40px 0px;
}	
}

@media screen and (max-width: 750px) {
.date {
    margin: 30px;
}	
    h2.blog-ttl {
        margin: 60px 0px 30px;
        font-size: 5.5rem;
	    padding: 35px 15px;	
    }
h2.blog-ttl span {	
        width: 100%;
        padding: 0 15px;
    }
.main-blog p {
    line-height: 1.8;
	margin-bottom: 20px;
}
.main-blog h3 {
        font-size: 6.5rem;
        margin: 30px 0px 20px;
        padding: 0px 0px 0px 15px;
    }
article.blog-archive-item .blog-ttl	 {
        font-size: 3.5rem;
        margin: 30px 0px 20px;
        padding: 0px 0px 10px 15px;
    }
article.blog-archive-item {
    margin: 30px 0px;
}
}


/*Q＆A-------------------------------------------------------*/
.c-sec2__content {
    line-height: 1.75;
    padding: 0 30px;
    letter-spacing: 0.1em;
}

.about-qa {
    margin-bottom: 20px;
}

.about-qa-item {
    background: #e0ebe8;
    padding: 20px 22px 30px;
    letter-spacing: 0;
    border-radius: 10px;
}

.about-qa-item + .about-qa-item {
    margin-top: 24px;
}

.about-qa-item__que {
    line-height: 1.75;
    padding-left: 30px;
	background: url(../img/sub/icon-q.png) top 3px left/15px no-repeat;
}

.about-qa-item__ans {
    background: #fff;
    line-height: 1.75;
    margin-top: 11px;
    padding: 17px;
}


h5.sred-ttl {
    font-weight: 600;
    border-bottom: solid 1px #333333;
    display: inline-block;
}
.two-coulum.sred-kinds .coulum50 {
    background: #efefef;
    padding: 15px 25px 0px 25px;
	margin-bottom: 15px;
}

@media screen and (max-width: 750px) {
.two-coulum.sred-kinds .coulum50 {
    background: #efefef;
    padding: 10px 10px 0px 10px;
	margin-bottom: 15px;
}
}


/* line */
#line {
  background-color: #ffffff;
  padding: 60px 0;
  font-size: 16px;
  line-height: 1.8;
  color: #333;
}

.section-ttl {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 50px;
  color: #222;
}

.flow-step {
  display: flex;
  align-items: center;
  gap: 20px;
  background: #f5f5f5;
  border-radius: 12px;
  padding: 25px 20px;
  margin-bottom: 85px;
  position: relative;
  flex-wrap: wrap;
}

.flow-step::after {
    content: "";
    position: absolute;
	bottom: -65px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    background-image: url(../img/sub/flow-arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.flow-num {
background-color: #fff;
    color: #87cbdd;
    font-family: serif;
    font-weight: bold;
    font-size: 40px;
    border-radius: 50%;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
}

.flow-num::after {
  content: "";
  position: absolute;
  top: 0;
  right: -35px;
  height: 100%;
  width: 1px;
  background-color: #ccc;
}

.flow-content {
  flex: 1;
  min-width: 200px;
    padding-left: 65px;
}

.flow-ttl {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #222;
}

.flow-ttl ul {
  margin: 0;
  font-size: 17px;
  padding: 5px 0 0 20px;
	    margin-left: 25px;
}

.flow-ttl ul li{
  margin: 0;
  font-size: 17px;
	padding-left:0;
}

.flow-ttl ul li::before {
    left: -25px;
}

.flow-step:last-of-type::after {
  display: none;
}

.flow-summary {
  margin-top: 50px;
  font-size: 16px;
  font-weight: 500;
  color: #444;
}

@media screen and (max-width: 768px) {
.flow-ttl{
		font-size:18px;
	}
.flow-ttl ul li{
		font-size:16px;
	}
}

@media screen and (max-width: 450px) {
.flow-ttl{
	text-align:center;
		font-size:16px;
	}
.flow-content ul {
		  padding-left: 1.5em;
		  margin-left: auto;
		  margin-right: auto;
		  max-width: 300px;
		  text-align: left;
}
.flow-content ul li{
		font-size:14px;
	}	
.flow-step {
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    margin-bottom: 30px;	
  }

.flow-num {
	  font-size:30px;
	width: 50px;
    height: 50px;
    margin-bottom: 10px;
  }
	
 .flow-num::after {
 content: none;
  position: absolute;
  top: 0;
  right: -45px;
  height: 100%;
  width: 1px;
  background-color: #ccc;
}

.flow-content {
    padding-left: 0;
	gap: 10px;
}

.flow-step::before {
    transform: none;
    position: static;
  }
	
.flow-summary {
  font-size: 14px;
}
}


.thread-lift-comment-box {
    background: #fffde8;
    padding: 30px 30px 10px 30px;
    border-radius: 15px;
}

.yoyaku-btn a {
    background: #77c3b1;
    color: #fff;
    padding: 30px 50px;
    display: inline-block;
}
.tel-btn a {
    background: #efeee1;
    color: #4b4b4b;
    padding: 30px 50px;
    display: inline-block;
}
@media screen and (max-width: 768px) {
.yoyaku-btn a {
    padding: 25px 50px;
}
.tel-btn a {
    padding: 25px 50px;
}	
	
	
	
	
	