@charset "UTF-8";

@font-face {
	font-family: 'Noto Sans JP';
	font-style: lighter;
	font-weight: 400;
	src: local("Noto Sans CJK JP Regular"),
		url('./fonts/NotoSans_Regular.woff2') format('woff2'),
		url('./fonts/NotoSans_regular.woff') format('woff'),
		url('./fonts/NotoSans_regular.otf') format('opentype');
}
@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	src: local("Noto Sans CJK JP Medium"),
		url('./fonts/NotoSans_Medium.woff2') format('woff2'),
		url('./fonts/NotoSans_medium.woff') format('woff'),
		url('./fonts/NotoSans_medium.otf') format('opentype');
}
@font-face {
	font-family: 'Noto Sans JP';
	font-style: bold;
	font-weight: 600;
	src: local("Noto Sans CJK JP Bold"),
		url('./fonts/NotoSans_Bold.woff2') format('woff2'),
		url('./fonts/NotoSans_bold.woff') format('woff'),
		url('./fonts/NotoSans_bold.otf') format('opentype');
}

/*==================================================================
common settings
===================================================================*/
html {
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing:0.02em;
	font-weight: 400;
}
body{
	overflow-x: hidden;
	letter-spacing:0.02em;
	position:relative;
	color:#444;
	font-weight: 400;
}
h1,h2,h3,h4,h5,p,a,span,strong,dl,dt,dd,table,tbody,thead,th,td,blockquote,ul,li,ol {
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#444;
}
.uk-grid.uk-grid-collapse {
	margin-left: 0;
}
.uk-grid.uk-grid-collapse >* {
	padding-left: 0;
}
p, li, dt, dd,th,td{
	font-size: 15px;
	line-height:200%;
	margin:0 0 20px 0;
}
a {
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
	text-decoration:underline;
	color:#5dbbbb;
}
.uk-link:hover, a:hover{
	text-decoration:none;
}
a img:hover {
	opacity: 0.6;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
a:hover {
	color:#5dbbbb;
	text-decoration:none;
}
img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

@media screen and (max-width : 959px){
	.uk-container{
		padding:0 30px;
	}
}
@media screen and (max-width : 639px){
	p, li, dt, dd,th,td{
		line-height:180%;
		margin-bottom:15px;
		font-size:13px;
	}
	.uk-container{
		padding:0 15px;
	}
}




/* margin,padding
-------------------------------------------------------------------*/
.mb0 {
	margin-bottom: 0;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px;
}
.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;
	}
	.mt60{
		margin-top: 30px;
	}
}


/* font style
-------------------------------------------------------------------*/
.orange{
	color:#f9b900;
	font-weight:bold;
}
.bold{
	font-weight:bold;
}
.center{
	text-align:center;
}
.strong,
strong{
	font-weight:500;
	color:#f9b900;
	position:relative;
	background:url(../img/line.png) repeat-x bottom;
	padding-bottom:10px;
}

.fonts{
	font-size:12px;
	color:#666;
}
@media screen and (max-width : 639px){
	.strong,
	strong{
		padding-bottom:5px;
	}
	h3.strong {
		font-size:16px;
	}
	.strong span.fonts{
		display:block;
		margin:5px 0;
	}
}

/* table sheet style
-------------------------------------------------------------------*/
table.sheet {
	border-collapse:collapse;
	border-spacing:0px;
	border-bottom: none;
	margin-bottom:25px;
	width:100%;
}
.sheet th, .sheet td {
	padding: 10px 20px;
	text-align: left;
	line-height:1.5em;
	vertical-align:middle;
	background:#f9f9f9;
	line-height:200%;
	border-bottom:2px solid #fff;
}
.sheet tr:first-child th {
	border-radius:15px 0 0 0;
}
.sheet tr:first-child td{
	border-radius:0 15px 0 0 ;
}
.sheet tr:last-child th {
	border-radius:0 0 0 15px;
}
.sheet tr:last-child td{
	border-radius:0 0 15px 0 ;
}
.sheet th {
	background: #fcf1d7;
	font-weight:400;
	text-align:center;
	width:25%;
}
.sheet td ol.list{
	margin:0;
}
.sheet td ul.list{
	padding-left:20px;
	margin:0;
}
.sheet td ul.list li {
	margin:0 0 6px;
	line-height:160%;
}
.sheet td ul.list li:last-child {
	margin:0;
}
.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;
}
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 td{
		border-right: none;
		padding:15px;
	}
	.sheet ul{
		padding-left:20px;
	}
	.uk-container .sheet ul li{
		padding:0 10px;
	}
	table.price th{
		width:auto;
	}
	table.price td{
		width:40%;
	}
	table.price td:last-child{
		width:30%;
	}
}

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

/*	dl style
-------------------------------------------------------------------*/
dl.dllist{
	width: 100%;
	overflow: hidden;
	background:#f5f5f5;
	border-bottom:1px dotted #ddd;
}
.dllist dt, .dllist dd{
	display: block;
	float: left;
	margin:0;
	padding:15px 25px;
}
.dllist dt{
	width: calc(25% - 50px);
	clear: left;
	border-top:1px dotted #ddd;
	font-weight:500;
	letter-spacing:0.1em;
}

.dllist dd{
	width:  calc(75% - 50px);
	background:#fff;
	border-top:1px dotted #ddd;
}

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

/* list style
-------------------------------------------------------------------*/
ul.list{
	padding-left:30px;
	margin:0 0 25px;
}
ul.list li{
	padding-left:5px;
	margin:5px 0;
	/* list-style-image:url(./img/list.svg); */
}

