@charset "utf-8";
/* ----------------------------------------------------------------------------------
	common
---------------------------------------------------------------------------------- */
body {
	font-size: 1.4rem;
	line-height: 1.6;
}

/* Font
-------------------------------*/
@font-face {
	font-family: "LogoTypeGothic";
	src: url("../font/07LogoTypeGothic7.eot?") format('eot'),  url("../font/07LogoTypeGothic7.woff") format('woff');
}

/* InnerFrame
-------------------------------*/
.inner {
	padding: 0;
}


/* Link
-------------------------------*/
a:link, a:visited { color: #2990D0; }
a:hover { color: #ff9900; }


/* Index
-------------------------------*/
.h2_area {
	background-image: url(../images/h2_back.jpg);
	background-size: cover;
	background-position: center center;
	text-align: center;
}
h2 {
	font-family: "LogoTypeGothic";
	font-size: 180%;
	font-weight: normal;
	padding: 2.4rem 0.5rem 2rem;
}
h3 {
	font-family: "LogoTypeGothic";
	background-image: url(../images/h3_back.png);
	background-repeat: no-repeat;
	background-position: center center;
	color: #565656;
	font-size: 170%;
	font-weight: normal;
	margin: 1rem 0 2rem;
	padding: 4.5rem 0 2.5rem;
	text-align: center;
	letter-spacing: 0.2rem;
	line-height: 2.4rem;
}
h3 span{
	display: block;
	font-size: 50%;
	letter-spacing: 0.2rem;
	color: #a8a7a7;
}
ul.h4-li{
	list-style: circle;
	margin-bottom: 10px;
	margin-left: 20px;
	font-size: 90%;
}
.h4class {
	text-align: left;
	font-family: "LogoTypeGothic";
	border-bottom: 0.1rem solid #4B0E01;
	color: #4B0E01;
	font-size: 120%;
	font-weight: normal;
	margin: 0 0 1rem 0;
	padding: 0.3rem 0.6rem 0.6rem 3.4rem;
	background-image: url(../images/h4_back.png);
	background-position: left center;
	background-repeat: no-repeat;
}
.h5class {
	font-family: "LogoTypeGothic";
	border-bottom: 1px dashed #F39800;
	color: #F39800;
	font-size: 110%;
	font-weight: normal;
	margin-bottom: 0.5rem;
	padding: 0.5rem 0.5rem 0.5rem 0;
}
.h6class {
	font-family: "LogoTypeGothic";
	font-weight: normal;
	border-bottom: 1px dashed #60351B;
	color: #60351B;
	font-size: 100%;
	margin-bottom: 0.5rem;
	padding: 0.5rem 0.5rem 0.5rem 0;
}


/* Header
-------------------------------*/
header {
	background-color: #ffffff;
	padding: 1rem;
}
.head_info {
	/* flex化 */
	display: flex;
	display: -webkit-flex;
	
	flex-direction: column;
}
.head_left{
	width: 100%;
	text-align: center;
}
.head_right {
 margin: 0 auto;
	/* flex化 */
	display: flex !important;
	display: -webkit-flex !important;
	/* 上下配置中央 */
	align-items: center;
	-webkit-align-items: center;
}
	
/* Navigation
-------------------------------*/
nav {
	display: block;
	background-color: transparent;
	font-weight: 500;
	background-image: url(../images/nav_back.png);
	background-size: 1.4% 50%;
}
nav .inner {
	padding: 0;
}
nav ul {
	font-size: 0;
}
nav li {
	display: inline-block;
	width: 50%;
}
nav li span {
	font-size: 1rem;
	display: block;
	color: #B5E1DE;
}
nav li a {
	display: block;
	color: #ffffff;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.6rem;
	padding: 0;
}
nav li a:hover {
	background-color: rgba(255,255,255,0.3);
	color: #ff0000;
}
nav li a:link, nav li a:visited {
	color: #ffffff;
}


/* Main
-------------------------------*/
.mainarea {
	background-color: #FDF4CE;
	padding: 2rem;
}


/* SideNavi
-------------------------------*/
.sidenavi {
	width: 100%;
}
.sidenavi ul {
	/* flex化 */
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	padding: 0;
}
.sidenavi ul li {
	text-align:center;
	width: 50%;
}


.inner800{
	padding: 0 2rem;
}

/* Footer
-------------------------------*/
footer {
	background-image: url(../images/back_footer.png);
	font-size: 1.6rem;
	line-height: 1.6;
	color: #FFFFFF;
	letter-spacing: 0.3rem;
}
footer .inner800{
	padding: 2rem 0;
}

/* FooterLink
-------------------------------*/
footer .footnavi li {
	display: inline-block;
	margin-right: 1em;
}


footer a:link, footer a:visited { color: #ffffff; }
footer a:hover { color: #ff9900; }
.footinfo{
	font-size: 80%;
	text-align:center;
	line-height: 160%;
}
.footinfo p{
	margin-bottom: 0;
}

/* Copyright
-------------------------------*/
small {
	margin: 0 auto !important;
	display: block;
}
.copyright {
	border-top: 1px solid #FFFFFF;
	width: 100%;
	padding: 0.3rem 0;
	color:#ffffff;
	text-align: center;
	font-size: 0.8rem;
}



/* ----------------------------------------------------------------------------------
	トップ
---------------------------------------------------------------------------------- */


/*	キービジュアル
-------------------------------*/
.keyv_area {
	background-color: #ffffff;
	text-align: center;
}
.keyv_area li img {
	margin: 0 auto;
}


/*	お知らせ
-------------------------------*/
.notice {
	margin-bottom: 2rem;
	height: 30rem;
	overflow: auto;
	padding: 0 1rem;
}
.notice .news_title {
	font-family: "LogoTypeGothic";
	font-size: 1.7rem;
	font-weight: bold;
	color: #F39800;
}
.notice .news_body {
	margin-left: 1rem;
}
.notice dd {
	padding-bottom: 1rem;
	border-bottom: 0.1rem dotted #999;
}
.notice dd:last-child {
	border: none;
}


/*	医院概要
-------------------------------*/
.overview dl {
	padding: 0 1rem;
	margin-bottom: 1rem;
}
.overview dt {
	float: left;
	width: 10rem;
	margin-bottom:0.842rem;
	background-color: #336901;
	border-radius: 0.5rem;
	color: #FFFFFF;
	font-size: 90%;
	padding: 0.3rem;
	text-align: center;
	letter-spacing: 0.2rem;
}
.overview dd {
	padding: 0.3rem;
	margin-left: 12rem;
	margin-bottom:0.842rem;
}
.overview dd::after {
	content: '';
	display: block;
	clear: both;
}
.overview .title{
	text-align:center;
	font-size:2.2rem;
}


/*	院長紹介
-------------------------------*/
.bio dt {
	float: left;
	width: 10rem;
	clear: both;
}
.bio dd {
	margin-left: 10rem;
}

.flex2{
	margin:0 auto;
}





/* ----------------------------------------------------------------------------------
	Modules
---------------------------------------------------------------------------------- */


/*	flex setting
-------------------------------*/
.flex_LRTB, .flex_RLTB {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	-webkit-flex-direction: column;
}

/* テキスト＋挿絵専用コンポーネント float_TB */
.float_TB::after {
	height: 0;
	content: "";
	display: block;
	clear: both;
}
.L20, .L30, .L40, .L50, .L60, .L70, .L80,.R20, .R30, .R40, .R50, .R60, .R70, .R80 {
	width:100%;
	float: none;
}




/* signature
-------------------------------*/
.signature {
	font-size: 2rem;
}
.signature span {
	font-size: 1.6rem;
}
.signature span:after {
	content: "　";
}


/*	GoogleMaps
-------------------------------*/
.gmap {
	width: 100%;
	min-height: 40rem;
	margin-bottom: 1rem;
}


/* List
-------------------------------*/
.list_dot {
	padding-left: 2rem;
}
.list_dot li {
	list-style-type: disc;
	margin-left: 1em;
}
.list_caution {
	margin-bottom: 2rem;
}
.list_caution li {
	text-indent: -1.75rem;
	margin-left: 1.75rem;
}
.list_caution li:before {
	content: "※ ";
}
.list_inline li{
	display: inline-block;
	margin-right: 2rem;
}
.list_inline li:before {
	content: "・";
}
li.nad{
	list-style-type: none !important;
	text-align:right;
}
li.nad:before {
	content: ""  !important;
}
.list_bnr li{
	margin-bottom: 2rem;
}






.list_treat{
	font-size: 0;
	text-align: center;
}
.list_treat li{
	font-size: 1.6rem;
	display: inline-block;
	margin-right: 1rem;
	margin-bottom: 1rem;
}
.list_treat li a:link, .list_treat li a:visited{
	display: block;
	padding:0.4rem 1.6rem;
	background-color: #F39800;
	color: #FFFFFF;
	border-radius: 5rem;
}
.list_treat li a:hover{
	background-color: #FFAB21;
	color: #FFFFFF;
}
.list_treat li a:before{
	font-family: FontAwesome;
	content:"\f138\00a0";
}






/* ColoredBox
-------------------------------*/
.colorbox {
	background-color: #FFF3DB;
	padding: 2rem;
	margin-bottom: 2rem;
}
.colorbox .title {
	font-size: 2rem;
	margin-bottom: 1rem;
	color: #68472C;
}


/* Link Button
-------------------------------*/
.linkbox a:link {
	display: inline-block;
	padding: 0.3rem 2rem;
	background-color: #336901;
	border-radius: 0.5rem;
	color: #FFFFFF;
}
.linkbox a:visited {
	color: #ffffff;
}
.linkbox a:hover {
	color: #ffffff;
	background-color: #55822C;
}


/* GoToTop
-------------------------------*/
#pageTop {
	display: block;
	position: fixed;
	bottom: -10rem;
	right: 2rem;
	transition: .5s;
}
#pageTop a:before {
	content:"\f0d8\00a0";
	font-family:"FontAwesome";
}
#pageTop a{
	display:block;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	background-color:#4B0E01;
	border-radius:10rem;
	font-size:1.4rem;
	line-height:1.4rem;
	padding:1rem;
}
#pageTop a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	display: block;
}


