@charset "utf-8";
/* CSS Document */


@import url("common.css");
@import url("sp_common.css");

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&display=swap&subset=japanese');
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500&display=swap);
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&display=swap&subset=japanese');



@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');

/*PCのみ*/
@media screen and (min-width: 735px) {
html {	font-size:100%;}
}

/* SP */
@media screen and (max-width: 736px) {
html {	font-size:98%;}
}

/* SP S */
@media screen and (max-width: 321px) {
html{	font-size:89%;}
}




body {
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size:1rem;
    color: #333333;
    line-height:1.6;
    background:#fff;
    -webkit-text-size-adjust: none;


	/*! border-top: 3px solid #80bfe0; */
}





/* 幅 */
/* =================================================== */

/*PCのみ*/
@media screen and (min-width: 735px) {
header{ min-width:800px;}
.pcwrap{ width:800px; margin:auto;}
.wrap{ width:800px; margin:auto;}
}

/* SP */
@media screen and (max-width: 736px) {
.wrap{ width:90%; }
}



.dotline-top{ border-top: dotted 1px #bbb; }



.areaMedicalInfo{ background:#FFFFFF;}
.areaGreeting{ background:#fff;  }
.contentArea{padding-bottom:3rem;}



/* カラー */
/* =================================================== */

h4::before, .sq::before{ color:#e71e79;}

ul.list li:before,
ul.listS li:before,
ul.listSS li:before,
.headListTable th:before,
dl.list dt:before
{ color:#f5a5c9;}

.tx-b, .tx-bb, .tx-bbb{ color:#009d3b;}
.color{ color:#009d3b;}
.colorRed{ color:#c30d23;}
.colorLightBlue{ color:#29a5dc;}
.colorDeep{ color:#00A37F;}
.colorGray{ color:#4c4948;}
.colorBrown{ color:#6b531e;} 
.colorLightGreen{ color:#8bb348;}
.sq{ font-weight:400;}















/* テキスト */
/* =================================================== */


.mincho{ font-family: 'Noto Serif JP', serif;}
/*
.font-rounded {font-family: 'M PLUS Rounded 1c', sans-serif;}	
.kiwi-Maru {font-family: 'Kiwi Maru', serif;}
.kosugi-Maru{font-family: 'Kosugi Maru', sans-serif;}
*/

.contentArea p:not([class]){ margin-bottom:1.5rem;}


dl.headingText{ margin-bottom: 1.2rem;}
dl.headingText dt{ font-size:1.2rem; font-weight:400; margin-bottom:0.2rem;}
dl.headingText dd + dt{ margin-top:1.2rem; }

dl.list dt{font-weight:400;}


.tx-b{ font-size:1.2rem; font-weight:400; margin-bottom: 0.3rem; line-height:1.5;}
.tx-bb{ font-size:1.25rem; font-weight:400;  margin-bottom: 0.3rem;  line-height:1.4;}
.tx-bbb{ font-size:1.35rem; font-weight:400;  margin-bottom: 0.3rem;  line-height:1.4;}


@media screen and (max-width: 736px) {

.tx-b{ font-size:1.1rem; }
.tx-bb{ font-size:1.2rem; }
.tx-bbb{ font-size:1.2rem; }
.sq{ font-size:1rem; }
}

@media screen and (max-width: 375px) {

.tx-b{ font-size:1.1rem; }
.tx-bb{ font-size:1.2rem; }
.tx-bbb{ font-size:1.2rem; }
}

@media screen and (max-width: 321px) {

.tx-b{ font-size:1rem; }
.tx-bb{ font-size:1.1rem; }
.tx-bbb{ font-size:1.1rem; }
}


/* タイトル */
/* =================================================== */


.title_txt{color:#e71e79; font-size:2.125rem; /*! font-weight:500; */ margin: 0 0 1rem; line-height:1.5;}
.title_txt.color_white{ color:#FFFFFF;}


.title_color{
    color:#fff;
    font-size:1.75rem;
    line-height:1.4;
    padding:1.1rem 2rem;
    background: #009d3b;
    border-radius: 50px;
    text-align: center;
    font-family: "Kosugi Maru", sans-serif;
    box-sizing: border-box;
}






@media screen and (max-width: 736px) {
.title_txt{font-size:min(5.4vw,24px);}
.title_color{
    font-size:1.4rem;
    padding:1rem 1rem;
}
	

}














.title_headLine{ border-top: solid 4px #e71e79; text-align:center; padding:1rem 0 1.5rem;}

.title_headLine h2{ font-size:1.75rem; font-weight:400;}
.decoSmallTxt{ font-size:1.1rem; color:#8dc21f;}
/*
.decoSmallTxt:after{ content:""; display:block; width:100px; height:4px; background:#a7be70; margin:1.2rem auto 0;}
*/
@media screen and (max-width: 736px) {
.title_headLine{padding:0.6rem 0 1rem;}
.title_headLine h2{ font-size:1.5rem; }
.decoSmallTxt{ font-size:0.7rem; }

}






/* 上部ロゴ */
/* =================================================== */

header{
	text-align:center;
	padding: 0;
	position:relative;
	background-color:#fffefc;
}




header::after{
	content: "";
	width: 100%;
	height: 314px;
	background-image: url("../preImages/wave.png");	
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size:  auto 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}



.flex{ display: flex;}

.titleArea{ margin: auto;}




header .openDay{  text-align:center; margin:0.2rem auto 0;
position: relative;z-index: 1;color: #e71e79;font-size: 2.375rem;}


.subTitle{
	font-size: 1.8rem;
	margin-top: 1.5rem;
	color: #603813;
	/*! font-weight: 500; */
	line-height: 1.4;
}







.subTitle span{color: #00752d;}

.subTitle_lv2{ color: #b54d45;	font-size: 2rem;}



@media screen and (min-width: 735px){
.pctxt_vertical{
	position: absolute;
	top:3rem;
	right: 3rem;
	z-index: 2;
	text-align: left;
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright; /* すべて縦方向に表示 */
}
	
}

/* SP */
@media screen and (max-width: 736px) {

header h1{width:77%; margin:0 auto;  max-width: 420px;  }
header .openDay{ /*! width:70%; */ /*! margin-top: 1rem; */font-size:min(5.6vw,25px);}
header .title_txt{ font-size:1.3rem;}



.subTitle{font-size: 1.2rem; 	margin-top: 1.5rem;
/*
position: absolute; bottom: 2rem; 
width: 90%;
  left: 50%;
  transform: translate(-50%);
*/  
  text-align: center;
line-height: 1.45;
}

.subTitle_lv2{font-size: 1.2rem; 	margin-top: 1.5rem;}

	
}





/* SPM */
@media screen and (max-width: 400px) {
.subTitle{font-size: min(4.8vw,26px);}
.subTitle_lv2{font-size: 1rem;}
}




	

/* 開院告知 */
/* =================================================== */

.readArea{ text-align:left; background:#e5f4f7;  padding:2rem 0; margin-bottom:0rem; border-radius:0px;}
.readArea p{ margin-bottom:1rem; line-height:2; }

/* SP */
@media screen and (max-width: 736px) {
.readArea{ padding:1.5rem 0;}
.readArea p{ text-align:left; }
}


.btnYoyaku{position: relative;z-index: 1;margin: auto;/*! margin-bottom: 1rem; */}
.btnYoyaku a:hover{opacity: 0.85;}

/* SP */
@media screen and (max-width: 736px) {
.btnYoyaku{width: 80%;}
}

	/*  ------------------------------------------------------------ */

/*診療時間テーブル*/

/*  ------------------------------------------------------------ */



/*基礎*/
table.timeTable{ width:100%; text-align:center; box-sizing:border-box; margin-bottom:0.5rem; }
table.timeTable th{ font-size:93%;  box-sizing:border-box; line-height:1; padding:0.6rem 0;}
table.timeTable td{box-sizing:border-box; }
table.timeTable td.schedule{font-size:130%; }

table.timeTable td.timeHead{ white-space:nowrap; line-height:1.3; width:28%;  padding: 0.8rem 0; font-size:86%;}
.timeTable .timeHead span{font-size:140%; 
/*font-family: 'Roboto', sans-serif; */
font-weight:400;}
.timeTable .day{font-size:92%;}

table.timeTable td.timeHead.line2{ padding: 0.6rem 0; }

/*変更要素*/

table.timeTable th{ background:#009d3b; color:#fff; /*! border-left:#ff9bb9 solid 1px; */  font-weight:400;}
table.timeTable th:first-child{border-left:none;}
table.timeTable td{ background:#FFF; /*! border-left:#ff9bb9 solid 1px; */  border-bottom:#e6e6e6 solid 1px;   }

table.timeTable td:first-child{border-left:none;}

table.timeTable td.timeHead{ color:#4d4d4d;}
table.timeTable td.schedule{ color:#a4ce4c;}
table.timeTable td.schedule.off{ color:#999999;}



table.timeTable tr.kensa td.schedule{ color:#A79AC9;}

table.timeTable .section1 td.schedule{ border-bottom:none;}
table.timeTable .section1 td.schedule{ padding:0.6rem 0 0.3rem;}
table.timeTable .section2 td.schedule{ padding:0 0 0.6rem;}

table.timeTable td.schedule{width:10%;}
/*table.timeTable td.schedule span{margin-left: 0.85rem;}*/	

.uniqueTime{ /*position:relative;*/ border-left:#00A63C solid 1px;}
.uniqueTime span{ /*position:absolute;  top:-0.4rem; font-size:0.8rem;*/}




.scheduleColor{ color:#46b2e7;}
.schedule .asterisk{ position:absolute; top:0.5rem; color:#666666; font-size:0.9rem;}

table.timeTable td.schedule.iconStd span img{width: 2.5rem;padding-top: 0.1rem;padding-right:0;}

table.timeTable td.schedule.iconStd{width:10%;}



table.timeTable{
  /*! border: 1px solid #ff9bb9; */
  border-collapse: separate;
  border-radius: 0px;
  overflow:hidden;
  border-bottom:none;

}


.timeTable td.schedule{ position:relative;}


/* SP */
@media screen and (max-width: 736px) {
.schedule .asterisk{  top:0rem; font-size:0.8rem;}
}


/*PCのみ*/
@media screen and (min-width: 735px){


	
}


/* SP */
@media screen and (max-width: 736px) {
table.timeTable{ font-size:0.9rem; /*border: 1px solid #B0A5CF ;*/}
table.timeTable th{ padding:  0.35rem 0; }
table.timeTable tr.pm td{ /*border-bottom:none;*/}
table.timeTable td.timeHead{font-size:85%; padding: 0.5rem 0.2rem 0.5rem 0.2rem;width: 27%;}
table.timeTable td.schedule{ font-size:100%;width: 10%;}
.timeTable .timeHead span{font-size:135%;}

table.timeTable .section1 td.schedule{ padding:0.4rem 0 0.2rem;}
table.timeTable .section2 td.schedule{ padding:0 0 0.4rem;}
	
table.timeTable td.schedule.iconStd span img{width: 1.77rem;padding-top: 0.1rem;padding-right:0;}

}




/* SP S */
@media screen and (max-width: 428px) {	
table.timeTable{ font-size:0.8rem;}
table.timeTable td.schedule{}
/*table.timeTable td.schedule.special{width:10%;}	*/
table.timeTable td.schedule.iconStd span img{width: 1.58rem;padding-top: 0.16rem;padding-right:0;}
}






/*診療時間補足*/
/*  ------------------------------------------------------------ */


.timeTableEx{
	display: flex;
flex-wrap: nowrap;
font-size: 0.9rem;
}

.timeTableEx dt{ font-weight:500;  }

.timeTableEx.doctors dt{width:4.5rem; flex-shrink: 0;}
.timeTableEx.doctors dt span{font-weight:400;  }
.timeTableEx.timeAndDay dt{width:4rem;}


.timeTableEx strong{ font-weight:600; }


/* SP */
@media screen and (max-width: 736px) {
.timeTableEx.timeAndDay dt{ white-space:nowrap; width:4rem;}
.medicalAreahr{padding-bottom: 1rem;margin-bottom: 1.2rem;}
}



.holiday{
    background: url(../preImages/common/iconHoliday.svg) no-repeat left 0.35rem;
        background-size: auto;
    background-size: auto 1.4rem;
    padding: 0.2rem 0 0.2rem 4.2rem;
    font-size: 1rem;
    font-weight: 300;
    margin-top: 0.3rem;
}

.icon_special{
    background: url("../preImages/icon_special2.png") no-repeat left 0.25rem;
    background-size: auto 1.6rem;
    padding-left:1.4rem;
    margin: 0;
}






.mapBtn{text-align:center; width:100%;}
.googleMap iframe{ height:346px;}




@media screen and (max-width: 736px) {

.googleMap iframe{ height:350px;}
	
	
}






/* 診療内容 */
/* =================================================== */

@media screen and (max-width: 736px) {
	
.medical hr{padding-bottom: 1.2rem;margin-bottom: 1.5rem;}
	
	
}




/* 院長挨拶 */
/* =================================================== */


.greetingCatch{ text-align:center; color:#00387F; font-size:2rem; line-height:1.6; font-weight:500; }

.areaGreeting hr{padding-bottom: 0rem;margin-bottom: 0.5rem;}

@media screen and (max-width: 736px) {.greetingCatch{font-size:1.2rem; }}


table.profContent{ text-align:left; }
table.profContent th , table.profContent td{ vertical-align:top;  padding-bottom: 0.3rem;}
table.profContent th{ padding-right:1rem; }



@media print, screen and (min-width: 735px) {}
@media screen and (max-width: 736px) {}


@media screen and (max-width: 428px) {	
.txt16{ font-size:1.4rem !important;}
}











/* footer */
/* =================================================== */

footer{ background: #e71e79; padding: 1.8rem 0; text-align:center; color:#fff;font-family: 'Noto Serif JP', serif;}


footer h2{ font-size:1.3rem; font-weight:500; color:#fff;line-height: 1.4;}
footer h3{font-size:1rem; margin-top:0.3rem; font-weight:500; line-height:1.4;}
footer p{font-size:1rem;font-weight:500; color:#FFF;}

footer h2 a{ text-decoration:none; color:#fff; }


@media screen and (max-width: 736px) {
footer h2{font-size:1.2rem; }
footer h3{font-size:0.9rem;}
footer p{font-size:0.9rem;}
footer{ padding: 1rem 0 ; }

}