ol.list{
	counter-reset: my-counter;
	list-style: none;
	padding-left:30px;
	margin:0 0 25px;
}
ol.list li{
	padding-left:5px;
	margin:5px 0;
	position: relative;
}
ol.list li:before{
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #5dbbbb;
	color: #fff;
	display: block;
	float: left;
	line-height: 22px;
	margin-left: -30px;
	text-align: center;
	height: 22px;
	width: 22px;
	border-radius: 50%;
	margin-top:3px;
}
ol.list li ul li:before{
	content:none;
}
@media screen and (max-width : 639px){
	ol.list li:before{
		margin-top:0;
	}
	ul.menulist li{
		display:block;
		margin:0 0 15px;
	}
}
/*	tab menu
-------------------------------------------------------------------*/
ul.tab{
	margin:0;
	padding:0;
	overflow:hidden;
}
ul.tab li{
	display:block;
	list-style-type:none;
	margin:0 0 20px;
	float:left;
	width:50%;
}
ul.tab li a{
	padding:10px ;
	background: #f5f5f5;
	display:block;
	text-align:center;
	text-decoration:none;
	font-weight:500;
	color:#444;
}
ul.tab li:first-child a{
	border-right:1px solid #fff;
}
ul.tab li a:hover {
	background: #f9bd0d;
	color: #fff;
}
ul.tab li a.active {
	background: #f9bd0d;
	color: #fff;
}
ul.tab li a.active::after {
	content: none;
}
.tabContent {
	display: none;
}
@media screen and (max-width : 959px){

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

}


/* 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;
}

/*	accordion
-------------------------------------------------------------------*/
/*アコーディオン全体*/
.accordion-area{
	list-style: none;
	width: 100%;
	padding:0;
}
.accordion-area li{
	margin: 10px 0;
	background:#fff;
}
.accordion-area section {
	border: 1px solid #ddd;
	background:#f9f9f9;
	border-radius:10px;
}

/*アコーディオンタイトル*/
.faq_title {
	position: relative;/*+マークの位置基準とするためrelative指定*/
	cursor: pointer;
	font-weight: normal;
	padding: 20px 40px;
	transition: all .5s ease;
	margin:0;
	font-size:15px;
}

/*アイコンの＋と×*/
.faq_title::before,
.faq_title::after{
	position: absolute;
	content:'';
	width: 15px;
	height: 2px;
	background-color: #5dbbbb; 
}
.faq_title::before{
	top:48%;
	left: 15px;
	transform: rotate(0deg);
}
.faq_title::after{    
	top:48%;
	left: 15px;
	transform: rotate(90deg);
}

/*　closeというクラスがついたら形状変化　*/
.faq_title.close::before{
	transform: rotate(45deg);
}
.faq_title.close::after{
	transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.faq_box {
	display: none;/*はじめは非表示*/
	background: #fff;
	margin:0 20px 20px;
	padding: 30px;
	border-radius:10px;
}
.faq_box p:last-child{
	margin:0;
}

@media screen and (max-width : 639px){
	.accordion-area li{
		margin: 5px 0;
	}
	.faq_title {
		padding: 15px 10px 15px 40px;
		font-size:14px;
		line-height:160%;
	}
	.faq_box {
		margin:0 15px 15px;
		padding: 15px;
	}
}




/* fadeIn
-------------------------------------------------------------------*/
.fade_in {
	opacity: 0;
	transition-duration: 1000ms;
	transition-property: opacity, transform;
}
.fade_in_up {
	transform: translate(0, 50px);
}
.fade_in_down {
	transform: translate(0, -50px);
}
.fade_in_left {
	transform: translate(-50px, 0);
}
.fade_in_right {
	transform: translate(50px, 0);
}
.scroll_in {
	opacity: 1;
	transform: translate(0, 0);
}
@media screen and (max-width : 959px){

}
@media screen and (max-width : 639px){
	.fade_in {
		transition-duration: 800ms;
	}
}



/*==================================================================
sp common settings
===================================================================*/
/* sp contactbtn footer
-------------------------------------------------------------------*/
#sp-contact{
	position: fixed;
	bottom: 0;
	right: 0;
	width:100%;
	z-index:100;
	overflow:hidden;
	margin:0;
	padding:0;
}
#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: 10px 0 8px 0;
	font-size:13px;
	text-align:center;
	height:auto;
	background:#5dbbbb;
	border-right:1px solid #fff;
}
#sp-contact li a span{
	display:block;
	color:#fff;
	font-weight:normal;
	text-decoration:none;
	font-size:10px;
	text-align:center;
	line-height:120%;
}
#sp-contact li:last-child a{
	border-right:none;
}

@media screen and (max-width : 639px){
	body{
		padding-bottom:55px;
	}
}


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

/* header
-------------------------------------------------------------------*/
header{
	position: fixed;
	top: 0;
	left: 0;
	z-index:900;
	height:80px;
	width:100%;
}
header.page_header{
	position: static;
}
header.fixed{
	position: fixed;
	z-index:970;
	background:#fff;
}
.top_header{
	opacity:0;
}
header.fixed .top_header{
	opacity:1;
}
.logo{
	margin:20px 0 0 30px;
	display:inline-block;
	width:208px;
}
.top_header .logo{
	margin:10px 0 0 30px;
}

.head_tel{
	display:inline-block;
	background:url(../img/icon_tel.png) no-repeat left center/34px;
	padding-left:38px;
	margin-right:25px;
	vertical-align:top;
}

.head_tel--contact{
	background:url(../img/icon_reserve.png) no-repeat left center/34px;
	padding-left:42px;
}

.head_tel a{
	display:block;
	text-decoration:none;
	font-size:20px;
	padding:16px 0;
}
.head_tel a span{
	display:block;
	font-size:12px;
}

.head_tel--contact a{
	font-size:18px;
	padding: 20px 0px 27px 0px;

}
.head_tel--contact a span{
	text-align:left;
	font-size:12px;
	letter-spacing:0.05em;
}

@media screen and (max-width : 959px){
	header{
		height:80px;
		background:#fff;
		position:static;
	}
	header.fixed{
		position:fixed;
	}
	.logo{
		margin:20px 0 0 30px;
	}
	.top_header{
		opacity:1;
	}
}
@media screen and (max-width : 639px){
	header{
		height:50px;
	}
	.top_header .logo{
		margin:0 0 0 10px;
	}
	.logo img{
		height:30px;
	}
	header.page_header .logo{
		margin:10px 0 0 10px;
	}

}

/* navigation
-------------------------------------------------------------------*/
#nav{
	display:inline-block;
}
.nav_items{
	padding:0;
	margin:0;
	position:relative;
}