/* for flowdesign
-------------------------------*/
.flowbox{
	background-color:#FFF0C5;
	border-radius:1rem;
	padding:2rem;
	margin: 1rem 0 ;
}
.flowbox .title{
	font-size: 1.8rem;
	margin-bottom: 0.5rem;
	color:#D77000;
}
.flowallow{
	text-align: center;
	color:#D8A100;
}

.area_beige{
	background-image: url(../images/back_beige.png);
	padding:3rem 0;
}
.area_white{
	background-color: #ffffff;
	padding:3rem 0;
}
.area_cloth{
	background-image: url(../images/back_cloth.jpg);
	padding:3rem 0;
}
.area_bnr{
	padding:2rem 0 !important;
}


table.timetableR {
	border-collapse: separate;
	border-spacing: 0px;
	empty-cells: show;
	width: 90%;
	margin: 0 auto;
	caption-side: bottom;
	font-size: 80%;
}
.timetableR th{
	border-bottom: 2px solid #61A7A5;
	font-weight: normal;
	text-align: center;
	padding: 3px;
	margin: 0px;
}
.timetableR th.tableL{
	width: 40%;
}
.timetableR td{
	border-bottom: 2px solid #61A7A5;
	font-weight: normal;
	text-align: center;
	padding: 0.5rem;
}
.timetableR td.timet{
	text-align: center;
	padding-left:2rem;
	width:40%;
}

