@charset "UTF-8";
/*
Theme Name: teamm
Theme URI: /wp-content/themes/teamm
Description: くろさき矯正歯科のサイトです
Author: teamm
Author URI:
Version: 1.0

1.  common settings
2.  sp settings
3.  header settings
4.  index settings
5.  page settings
6.  single settings
7.  sidebar settings
8.  footer settings
9.  form setting
10.  Other Styles

*/



/*==================================================================
	common settings
===================================================================*/

html {
	font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,メイリオ,Meiryo,sans-serif;
	letter-spacing:0.1em;
}
body{
	overflow-x: hidden;
	color:#111;
	letter-spacing:0.1em;
	position:relative;
}
h1,h2,h3,h4,h5,p,a,span,strong,dl,dt,dd,table,tbody,thead,th,td,blockquote,ul,li,ol {
	font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,メイリオ,Meiryo,sans-serif;
	color:#333;
}
.uk-grid.uk-grid-collapse {
	margin-left: 0;
}
.uk-grid.uk-grid-collapse >* {
	padding-left: 0;
}
p, li, dt, dd,th,td{
	font-size: 14px;
	line-height:200%;
	margin:0 0 25px 0;
	color:#333;
}
a {
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
	text-decoration:underline;
	color:#ffb452;
}
.uk-link:hover, a:hover{
	color:#457491;
}
a img:hover {
	opacity: 0.6;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
	
}
@media screen and (max-width : 959px){
	.uk-container{
		padding:0 15px;
	}
}
@media screen and (max-width : 639px){
	p, li, dt, dd th,td{
		font-size: 14px;
		line-height:180%;
		margin-bottom:15px;
	}
	.uk-container{
		padding:0;
	}
}




/* margin,padding
-------------------------------------------------------------------*/
.mb0 {
	margin-bottom: 0;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 1.5em;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb120 {
	margin-bottom: 120px;
}
.mb100 {
	margin-bottom: 8em;
}
.mt5{
	margin-top: 5px;
}
.mt10{
	margin-top: 10px;
}
.mt15{
	margin-top: 15px;
}
.mt20{
	margin-top: 20px;
}
.mt40{
	margin-top: 40px;
}
.mt60{
	margin-top: 60px;
}
.mt80{
	margin-top: 80px;
}
.pb0{
	padding-bottom:0;
}
.pb20{
	padding-bottom:20px;
}
.pb30{
	padding-bottom:30px;
}
.pt80{
	padding-top:80px;
}
.pt30{
	padding-top:30px;
}
.pb80{
	padding-bottom:80px;
}
.pt0{
	padding-top:0;
}
.pBox15{
	padding:15px;
}
@media screen and (max-width : 959px){
	.mb120 {
		margin-bottom: 80px;
	}
}
@media screen and (max-width : 639px){
	.mb60{
		margin-bottom:30px;
	}
	.mb80{
		margin-bottom:40px;
	}
	.mb100{
		margin-bottom:50px;
	}
	.mb120 {
		margin-bottom: 60px;
	}
}


/* font style
-------------------------------------------------------------------*/
.red{
	color:#f04148;
}
.bold{
	font-weight:bold;
	color:#604305;
}
.center{
	text-align:center;
}
.strong,
strong{
	font-weight:bold;
	color:#ffb452;
	font-size:15px;
}
.fonts{
	font-size:12px;
	color:#666;
}


/* table sheet style
-------------------------------------------------------------------*/
table.sheet {
	border-collapse:collapse;
	border-spacing:0px;
	border-bottom: none;
	margin-bottom:15px;
	width:100%;
	background:#f6f7f8;
}
.sheet th, .sheet td {
	padding: 15px 25px;
	text-align: left;
	line-height:1.5em;
	vertical-align:middle;
	background:#f6f7f8;
	border-bottom:solid 1px #fff;
	line-height:220%;
}
.sheet th {
	background: #457491;
	color:#fff;
	font-weight:bold;
	text-align:center;
	border-bottom:solid 1px #fff;
}
.sheet tr:last-child td{
	border-bottom:none;
}
.sheet td img {
	vertical-align:middle;
}
table.center td{
	text-align:center;
}
table td.fonts{
	font-size:12px;
	color:#666;
}

/* table price
---------------------------------------------*/
table.price th,
table.price td{
	padding: 8px 20px;
}
table.price th{
	width:50%;
	text-align:left;
	background:#deeabb;
	color:#444;
}
table.price td{
	text-align:center;
	width:25%;
}
table.price td:last-child{
	text-align:right;
}
table.center td{
	text-align:center;
}


@media screen and (max-width : 639px){
	table.sheet {
		border-right: none;
		border-left: none;
	}
	table.sheet th{
		border-left: none;
	}
	table.sheet td{
		border-right: none;
		padding:15px;
	}
	.sheet ul{
		padding-left:20px;
	}
	.uk-container .sheet ul li{
		padding:0 10px;
	}
}

	/* table 横スクロール style
-------------------------------------------------------------------*/
@media screen and (max-width : 639px){
	.scroll{
		overflow:auto;
		white-space:nowrap;
	}
	.scroll::-webkit-scrollbar{
		height:5px;
	}
	.scroll::-webkit-scrollbar-track{
		background:#f1f1f1;
	}
	.scroll::-webkit-scrollbar-thumb{
		background:#bcbcbc;
	}
}

/*	dl style
-------------------------------------------------------------------*/
dl{
	width: 100%;
	overflow: hidden;
	background:#f6f7f8;
	border-bottom:1px solid #ddd;
}
dt, dd{
	display: block;
	float: left;
	margin:0;
	padding:15px 2%;
	border-top:1px solid #ddd;
}
dt{
	width: 21%;
	clear: left;
}
dd{
	width: 71%;
	background:#fff;
}

@media screen and (max-width : 639px){
	dl{
		width: 100%;
		background:none;
		border-bottom:none;
	}
	dt, dd{
		float:none;
		width:90%;
		border-top:none;
	}
	dt{
		border-bottom:1px solid #ddd;
		font-weight:bold;
		padding:5px 6% 5px 4%;
		font-size:15px;
		background:#fff;
	}
	dd{
		border:none;
		padding:10px 5%;
		margin:0 0 15px 0;
	}
}



/* icon
-------------------------------------------------------------------*/
i{
	color:#fff;
}
a:hover i{
	color:#fff !important;
}


/*	blockquote
-------------------------------------------------------------------*/
blockquote {
	background: none repeat scroll 0 0 rgba(245, 245, 245, 0.8);
	border: 1px solid #FFFFFF;
	margin:0 0 40px 0;
	padding: 60px 30px 15px;
	position: relative;
	border-radius:10px;
}
blockquote:before {
	color: #C8C8C8;
	content: "“";
	font-family: serif;
	font-size: 500%;
	left: 0;
	line-height: 1em;
	position: absolute;
	top: 15px;
	left:15px;
}


/*	uk-accordion
-------------------------------------------------------------------*/
.uk-accordion li{
	margin:0;
}
.uk-accordion-title:hover{
	cursor:pointer;
	color:#ffb452;
}
.uk-accordion-title{
	text-decoration:none;
	font-size:16px;
	background:url(./img/icon.png) no-repeat 5px center/15px;
	padding:15px 15px 15px 30px;
	border-bottom:solid 1px #ddd;
}
.uk-accordion-content{
	padding:40px;
	
}
@media screen and (max-width : 639px){
	.uk-accordion-content{
		padding:0;

	}
}


/*==================================================================
	sp common settings
===================================================================*/
/* sp contactbtn footer
2023 追加 sp-footer
-------------------------------------------------------------------*/

#sp-contact{
	position: fixed;
	bottom: 0;
	right: 0;
	width:100%;
	z-index:100;
	overflow:hidden;
	margin:0;
	padding:0;
}