.nav_items > li {
	display:block;
	float:left;
	box-sizing: border-box;
	margin:  0;
	padding:0;
	text-align:center;
	position:relative;
}

.nav_items > li > a,
.nav_items > li > span.nolink{
	display:block;
	text-decoration:none;
	color:#444;
	font-size:14px;
	text-align:center;
	letter-spacing:0.1em;
	margin:0 ;
	padding:19px 25px 18px 25px;
}
.nav_items > li .sub{
	display:block;
	color:#5dbbbb;
	font-size:11px;
	font-weight:400;
	letter-spacing:0.05em;
	line-height:120%;
	padding:0;
}
.nav_items > li a:hover{
	background:#f3fcfc;
}
@media screen and (max-width : 1004px){
	.nav_items > li > a,
	.nav_items > li > span.nolink{
		padding:19px 15px 18px 15px;
	}
}

/*Nav  シンプルプルダウン
-------------------------------------------------------------------*/
#nav li.has-child div{
	position: absolute;
	left:0;
	top:80px;
	z-index: 4;
	visibility: hidden;
	opacity: 0;
	transition: all .3s;
	background: #5dbbbb;
	padding:20px 30px;
	width:160px;
	margin:0;
	border-radius:10px;
}
#nav li.has-child:hover > div,
#nav li.has-child ul li:hover > div,
#nav li.has-child:active > div,
#nav li.has-child ul li:active > div{
	visibility: visible;
	opacity: 1;
}
#nav ul li ul{
	list-style: none;
	margin: 0;
	padding: 0;
	z-index:2000;
}
#nav ul li ul li{
	margin:0;
	display:block;
}
#nav ul li ul li a{
	display:block;
	font-size:13px;
	color: #fff;
	text-decoration:none;
	line-height:160%;
	padding:8px 0;
	text-align:left;
	/* background:url(../img/more.svg) no-repeat left center/15px; */
	background: none;
}
#nav ul li ul li a:hover{
	color:rgba(255,255,255,0.6);
}


/* menubtn
-------------------------------------------------------------------*/
.menu_btn{
	border:none;
	z-index:1000;
	vertical-align:middle;
	background:none;
	color:#444;
	font-size:12px;
	margin: 0 30px 0 0;
	height:80px;
	outline:0;
	letter-spacing:0.1em;
	text-align:center;
	padding:0;
	position:relative;
}
button.active{
	position:fixed;
	top:0;
	right:0;
}
.menu_btn::after {
	content:'MENU';
	margin:5px auto 0;
	display:block;
	color:#444;
	text-decoration:none;
	text-align:center;
	width:40px;
}
.active::after {
	content:'CLOSE';
	letter-spacing:0;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 22px;
	height: 20px;
	text-align:center;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 22px;
	height: 3px;
	background-color: #5dbbbb;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 8px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
button.active .menu-trigger span:nth-of-type(1) {
	-webkit-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}
button.active .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}
button.active .menu-trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}
@media screen and (max-width : 639px){
	.menu_btn{
		margin: 0 10px 0 0;
		height:50px;
	}
	.menu-trigger {
		height: 17px;
	}
	.menu_btn::after {
		margin:0 auto 0;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 7px;
	}
	header .active .menu-trigger span:nth-of-type(1) {
		-webkit-transform: translateY(7px) rotate(-45deg);
		transform: translateY(7px) rotate(-45deg);
	}
	header .active .menu-trigger span:nth-of-type(3) {
		-webkit-transform: translateY(-7px) rotate(45deg);
		transform: translateY(-7px) rotate(45deg);
	}
}
/* toggle_nav
-------------------------------*/
#toggle_nav{
	position:fixed;
	z-index: 999;
	top:0;
	right: -120%;
	width:100%;
	height:100vh;
	background:#fff;
	transition: all 0.7s;
	overflow-y: scroll;
}
.toggle_inner{
	padding:60px;
}
#toggle_nav.open{
	right: 0;
}
@media screen and (max-width : 639px){
	.toggle_inner{
		padding:30px 30px 80px;
	}
}


/* nav_menu_list
-------------------------------*/
#toggle_nav ul {
	padding:0;
	overflow:hidden;
	margin:0;
	text-align:center;
}
#toggle_nav ul li{
	margin:0;
}
#toggle_nav ul li a,
#toggle_nav ul li span.nolink{
	display:block;
	text-decoration:none;
	color:#444;
	font-size:20px;
	padding:15px 0;
	margin:0;
	font-weight: 500;
}
#toggle_nav ul li a span,
#toggle_nav ul li span.nolink span{
	font-size:12px;
	font-weight: 500;
	display:block;
	margin:0;
	color:#5dbbbb;
}


#toggle_nav ul li ul.menu{
	padding:0;
	margin:0 0 40px;
}
#toggle_nav ul li ul.menu li a{
	color:#666;
	font-size:16px;
	padding:8px 0;
	margin:0;
	font-weight: 400;
}

@media screen and (max-width : 639px){
	#toggle_nav ul li a,
	#toggle_nav ul li span.nolink{
		font-size:16px;
		padding:10px 0;
	}
	#toggle_nav ul li a span,
	#toggle_nav ul li span.nolink span{
		font-size:12px;
		margin:0;
	}
	#toggle_nav ul li ul.menu{
		margin:0 0 15px;
	}
	#toggle_nav ul li ul.menu li a{
		font-size:13px;
		padding:3px 0;
	}
}



/*==================================================================
index settings
===================================================================*/
/* keyv
-------------------------------------------------------------------*/
.keyv {
	position:relative;
	margin:0;
	height:calc(100vh - 40px);
	width:calc(100% - 260px);
	border:20px solid #fff;
	border-left:none;
	margin-left:240px;
}
.keyv_txt{
	position:absolute;
	left:0;
	bottom:20%;
}