.table_price{
	margin: 10px 0;
	border: 1px solid #333333;	
}

.table_price tr td{
	border: 1px solid #333333;
	padding: 5px 20px;
}

.table_price tr td.price{
	text-align: right;
}




caption{
	padding-top: 1rem;
	padding-right: 4.5em;
	text-align: left;
	position: relative;
}
caption .off{
	display: block;
	position: absolute;
	top: 1rem;
	right: 0;
	color: #61A7A5;
	font-weight: bold;
}

#dropmenu2 {
  list-style-type: none;
  max-width: 117rem;
  padding: 0;
  font-size: 0;
  margin: 0 auto;
}
#dropmenu2 li {
 display: inline-block;
  position: relative;
  width: 50%;
  ontloat: left;
  margin: 0;
  padding: 0;
  text-align: center;
}

#dropmenu2 li a {
  display: block;
  margin: 0;
  padding: 0;
  color: #6b533b;
  line-height: 1;
  text-decoration: none;

  font-weight: 700;
	letter-spacing: 0.1rem;
}
#dropmenu2 li ul {
  list-style: none;
  position: absolute;
  z-index: 100;
  top: 100%;
  left: 0;
  width: 100%;
  margin: 0;
  padding: 0;
}
#dropmenu2 li ul li {
  overflow: hidden;
  width: 100%;
  height: 0;
  color: #fff;
  transition: .2s;

}
#dropmenu2 li ul li a {
  padding: 1.2rem;
  background: #ffffff;
  text-align: left;
  font-weight: normal;
	font-size: 1.6rem;
  color: #6b533b;
}
#dropmenu2 li:hover > ul > li {
  overflow: visible;
  height: 38px;
}
#dropmenu2 li ul li ul {
  top: 0;
  left: 100%;
}
#dropmenu2 li:last-child ul li ul {
  left: -100%;
  width: 100%;
}

#dropmenu2 li ul li ul:before {
  position: absolute;
  content: "";
  top: 13px;
  left: -20px;
  width: 0;
  height: 0;
  border-left-color: #454e08;
}
#dropmenu2 li:last-child ul li ul:before {
  position: absolute;
  content: "";
  top: 13px;
  left: 200%;
  margin-left: -20px;
  border-right-color: #454e08;
}