#sp-contact  .text{
	width:100%;
/* 	font-size:15px;
	font-weight:bold;
	background: #FFC06E;
	padding:8px;
	color:#ffffff;
	border-bottom:solid 1px #fff;
	border-top:solid 1px #fff;
	opacity:0.9; */
	padding-bottom: 5px;
	text-align: center;
}
#sp-contact li{
	float:left;
	width:50%;
	margin:0;
	list-style:none;
}
#sp-contact li a{
	display:block;
/* 	color:#fff;
	font-weight:bold;
	text-decoration:none; */
/* 	padding: 15px 0 12px 0; */
/* 	border-right:solid 1px #fff;
	font-size:12px;
	text-align:center;
	height:auto; */
/* 	background: #ffb452; */
}
#sp-contact li a span{
	display:block;
	color:#fff;
	font-weight:bold;
	text-decoration:none;
	font-size:10px;
	text-align:center;
	line-height:120%;
}
#sp-contact li:last-child a{
	border-right:none;
}
#sp-contact li a i{
	color:#fff;	
}
.sp-footer-wrapflex{
	display: flex;
}
.sp-footer-left-flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 70%;
	background-color: #f5f5f5;
	border-radius: 10px 10px 0 0;
	margin-left: 1%;
	padding: 10px 10px 5px;
}
.sp-footer-left-text{
	width: 100%;
	font-size: 12px;
	margin-bottom: 5px;
	text-align: center;
}
.sp-footer-left-text span{
	font-weight: 700;
}
.sp-footer-left-img1{
	width: 36.8%;
}
.sp-footer-left-img2{
	width: 60.8%;
}
.sp-footer-left-img1 img,.sp-footer-left-img2 img{
	width: 100%;
}
.sp-footer-right{
	width: 30%;
	padding: 28px 3px 0 5px;
}
@media screen and (max-width : 639px){
	body{
		padding-bottom:14%;
	}
}


/*==================================================================
	header settings
===================================================================*/

/* header
-------------------------------------------------------------------*/
header{
	z-index:900;
	background:#fff;
	padding:60px 0 0 0;
}
.logo{
	padding:0 0 60px 0;
}
.menu_btn{
	position:fixed;
	top:30px;
	right:0;
	border:none;
	background:none;
	padding:0;
	z-index:900;
}
.web_btn{
	position:fixed;
	top:45%;
	right:0px;
	z-index:900;
}
header.uk-sticky-fixed{
	padding:15px 0 0 0;
}
header.uk-sticky-fixed .logo{
	padding:0 0 15px 0;
}
header.uk-sticky-fixed .head_tel{
	display:none;
}


@media screen and (max-width : 959px){
	.logo{
		padding:0 0 0 30px;
	}
}
@media screen and (max-width : 639px){
	header{
		z-index:900;
		background:#fff;
		padding:15px 0 0 0;
	}
	.logo{
		padding:0 0 15px 15px;
	}
	header.uk-sticky-fixed .logo{
		padding:0 0 15px 15px;
	}
	.menu_btn{
		position:fixed;
		top:10px;
		right:10px;
		width:40px;
	}
	.web_btn{
		display:none;
	}
}

/* navigation
-------------------------------------------------------------------*/
.nav_items{
	margin:0;
}
.nav_items > li {
	box-sizing: border-box;
	margin:0;
	padding:0;
	text-align:left;
	display:inline-block;
}
.nav_items > li > a,
.nav_items > li > span.nolink{
	display:inline-block;
	padding:0px 40px 30px 20px;
	text-decoration:none;
	color:#333;
	letter-spacing:1px;
	font-size:13px;
	margin:0 ;
	background:url(./img/more.png) no-repeat left 8px;
}
.nav_items > li > a span{
	font-size:10px;
	line-height:120%;
	display:inline-block;
	margin-right:5px;
}
.nav_items > li > a:hover,
.nav_items > li > span.nolink:hover{
	color:#457491;
}
.uk-sticky-fixed .nav_items > li > a{
	padding:0px 40px 10px 20px;
	background:url(./img/more.png) no-repeat left 8px;
}



/*Nav  シンプルプルダウン
-------------------------------------------------------------------*/
#nav ul li ul{
	list-style: none;
	position: absolute;
	top: 100px;
	margin: 0;
	padding: 0;
	width:230px;
	z-index:200;
	box-shadow: 1px 3px 8px rgba(200,200,200,0.1);
}
#nav ul li:last-child ul{
	width: 100%
}
#nav ul li ul li{
	overflow: hidden;
	height: 0;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	background:none;
	background:#fff;
	margin:0;
}
#nav ul li ul li a{
	padding: 5px 10px 5px 30px;
	text-align: left;
	display:block;
	font-size:12px;
	height:auto;
	color: #7c5915;
	text-decoration:none;
	border-bottom:solid 1px #fff;
	background:url(./img/more.png) no-repeat 10px center/10px;
	font-weight:bold;
}
#nav ul li  ul li:last-child a{
	border-bottom:none;
}
#nav ul li  ul li:last-child,
#nav ul li  ul li:last-child a{
	border-radius:0 0 10px 10px;
}
#nav ul li  ul li a:hover{
 	background: rgba(200,200,200,0.4) url(./img/more.png) no-repeat 12px center/10px;
}
#nav ul li:hover ul li{
	overflow: visible;
	height: auto;
	z-index:1000;
}
#nav ul li ul li a{
	border-right: none;
}

@media screen and (max-width : 959px){
	#nav ul li ul li a{
		font-size:11px;
	}
}


/* modal
-------------------------------------------------------------------*/
.uk-modal{
	padding:0;
	width:100%;
	height:100%;
}
.uk-modal-body{
	padding:0;
}
.uk-modal-dialog{
	background:#fff;
	width:auto;
	margin:60px;
}
@media screen and (max-width : 959px){
	.uk-modal-dialog{
		margin:10px;
	}
}

/* offcanvas
-------------------------------------------------------------------*/
.uk-offcanvas-bar{
	background:url(./img/bg.png) ;
	padding: 15px;
}
.uk-nav-offcanvas>li{
	margin:0;
	display:block;
}



/* nav_menu
-------------------------------------------------------------------*/
#nav_menu .uk-button{
	line-height:200%;
	padding:15px 20px;
	border:none;
	font-size:12px;
	color:#457491;
	background:none;
}
#nav_menu .uk-button span{
	display:inline-block;
	font-size:30px;
	color:#457491;
}

@media screen and (max-width : 639px){

}