.fade-img {
	position:relative;
	width: 100%;
	height:calc(100vh - 40px);
}
.fade-img img {
	position: absolute;
	border-radius:15px;
	object-fit: cover;
	height:100%;
	width:100%;
}
.keyv_nav{
	width:240px;
	position:absolute;
	top:0;
	left:0;
}
.keyv_nav .logo{
	display:block;
	margin:60px 0 30px;
	width:auto;
}
.keyv_nav .logo img{
	display:block;
	margin:0 auto;
}
.keyv_nav #nav{
	display:block;
}
.keyv_nav #nav .nav_items > li {
	float:none;
}
.keyv_nav #nav li.has-child div{
	left:240px;
	top:0;
}
.keyv_nav .head_tel{
	display:block;
	text-align:center;
	background:none;
	padding:0;
	margin:40px 5px 0 ;
}


.keyv_nav .head_tel--contact{
	margin:0px 5px 0;
}

.keyv_nav .head_tel a {
	padding: 16px 0 16px 42px;
	display:inline-block;
	text-align:left;
	background: url(../img/icon_tel.png) no-repeat left center/34px;
	letter-spacing:0.08em;
}

.keyv_nav .head_tel--contact a {
	letter-spacing:0.04em;
}


@media screen and (max-width : 959px){
	.keyv {
		width:calc(100% - 40px);
		border:20px solid #fff;
		border-top:none;
		margin-left:0;
		height:calc(100vh - 100px);
	}
	.fade-img {
		height:calc(100vh - 100px);
	}
}
@media screen and (max-width : 639px){
	.keyv {
		width:calc(100% - 20px);
		border:10px solid #fff;
		border-top:none;
		height:300px;
	}
	.fade-img {
		height:300px;
	}
	.keyv_txt{
		bottom:10%;
	}
	.keyv_txt img{
		width:65%;
	}

}


/* top_title
-------------------------------------------------------------------*/
.top_title{
	margin:0 0 80px;
	text-align:center;
	color:#444;
	font-size:26px;
	letter-spacing:0.2em;
	line-height:100%;
	padding:45px 0 25px;
	position:relative;
	font-weight:400;
	background:url(../img/icon.png) no-repeat center top/53px;
}
.top_title span{
	display:block;
	text-align:center;
	color:#444;
	font-size:12px;
	letter-spacing:0.2em;
	line-height:100%;
	font-weight:400;
	margin:15px 0 0 0;
}
.top_title::after{
	content:"";
	display:inline-block;
	width:54px;
	height:3px;
	background-color:#f9bd0d;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translatex(-50%);
}

@media screen and (max-width : 959px){
	.top_title{
		margin:0 0 60px;
	}
}
@media screen and (max-width : 639px){
	.top_title{
		margin:0 0 30px;
		font-size:20px;
		padding:30px 0 20px;
		background-size:40px;
	}
	.top_title::after{
		width:40px;
	}
	.top_title span{
		font-size:10px;
		letter-spacing:0.01em;
		margin:8px 0 0 0;
	}

}


/* Topgreeting
-------------------------------------------------------------------*/
.Topgreeting{
	margin:120px auto;
}
.Topgreeting p{
	text-align:center;
	line-height:300%;
	letter-spacing:0.1em;
	margin-bottom:80px;
}
.greeting_img{
	max-width:1040px;
	margin:0 auto;
}
.greeting_img img{
	border-radius:15px;
}

@media screen and (max-width : 959px){
	.Topgreeting{
		margin:80px auto;
	}
	.Topgreeting p{
		text-align:left;
		line-height:240%;
		margin-bottom:60px;
	}

}
@media screen and (max-width : 639px){
	.Topgreeting{
		margin:40px auto;
	}
	.Topgreeting p{
		line-height:200%;
		margin-bottom:30px;
		letter-spacing:0.05em;
	}
	.greeting_img .uk-grid{
		margin-left:-5px;
	}
	.greeting_img .uk-grid>*{
		padding-left:5px;
	}
	.greeting_img img{
		border-radius:10px;
	}
}


/* topabout
-------------------------------------------------------------------*/
.Topabout{
	margin:0 0 120px;
}
.about_box{
	max-width:775px;
	margin:0 auto;
}
.about_box .uk-grid>*>:last-child{
	margin-bottom:1px;
}
.about_box p.more{
	margin:60px 0 0 0;
}
.about_img{
	background:url(../img/about1.jpg) no-repeat center center;
	padding:40px 0;
	border-radius:15px 0 0 0;
	margin:0 1px 0 0;
}
.about_img2{
	background:url(../img/about2.jpg) no-repeat center center;
	border-radius:0 15px 0 0;
}
.about_img3{
	background:url(../img/about3.jpg) no-repeat center center;
	border-radius:0 0 0 15px;
}
.about_img4{
	background:url(../img/about4.jpg) no-repeat center center;
	border-radius:0 0 15px 0;
}
.about_img h3{
	background:rgba(249,185,0,0.9);
	height:140px;
	width:140px;
	border-radius:70px;
	color:#fff;
	font-size:16px;
	font-weight:500;
	text-align:center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin:0 auto;
}

@media screen and (max-width : 959px){
	.Topabout{
		margin:0 0 80px;
	}
}
@media screen and (max-width : 639px){
	.Topabout{
		margin:0 0 40px;
	}
	.about_img{
		background-size:cover;
	}
	.about_img h3{
		height:100px;
		width:100px;
		font-size:13px;
	}
	.about_box p.more{
		margin:20px 0 0 0;
	}
}

/* Topabout2
-------------------------------------------------------------------*/
.Topabout2{
	margin:0 0 120px;
}
.Topabout2 a{
	background:url(../img/doctor.jpg) no-repeat center center/cover;
	border-radius:15px;
	display:block;
	position:relative;
	text-decoration:none;
	padding:80px 15px 10px;
}
.Topabout2 a.price{
	background:url(../img/price.jpg) no-repeat center center/cover;
}
.Topabout2 a:after{
	content:"";
	background:rgba(155,155,155,0.74);
	height:100%;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:15px;
	transition: 0.4s ;
}
.Topabout2 a:hover:after {
	opacity:0;
}
.Topabout2 .about_txt{
	z-index:1000;
	position:relative;
}
.Topabout2 .about_txt h2{
	margin-bottom:40px;
}
.Topabout2 .about_txt h2,
.Topabout2 .about_txt h2 span{
	color:#fff;
}
.Topabout2 .about_txt p.more span{
	transition: 0.4s ;
}
.Topabout2 a:hover .about_txt p.more span{
	background:#5dbbbb;
	color:#fff;
}
@media screen and (max-width : 959px){
	.Topabout2{
		margin:0 0 80px;
	}
}
@media screen and (max-width : 639px){
	.Topabout2{
		margin:0 0 25px;
	}
	.Topabout2 a{
		padding:40px 15px 5px;
	}
	.Topabout2 .uk-grid>*{
		margin:0 0 15px;
	}
}

