@charset "UTF-8";

@import url(https://fonts.googleapis.com/css?family=Questrial);
@import url(https://fonts.googleapis.com/css?family=Libre+Baskerville);

body{    
    font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
    color:#333;
    -webkit-text-size-adjust:none;
    font-size:14px;
    line-height:160%;
	text-align:center;
	padding:0;
	margin:0;
	background:#fff;
}


div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
img,pre,form,fildset,p,blockquote,address{
	margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}


* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

ul{
	list-style:none;
}
ul img{
	vertical-align:bottom;
	margin:0;
}

a{
	color:#333;
	text-decoration:underline;
}

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	vertical-align: top;
	margin:0;
	width: 100%;
}
address {
	font-style:normal;
}
table {
    font-size:inherit;
    font:100%;
	border-collapse: collapse;
}



/*共通
---------------------------------------------------------*/
.box_w {
	padding: 0 3%;
	text-align: left;
}
.box {
	padding: 0 4%;
	text-align: left;
}
.link_more img {
	height: 12px;
	width: auto;
}



/*header
---------------------------------------------------------*/
.frontpage #header {
	padding-top: 2%;
	padding-bottom: 2%;
}
#header h1 {
	color: #535353;
	font-size: 84%;
	font-weight: normal;
	line-height: 1.3em;
	margin-bottom: 5px;
}
#header .flt_box .flt_l {
	width: 66%;
}
#header .flt_box .flt_r {
	width: 33%;
}



/*パンクズリスト
---------------------------------------------------------*/
.pankuzu {
	border-top: solid 1px #ddd;
	padding: 10px 3%;
	text-align: left;
	font-size: 84%;
	color: #666;
}
.pankuzu a {
	color: #666;
}
.pankuzu li {
	float: left;
}



/*フッター
---------------------------------------------------------*/
#footer .sl_bar {
	background: url(../images/common/bg1.png) repeat;
	padding: 15px 0;
	text-align: center;
	line-height: 1.0em;
	margin-bottom: 5%;
}
#footer .sl_bar img {
	max-height: 18px;
	width: auto;
}
/* アクセスマップ */
#footer .f_access {
	padding-bottom: 5%;
}
#footer .f_access .flt_box {
	margin-top: 3%;
}
#footer .f_access .flt_box .flt_r {
	padding-top: 5px;
}
#footer .f_access li {
	background: url(../images/common/icon1.png) no-repeat left .25em;
	background-size: 12px;
	padding-left: 18px;
	color: #FF9200;
	font-size: 94%;
	font-weight: bold;
	line-height: 1.8em;
}
/* 診療時間 */
#footer .f_schedule {
	padding-bottom: 5%;
	border-bottom: solid 1px #BF988B;
}
#footer .f_timetable dd {
	width: 80%;
	margin: 3% auto;
}
#footer .f_sunday {
	width: 90%;
	margin: 0 auto;
	background: url(../images/common/sunday_bg.png) repeat;
	box-shadow:3px 3px 4px -2px #a1a1a1;
	-moz-box-shadow:3px 3px 4px -2px #a1a1a1;
	-webkit-box-shadow:3px 3px 4px -2px #a1a1a1;
	padding: 5% 3% 3%;
	text-align: center;
}
#footer .f_sunday dt img {
	height: 20px;
	width: auto;
}
#footer .f_sunday dd {
	margin-top: 10px;
	color: #663300;
	font-size: 96%;
	line-height: 1.3em;
}
/* ご予約・お問い合わせ */
#footer .f_contact {
	text-align: center;
	line-height: 1.0em;
	padding-top: 5%;
	padding-bottom: 3%;
}
#footer .f_contact .f_cnt_txt dt img {
	max-height: 22px;
	width: auto;
}
#footer .f_contact .f_cnt_txt dd {
	color: #663300;
	margin: 10px 0 3%;
}
#footer .f_contact .f_tel dt {
	width: 90%;
	line-height: 1.0em;
	margin: 0 auto 1%;
}
#footer .f_contact .f_tel dd {
	color: #69C332;
	font-weight: bold;
}
/* お知らせ */
#footer .f_news {
	padding-top: 5%;
	text-align: left;
}
#footer .f_news h3 {
	background: #E0F3D3;
	padding: 15px 3%;
	line-height: 1.0em;
}
#footer .f_news h3 img {
	max-height: 20px;
	width: auto;
}
/* お知らせページと共通 */
.f_news_list {
	padding: 0 3%;
}
.f_news_list dt {
	padding-top: 10px;
	background: url(../images/common/arrow1.png) no-repeat left 1.2em;
	background-size: 5px;
	padding-left: 10px;
	color: #69C332;
	font-weight: bold;
	letter-spacing: .05em;
}
.f_news_list dd {
	padding: 0 3% 3%;
	border-bottom: solid 1px #DDDDDD;
}
.f_news .link_more {
	margin-top: 10px;
	text-align: right;
}
/* 休診日：アクセスページと共通 */
.f_kyushin {
	margin-top: 3%;
	background: #FDEAE9;
	padding: 15px;
	display: table;
	table-layout: fixed;
}
.f_kyushin > dt {
	display: table-cell;
	width: 25%;
	padding: 0 10px;
	text-align: center;
	vertical-align: middle;
	background: url(../images/top/kyushinbi_bg.png) repeat;
	border-radius: 5px;
}
.f_kyushin > dt > img {
	max-width: 70px;
	height: auto;
}
.f_kyushin > dd {
	display: table-cell;
	width: 75%;
	padding: 0 3%;
}
.f_kyushin > dd dt {
	font-weight: bold;
	color: #666666;
}
.f_kyushin > dd dd {
	line-height: 1.4em;
}
/* その他 */
#footer .f_inf {
	margin-top: 3%;
}
#footer .f_bnr_cocoro{
	position:relative;
}
#footer .f_bnr_cocoro .abs_txt{
	position:absolute;
	left: 0;
	padding-right: 3%;
	right: 0;
	margin: 0 auto;
	text-align: center;
	top: 13%;
	font-size:3.7vw;
}
#footer .f_bnr_cocoro img{
	display: block;}

