@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;
	padding: 2.4rem 0.5rem 2rem;
	color: #295C90;
}
.h2class {
	font-family: "LogoTypeGothic";
	font-size: 150%;
	font-weight: normal;
}
.h3class {
	text-align: center;
	font-family: "LogoTypeGothic";
	color: #008646;
	font-size: 140%;
	font-weight: normal;
	margin-bottom: 1rem;
	padding: 0.7rem;
	background-image: linear-gradient(to right, #008646 30%, rgba(255,255,255,0) 0%);
	background-position: bottom;
	background-size: 10px 3px;
	background-repeat: repeat-x;
}
.h4class {
	font-family: "LogoTypeGothic";
	border-bottom: 0.1rem solid #6AA014;
	color: #6AA014;
	font-size: 120%;
	font-weight: normal;
	margin-bottom: 1rem;
	padding: 0.6rem 0.6rem 0.6rem 0;
}
.h5class {
	font-family: "LogoTypeGothic";
	border-bottom: 1px dashed #1B709B;
	color: #1B709B;
	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 #784F36;
	color: #784F36;
	font-size: 100%;
	margin-bottom: 0.5rem;
	padding: 0.5rem 0.5rem 0.5rem 0;
}


/* Header
-------------------------------*/

header {
	background-color: #ffffff;
}
.head_info {
	padding:2rem 0 !important;
}
.head_left{
	width: 100%;
	text-align: center;
	padding-bottom:1rem;
}
.head_right ul{
	width: 100%;
	font-size: 0;
	text-align: center;
}
.head_right ul li{
	width: 33%;
	padding: 0 1rem;
	display: inline-block;
	font-size: 1.4rem;
	text-align: center;
}
.head_right ul li a{
	display: block;
	padding:0.1rem 0;
	border-bottom: 1px solid #000000;
	color: #008548;
}


.header_grarea {
	background : linear-gradient(to bottom, #199258 50%, #008646 50.01%);/* 薄い→濃い */
	text-align: center;
	padding: 0.7rem 0 ;
}
.header_grarea ul{
	font-size: 0;
}
.header_grarea ul li{
	display: inline-block;
	padding:0 0.5rem;
	width: 50%;
}
.header_grarea ul li:first-child{
	width: 100%;
	margin-bottom: 0.5rem;
}

/* Navigation
-------------------------------*/
.navigation {
	display: block;
	background-color: transparent;
	font-family: "LogoTypeGothic";
	font-weight: 500;
}
.navigation .inner {
	padding: 0;
}
.navigation ul {
	font-size: 0;
}
.navigation li {
	display: inline-block;
	background : linear-gradient(to bottom, #6dbcb9 50%, #62a9a6 50.01%);/* 薄い→濃い */
	width: 50%;
}
.navigation li:first-child {
	display: none;
}
.navigation li span {
	font-size: 1rem;
	display: block;
	color: #B5E1DE;
}
.navigation li a {
	display: block;
	color: #ffffff;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.6rem;
	padding: 1rem;
}
.navigation li a:hover {
	background-color: rgba(255,255,255,0.3);
	color: #ff0000;
}
.navigation li a:link, .navigation li a:visited {
	color: #ffffff;
}


/* Main
-------------------------------*/
.mainarea {
	padding: 2rem;
}


/* SideNavi
-------------------------------*/
.sidenavi {
	background-image:url(../images/back_info.png);
	width: 100%;
}
.sidenavi ul {
	/* flex化 */
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	padding: 0;
}
.sidenavi ul li {
	width: 50%;
}
.sidenavi ul li a:before{
	font-family: FontAwesome;
	content:"\f0da\00a0\00a0";
}

.sidenavi ul li a:link, .sidenavi ul li a:visited{
	display: block;
	padding:0.3rem 0;
	font-size: 1.2rem;
	color: #ffffff;
}
.sidenavi ul li a:hover{
	background-color: rgba(255,255,255,0.20);
}

.side_internal, .side_dental{
	background-image:url(../images/back_logo.png);
	background-repeat: no-repeat;
	background-position: bottom -100px right -100px;
	padding:1rem 1rem 2rem;
	color: #ffffff;
	margin:4rem 2rem;
}

.side_internal p, .side_dental p{
	padding:1.4rem 1rem 0.7rem;
	text-align: center;
	background-color: #91C858;	
	margin-top:-3rem;
	font-size: 140%;
	letter-spacing: 0.3rem;
	line-height: 2.2rem;	
	font-family: "LogoTypeGothic";
	border: 2px solid #ffffff;
}
.side_internal p span, .side_dental p span{
	letter-spacing: 0.1rem;
	font-size: 60%;
	display: block;
}

.side_internal{
	background-color: #91C858;	
}
.side_dental{
	background-color: #5D9ECB;	
}
.side_internal p{
	background-color: #79AD27;	
}
.side_dental p{
	background-color: #1B709B;	
}










/* Footer
-------------------------------*/
footer {
	background-image: url(../images/back_info.png);
	font-size: 1.6rem;
	line-height: 1.6;
	padding-top: 2rem;
	padding-bottom: 130px;
}
/* FooterLink
-------------------------------*/

footer .footnavi{
	background-color: rgba(18,134,0,0.10);
	padding: 2rem;
	color: #008646;
	font-size: 1.4rem;
}
footer .footnavi ul{
	margin-bottom: 2rem;
}
footer .footnavi p{
	margin-bottom: 0 !important;
}
footer .footnavi li {
	display: inline-block;
	margin-right: 1em;
}
footer .footnavi li a:link,
footer .footnavi li a:visited {
	color: #008646;
}
footer .footnavi li a:hover {
	color: #ff9900;
}

footer .footnavi li::before {
	font-family: FontAwesome;
	content: "・";
	color: #008646;
}

.rsv_btn {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
}
.rsv_btn a {
	display: block;
	background: #008646;
	color: #fff !important;
	font-family: "LogoTypeGothic";
	font-weight: normal;
	font-size: 130%;
	height: 60px;
	line-height: 60px;
	text-align: center;
	border-top: 1px solid #fff;
}
.rsv_btn a::before {
  font-family: FontAwesome;
  content: "\f274";
	display: inline-block;
	margin: 0 0.5em 0 0;
}


/* Copyright
-------------------------------*/
small {
	margin: 0 auto !important;
	display: block;
}
.copyright {
	font-size: 0.8rem;
	color: #008646;
}

/* テキストの装飾 */
.underline {
    background: linear-gradient(transparent 70%, yellow 70%);
}
.bold {
    font-weight: bold;
}
.fc_bl {
    color: #1B709B;
}


/* ----------------------------------------------------------------------------------
	トップ
---------------------------------------------------------------------------------- */


/*	キービジュアル
-------------------------------*/
.keyv_area {
	background-color: #F5F5F5;
	text-align: center;
}
.keyv_area li img {
	margin: 0 auto;
}


/*	お知らせ
-------------------------------*/
.notice {
	margin-bottom: 2rem;
	height: 22rem;
	overflow: auto;
	padding:1rem;
	font-size: 1.2rem;
}

#Lower .notice {
	height: auto;
	overflow: auto;
}
.notice .news_title {
	font-size: 110%;
	font-weight: bold;
	color: #ee9d99;
}
.notice .news_body {
	margin-left: 1rem;
}
.notice dd {
	padding-bottom: 1rem;
	border-bottom: 0.1rem dotted #999;
}
.notice dd:last-child {
	border: none;
}
.notice a:link, .notice a:visited { color: #ee9d99; }
.notice a:hover { color: #CD5650; }




/*	医院概要
-------------------------------*/
.overview dl {
	margin-bottom: 1rem;
	padding: 0 1rem;
	font-size: 90%;
}
.overview dt {
	float: left;
	width: 9rem;
	margin-bottom:0.3rem;
}
.overview dd {
	margin-left: 9rem;
	margin-bottom:0.3rem;
}
.overview dd::after {
	content: '';
	display: block;
	clear: both;
}



/*	院長紹介
-------------------------------*/
.bio dt {
	float: left;
	width: 8rem;
	clear: both;
}
.bio dd {
	margin-left: 8rem;
}






/* ----------------------------------------------------------------------------------
	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: 1.8rem;
}
.signature span {
	font-size: 1.4rem;
}
.signature span:after {
	content: "　";
}


/*	GoogleMaps
-------------------------------*/
.gmap {
	width: 100%;
	min-height: 40rem;
	margin-bottom: -0.57rem;
}


/* 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;
}

/* ColoredBox
-------------------------------*/
.colorbox {
	background-color: #ECFFE8;
	padding: 2rem;
	margin-bottom: 2rem;
}
.colorbox .title {
	font-size: 2rem;
	margin-bottom: 1rem;
	color: #178646;
}


/* Link Button
-------------------------------*/
.linkbox a:link {
	display: inline-block;
	padding: 0.3rem 2rem;
	background-color: #61A9A5;
	color: #ffffff;
}
.linkbox a:visited {
	color: #ffffff;
}
.linkbox a:hover {
	color: #ffffff;
	background-color: #37827D;
}


/* 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:#008646;
	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_cloth{
	background-image:url(../images/back_info.png);
	padding:1rem 0;
}
.area_white{
	background-color: #FFFFFF;
	padding:5rem 0;
}
.area_forest{
	background-image:url(../images/back_green.jpg);
	background-size: cover;
	background-position: top;
	margin-top: 0;
	padding-top:15rem;
	padding-bottom:2rem;
}

p.top_policy{
	text-align: center;
	font-family: "LogoTypeGothic";
	font-size: 90%;
	padding: 0 1rem;
}
p.top_policy span{
	background: linear-gradient(transparent 60%, #FFE6A2 60%);
}

.sbj_g, .sbj_b{
	background-image:url(../images/back_logo.png);
	background-repeat: no-repeat;
	background-position: center center;
	padding:5rem 3rem;
	color: #FFFFFF;
}
.sbj_g{
	background-color: #91C858;
	margin-right: 1rem;
	margin-bottom: 2rem;
}
.sbj_b{
	background-color: #5D9ECB;
	margin-left: 1rem;
	margin-bottom: 2rem;
}
.sbj_g_title{
	text-align: right;
	margin-bottom: -3rem;
	margin-right:2rem;
}
.sbj_b_title{
	text-align: left;
	margin-bottom: -3rem;
	margin-left:2rem;
}
.subj_in{
	max-width: 45rem;
}
.sbj_g .subj_in{
	float: right;
}


.sbj_g ul {
	font-size:0;
}
.sbj_g ul li, .sbj_b ul li{
	font-size:1.2rem;
	display: inline-block;
	margin-bottom: 1rem;
}
.sbj_g ul li a, .sbj_b ul li a{
	display: block;
	background-color: #ffffff;
	color: #568319;
	padding: .5rem 2rem .3rem;
	margin-right: 1rem;
	font-family: "LogoTypeGothic";
}
.sbj_b ul li a{
	color: #166290;
}
.sbj_g ul li a:hover{
	background-color: #568319;
	color: #ffffff;
}
.sbj_b ul li a:hover{
	background-color: #166290;
	color: #ffffff;
}

.bg_white{
	background-color: #ffffff;
	padding: 3rem 0 1rem;
}


.greencross{
	background-image:url(../images/back_greencross.png);
	color:#FFFFFF;
	padding: 1rem 0;
	font-size: 120%;
	margin: 1rem 0;
	text-align: center;
}


#int_top ul{
	font-size: 0;
}
#int_top ul li{
	display: inline-block;
	margin-right: 2rem;
	font-size: 1.6rem;
}
#int_top ul li a:before{
	font-family: FontAwesome;
	content:"\f13a\00a0";
}

#int_top ul li a:link, #int_top ul li a:visited { 
	background-color: #73AD1F;
	padding:0.5rem 1.4rem;
	margin-bottom: 1rem;
	color: #ffffff; 
	display: block;
}
#int_top ul li a:hover { 
	background-color: #93C54B;
	color: #ffffff;
}

/* 歯科 */
#dnt_top ul{
	font-size: 0;
	margin-bottom:3rem;
}
#dnt_top ul li{
	display: inline-block;
	margin-right: 2rem;
	font-size: 1.6rem;
}
#dnt_top ul li a:before{
	font-family: FontAwesome;
	content:"\f13a\00a0";
}

#dnt_top ul li a:link, #dnt_top ul li a:visited { 
	background-color: #1B709B;
	padding:0.5rem 1.4rem;
	margin-bottom: 1rem;
	color: #ffffff; 
	display: block;
}
#dnt_top ul li a:hover { 
	background-color: #5D9ECB;
	color: #ffffff;
}