/* topmenu
-------------------------------------------------------------------*/
.Topmenu{
	margin:0 0 120px;
	padding:120px 0 80px;
	background:#fffaec;
}
.Topmenu p{
	text-align:center;
	line-height:300%;
	letter-spacing:0.1em;
	margin:0 0 80px;
}
.top_menu{
	position:relative;
	max-width:920px;
	margin:0 auto;
}
.top_menu div{
	display: flex;
	justify-content: center;
	align-items: center;
}
.top_menu a{
	color:#fff;
	text-decoration:none;
	width:200px;
	height:200px;
	background:#f8cf5a;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius:100px;
}
.top_menu .uk-grid>*>:last-child{
	margin:0 0 40px;
}
.top_menu a:hover{
	background:#f9b900;
}
.top_menu a img{
	display:block;
	margin:0 auto 10px;
}
.top_menu a span{
	color:#fff;
	font-size:16px;
	font-weight:500;
}
@media screen and (max-width : 959px){
	.Topmenu{
		margin:0 0 80px;
		padding:80px 0 40px;
	}
	.Topmenu p{
		margin:0 0 40px;
	}
	.top_menu a img{
		width:45%;
	}
	.top_menu .uk-grid>*{
		padding-left:15px;
	}
	.top_menu .uk-grid{
		margin-left:-15px;
	}
	.top_menu a{
		width:150px;
		height:150px;
	}
	.top_menu .uk-grid>*>:last-child{
		margin:0 0 15px;
	}
}
@media screen and (max-width : 639px){
	.Topmenu{
		margin:0 0 40px;
		padding:40px 0 25px;
	}
	.Topmenu p{
		text-align:left;
		line-height:200%;
		letter-spacing:0.05em;
		margin:0 0 30px;
	}
	.top_menu a span{
		font-size:14px;
	}

}


/* toprecruit
-------------------------------------------------------------------*/
.Toprecruit{
	background:url(../img/recruit.jpg) no-repeat left 30%;
	max-width:1000px;
	margin:0 auto;
	display:block;
	text-decoration:none;
	padding:100px 0;
	border-radius:15px;
	position:relative;
}
.Toprecruit:after{
	content:"詳しく見る";
	color:#79c7c7;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	opacity:0;
	background:#fff;
	border:solid 1px #79c7c7;
	padding:12px ;
	min-width:230px;
	text-align:center;
	transition:0.4s;
}
.Toprecruit:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgb(155,155,155,0.74);
	border-radius:15px;
	opacity:0;
	transition:0.4s;
}
.recruit_title{
	background:#fff;
	text-align:left;
	display:inline-block;
	padding:25px;
	border-radius:0 15px 15px 0;
	transition:0.4s;
	position:relative;
	z-index:1000;
}
.recruit_title .top_title{
	margin:0;
}
.Toprecruit:hover:before,
.Toprecruit:hover:after{
	opacity:1;
}

@media screen and (max-width : 959px){
	.Toprecruit{
		background-position:20% 30%;
		background-size:120%;
	}
}
@media screen and (max-width : 639px){
	.Toprecruit{
		padding:40px 0 120px;
		background-position:30% 50%;
	}
	.recruit_title{
		display:block;
		padding:0 ;
		border-radius:0;
		background:none;
	}
	.recruit_title .top_title,
	.recruit_title .top_title span{
		color:#fff;
	}
	.Toprecruit:after{
		opacity:1;
		bottom:30px;
		top:auto;
		left:50%;
		transform:none;
		transform:translateX(-50%);
		padding:10px ;
		font-size:14px;
		width:85%;
	}
	.Toprecruit:before{
		opacity:1;
	}
	.Toprecruit:hover:before{
		opacity:0;
	}
	.Toprecruit:hover:after{
		background:#79c7c7;
		color:#fff;
	}
}


/* line-list
---------------------------------------*/
.topnews{
	max-width:1000px;
	margin:0 auto;
}
.topnews .uk-grid{
	margin-top:140px;
}
.line-list{
	padding:0;
	list-style:none;
	margin:0;
}
.line-list li{
	margin:0;
}
.line-list li a{
	text-decoration:none;
	color:#444;
	display:block;
	padding:0 0 20px 0;
	position:relative;
	transition:0.4s;
}
.line-list li:last-child a{
	padding:0 ;
}
.line-list li h3{
	display:inline-block;
	font-size:13px;
	margin: 0 ;
	vertical-align: middle;
	line-height:160%;
	width:calc(100% - 100px);
}
.line-list li h3 span{
	border-bottom:1px solid rgba(255,255,255,0);
	padding-bottom:2px;
	transition:0.4s;
}
.line-list li a:hover h3 span{
	border-color:#79c7c7;
	transition:0.4s;
	color:#79c7c7;
}
.date{
	display:inline-block;
	color:#999;
	font-size:12px;
	letter-spacing:0;
	line-height:100%;
	margin:0 30px 0 0;
	vertical-align:middle;
}
.i-cat{
	display:inline-block;
	text-align:center;
	color:#5dbbbb;
	padding:5px 20px;
	margin:0 30px 0 0;
	font-size:12px;
	line-height:100%;
	text-transform:uppercase;
	vertical-align: middle;
	background:#fff;
	border:solid 1px #5dbbbb;
}
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;
}