/* nav_menu_list
-------------------------------*/
#nav_menu ul {
	padding:60px 0 0 0;
	overflow:hidden;
}
#nav_menu ul li{
	margin:0;
}
#nav_menu ul li a{
	display:block;
	text-decoration:none;
	color:#fff;
	font-size:15px;
	background:#457491 url(./img/more2.png) no-repeat 15px center;
	padding:8px 10px 8px 35px;
	margin:0 0 15px 0;
	font-weight:bold;
}
#nav_menu ul li a:hover{
	background:#a0c3d9 url(./img/more2.png) no-repeat 15px center;
}
#nav_menu ul li.nolink span{
	display:block;
	text-decoration:none;
	color:#fff;
	font-size:15px;
	padding:8px 15px;
	margin:0 0 15px 0;
	font-weight:bold;
	background:#457491;
}
#nav_menu ul li ul {
	padding:0 0 0 10px;
	margin:5px 0 15px 0;
	overflow:hidden;
}
#nav_menu ul li ul li{
	display:inline-block;
	margin:0;
	float:none;
	width:auto;
}
#nav_menu ul li ul li a{
	font-size:12px;
	background:url(./img/more.png) no-repeat left center;
	border-bottom:none;
	padding:5px 25px 5px 15px;
	margin:0;
	letter-spacing:1px;
	color:#444;
}
#nav_menu ul li ul li a:hover{
	background:url(./img/more.png) no-repeat left center;
	color:#457491;
	text-decoration:underline;
}

@media screen and (max-width : 639px){
	#nav_menu ul li a{
		font-size:15px;
	}
}

/* nav_menu_list_sub
-------------------------------*/
#nav_menu .nav_menu_sub {
	background:#6bb381;
	padding:15px 30px;
}
#nav_menu .nav_menu_sub ul {
	margin:0;
	text-align:center;
}
#nav_menu .nav_menu_sub ul li{
	display:inline-block;
	margin:0;
}
#nav_menu .nav_menu_sub ul li a{
	color:#fff;
	font-size:12px;
	background:url(./img/btn.png) no-repeat left center/5px;
	border-bottom:none;
	padding:15px 30px 15px 15px;
	margin:0;
}
#nav_menu .nav_menu_sub ul li a:hover{
	background:url(./img/btn.png) no-repeat 3px center/5px;
	text-decoration:underline;
}

@media screen and (max-width : 639px){
	#nav_menu .nav_menu_sub {
		padding:15px;
	}
	#nav_menu .nav_menu_sub ul li a{
		padding:5px 15px 5px 15px;
	}
}

.head_tel p{
	text-align: right;
}

/*==================================================================
	index settings
===================================================================*/
/* keyv
-------------------------------------------------------------------*/
.keyv{
	position:relative;
	margin:60px auto 0  ;
	max-width:1340px;
}
.keyv-txt{
	position:absolute;
	top:-70px;
	left:160px;
	z-index:100;
}
.keyv-txt2{
	position:absolute;
	bottom:140px;
	left:30%;
	z-index:100;
}

@media screen and (max-width : 959px){
	.keyv-txt{
		top:-40px;
		left:90px;
	}
	.keyv-txt2{
		bottom:60px;
		right:30px;
	}
}

@media screen and (max-width : 639px){
	.keyv{
		margin:30px auto 0  ;
	}
	.keyv-txt{
		top:-20px;
		right:30px;
		width:20%;
	}
	.keyv-txt2{
		bottom:20px;
		right:15px;
		width:40%;
	}
}