.philosophy{
	font-family: "LogoTypeGothic";
	font-size: 2rem;
	text-align: center;
}




/* -----------------------------------------------------------------------------------------------------------------------------------
	PC
----------------------------------------------------------------------------------------------------------------------------------- */
@media print, screen and (min-width: 46.875em) {
	
	
/* Common
-------------------------------*/
body {
	font-size: 1.6rem;
	min-width: 1170px;/* リキッドの際は外す */
}

.h2class {
	font-size: 200%;
	padding: 2rem 3rem 1.6rem;
}
h3 {
	background-image: url(../images/h3_back.png);
	background-repeat: no-repeat;
	background-position: center center;
	color: #565656;
	font-size: 170%;
	font-weight: normal;
	margin: 1rem 0 3rem;
	padding: 5rem 0 3rem;
	text-align: center;
	letter-spacing: 0.2rem;
	line-height: 3rem;
}
h3 span{
	display: block;
	font-size: 50%;
	letter-spacing: 0.7rem;
	line-height: 2rem;
	color: #a8a7a7;
}
.h4class {
	padding: 0.2rem 0.6rem 0.4rem 4rem;
}
.h5class {
	padding: 0.3rem 0.5rem 0.3rem 0;
}
.h6class {
	padding: 0.5rem 0.5rem 0.5rem 0;
}

	
/* InnerFrame
-------------------------------*/
.inner {
	margin: 0 auto;
	padding: 0;
	max-width: 117rem;
}
.inner800 {
	margin: 0 auto;
	padding: 0;
	max-width: 80rem;
}
.inner900 {
	margin: 0 auto;
	padding: 0;
	max-width: 90rem;
}

/* Header
-------------------------------*/
.head_info {
  flex-direction: row;
	/* 両端に配置 */
	justify-content: space-between;
	-webkit-justify-content: space-between;
	/* 上下配置中央 */
	align-items: center;
	-webkit-align-items: center;
}
.head_left{
	width: auto;
}
.head_right {
 margin: 0;
}
	
/* GlovalNavi
-------------------------------*/
nav {
	background-image: url(../images/nav_back.png);
	background-size: auto;
}
nav li {
	width: 25%;
}
nav li a {
	font-size: 1.6rem;
	padding: 0;
}
nav .inner {
	padding: 0;
}
nav li span {
	font-size: 1.2rem;
}
	
/* Main
-------------------------------*/
.mainarea {
	width: 87rem;
	-ms-flex-negative: 0;
    flex-shrink: 0;
}
	
	
/* SideNavi
-------------------------------*/
.sidenavi {
	width: 30rem;
	background-color: #E5D38C;
	-ms-flex-negative: 0;
    flex-shrink: 0;
}
.sidenavi ul {
	padding: 2rem;
}
.sidenavi ul li {
	text-align:left;
	width: 100%;
}


	
/* Footer
-------------------------------*/
footer .inner{
	padding:1rem 0;
}
.footinfo{
	font-size: 100%;
}	
	
	

	
	







/* ----------------------------------------------------------------------------------
	Modules
---------------------------------------------------------------------------------- */
/* PCで左→右に配置／SPで上→下に配置 */
.flex_LRTB {
	flex-direction: row;
	-webkit-flex-direction: row;
}
/* PCで右→左に配置／SPで上→下に配置 */
.flex_RLTB {
	flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
}

/* テキスト＋挿絵専用コンポーネント float_TB */
.L20 {	float:left;	width:20%;}
.L30 {	float:left;	width:30%;}
.L40 {	float:left;	width:40%;}
.L50 {	float:left;	width:50%;}
.L60 {	float:left;	width:60%;}
.L70 {	float:left;	width:70%;}
.L80 {	float:right; width:80%;}
.R20 {	float:right; width:20%;}
.R30 {	float:right; width:30%;}
.R40 {	float:right; width:40%;}
.R50 {	float:right; width:50%;}
.R60 {	float:right; width:60%;}
.R70 {	float:right; width:70%;}
.R80 {	float:right; width:80%;}	
.LBP {	padding: 0 2rem 1rem 0 !important;}
.RBP {	padding: 0 0 1rem 2rem !important;}
	
table.timetableR {
	width: 100%;
	font-size: 120%;
}
.timetableR td{
	padding: 0.5rem;
}
.timetableR td.timet{
	width:30%;
}
#dropmenu2 li {
  width: 25%;
}


}








/* -----------------------------------------------------------------------------------------------------------------------------------
	Tablet 73.063=1169px  60em=960px
----------------------------------------------------------------------------------------------------------------------------------- */
/*
@media screen and (min-width: 46.875em) and (max-width: 73.063em){
}

*/