#footer .insta_bnr{
	width: 80%;
	margin: 3% auto 2%;
}
/* 住所 */
#footer .f_clinic {
	margin-top: 2%;
	background: url(../images/common/f_bg.png) repeat-x center top;
	padding-top: 5%;
}
#footer .f_address dt {
	color: #663300;
	font-size: 110%;
	font-weight: bold;
	line-height: 1.6em;
}
#footer .f_address dd {
	margin: 5px 0 10px;
	font-size: 96%;
	line-height: 1.6em;
}
#footer .f_kamoku li {
	float: left;
	font-size: 92%;
	line-height: 1.5em;
}

.information {
	border: 1px solid #C8C8C8;
	padding: 4% 5%;
	max-width: 900px;
	margin: 3% auto 0;
	box-sizing: border-box;
	font-size: 95%;
	color: #666666;
	line-height: 1.5em;
	text-align: left!important;
}
.information .open_btn{
	font-size: 130%;
	letter-spacing: 0.05em;
	line-height: 1.4em;
	font-weight: bold;
	text-align: center;
}
.information .open_box{
	display: none;
	margin-top: 4%
}
.information dl{
	margin-top: 0.8em;
}
.information dl dt{
	font-size: 115%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	font-weight: bold;
}

/* ナビ */
.hf_nav {
	padding: 3% 0;
	margin-left: -1%;
}
.hf_nav li {
	float: left;
	width: 23%;
	margin-left: 2%;
	text-align: center;
}
.hf_nav li a {
	display: block;
	background: #66C521;
	padding: 10px 5px;
	border-radius: 5px;
}
.hf_nav li img {
	max-width: 76px;
	height: auto;
}



/*pagetop
---------------------------------------------------------*/
.pagetop {
	margin-top: 5%;
	font-family: 'Questrial', sans-serif;
	line-height: 1.0em;
	text-align: right;
}
.pagetop a {
	color: #69C332;
	text-decoration: none;
	background: url(../images/common/pagetop.png) no-repeat right center;
	background-size: 12px;
	padding-right: 18px;
}



/*copyright
---------------------------------------------------------*/
.copyright {
	background: rgb(244,250,239); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(244,250,239,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(244,250,239,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(244,250,239,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4faef', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	padding-top: 3%;
	padding-bottom: 30%;
}
.copyright .flt_l {
	width: 47%;
	font-size: 70%;
	color: #69C332;
	font-family: 'Libre Baskerville', serif;
	line-height: 1.6em;
}
.copyright .flt_r {
	width: 48.5%;
}

#bottom_tel {
	position: fixed;
	left: 0;
	bottom: 0;
}

.takuji{
	padding:3px;
	background-color: #fde6ec;
	box-sizing: border-box;
	width: 100%;
	margin-top: 5%;
	margin-left: auto;
	margin-right: auto;
}
.takuji dl{
	background-color: #fff;
}
.takuji dt{
	font-size: 110%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	text-align: center;
	color: #d54992;
	font-weight: bold;
	background-color: #fde6ec;
	padding: 0.6em 0;
	position: relative;
}
.takuji dt::before{
	position: absolute;
	content: "";
	background: #d54992;
	width: 1px;
	height: 1.2em;
	right: calc(50% + 5.15em);
	top:0.8em;
	transform:rotate(-30deg);
}
.takuji dt::after{
	position: absolute;
	content: "";
	background: #d54992;
	width: 1px;
	height: 1.2em;
	left: calc(50% + 5.15em);
	top:0.8em;
	transform:rotate(30deg);
}
.takuji dt span{
	font-size: 150%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	text-align: center;
	display: block;
}
.takuji dd{
	padding: 1em 0.8em;
	text-align: left;
}
.takuji dd p{
	margin-top: 0.8em;
	padding: 0;
}
.takuji dd p:first-of-type{
	margin-top: 0;
}
.takuji dd strong{
	color: #d54992;
	text-decoration: underline;
}