/* top_title
-------------------------------------------------------------------*/
.top_title{
	color:#d8d1c8;
	font-size:40px;
	letter-spacing:0;
	font-weight: 400;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.top_title span{
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
	display:inline-block;
	background:rgba(255,255,255,0.8);
	padding:0 10px 15px;
	color:#457491;
	font-size:24px;
	letter-spacing:0.3em;
	font-weight: 700;
	margin-right:30px;
}
@media screen and (max-width : 639px){
	.top_title{
		font-size:20px;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		text-align:center;
		margin:0 0 40px;
	}
	.top_title span{
		display:block;
		background:none;
		padding:0 ;
		font-size:17px;
		letter-spacing:0.3em;
		margin:10px;
	}
}

/* top_about
-------------------------------------------------------------------*/
.uk-container .top_about{
	position:relative;
	margin:160px 0 80px;
}
.top_about h2{
	position:absolute;
	top:0;
	left:30px;
	z-index:100;
}
.top_about a{
	display:block;
	text-decoration:none;
	margin:0 0 40px 0;
}
.top_about a h3{
	font-size:19px;
	padding:0 30px;
	margin:40px 0 30px;
	color:#457491;
}
.top_about a p{
	font-size:14px;
	padding:0 30px;
	margin:0 0 20px;
}
.top_about a p.more{
	padding:0 30px 30px 0;
	text-align:right;
}
.top_about a p.more span{
	background:url(./img/more.png) no-repeat left center;
	color:#a0c3d9;
	font-weight:bold;
	font-size:12px;
	padding:0 0 0 15px;
}
.top_about a:hover{
	background:#deedf6;
}
.top_about a:hover img{
	opacity:1;
}
.about1{
	margin-top:160px;
}
.about4{
	margin-top:-130px;
}

@media screen and (max-width : 639px){
	.top_about h2{
		position:static;
	}
	.uk-container .top_about{
		margin:40px 0;
	}
	.about1{
		margin-top:0;
	}
	.about4{
		margin-top:0;
	}
	.top_about a{
		margin:0 ;
	}
	.top_about a h3{
		padding:0 15px;
		margin:30px 0 15px;
	}
	.top_about a p{
		font-size:14px;
		padding:0 15px;
		margin:0 0 20px;
	}
}




/* topmenu
-------------------------------------------------------------------*/
.Topmenu{
	background:#f6f7f8;
	padding:100px 0;
}
.uk-container .top_menu{
	margin:0 0 40px ;
}
.top_menu a{
	background:#fff;
	text-decoration:none;
	display:block;
	padding:0 30px;
	border:solid 1px #fff;
	margin:0;
	height:100%;
}
.top_menu a h2{
	color:#457491;
	font-size:18px;
	text-align:center;
	line-height:160%;
	margin:15px 0 30px;
	padding:0 0 40px;
	background:url(./img/btn.png) no-repeat center bottom;
}
.top_menu a h2 span{
	display:block;
	color:#457491;
	font-size:14px;
	text-align:center;
}
.top_menu img{
	display:block;
	margin:60px auto 0;
}
.top_menu p{
	font-size:13px;
	margin:0 0 40px 0;
	letter-spacing:1px;
}
.top_menu a:hover {
	transition:0.4s;
	border:solid 1px #a0c3d9;
}
.top_menu a:hover img{
	opacity:1;
}



@media screen and (max-width : 639px){
	.Topmenu{
		background:#f6f7f8;
		padding:30px 0 20px 40px;
	}
	.Topmenu .uk-grid > * {
		padding:0 0 0 0;
	}
	.uk-container .top_menu{
		margin:0 0 15px ;
		padding:0 10px 0 0;
	}
	.top_menu p{
		display:none;
	}
	.top_menu img{
		margin:30px auto 0;
		width:20%;
	}
	.top_menu a{
		padding:0 15px;
	}
	.top_menu a h2{
	font-size:16px;
	line-height:140%;
	margin:15px 0 30px;
	padding:0 0 30px;

}
.top_menu a h2 span{
	font-size:12px;
}
}





/* Top news list　
-------------------------------------------------------------------*/
.top_news{
	padding:100px 0;
}
.top_news h2{
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;
	position:relative;
	padding:40px 0 0 80px;
}
.top_news h2 span{
	position:absolute;
	top:0;
	left:0;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height:11em;
	z-index:100;
	padding:0 10px;
}
.top_news h2 a{
	display:inline-block;
	color:#a0c3d9;
	font-size:12px;
	background:url(./img/more.png) no-repeat left center;
	font-weight:bold;
	text-decoration:none;
	padding:0 0 0 15px;
	margin-left:40px;
}
.top_news h2 a:hover{
	color:#ffb452;
}
.column_txt{
	position:relative;
}
.line-list{
	padding:0;
	list-style:none;
	margin:0 0 80px 0;
}
.line-list li{
	margin:0;
}
.line-list li a {
	background:#fff;
	text-decoration:none;
	color:#444;
	display:block;
	font-size:14px;
	position:relative;
	height:100%;
}
.line-list li a:hover .column_txt{
	background:#f7f7f7;
}
.line-list li a:hover img{
	opacity:0.6;
}
.line-list li a h3,
.single .line-list li a h3{
	font-size:13px;
	margin:0;
	padding:0 15px 15px;
	line-height:180%;
}
.date{
	display:block;
	color:#999;
	font-size:12px;
	padding:15px;
	letter-spacing:1px;
	line-height:120%;
	margin:0;
}
span.new{
	position:absolute;
	top:-15px;
	right:15px;
	display:inline-block;
	color:#fff;
	font-size:8px;
	margin:0;
	font-weight:bold;
	background:#ffb900;
	padding:2px 5px;
	border-radius:100%;
	text-align:center;
	letter-spacing:0;
}
.cat{
	display:inline-block;
	color:#fff;
	font-size:12px;
	padding:2px 15px;
	width:6em;
	text-align:center;
	margin:0 10px;
	line-height:160%;
}
.i-news{
	background:#624a26;
}
.i-column{
	background:#eda5be;
}
@media screen and (max-width : 959px){
	.top_news{
		padding:60px 0;
	}
	.line-list {
		padding:0 0 0 30px;
		margin:0 0 60px 0;
	}
	.line-list .uk-grid>*{
		padding:0;
	}
}
@media screen and (max-width : 639px){
	.top_news{
		padding:40px 0;
	}
	.top_news h2{
		font-size:16px;
		letter-spacing:1px;
	}
	.date{
		font-size:10px;
		letter-spacing:0;
		padding:15px 10px 10px 10px;
	}
	.line-list li a h3{
		padding:0 10px 10px;
		line-height:140%;
	}
	.cat{
		font-size:8px;
	}
	.line-list {
		margin:0 0 40px 0;
	}
	.top_news h2{
		padding:0 10px;
	}
	.top_news h2 span{
		position:static;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		height:auto;
		z-index:100;
		padding:0;
	}
	.top_news h2 a{
		padding:0 0 0 15px;
		margin:0 ;
	}
	
	
}




/*==================================================================
	page settings
===================================================================*/
/* 固定ページ
-------------------------------------------------------------------*/
.contents {
	margin:0 auto 180px auto;
}
.contents .uk-container{
	max-width:1000px;
}
.contents .uk-grid>* img{
	margin:0 0 15px;
}

@media screen and (max-width : 959px){
	.contents {
		margin:0 auto 80px;
	}
}
@media screen and (max-width : 639px){
	.contents {
		margin:0 0 40px;
		padding:0 10px;
	}
}


/* bl
-------------------------------------------------------------------*/
.bl{
	padding: 15px 30px;
	margin:0 0 60px;
}
.bl a,
.bl{
	color:#333;
	font-size:12px;
}
.bl ul{
	margin:0 auto;
}
.bl ul li{
	font-size:12px;
	margin:0;
	color:#333;
}
.uk-breadcrumb>li:not(.uk-active)>span{
	color:#333;
	font-size:12px;
}
@media screen and (max-width : 959px){
	.bl{
		padding:30px 15px;
	}
}
@media screen and (max-width : 639px){
	.bl{
		display:none;
	}
}

/* more style
-------------------------------------------------------------------*/
.more{
	margin:0;
	text-align:center;
	text-decoration:none;
}
.more a{
	display:inline-block;
	text-decoration:none;
	font-size:13px;
	color:#457491;
	text-align:center;
	font-weight:bold;
	background:#fff url(./img/more.png) no-repeat 30px center;
	padding:5px 40px 5px 70px;
	border-radius:30px;
	border:solid 1px #457491;
}
.more a:hover{
	background:#457491 url(./img/more2.png) no-repeat 30px center;
	transform:0.2s;
	color:#fff;
}
@media screen and (max-width : 639px){
	.more a{
		display:block;
		padding:5px 55px 5px 60px;
		margin:0 15px;
	}
}



/* page_ttl
-------------------------------------------------------------------*/

.page_ttl_txt,
.title {
	margin:60px 0 15px;
	padding:40px 0;
	text-align:center;
	background:url(./img/keyv.png) no-repeat left center/cover ;
}
.page_ttl_txt h1,
.title h1{
	margin:0;
}
.page_ttl_txt h1 span,
.title h1 span{
	display:block;
	font-size:22px;
	color:#457491;
	letter-spacing:5px;
	text-align:center;
	margin:0 60px;
	line-height:200%;
	padding:80px 30px;
	font-weight: 700;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
	background:rgba(255,255,255,0.7);
}
.title1,
.single h2{
	font-weight:bold;
	font-size:16px;
	margin:0 0 30px 0;
	color:#457491;
	line-height:200%;
	background:#f6f7f8;
	border-top:2px solid #457491;
	padding:10px 15px;
}
.title2,
.single h3{
	background:url(./img/icon.png) no-repeat 10px center/25px,url(./img/bg.png);
	font-size:15px;
	margin:0 0 30px 0;
	padding:12px 15px 12px 45px;
	color:#457491;
	font-weight:bold;
	letter-spacing:2px;
}
.title3,
.single h4{
	font-size:14px;
	margin:0 0 20px 0;
	padding:15px;
	color:#457491;
	font-weight:bold;
	letter-spacing:2px;
	border-bottom:2px dotted #ddd;
}
@media screen and (max-width : 959px){
	.page_ttl_txt,
	.title {
		padding:30px 0 60px;
		margin:0;
	}
}
@media screen and (max-width : 639px){
	.page_ttl_txt,
	.title {
		padding:30px 0;
		margin:0 0 30px ;
	}
	.page_ttl_txt h1 span,
	.title h1 span{
		font-size:17px;
		margin:0 15px;
		padding:15px;
		line-height:140%;
		letter-spacing:1px;
	}
	.uk-container p.title1{
		padding:12px 15px;
	}
	.uk-container p.title2{
		padding:10px 5px 13px 40px;
	}
	.uk-container p.title3{
		padding:5px 10px;
	}
	.title1 {
		font-size:16px;
		margin-bottom:25px;
		letter-spacing:1px;
		background-size:50px;
	}
	.title2 {
		font-size:15px;
		margin-bottom:20px;
		padding:10px 5px 13px 40px;
		letter-spacing:2px;
	}

}


/* list style
-------------------------------------------------------------------*/
ul.list{
	padding-left:30px;
}
ul.list li{
	list-style:url(./img/list.png);
	padding-left:5px;
	margin:5px 0;
}
ul.list li a{
	font-weight:bold;
	font-size:14px;
}
ul.list li a:hover{
	color:#6cb381;
}

/* page_menu
-------------------------------------------------------------------*/
.page_menu .top_menu a{
	background:#f6f7f8;
}
.page_menu .top_menu a h2{
	margin-top:60px;
}

.page_menu2 .top_menu a h2{
	margin-top:40px;
	font-size:14px;
}

@media screen and (max-width : 639px){
	.page_menu .top_menu a h2,
	.page_menu2 .top_menu a h2{
		margin-top:30px;
		font-size:15px;
		background-size:12px;
		padding:0 0 20px 0;
	}
	.page_menu .top_menu{
		padding:0;
	}
}
/* faq
-------------------------------------------------------------------*/
.faq_q{
	background:#e8f0f6 url(./img/q_big.png) no-repeat 30px center;
	padding:25px 30px 25px 80px;
	border-radius:5px;
}
.faq_a{
	background:#f6f7f8 url(./img/a_big.png) no-repeat 30px center;
	padding:25px 30px 25px 80px;
	border-radius:5px;
}




/*==================================================================
	single settings
===================================================================*/
/* 投稿ページ,アーカイブ
-------------------------------------------------------------------*/
.uk-container .single{
	padding:60px;
	border:solid 1px #ddd;
	margin:0 0 60px;
}
.uk-container .archivelist{
	max-width:960px;
	margin:0 auto 120px;
}
.single_list{
	margin:0 0 120px;
}

@media screen and (max-width : 959px){
	.single{
		padding:30px;
	}
	.archivelist{
		width:100%;
		margin:0 auto ;
	}
}

@media screen and (max-width : 639px){
	.uk-container .single{
		margin:0;
		padding:30px 15px;
		border:none;
	}
	.uk-container .archivelist{
		margin:0 auto 40px;
	}
	.single_more .more a{
		padding:5px 10px 5px 30px;
		font-size:12px;
		background:#fff url(./img/more.png) no-repeat 15px center;
	}
}

/* サムネイル付き list
----------------------------*/
.Box a{
	display:block;
	overflow:hidden;
	text-decoration:none;
	color:#624a26;
	margin:0 0 60px 0;
}
.Box a img{
	float:left;
	width:270px;
	margin-right:40px;
}
.Box_right{
	padding:15px;
}
.Box h2{
	font-weight:bold;
	font-size:16px;
	margin:0 0 30px 0;
	color:#457491;
	line-height:200%;
	background:#f6f7f8;
	border-top:2px solid #457491;
	padding:10px 15px;
}
.Box .date{
	display:inline-block;
}
.i-cat{
	display:inline-block;
	color:#fff;
	font-size:12px;
	padding:0 15px;
	text-align:center;
	line-height:160%;
	background:#ffb452;
	margin:0 0 0 15px;
	border-radius:20px;
}
p.Box-txt{
	font-size:14px;
	letter-spacing:0.1px;
}
.Box p.more{
	display:inline-block;
	text-align:right;
	background:url(./img/more.png) no-repeat left center;
	padding:0 0 0 15px;
}
.Box a:hover p.more{
	color:#ffb452;
	text-decoration:underline;
}

@media screen and (max-width : 639px){
	.Box a img{
		width:35%;
		margin:15px 15px 0;
	}
	.Box_right{
		padding:10px 15px;
	}
	.Box h2{
		font-size:13px;
		margin:0;
	}
	.uk-container p.Box-txt{
		padding:0;
		margin-bottom:5px;
	}
	.i-cat{
		display:none;
	}

}

/* サムネイルなし list
----------------------------*/
.Box2{
	padding:30px;
	margin-bottom:40px;
	background:#fcf5f2;
}
.Box2 h2.single_ttl{
	font-size:15px;
	font-weight:bold;
	border-bottom:solid 1px #ebcece;
	margin-bottom:20px;
	padding:0 5px 10px 5px;
	color:#ba697c;
}

@media screen and (max-width : 639px){
	.Box2 h2.single_ttl{
		font-size:14px;
		margin-bottom:15px;
		padding:0 10px 5px 10px;
		border:none;
	}
	
}


/*   pagination 
-------------------------------------------------------------------*/
.pagination {
	width: 100%;
	height: 100px;
	text-align: center;
	z-index: 200;
  list-style-type: none;
	padding:0;
}
.pagination a {
	margin: 0 5px;
	width: 15px;
	height: 15px;
	display: inline-block;
	overflow: hidden;
}
.pagination a.active {
	filter:alpha(opacity=100)!important;
	-moz-opacity: 1!important;
	opacity: 1!important;
}
.pagination,
.pagination li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}