@media screen and (max-width : 959px){
	.topnews .uk-grid{
		margin-top:100px;
	}
}
@media screen and (max-width : 639px){
	.topnews .uk-grid{
		margin-top:40px;
	}
	.date{
		margin:0;
	}
	.line-list{
		margin:25px 0 5px 0;
	}
	.line-list li a{
		padding:0 0 20px 0;
	}
	.line-list li h3{
		display:block;
		margin: 5px 0 0 0 ;
		width:100%;
	}
	.i-cat{
		padding:2px 20px;
		margin:0;
	}
}



/*==================================================================
page settings
===================================================================*/
/* 固定ページ
-------------------------------------------------------------------*/
.contents {
	margin:0 auto ;
	max-width:1000px;
}
.contents_area .uk-grid>* img{
	margin:0 auto 40px;
}
.contents_area section{
	margin:0 0 80px;
	overflow:hidden;
}
.contents_area section:last-child{
	margin:0;
}
.contents h2,
.contents h3,
.contents h4{
	clear:both;
}
.contents section div{
	overflow:hidden;
}
.contents img{
	border-radius:10px;
}
.contents .top_title,
.archivelist .top_title,
.singlepage .top_title{
	margin:20px 0 80px;
}
.contents .top_title:first-letter{
	text-transform: capitalize;
}
@media screen and (max-width : 959px){
	.contents_area section{
		margin:0 0 60px;
	}
	.contents .top_title,
	.archivelist .top_title,
	.singlepage .top_title{
		margin:20px 0 60px;
	}
}
@media screen and (max-width : 639px){
	.contents .uk-align-right,
	.contents .uk-align-left{
		display:block;
		float:none;
		margin:0 auto 20px;
	}
	.contents .uk-align-right img,
	.contents .uk-align-left img{
		display:block;
		margin:0 auto ;
		max-width:300px;
	}
	.contents .uk-align-right img.width100,
	.contents .uk-align-left img.width100{
		max-width:100%;
	}
	.contents_area section{
		margin:0 0 30px;
	}
	.contents .top_title,
	.archivelist .top_title,
	.singlepage .top_title{
		margin:10px 0 30px;
	}
}

/* page_keyv
-------------------------------------------------------------------*/
.page_keyv{
	background:url(../img/page_keyv2.jpg) no-repeat center 60%/cover ;
	height:240px;
	border-radius:15px;
	margin:0 20px;
}

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

}
@media screen and (max-width : 639px){
	.page_keyv{
		height:100px;
		margin:0 10px;
	}
}

/* bl
-------------------------------------------------------------------*/
.bl{
	padding: 20px 40px;
	margin:0;
	overflow:hidden;
}
.bl ul{
	padding:0;
	margin:0;
	float:right;
}
.bl a,
.bl ul li,
.uk-breadcrumb>li:not(.uk-active)>span{
	font-size:12px;
	margin:0;
	color:#555;
	display:inline-block;
}
.uk-breadcrumb>*{
	flex:initial;
}
@media screen and (max-width : 959px){
	.bl{
		padding: 20px;
	}
}
@media screen and (max-width : 639px){
	.bl{
		padding: 10px;
	}
	.bl a,
	.bl,
	.uk-breadcrumb>li:not(.uk-active)>span,
	.bl ul li{
		font-size:10px;
	}
	.uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before{
		margin: 0 10px;
	}
	.uk-breadcrumb>*>*{
		display:inline;
	}
}

/* more style
-------------------------------------------------------------------*/
p.more{
	margin: 35px 0;
	text-decoration:none;
	text-align:center;
}
.more a,
.more span{
	display:inline-block;
	text-decoration:none;
	font-size:15px;
	color:#5dbbbb;
	padding:0;
	letter-spacing:0.1em;
	border:1px solid #5dbbbb;
	white-space: nowrap;
	font-weight:500;
	padding:12px;
	min-width:230px;
	background:#fff;
}
p.more a:hover {
	background:#5dbbbb;
	color:#fff;
}
@media screen and (max-width : 959px){
}
@media screen and (max-width : 639px){
	p.more{
		margin:10px 0 25px 0;
	}
	.more a,
	.more span{
		font-size:13px;
		display:block;
		padding:10px;
	}
}



/* page_ttl
-------------------------------------------------------------------*/
.title1,
.single h2{
	margin:0 0 50px 0;
	padding:20px 0 ;
	border-top:solid 4px #f9bd0d;
	border-bottom:solid 1px #aaa;
	font-size:18px;
	font-weight:400;
	text-align:center;
	letter-spacing:0.15em;
	line-height:160%;
}
.title2,
.single h3{
	font-size:17px;
	margin:40px 0 30px 0;
	font-weight:400;
	letter-spacing:0.1em;
	padding:15px 20px;
	position:relative;
	background:#f9f9f9;
	border-top:1px dotted #ddd;
	border-bottom:1px dotted #ddd;
}
.title2:before,
.single h3:before{
	content:"";
	position:absolute;
	left:0;
	top:7px;
	background:#f7b72c;
	height:calc(100% - 14px);
	width:4px;
}
.title3,
.single h4{
	font-size:16px;
	margin:25px 0 20px 0;
	padding:0 0 10px 10px;
	font-weight:400;
	letter-spacing:0.05em;
	border-bottom:double 3px #ddd;
}

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

}
@media screen and (max-width : 639px){
	.title1,
	.single h2{
		margin:0 0 25px 0;
		padding:12px 10px ;
		font-size:15px;
		letter-spacing:0.1em;
	}
	.title2,
	.single h3{
		font-size:14px;
		margin:25px 0 20px 0;
		letter-spacing:0.05em;
		padding:10px 15px;
	}
	.title3,
	.single h4{
		margin:0 0 15px 0;
		font-size:14px;
		padding:0 0 10px 0;
	}

}

/* flow
-------------------------------------------------------------------*/
.flow{
	background:#f3f7e9;
	padding:30px 30px 15px;
	border-radius:10px;
}
.flow .title2{
	margin-top:0;
}
.triangle{
	width: 0;
	height: 0;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	border-top: 30px solid #f3f7e9;
	margin:0 auto 10px;
}
@media screen and (max-width : 639px){
	.flow{
		padding:15px 15px 10px;
	}
}