#machine li dt {
	color:#077EB8;
	text-align: center;
}
#machine li div {
	text-align: center;
}
dl.dl_def {
	margin:0 auto 2rem;
}
dl.dl_def dt {
    font-weight: bold;
    border-bottom: double 3px #1B709B;
    margin-bottom: 0.5rem;
	color:#1B709B;
}
dl.dl_def dd {
    margin-bottom: 1rem;
}

/* -----------------------------------------------------------------------------------------------------------------------------------
	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;
	}
	.h3class {
		font-size: 180%;
		padding: .5rem 0;
		margin-bottom: 2rem;
	}
	.h4class {
		padding: 0.4rem 0.6rem 0.4rem 0;
	}
	.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;
	}

	/* Header
	-------------------------------*/

	.head_info {
		/* flex化 */
		display: flex;
		display: -webkit-flex;
		/* 両端に配置 */
		justify-content: space-between;
		-webkit-justify-content: space-between;
		/* 上下配置中央 */
		align-items: center;
		-webkit-align-items: center;
	}
	.head_left{
		width: auto;
		padding-bottom:1rem;
		}
	.head_right {
		width: 50%;
		/* flex化 */
		display: flex !important;
		display: -webkit-flex !important;
		/* 上下配置中央 */
		align-items: center;
		-webkit-align-items: center;
	}
	.head_right ul{
		width: 100%;
		font-size: 0;
	}
	.head_right ul li{
		width: 20%;
		padding: 0 1rem;
		display: inline-block;
		font-size: 1.6rem;
		text-align: center;
	}
	.head_right ul li a{
		display: block;
		padding:0.5rem 0;
		border-bottom: 1px solid #000000;
		color: #008548;
	}



	.header_grarea {
		text-align: center;
		padding: 1.5rem 0 ;
	}
	.header_grarea ul{
		font-size: 0;
	}
	.header_grarea ul li{
		padding:0 1rem;
		width: auto;
	}
	.header_grarea ul li:first-child{
		width: auto;
		margin-bottom: 0.5rem;
	}


	/* GlovalNavi
	-------------------------------*/
	.navigation {
		background : linear-gradient(to bottom, #6dbcb9 50%, #62a9a6 50.01%);/* 薄い→濃い */
	}
	.navigation li {
		width: 20%;
	}
	.navigation li:first-child {
		display: inline-block;
	}
	.navigation li a {
		font-size: 1.6rem;
		padding: 1.6rem;
	}
	.navigation .inner {
		padding: 0;
	}
	.navigation li span {
		font-size: 1.2rem;
	}

	/* Main
	-------------------------------*/
	.mainarea {
		width: 87rem;
		-ms-flex-negative: 0;
			flex-shrink: 0;
	}
	.area_cloth{
		padding:5rem 0;
	}	

	/* SideNavi
	-------------------------------*/
	.sidenavi ul li {
		width: 100%;
	}
	.sidenavi ul li a:link, .sidenavi ul li a:visited{
		font-size: 1.6rem;
		padding:0.5rem 1rem;
	}
	.side_internal, .side_dental{
		padding:1rem 1rem 3rem;
	}




	.notice {
		font-size: 1.6rem;
	}


	/* Footer
	-------------------------------*/
	footer{
		padding:0;
	}

	.rsv_btn {
		left: auto;
		bottom: auto;
		right: 0;
		top: 190px;
		width: auto;
	}
	.rsv_btn a {
		display: inline-block;
		writing-mode: vertical-rl;
		text-orientation: upright;
		padding: 1.3em 0.5em 1.2em 1.05em;
		border-top: 2px solid #fff;
		border-bottom: 2px solid #fff;
		border-left: 2px solid #fff;
		height: auto;
		line-height: 1;
	}
	.rsv_btn a:hover {
		opacity: 0.8;
	}
	.rsv_btn a::before {
		margin-bottom: 0.5em;
	}

	/* 歯科 */
		#machine ul {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-around;
		}
		#machine li {
			margin-bottom:2rem;
			width: 48%;
			max-width:350px;
		}



	/* ----------------------------------------------------------------------------------
		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;}

	.sbj_g ul li, .sbj_b ul li{
		font-size:1.8rem;
	}
	.sbj_g{
		margin-right: 6rem;
	}
	.sbj_b{
		margin-left: 6rem;
	}

	p.top_policy{
		font-size: 120%;
	}
	
}








/* -----------------------------------------------------------------------------------------------------------------------------------
	Tablet 73.063=1169px  60em=960px
----------------------------------------------------------------------------------------------------------------------------------- */
/*
@media screen and (min-width: 46.875em) and (max-width: 73.063em){
}

*/