/* 色変更箇所*/
.pagination a {
  font-weight: 500;
  padding-top: 1px;
  text-decoration:none;
  border-left-width: 0;
  min-width:36px;
  min-height:36px;
  color: #666;
  background-color: #f7f7f7;
}

/* 色変更箇所*/
.pagination li:not([class*="current"]) a:hover {
  background-color: #96bbd4;
	color:#fff;
}

.pagination li:first-of-type a {
  border-left-width: 1px;
}

.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
  /* screen readers only */
  position: absolute;
  top: -9999px;
  left: -9999px;
}

.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
  display: inline-block;
  font-family: Fontawesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0);
}

.pagination li.first a::before { content: "\f100"; }
.pagination li.last a::after { content: "\f101"; }

.pagination li.previous a::before { content: "\f104"; }
.pagination li.next a::after { content: "\f105"; }

 /* 色変更箇所*/
.pagination li.current a {
 background-color: #96bbd4;
 cursor: default;
 pointer-events: none;
	color:#fff;
}

.pagination > li:first-child > a {
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
}

.pagination > li:last-child > a {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}

@media only screen and ( max-width: 639px ) {
  .pagination li.first,
  .pagination li.last {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
	.uk-container .pagination li{
		padding:0;
	}
  .pagination li.previous a { border-left-width: 1px; }
}




/*==================================================================
	sidebar settings
===================================================================*/
.side_mb{
	margin:0 0 120px;
}
@media screen and (max-width : 959px){
	.side_mb{
		margin:40px 0 0;
	}
}


/* side menu ttl
-------------------------------------------------------------------*/
.side_nav{
	margin-bottom:20px;
}
.side_nav a{
	color:#111;
}
.side_nav_ttl {
	background:#457491;
	padding:8px 5px;
	text-align:center;
	color:#fff;
	letter-spacing:0.2em;
	font-size:14px;
	margin:0;
	font-weight:bold;
}
.side_nav_ttl a{
	color:#fff;
	font-size:14px;
	text-decoration:none;
}

@media screen and (max-width : 639px){
	.side_nav{
		margin-bottom:0;
	}
	.uk-container li.side_nav_ttl{
		padding:10px 5px;
		border-radius:0;
	}
}


/* side menu list
-------------------------------------------------------------------*/
.side_nav_item ul {
	padding:0;
	border-top:none;
}

.side_nav_item ul li {
	border-bottom: 2px solid #fff;
	position:relative;
	margin:0;
}
.side_nav_item ul li:last-child{
	border-bottom:none;
}
.side_nav_item ul li a {
	background: #f6f7f8;
	padding:15px;
	font-size:12px;
	line-height:160%;
	color:#444;
}
.side_nav_item ul li a:hover {
	background: #eee;
}
.side_nav_item .date{
	display:inline-block;
}
@media screen and (max-width : 959px){
	.side_nav_item ul li a{
		overflow:hidden;
	}
	.side_nav_item ul li a img{
		float:left;
		width:30%;
		margin-right:30px;
	}
	
}
@media screen and (max-width : 639px){
	.uk-container li.side_nav_item,
	.uk-container li.side_nav_item li{
		padding:0;
		margin:0;
	}
	.side_nav_item ul {
		border:none;
	}
	.side_nav_item ul li {
		border-bottom: none;
	}
	.side_nav_item ul li a {
		background: #fff;
		border-bottom:solid 1px #ddd;
	}
	.side_nav_item ul li:last-child a {
		border-bottom:none;
	}
	.side_nav_item ul li a:hover {
		background: #f4f4f4;
	}
	.side_nav_item ul li a img{
		width:35%;
		margin:0 15px 15px 0;
	}
	.side_nav_item ul li a .date{
		padding:0;
	}
}



/* side menu list 3層目
-------------------------------------------------------------------*/
.side_nav_item ul li ul{
	  padding:0;
		border:none;
  }
.side_nav_item ul li ul li{
      border:none;
  }
.side_nav_item ul li ul.children a{
	background: #fff;
	padding:5px 15px 5px 40px;
	border-top:1px dotted #EFEEEB;
  }
.side_nav_item ul li ul.children a:hover {
	background: #EFEEEB;
	color:#444;

}



/* side cv
-------------------------------------------------------------------*/
.side-contact{
	position: relative;
}
.sn-btn1{
	position:absolute;
	bottom: 8%;
	width: 84%;
	left:8%;
}
.sn-btn2{
	position:absolute;
	bottom: 5%;
	width: 90%;
	left:5%;
}





/*==================================================================
	footer settings
===================================================================*/
footer{
	padding:80px 0 0 0;
	background:#f6f7f8;
}
.footer_logo{
	padding:30px 0;
}
.cv{
	padding:120px 0;
}

@media screen and (max-width : 959px){
	.cv{
		padding:60px 0;
		margin:0 0 0 0;
	}
}
@media screen and (max-width : 639px){
	.footer_logo{
		padding:0 0 30px ;
	}
	.cv{
		padding:40px 0 0 0;
		margin:0 0 0 0;
	}
	footer{
		padding: 0;
	}
	footer img{
		padding:15px;
	}
}


/* footer_contact
-------------------------------------------------------------------*/
.uk-container .footer_contact{
	background:url(./img/bg.png) ;
	padding:60px 40px 30px;
	margin:0 0 180px;
}
.contact h2.top_title{
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;
	position:relative;
	padding-left:15px;
}
.contact h2.top_title span{
	position:absolute;
	top:0;
	right:30px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height:13em;
}
.contact_txt{
	font-size:15px;
	letter-spacing:1px;
	line-height:220%;
	padding:30px 0 ;
}
.contact_btn{
	display:block;
}
.contact_btn a{
	display:inline-block;
	background:#fdb354 url(./img/more2.png) no-repeat center 70%;
	padding:30px 15px 40px;
	color:#000;
	font-weight:bold;
	font-size:15px;
	margin:30px 0;
	border-radius:100%;
	text-decoration:none;
}
.contact_btn a:hover{
	background:#e7890e url(./img/more2.png) no-repeat center 70%;
}
@media screen and (max-width : 959px){
	.uk-container .footer_contact{
		padding:60px 40px 30px;
		margin:0 0 100px;
	}
	.contact h2.top_title span{
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		height:auto;
		position:static;
	}
	.contact{
		margin:60px 0 0 0;
	}
}
@media screen and (max-width : 639px){
	.uk-container .footer_contact{
		padding:30px 15px;
		margin:0 0 40px;
	}
	.contact_txt{
		padding:10px 0 ;
		text-align:center;
	}
	.contact_btn{
		text-align:center;
	}
	
}

.reservation_text{
	font-size: 12px;
	color: #37758d;
	padding-left: 30px;
}
.reservation_tel{
	font-size: 20px;
	color: #37758d;
	padding-left: 10px;
}
.reservation_tel a{
	color: #37758d;
	text-decoration: none;
}
/* footer_more
-------------------------------------------------------------------*/
.footer_more{
	background:#f6f7f8 url(./img/top_img.png) no-repeat right center/contain;
	max-width:1340px;
	margin:0 auto;
}
.footer_more_in{
	position:relative;
	padding:100px 0;
}
.footer_more h2{
	position:absolute;
	top:-60px;
	right:0;
}
.footer_more h2 span{
	margin-right:15px;
}
.footer_more ul{
	margin:0;
	padding:0;
}
.footer_more ul li {
	list-style:none;
	margin:0;
}
.footer_more ul li a{
	display:block;
	text-decoration:none;
	font-size:16px;
	color:#457491;
	letter-spacing:2px;
	border-bottom:1px solid #457491;
	padding:12px;
}
.footer_more ul li a span{
	display:inline-block;
	font-size:14px;
	color:#999;
	letter-spacing:2px;
	background:url(./img/more.png) no-repeat left center;
	padding:0 0 0 30px;
	margin:0 0 0 30px;
}
.footer_more ul li a:hover span{
	color:#ffb452;
}
@media screen and (max-width : 959px){
	.footer_more{
		background:#f6f7f8 url(./img/top_img.png) no-repeat 150% center/contain;
	}
	.footer_more_in{
		padding:40px 0;
	}
}
@media screen and (max-width : 639px){
	.footer_more{
		background:#f6f7f8;
	}
	.footer_more h2{
		position:static;
	}
	.footer_more ul{
		margin:0 15px;
		padding:0;
	}
	.footer_more ul li a span{
		display:block;
		padding:0 0 0 15px;
		margin:10px 0 0 15px;
	}
	.footer_more h2 span{
		margin-right:0;
	}
}

/* about_address
-------------------------------------------------------------------*/
.about_address{
	margin:0;
	font-size:12px;
	color:#958f85;
	letter-spacing:1px;
	line-height:220%;
}


/* cv tel
-------------------------------------------------------------------*/
.access-tel{
	margin:40px 0 0 0;
}
.access-tel p {
	margin:20px 0 0 0;
}
.access-tel p a{
	display:block;
	color:#457491;
	font-size:16px;
	letter-spacing:1px;
	text-decoration:none;
	margin:0;
	line-height:130%;
	font-weight: 400;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
}
.access-tel p a span{
	display:inline-block;
	margin:0 10px 0 0;
	font-size:11px;
	letter-spacing:0.5px;
	color:#958f85;
}
@media screen and (max-width : 959px){
	.access-tel p {
		margin:15px 1% 0 0;
	}
}
@media screen and (max-width : 639px){
	.access-tel p a{
		font-size:16px;
		letter-spacing:0;
		padding:0 0 0 20px;
	}
	.access-tel p a span{
		font-size:9px;
	}
}


/* cv 診療時間
-------------------------------------------------------------------*/
.sheet-time {
	width:100%;
}
.sheet-time th,
.sheet-time td{
	color:#457491;
	vertical-align:middle;
	font-size:13px;
	border-bottom:1px solid #457491;
	padding:8px 10px;
}
.sheet-time th{
	text-align:center;
	letter-spacing:3px;
}
.sheet-time td{
	text-align:center;
	width:8%;
}
.sheet-time th:first-child,
.sheet-time td:first-child{
	text-align:left;
	padding-left:30px;
}
.about_time{
	font-size:12px;
	color:#457491;
	text-align:right;
	margin:15px 15px 0 0;
	line-height:280%;
}

@media screen and (max-width : 639px){
	.cv .access-time{
		padding:0 10px;
	}
	.sheet-time th{
		letter-spacing:2px;
		padding:10px 5px;
	}
	.sheet-time td{
		width:8%;
		padding:10px 5px;
	}
	.sheet-time th:first-child,
	.sheet-time td:first-child{
		padding-left:10px;
	}
	 .about_time{
		font-size:10px;
		text-align:center;
		margin:15px 0 0 0;
		line-height:240%;
		padding-bottom:30px;
	}
}

/* sitemap
-------------------------------------------------------------------*/
.footer-sitemap{
	padding:60px 0;
}
.footer-sitemap ul{
	padding:0;
	margin:0;
	list-style:none;
	overflow:hidden;
}
.footer-sitemap ul li{
	display:inline-block;
	margin:0;
	padding:15px 0;
}
.footer-sitemap ul li a{
	color:#457491;
	font-size:12px;
	text-decoration:none;
	line-height:240%;
	font-weight:bold;
	padding:5px 0;
	margin:0 20px;
}
.footer-sitemap ul li a:hover{
	border-bottom:1px solid #457491;
}



@media screen and (max-width : 639px){
	.footer-sitemap{
		padding:30px 10px;
	}
	.footer-sitemap ul{
		padding:0 0 15px 0;
	}
	.footer-sitemap ul li{
		padding:3px 0;
	}
	.footer-sitemap ul li a{
	margin:0 10px;
}

}

/* sign
-------------------------------------------------------------------*/
.footer_sign{
	padding:25px 0;
	background:#fff;
}
.footer_sign p {
	color: #457491;
	font-size:11px;
	text-align:center;
	margin:0;
}
.footer_sign a{
	color: #457491;
}
@media screen and (max-width : 639px){
	.footer_sign{
		padding:30px 15px 60px;
		margin-top:0;
	}
	
}

/* pagetop
-------------------------------------------------------------------*/

#page-top {
	position: fixed;
	bottom: 10px;
	right: 10px;
	margin:0;
	z-index:1001;
}
#page-top a {
	background: url(./img/pagetop.png) no-repeat 0 0;
	z-index:10;
	text-indent:-5000px;
	text-decoration: none;
	color: #fff;
	width: 85px;
	height:85px;
	text-align: center;
	display: block;
}
#chatbot{
	position: fixed;
	bottom: 110px;
	right: 30px;
	margin:0;
	z-index:1001;
}
@media screen and (max-width : 639px){
	#chatbot{
		bottom: 105px;
		right: 10px;
	}
}