/* text_box
-------------------------------------------------------------------*/
.sBox{
	padding:30px;
	margin:30px 0;
	border-radius:15px;
	background:#f5f5f5;
	border:dotted 1px #ddd;
}

@media screen and (max-width : 639px){
	.sBox{
		padding:15px;
		margin:30px 0;
		border-radius:15px;
		background:#f5f5f5;
		border:dotted 1px #ddd;
	}
}


/*==================================================================
single settings
===================================================================*/
/* 投稿ページ,アーカイブ
-------------------------------------------------------------------*/
.uk-container .single{
	padding:40px;
	background:#f7f7f7;
	border-radius:15px;
}
.archivelist{
	max-width:1000px;
	margin:0 auto;
}
.attachment-singlepage_thumbnails{
	display:block;
	margin:0 auto 30px;
}
.archivelist .top_title:first-letter,
.singlepage .top_title:first-letter{
	text-transform: capitalize;
}

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

@media screen and (max-width : 639px){
	.uk-container .single{
		background:none;
		padding:0;
	}
	.attachment-singlepage_thumbnails{
		margin:0 0 15px;
	}
	.single_more .more a{
		display:block;
		font-size:13px;
		min-width:initial
	}
}

/* サムネイル付き list
----------------------------*/
.Box a{
	display:block;
	overflow:hidden;
	text-decoration:none;
	margin:0 0 30px;
	position:relative;
	background:#f7f7f7;
	border-radius:15px;
}
.Box h2{
	font-size:16px;
	margin:20px 0 ;
	line-height:160%;
	transition:0.4s;
}
.Box a img{
	float:left;
	width:270px;
	margin-right:30px;
}
.Box .date{
	display:inline-block;
	margin:0 15px 0 0;
}
.Box_right{
	padding:30px;
}
p.Box-txt{
	font-size:13px;
	letter-spacing:0.1px;
	color:#888;
	margin:0;
}
.Box a:hover h2{
	color:#5dbbbb;
}
@media screen and (max-width : 959px){
	.Box a img{
		width:30%;
		margin:0 20px 0 0;
	}

}
@media screen and (max-width : 639px){
	.uk-container p.Box-txt{
		display:none;
	}
	.Box a img{
		width:40%;
		margin:0 10px 0 0;
	}
	.Box a{
		margin:3px ;
		height:auto;
		background:none;
	}
	.Box_right{
		padding:10px;
	}
	.Box h2{
		font-size:14px;
		margin:10px 0 0 0 ;
		padding:2px 0; 
	}
	.Box .i-cat{
		display:none;
	}

}



/*   pagination
-------------------------------------------------------------------*/
.pagination {
	width: 100%;
	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: #444;
	background-color: #fff;
}

/* 色変更箇所*/
.pagination li:not([class*="current"]) a:hover {
	background:#5dbbbb;
	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:#5dbbbb;
	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;
		margin:0 0 20px;
	}
	.pagination li.previous a {
		border-left-width: 1px;
	}
}




/*==================================================================
sidebar settings
===================================================================*/
/* side menu ttl
-------------------------------------------------------------------*/
.side_nav{
	margin-bottom:30px;
	border-bottom:none;
}
.side_nav a{
	color:#fff;
}
.side_nav_ttl {
	padding:0 5px 15px 5px;
	text-align:center;
	letter-spacing:0.2em;
	font-size:15px;
	font-weight:500;
	margin:0;
	color:#f9bd0d;
	background:#fff url(../img/line.png) repeat-x left bottom;
}
.side_nav_ttl a{
	color:#666;
	font-size:14px;
	text-decoration:none;
}


/* side menu list
-------------------------------------------------------------------*/
.side_nav_item ul {
	padding:10px 0;
	border-top:none;
}
.side_nav_item{
	margin:0;
}
.side_nav_item ul li {
	position:relative;
	margin:0;
}
.side_nav_item ul li a {
	padding:10px ;
	font-size:13px;
	line-height:160%;
	color:#444;
}
.side_nav_item ul li a:hover {
	color:#5dbbbb;
}
.side_nav_item .date{
	display:inline-block;
	color:#999;
}



/*==================================================================
footer settings
===================================================================*/

/* cv
------------------------------------------------------------------*/
.cv{
	margin:160px 0;
}
.cv p.more {
	margin:0;
}
.cv .more a{
	display:block;
	margin:0;
}
.cv .footer_logo{
	display:block;
	margin:0 0 30px;
}
.cv_tel a{
	display:block;
	margin:0;
	color:#5dbbbb;
	letter-spacing:0.08em;
	font-size:30px;
	font-weight:400;
	text-decoration:none;	
	padding:0 0 0 50px;
	background:url(../img/icon_tel.png) no-repeat left center;
}
.cv_tel a span{
	display:block;
	padding:0;
	margin:0;
	font-size:14px;
	color:#555;
	letter-spacing:0.05em;
	line-height:120%;
}
@media screen and (max-width : 959px){
	.cv{
		margin:100px 0;
	}
}
@media screen and (max-width : 639px){
	.cv{
		margin:60px 0;
	}
	.cv_calendar{
		padding:0 15px 15px;
		height:260px;
	}
	.cv_box p.more{
		margin:15px 0;
	}

}


/* cv 診療時間
-------------------------------------------------------------------*/
.sheet-time {
	width:100%;
	border-collapse:collapse;
	border-spacing:0px;
}
.sheet-time th,
.sheet-time td{
	vertical-align:middle;
	padding:15px 5px;
	text-align:center;
	font-weight:normal;
	border-bottom:1px solid #ddd;
}
.sheet-time th{
	letter-spacing:2px;
}
.sheet-time tr:first-child{
	letter-spacing:0.1em;
}
.sheet-time td{
	width:8%;
}
.sheet-time td.orange{
	color:#f7b72c;
}
.sheet-time th:first-child,
.sheet-time td:first-child{
	text-align:left;
	padding-left:15px;
}
p.about_time{
	padding:15px 0 0 15px;
	margin:0 0 50px;
	line-height:200%;
	text-align:left;
}
@media screen and (max-width : 959px){
	p.about_time{
		margin-bottom:40px ;
	}
}
@media screen and (max-width : 639px){
	.sheet-time th,
	.contents table.sheet-time th{
		letter-spacing:2px;
		padding:10px 0;
		font-size:13px;
	}
	.sheet-time td,
	.contents table.sheet-time td{
		width:7%;
		padding:10px 0;
		font-size:13px;
	}
	.sheet-time th:first-child,
	.sheet-time td:first-child,
	.contents .sheet-time th:first-child,
	.contents .sheet-time td:first-child{
		padding-left:5px;
	}
	p.about_time{
		padding:10px 0 0 5px;
		font-size:13px;
		margin-bottom:30px ;
	}
}