/*==================================================================
  form setting
===================================================================*/
table.contactform{
	margin:0 auto 40px;
	max-width:1000px;
}
table.contactform th{
	width:30%;
	text-align:right;
}
.indispensable{
	display:block;
  font-size:12px;
  color:#ffb452;
	line-height:140%;
	margin:0;
}


input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="radio"],
input[type="checkbox"],
input[type="number"],
label,
button {
	cursor: pointer;
}
input[type="checkbox"],
input[type="radio"] {
	vertical-align: middle;
}
input[type="hidden"] {
	*float: left;
}
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	font-family:  "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","游ゴシック", YuGothic, "メイリオ", Meiryo, Verdana, sans-serif;
    font-size: 100%;
    outline: none;
	-webkit-appearance: none;
}
input[type="number"]{
	padding:5px;
	border:solid 1px #ddd;
	border-radius:3px;
}

*[class*="disabled"],
*:disabled {
    cursor: default !important;
}
.wpcf7-text{
    width: 95%;
    margin: 5px 0;
    border: 1px solid #DDDDDD ;
    border-radius: 3px;
    background: #fff;
    outline: none;
	padding:2px 5px;
}
.wpcf7-email{
    width: 95%;
    margin: 5px 0;
    border: 1px solid #DDDDDD ;
    border-radius: 3px;
    background: #fff;
    outline: none;
}
.wpcf7-date{
    width: 95%;
    margin: 5px 0;
    border: 1px solid #DDDDDD ;
    border-radius: 3px;
    background: #fff;
    outline: none;
}
textarea {
    width: 99%;
    margin: 5px 0;
    border: 1px solid #DDDDDD ;
    border-radius: 3px;
    background: #fff;
    outline: none;
}


input[type="text"]{
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
	padding:2px 5px;
	border-radius: 3px;
}
input[type="tel"] {
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
	padding:2px 5px;
	border-radius: 3px;
}
input[type="email"]{
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
	padding:2px 5px;
	border-radius: 3px;
}
textarea.wpcf7c-conf {
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
	padding:2px 5px;
}
select.wpcf7c-conf {
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
}
checkbox.wpcf7c-conf {
  border: 1px solid #DDDDDD ;
  background-color: #FFFFFF !important;
}

#back{
	display:inline-block;
	text-decoration:none;
	font-size:13px;
	color:#457491;
	text-align:center;
	font-weight:bold;
	background:#fff url(./img/more.png) no-repeat 30px center;
	padding:8px 40px 8px 50px;
	border-radius:30px;
	border:solid 1px #457491;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
#confirm{
	display:inline-block;
	text-decoration:none;
	font-size:13px;
	color:#457491;
	text-align:center;
	font-weight:bold;
	background:#fff url(./img/more.png) no-repeat 30px center;
	padding:8px 40px 8px 50px;
	border-radius:30px;
	border:solid 1px #457491;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
input[type="submit"]{
	display:inline-block;
	text-decoration:none;
	font-size:13px;
	color:#457491;
	text-align:center;
	font-weight:bold;
	background:#fff url(./img/more.png) no-repeat 30px center;
	padding:8px 40px 8px 50px;
	border-radius:30px;
	border:solid 1px #457491;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
#confirm:hover{
	background:#457491 url(./img/more2.png) no-repeat 30px center;
	transform:0.2s;
	color:#fff;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
#back:hover{
	background:#457491 url(./img/more2.png) no-repeat 30px center;
	transform:0.2s;
	color:#fff;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
input[type="submit"]:hover{
	background:#457491 url(./img/more2.png) no-repeat 30px center;
	transform:0.2s;
	color:#fff;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}

div.wpcf7-validation-errors, 
div.wpcf7-acceptance-missing,
div.wpcf7-mail-sent-ok{
	padding:15px!important;
	border:none!important;
	background:#f4f4f4;
	margin:0 auto!important;
}


/* css checkbox01 */
.checkbox01-input{
  display: none;
}
.checkbox01-parts{
  padding-left: 25px;
  position:relative;
  margin-right: 25px;
}
.checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
	background:#fff;
}
.checkbox01-input:checked + .checkbox01-parts{
  color: #e52d19;
}
.checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #e52d19;
  border-right: 3px solid #e52d19;
}


/*==================================================================
 *    Other Styles
===================================================================*/
/*	text box
-------------------------------------------------------------------*/
.sBox{
	padding:30px 30px 5px;
	background:#f6f7f8;
	margin:0 0 30px 0;
	border:solid 1px #dfdfdf;
}

@media screen and (max-width : 639px){
	.sBox{
		padding:30px 15px 15px ;

	}
}



/*	accordion
-------------------------------------------------------------------*/
#accordion{
	padding:0;
}
#accordion li{
	list-style:none;
	margin:0;
}
.archive{
	background: url(./img/btn2.png) no-repeat 10px 50%;
	background-size:15px;
	color:#5a3d1f;
	padding:15px 15px 15px 35px;
	border-bottom:1px solid #eee;
	cursor:pointer;
	font-size:14px;
	font-weight:bold;
}
.subMenu{
	padding:15px;
	border-bottom:1px solid #eee;
	color:#666;
}

/* faqlist
-------------------------------------------------------------------*/

.faqlist dt{
	background: url(./img/brackets5.png) no-repeat left top,
		url(./img/brackets6.png) no-repeat right top,
		#f8f5f3;
	padding:30px 30px 0 30px;
	border-bottom:none;
	font-size:16px;
	border-radius:5px 5px 0 0;
	margin:0;
}
.faqlist dt span{
	display:block;
	padding:15px;
	letter-spacing:3px;
	border-bottom:2px dotted #cdbca5;
}