/* sitemap
-------------------------------------------------------------------*/
footer{
	padding:100px 0;
}
footer .footer_txt{
	position:relative;
}
.footer_access{
	margin:30px 0 0 0;
	font-size:13px;
	letter-spacing:0.1em;
}
.footer_sitemap ul{
	padding:0;
}
.footer_sitemap ul li{
	margin:0;
	padding:0;
	list-style:none;
}
.footer_sitemap ul li a{
	text-decoration:none;
	color:#666;
	font-size:13px;
}
.footer_sitemap ul li a:hover{
	color:#5dbbbb;
}
@media screen and (max-width : 959px){
	footer{
		padding:60px 0;
	}
}

@media screen and (max-width : 639px){
	footer{
		padding:20px 0 15px;
	}
	.footer_sitemap{
		display:none;
	}
	.footer_logo{
		width:50%;
	}
	.footer_access{
		margin:15px 0 0 0;
		font-size:12px;
	}
}

/* sign
-------------------------------------------------------------------*/
.footer_sign{
	position:absolute;
	bottom:0;
}
.footer_sign p {
	color: #666;
	font-size:10px;
	margin:0;
	letter-spacing:0.1em;
	padding:0;
}
@media screen and (max-width : 959px){
	.footer_sign{
		position:static;
		margin:30px 0;
	}
}
@media screen and (max-width : 639px){
	.footer_sign{
		margin:0;
	}
	.footer_sign p {
		letter-spacing:0px;
		margin: 10px 0 0 0;
	}
}

/* pagetop
-------------------------------------------------------------------*/
#page-top {
	position: fixed;
	bottom: 20px;
	right: 10px;
	margin:0;
	z-index:1001;
}
#page-top a {
	background: url(../img/pagetop.png) no-repeat 0 0/cover;
	z-index:10;
	text-indent:-5000px;
	text-decoration: none;
	color: #fff;
	width: 54px;
	height:39px;
	text-align: center;
	display: block;
}
@media screen and (max-width : 639px){
	#page-top {
		bottom: 60px;
	}
	#page-top a {
		width: 50px;
		background-size:contain;
	}
}




/*==================================================================
form setting
===================================================================*/
.contactform{
	margin:0 auto;
}
.indispensable{
	display:inline-block;
	font-size:12px;
	color:#f7b72c;
	line-height:140%;
	margin:0;
}
span.wpcf7-not-valid-tip{
	color:#f7b72c;
}
.wpcf7c-elm-step2{
	font-weight:500;
	text-align:center;
	padding:10px;
	border-top:1px solid #666;
	border-bottom:1px solid #666;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-mail-sent-ok,
div.wpcf7-response-output{
	padding:15px!important;
	border:none!important;
	margin:0 auto!important;
	text-align:center;
	background:#ea6354;
	border-radius:30px;
	color:#fff;
}
.custom-wpcf7c-confirmed .spam{
	display:none;
}


/* form
-------------------------------------------------------------------*/
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"],
input[type="number"],
textarea,
select{
	width: calc(100% - 42px);
	outline: none;
  appearance: none;
	-webkit-appearance: none;
	border: 1px solid #ddd ;
	background-color: #FFFFFF !important;
	padding:15px 20px;
	font-size:13px;
}

*[class*="disabled"],
*:disabled {
	cursor: default !important;
}



/* css checkbox */
input[type=checkbox] ,
input[type=radio] {
	display: none;
}
.wpcf7-list-item-label {
	position: relative;
	padding: 0 20px 0 25px;
}
.wpcf7-list-item-label:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #ddd;
	background:#fff;
}
input[type=checkbox]:checked + .wpcf7-list-item-label{
	color: #ea6354;
}
input[type=checkbox]:checked + .wpcf7-list-item-label:after,
input[type=radio]:checked + .wpcf7-list-item-label:after{
	content: "";
	display: block;
	position: absolute;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #ea6354;
	border-right: 3px solid #ea6354;
}


/* css btn */
#back,
#confirm,
input[type="submit"]{
	display:inline-block;
	text-decoration:none;
	font-size:15px;
	color:#5dbbbb;
	padding:0;
	letter-spacing:0.1em;
	border:1px solid #5dbbbb;
	white-space: nowrap;
	font-weight:500;
	padding:12px;
	min-width:230px;
	background:#fff;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
  appearance: none;
	-webkit-appearance: none;
	margin:0 15px;
}

#confirm:hover,
#back:hover,
input[type="submit"]:hover{
	background:#5dbbbb;
	color:#fff;
	transform:0.2s;
}


/* 確認画面  */
form.wpcf7-form{
	margin-top: -120px;
	padding-top: 120px;
}
input:-webkit-autofill.wpcf7c-conf {
	-webkit-box-shadow: 0 0 0px 1000px #fff inset !important;
	border: none !important;
	background: #fff !important;
}
input:-webkit-autofill.wpcf7c-conf:focus {
	border: none !important;
}
.wpcf7c-conf {
	background: #fff !important;
	border-color: #fff !important;
}
.wpcf7c-conf:focus {
	border-color: transparent !important;
}
.custom-wpcf7c-confirmed input[type=checkbox] ,
.custom-wpcf7c-confirmed input[type=radio] {
	display:block!important;
	float:left;
	margin:10px 0 0 0;
}
.custom-wpcf7c-confirmed .wpcf7-list-item-label {
	padding: 0 20px 0 15px;
}
.custom-wpcf7c-confirmed .wpcf7-list-item-label:before {
	content: none;
	display: none;
}