.faqlist dd{
	background:url(./img/brackets7.png) no-repeat left bottom,
		url(./img/brackets8.png) no-repeat right bottom,
		#f8f5f3;
	padding:0 30px 30px 30px;
	margin-bottom:40px;
	letter-spacing:3px;
	border-radius:0 0 5px 5px;
}
.faqlist dd span{
	display:block;
	padding:30px 15px;
}


/*	tab menu
-------------------------------------------------------------------*/
ul.tab{
	margin:0;
	padding:0;
	height:auto;
}
ul.tab li a{
	background: #eee;
	padding:5px;
	display:block;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	color: #000;
	margin-bottom:10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}
ul.tab li a:hover {
	background: #84ac2f;
	padding:5px;
	display:block;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	color: #fff;
}
ul.tab li a.active {
	background: #84ac2f;
	color: #fff;
}





/* mainslide(imgslide)
------------------------------------------------------------------*/
.mainslide{
	background:url(./img/tour.png) repeat-x ;
	height:200px;
	width:100%;
	margin-top:120px;
}
.mainStart {
	margin-top: 0px;
}
@media screen and (max-width : 639px){
	.mainslide{
		display:none;
		margin-top:40px;
	}
}



/* fancybox
------------------------------------------------------------------*/
#fancybox-content img{
	border-radius:10px 10px 0 0!important;
}
#fancybox-title-over{
	background:rgba(91,61,31,0.8)!important;
}


/* Bizカレンダー
-------------------------------------------------------------------*/
#biz_calendar{
	max-width:100%!important;
	margin-bottom:20px!important;
}
#biz_calendar table.bizcal{
	border:none!important;
}
#biz_calendar p{
	font-size:12px;
	color:#333;
}
#biz_calendar table.bizcal{
	margin-top:0!important;
}
#biz_calendar table.bizcal td{
	color:#333!important;
	font-size:12px;
}
#biz_calendar table.bizcal th{
	font-size:12px;
	background:#f0ebe1!important;
}
#biz_calendar table.bizcal th:first-child{
	color:#ff8800!important;
}
#biz_calendar table.bizcal th:nth-last-of-type(1){
	color:#0e75ba!important;
}
#biz_calendar p span.boxholiday,
#biz_calendar table.bizcal .holiday{
	background:#ffd8ad!important;
}
#biz_calendar p span.boxeventday,
#biz_calendar table.bizcal .eventday{
	background:#c9ba9f!important;
}
@media screen and (max-width : 639px){
	.uk-container li#bizcalendar-2{
		padding:0;
	}
	.uk-container p.side_nav_ttl{
		padding:8px 5px;
	}
}



/* ビジュアルエディタ用スタイル */

.blog h2{
	font-weight:bold;
	font-size:16px;
	margin:0 0 30px 0;
	color:#457491;
	line-height:200%;
	background:#f6f7f8;
	border-top:2px solid #457491;
	padding:10px 15px;
}
.blog h3{
	background:url(./img/icon.png) no-repeat 10px center/25px,url(./img/bg.png);
	font-size:15px;
	margin:0 0 30px 0;
	padding:12px 15px 12px 45px;
	color:#457491;
	font-weight:bold;
	letter-spacing:2px;
}
.blog h4{
	font-size:14px;
	margin:0 0 20px 0;
	padding:15px;
	color:#457491;
	font-weight:bold;
	letter-spacing:2px;
	border-bottom:2px dotted #ddd;
}
.blog img{
	max-width:80%;
}



/* line-list2
-----------------------------------*/
.line-list2{
	padding:0;
	list-style:none;
	margin:0;
}
.line-list2 li{
	margin:0;
}
.line-list2 li a{
	text-decoration:none;
	color:#444;
	display:block;
	padding:17px 20px;
	border-bottom:1px solid #ddd;
}
.line-list2 li:first-child a{
	border-top:1px solid #ddd;
}
.line-list2 li a:hover{
	background:#f7f7f7;
}
.line-list2 li h3{
	font-size:14px;
	line-height:180%;
	margin: 0;
}
.line-list2 .date{
	display:inline-block;
	color:#999;
	font-size:12px;
	letter-spacing:1px;
	line-height:120%;
	margin:0 15px 0 0;
	padding:0;
} 

@media screen and (max-width : 639px){
	.line-list2{
		padding:0 10px;
		list-style:none;
		margin:0;
	}
}




/* インスタバナー　pc/sp表示切り替え
-------------------------------------------------------------------*/

.pc_banner { display: block !important; }
.sp_banner { display: none !important; }

@media only screen and (max-width: 767px) {
.pc_banner { display: none !important; }
.sp_banner { display: block !important; }
}



/* msl 2021/09/22追加
-------------------------------------------------------------------*/

.msl_bg {
	padding:0;
	margin-bottom:150px;
}

.msl_bg h2{
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;
	position:relative;
	padding:40px 0 0 80px;
}
.msl_bg h2 span{
	position:absolute;
	top:0;
	left:0;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height:11em;
	z-index:100;
	padding:0 10px;
}
.msl_bg h2 a{
	display:inline-block;
	color:#a0c3d9;
	font-size:12px;
	background:url(./img/more.png) no-repeat left center;
	font-weight:bold;
	text-decoration:none;
	padding:0 0 0 15px;
	margin-left:40px;
}
.msl_bg h2 a:hover{
	color:#ffb452;
}

.mb20 {
	margin-bottom:20px;
}

@media screen and (max-width : 959px){
	.msl_bg{
		padding:0;
	margin-bottom:100px;
	}
}
@media screen and (max-width : 639px){
	.msl_bg{
		padding:0;
	margin-bottom:100px;
	}
	.msl_bg h2{
		font-size:16px;
		letter-spacing:1px;
	}
	.msl_bg h2{
		padding:0 10px;
	}
	.msl_bg h2 span{
		position:static;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		height:auto;
		z-index:100;
		padding:0;
	}
	.msl_bg h2 a{
		padding:0 0 0 15px;
		margin:0 ;
	}
	
	
}

.msl_title{
	color:#d8d1c8;
	font-size:40px;
	letter-spacing:0;
	font-weight: 400;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.msl_title span{
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-style: normal;
	display:inline-block;
	background:rgba(255,255,255,0.8);
	padding:0 10px 15px;
	color:#457491;
	font-size:16px;
	letter-spacing:0.3em;
	font-weight: 700;
	margin-right:30px;
}
@media screen and (max-width : 639px){
	.msl_title{
		font-size:20px;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		text-align:center;
		margin:0 0 40px;
	}
	.msl_title span{
		display:block;
		background:none;
		padding:0 ;
		font-size:17px;
		letter-spacing:0.3em;
		margin:10px;
	}
}
.blog_box{
	width:100%;
	border-bottom:dotted #999 1px !important;
	padding-bottom:15px;
	margin-bottom:15px;
	font-size:14px;
}

/*24時間WEB予約への内部遷移バナー*/
.pc-only{
	display:inline-block
}

.sp-only{
	display:none
}

@media screen and (max-width:769px){
.pc-only{
	display:none
}
.sp-only{
	display:block
}
}

.dent_bnr img{
	margin:20px auto 0px;
}
/*TOP invisalign banner*/
.invisalign_banner{
	text-align: center;
}
.footer_invisa{
	display:flex;
	align-items: center;
}

/*-----------------------
 * トップKeyv下バナー
 -----------------------*/
#kyousei_banner img{
	margin-top: 80px;
}
.head_tel a{
	text-decoration: none;
	color: #457491;
	font-size:18px;
}
.head_tel a span{
	font-size: 14px;
	margin-right:10px;
}