
body {
	font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

#pagetop {
	overflow: hidden;
	position: relative;
	min-width: 1024px;
}

@media(max-width:768px){
	#pagetop {
		min-width: 320px;
	}
}

.nowrap {
	display: inline-block;
	text-decoration: inherit;
  white-space: nowrap;
}

.site {
	margin: 0 auto;
	width: 1000px;
}

@media(max-width:768px){
	.site {
		margin: 0 auto;
		width: auto;
		padding: 0 15px;
	}	
}

.site-full {
	margin: 0 auto;
	padding: 0 50px;
	max-width: 1440px;
}

@media(max-width:1100px){
	.site-full {
		margin: 0 auto;
		width: 1000px;
	}
}

@media(max-width:768px){
	.site-full {
		margin: 0 auto;
		width: auto;
		padding: 0 15px;
	}	
}


main {
	font-size: 1.6rem;
}

section {
	padding: 80px 0;
}

@media(max-width:768px){
	section {
		padding: 60px 0;
	}
}

/*

*/

#header {
	height: 180px;
	position: absolute;
	z-index: 1000;
	top: 0;
	left: 0;
	right: 0;
	background-color: rgba(255, 255, 255, .8);
}

@media(max-width:768px){
	#header {
		position: fixed;
		height: 80px;
	}
}


#header .sitecopy {
	position: absolute;
	height: 24px;
	line-height: 24px;
	color: #fff;
	font-size: 1.1rem;
	bottom: 156px;
	left: 0;
	right: 0;
	background-color: #014099;
	padding-left: 24px;
}

@media(max-width:768px){
	#header .sitecopy {
		bottom: 60px;
		height: 20px;
		line-height: 20px;
		padding-left: 10px;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
}

#header > .logo {
	position: absolute;
	bottom: 84px;
	left: 25px;
}

@media(max-width:768px){
	#header > .logo {
		bottom: 15px;
		left: 12px;
	}
}

#header .logo a {
	display: block;
	
}

#header .logo img {
	height: 59px;
}

@media(max-width:768px){
	#header .logo img {
		height: 30px;
	}
}

#header .parking {
	position: absolute;
	bottom: 88px;
	left: 370px;
	font-size: 12px;
	width: 84px;
	line-height: 22px;
	border: 1px solid #014099;
	color: #014099;
	text-align: center;
}

@media(max-width:768px){
	#header .parking {
		display: none;
	}
}

#header nav.primary {
	position: absolute;
	bottom: 82px;
	right: 10px;
}

@media(max-width:768px){
	#header nav.primary {
		bottom: 0;
		right: 0;
	}
}

#header nav.primary .cta  {
	float: left;
}

#header nav.primary .cta .tel {
	float: left;
	margin-right: 15px;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";	
}

@media(max-width:768px){
	#header nav.primary .cta .tel {
		margin-right: 0;
	}
}

#header nav.primary .cta .tel a {
	display: block;
	float: left;
	font-size: 3rem;
	color: #014099;
	padding-left: 28px;
	line-height: 28px;
	position: relative;
	padding-top: 20px;
	position: relative;
}



@media(max-width:768px){
	#header nav.primary .cta .tel a {
		width: 44px;
		height: 60px;
		padding: 0 !important;
		text-indent: -9999px;
		overflow: hidden;
		background-image: url(../img/header_icon_tel_sp.webp);
		background-size: 14.5px 22px;
		background-position: 50% 50%;
		background-repeat: no-repeat;
	}
}

#header nav.primary .cta .tel a:before {
	content: "";
	background-image: url(../img/header_icon_tel.webp);
	background-size: 100%;
	width: 20px;
	height: 28px;
	display: inline-block;
	vertical-align: -2px;
	margin-right: 5px;
}

/*
@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop, #header nav.primary .cta .tel a:before {
		top: 15px;
	}
}
*/

@media(max-width:768px){
	#header nav.primary .cta .tel a:before {
		display: none;
	}
}

#header nav.primary .cta .schedule {
	font-size: 1.1rem;
	line-height: 1.4;
	color: #666666;
	float: left;
	padding-top: 20px;
	margin-right: 15px;
	margin-left: 16px;
}

@media(max-width:768px){
	#header nav.primary .cta .schedule {
		display: none;
	}
}

#header nav.primary .cta .contact {
	float: left;
}

#header nav.primary .cta .contact a {
	display: block;
	background-color: #014099;
	height: 66px;
	line-height: 66px;
	font-size: 14px;
	color: #fff;
	padding: 0 22px 0 64px !important;
	position: relative;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";	
	transition: all ease .3s;
}

@media(max-width:768px){
	#header nav.primary .cta .contact a {
		width: 44px;
		height: 60px;	
		padding: 0 !important;
		text-indent: -9999px;
		overflow: hidden;
		background-image: url(../img/header_icon_mail_sp.webp);
		background-size: 24.5px 17px;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-color: transparent;
	}
}

#header nav.primary .cta .contact a:hover {
	background-color: #000;
}

#header nav.primary .cta .contact a:before {
	content: "";
	background-image: url(../img/header_icon_mail.webp);
	background-size: 100%;
	width: 31px;
	height: 22px;
	display: block;
	position: absolute;
	top: 22px;
	left: 16px;
}

@media(max-width:768px){
	#header nav.primary .cta .contact a:before {
		display: none;
	}
}


#header nav.primary .menu {
	display: none;
}

@media(max-width:768px){
	#header nav.primary .menu {
		display: block;
		float: left;
		width: 50px;
		height: 60px;	
		position: relative;
	}
}

@media(max-width:768px){
	#header nav.primary .menu button:before {
		content: "";
		display: block;
		position: absolute;
		display: block;
		left: 50%;
		top: 50%;
		width: 24px;
		height: 2px;
		background-color: #014099;
		margin-left: -12px;
		margin-top: -5px;
		transition: transform ease .3s 0s, margin ease .3s .3s;
	}

	.is-menu-opened #header nav.primary .menu button:before {
		transform: rotate(225deg);
		margin-top: 0;
		transition: transform ease .3s .3s, margin ease .3s 0s;
	}
	
	#header nav.primary .menu button:after {
		content: "";
		display: block;
		position: absolute;
		display: block;
		left: 50%;
		top: 50%;
		width: 24px;
		height: 2px;
		background-color: #014099;				
		margin-left: -12px;
		margin-top: 5px;
		transition: transform ease .3s 0s, margin ease .3s .3s;
	}

	.is-menu-opened #header nav.primary .menu button:after {
		transform: rotate(135deg);
		margin-top: 0;
		transition: transform ease .3s .3s, margin ease .3s 0s;
	}

	#header nav.primary .menu button span {
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		display: block;
		left: 50%;
		top: 50%;
		width: 24px;
		height: 2px;
		background-color: #014099;
		margin-left: -12px;
		transition: all ease .3s 0s;
	}
	
	.is-menu-opened #header nav.primary .menu button span {
		opacity: 0;
	}
}

#header > .global {
	height: 72px;
	border-top: 1px solid #dfdfdf;
	bottom: 0;
	position: absolute;
	left: 0;
	right: 0;
}

@media(max-width:768px){
	#header > .global {
		display: none;
	}
}

#header > .global ul:after {
	content: "";
	display: table;
	clear: both;
}

#header > .global > ul > li {
	width: 16.666666%;
	float: left;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 72px;
	text-align: center;
}

#header > .global > ul > li > a {
	display: block;
	position: relative;
}

#header > .global > ul > li > a:hover {
	color: #014099;
}

/*

#header > .global > ul > li .wrapper {
	position: absolute;
	top: 72px;
	left: 0;
	right: 0;
	background-color: rgba(1, 64, 153, .9);
	color: #fff;
	text-align: center;
	padding-top: 20px;
	display: none;
}

#header > .global > ul > li:hover .wrapper {
	display: block;
}

#header > .global > ul > li .wrapper > ul {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	line-height: 2;
	width: 40%;
}

#header > .global > ul > li .wrapper > ul > li {
	margin-bottom: 20px;
	overflow: hidden;
	border-left: 2px solid #fff;
	padding-left: 10px;
}

#header > .global > ul > li .wrapper > ul > li > a {
	float: left;
	width: 200px;
}

#header > .global > ul > li .wrapper > ul > li > ul {
	font-size: 14px;
	float: left;
	font-weight: normal;
}

*/

#header > .global p {
	display: none;
}


#bar .wrapper,
#header nav.global .wrapper {
	position: absolute;
	top: 71px;
	left: 0;
	right: 0;
	background-color: rgba(1, 64, 153, .98);
	color: #fff;
	text-align: center;
	padding-top: 40px;
	padding-bottom: 20px;
	display: none;
	font-size: 1.5rem !important;
	font-weight: bold;
}

#bar li:hover > .wrapper,
#header nav.global li:hover > .wrapper {
	display: block;
}

#bar .wrapper > ul,
#header nav.global .wrapper > ul {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	line-height: 2;
	width: 40%;
}

#bar  .wrapper > ul > li,
#header nav.global  .wrapper > ul > li {
	margin-bottom: 30px;
	overflow: hidden;
	border-left: 2px solid #fff;
	padding-left: 10px;
}

#bar  .wrapper > ul > li > a,
#header nav.global  .wrapper > ul > li > a {
	float: left;
	width: 200px;
}

#bar .wrapper > ul > li > ul,
#header nav.global .wrapper > ul > li > ul {
	font-size: 14px !important;
	line-height: 40px;
	float: left;
	font-weight: normal;
}

/*

*/

#bar {
	position: fixed;
	top: -61px;
	left: 0;
	right: 0;
	height: 60px;
	background-color: #fff;
	transition: all ease .3s;
	border-bottom: 1px solid #e5e5e5;
	min-width: 1000px;
}

@media(max-width:768px){
	#bar {
		display: none;
	}
}

.is-bar-show #bar {
	top: 0;
}

#bar > ul {
	display: table;
	width: 100%;
	table-layout: fixed;
}

#bar > ul > li {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}

#bar > ul > li > ul {
	display: flex;
  justify-content: space-around;
  align-items: center;
	width: 100%;
}

#bar > ul > li > ul > li > a {
	display: block;
	line-height: 60px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 0 10px;
	white-space: normal;
	text-overflow: ellipsis;
	overflow: hidden;
}

#bar > ul > li > ul > li > a:hover {
	color: #014099;
}

#bar > ul > li > ul > li  {
	display: inline-block;
}

#bar > ul > li > ul > li  > .wrapper {
	display: none;
}

#bar .wrapper {
	top: 60px;
}


#bar .logo {
	width: 60px;
	border-right: 1px solid #e5e5e5;
}

#bar .logo img {
	vertical-align: top;

}

#bar .tel {
	text-align: center;
	border-left: 1px solid #e5e5e5;
	width: 210px;
}

#bar .tel a {
	display: block;
	font-size: 24px;
	line-height: 60px;
	color: #014099;
	position: relative;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";	
	position: relative;
}

#bar .tel a:before {
	content: "";
	background-image: url(../img/header_icon_tel.webp);
	background-size: 100%;
	width: 20px;
	height: 28px;
	display: inline-block;
	margin-right: 8px;
	vertical-align: -4px;
}

#bar .contact {
	width: 220px;
}

#bar .contact a {
	position: relative;
	display: block;
	background-color: #014099;
	height: 60px;
	line-height: 60px;
	font-size: 14px;
	color: #fff;
	position: relative;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	text-align: center;
	transition: all ease .3s;
}

#bar .contact a:hover {
	background-color: #000;
}

#bar .contact a:before {
	content: "";
	background-image: url(../img/header_icon_mail.webp);
	background-size: 100%;
	width: 24px;
	height: 17.6px;
	display: inline-block;
	margin-right: 8px;
	vertical-align: -4px;
}

/*

*/

#menu {
	display: none;
	overflow: scroll;
}

@media(max-width:768px){
	body.is-menu-opened #menu {
		display: block;
		background-color: rgba(1, 64, 153, .9);
		position: fixed;
		top: 80px;
		left: 0;
		bottom: 0;
		right: 0;
	}
}

#menu .inner {
	padding: 15px;
}

#menu .inner > ul > li {
	background-color: #fff;
	position: relative;
}

#menu .inner > ul > li + li {
	margin-top: 8px;
	border-top: 1px solid #014099;
}

#menu .inner > ul > li > a {
	display: block;
	color: #014099;
	font-size: 14px;
	padding: 0 10px;
	line-height: 44px;
	cursor: pointer;
}


#menu .inner > ul > li > a.toggle {
	position: relative;
}

#menu .inner > ul > li > a.toggle:before {
	content: "";
	width: 11px;
	height: 1px;
	background-color: #014099;
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	transition: all ease .3s;
}

#menu .inner > ul > li > a.toggle.is-opened:before {
	transform: rotate(180deg);
}

#menu .inner > ul > li > a.toggle:after {
	content: "";
	width: 11px;
	height: 1px;
	background-color: #014099;
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: rotate(90deg);
	transition: all ease .3s;
}

#menu .inner > ul > li > a.toggle.is-opened:after {
	transform: rotate(360deg);
}

/*

#menu .inner > ul > li .toggle {
	position: absolute;
	top: 2px;
	right: 2px;
	width: 40px;
	height: 40px;
	background-color: #014099;
}

*/

#menu .inner > ul > li > .wrapper {
	display: none;
}


#menu .inner > ul > li > .wrapper > ul > li {
	border-top: 1px solid #fff;
	background-color: rgba(0,0,0, 0.05);
}

#menu .inner > ul > li > .wrapper > ul > li > a {
	display: block;
	line-height: 40px;
	font-size: 14px;
	padding-left: 10px;
	background-color: #014099;
	color: #fff;
}

#menu .inner > ul > li > .wrapper > ul > li > ul li {
	border-top: 1px solid #999;
}

#menu .inner > ul > li > .wrapper > ul > li > ul li a {
	display: block;
	font-size: 14px;
	line-height: 40px;
	padding-left: 10px;
}


#menu p {
	color: #fff;
	text-align: center;
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.5;
}

#menu .contact {
	margin: 12px 0;
}

#menu .contact a {
	display: block;
	font-size: 16px;
	line-height: 60px;
	background-color: #014099;
	border: 1px solid #fff;
}

#menu .contact a:before {
	content: "";
	background-image: url(../img/menu_icon_mail.webp);
	width: 24.5px;
	height: 17px;
	background-size: 100%;
	display: inline-block;
	margin-right: 8px;
	vertical-align: -2px;
}

#menu .tel {
	font-size: 3rem;
	padding-left: 0;
	line-height: 28px;
	position: relative;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";	
}

#menu .tel a:before{ 
	content: "";
	background-image: url(../img/menu_icon_tel.webp);
	width: 14.5px;
	height: 22px;
	background-size: 100%;
	display: inline-block;
	margin-right: 8px;	
}

#menu .note {
	font-size: 12px;
}


/*

*/

#footer .cta {
	background-color: #014099;	
	color: #fff;
	padding: 50px 0;
}

@media(max-width:768px){
	#footer .cta {
		padding: 30px 0;
	}
}

#footer .cta:after {
	content: "";
	display: table;
	clear: both;
}

#footer .cta .container {
	float: left;	
/*	
	overflow: hidden;
*/
}

@media(max-width:768px){
	#footer .cta .container {
		float: none;
	}
}

#footer .cta .container .copy {
	font-size: 16px;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";		
	padding-bottom: 12px;
}

@media(max-width:768px){
	#footer .cta .container .copy {
		line-height: 22px;
		text-align: center;
	}
}

#footer .cta .container .tel {
	font-size: 52px;
	float: left;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";		
	letter-spacing: .075em;
	position: relative;
}

@media(max-width:768px){
	#footer .cta .container .tel {
		font-size: 40px;
		text-align: center;
		float: none;
		padding-left: 0;
	}
}

#footer .cta .container .tel a {
	display: block;
	padding-top: 1px;
	line-height: 1;
}

@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop, #footer .cta .container .tel a {
		padding-top: 10px;
	}
}

#footer .cta .container .tel a:before {
	content: "";
	background-image: url(../img/footer_icon_tel.webp);
	background-size: 100% 100%;
	width: 30px;
	height: 45px;
	display: inline-block;
	vertical-align: -4px;
	margin-right: 10px;
}

@media(max-width:768px){
	#footer .cta .container .tel a:before {
		display: inline-block;
		width: 22px;
		height: 32.5px;
		background-size: 22px 32.5px;
		position: relative;
		top: auto;
		left: auto;
		vertical-align: -2px;
		margin-right: 8px;
	}
}


#footer .cta .container .schedule {
	font-size: 11px;
	line-height: 16px;
	float: left;
	margin-left: 24px;
}

@media(max-width:768px){
	#footer .cta .container .schedule {
		text-align: center;
		float: none;
		font-size: 12px;
		line-height: 16px;
		margin-left: 0;
		margin-top: 8px;
	}
}
#footer .cta .contact-box {
	float: right;
}
#footer .cta .contact {	
	display: block;
	background-color: #012b66;
	padding-top: 0px;
	position: relative;
	padding: 4px;
	padding: 20px 40px 12px;
	text-align: center;
	transition: all ease .3s;
}
#footer .cta .contact.bg-none {
	background: none;
	margin-top: 10px;
	padding: 0;
}

#footer .cta .contact.bg-none img {
	width: 100%;
}
#footer .cta .contact.bg-none:hover {
    background-color: none;
}

@media(max-width:768px){
	#footer .cta .contact {
		float: none;
		margin-top: 12px;
		padding: 20px 20px 12px;
	}
	#footer .cta .contact-box {
		float: none;
    margin-top: 12px;
    padding: 20px 20px 12px;
	}
	#footer .cta .contact.bg-none img {
		width: auto;
	}
}

#footer .cta .contact:hover {
	background-color: #000;
}
#footer .cta .contact.bg-none:hover {
    background-color: #014099;
}

#footer .cta .contact p:first-child {
	font-size: 16px;
	line-height: 1;
	text-align: center;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";		
	position: relative;
}

@media(max-width:768px){
	#footer .cta .contact p:first-child {
		font-size: 18px;	
		padding-left: 0;
	}
}

#footer .cta .contact p:first-child:before {
	content: "";
	background-image: url(../img/footer_icon_mail.webp);
	background-size: 100% 100%;
	width: 31px;
	height: 22px;
	display: inline-block;
		margin-right: 8px;
		vertical-align: -4px;
}

@media(max-width:768px){
	#footer .cta .contact p:first-child:before {
		display: inline-block;
		width: 24.5px;
		height: 17px;
	}
}

#footer .cta .contact p + p {
	line-height: 20px;
	color: #012b66;
	text-align: center;
		font-size: 10px;
		line-height: 16px;
	color: #fff;
	display: inline-block;
	padding: 0 20px;
	border: 1px solid rgba(255, 255, 255, .8);
	margin-top: 10px;
}

@media(max-width:768px){
	#footer .cta .contact p + p {
		font-size: 10px;
		line-height: 16px;
		padding: 0 20px;
		margin-top: 10px;
	}
}

#footer .primary {
	overflow: hidden;
	padding: 60px 0;
}

@media(max-width:768px){
	#footer .primary {
		padding: 30px 0;
	}
}

#footer .primary .information {
	float: left;
	width: 40%;
}

@media(max-width:768px){
	#footer .primary .information {
		float: none;
		width: 100%;
	}
}

@media(max-width:768px){
	#footer .primary .logo {
		text-align: center;
	}
}

#footer .primary .logo img {
	height: 73px;
}


@media(max-width:768px){
	#footer .primary .logo img {
		height: 60px;
	}
}

#footer .primary .address {
	font-size: 1.4rem;
	margin-top: 12px;
	text-align: center;
}

@media(max-width:768px){
	#footer .primary .address {
		font-size: 1.3rem;
	}
}

#footer .primary .parking {
	margin-top: 12px;
	font-size: 1.2rem;
	width: 296px;
	line-height: 35px;
	background-color: #014099;
	color: #fff;
	text-align: center;
}

@media(max-width:768px){
	#footer .primary .parking {
		width: 280px;
		margin: 0 auto;
		margin-top: 10px;
	}
}

#footer .primary .schedule {
	float: right;
	width: 55%;
}

@media(max-width:768px){
	#footer .primary .schedule {
		float: none;
		margin-top: 20px;
		width: 100%;
	}
}

#footer .primary .schedule table {
	width: 620px;
	table-layout: fixed;
}

@media(max-width:768px){
	#footer .primary .schedule table {
		width: 100%;
	}
}

#footer .primary .schedule table thead th {
	border: 1px solid #014099;
	line-height: 32px;
	background-color: #014099;
	color: #fff;
	text-align: center;
	font-size: 1.4rem;
}

@media(max-width:768px){
	#footer .primary .schedule table thead th {
		font-size: 10px;
	}
}

#footer .primary .schedule table th:first-child {
	width: 160px;
	text-align: left;
	padding: 0 20px;
}

@media(max-width:768px){
	#footer .primary .schedule table th:first-child {
		width: 25%;
		text-align: center;
		padding: 0;
	}
}

#footer .primary .schedule table tbody th,
#footer .primary .schedule table tbody td {
	border: 1px solid #014099;
	line-height: 44px;
	color: #014099;
	text-align: center;
	font-size: 1.4rem;
}

@media(max-width:768px){
	#footer .primary .schedule table tbody th,
	#footer .primary .schedule table tbody td {
		line-height: 35px;
		font-size: 10px;
	}
}

#footer .sitemap {
	text-align: center;
	padding-bottom: 60px;
	border-bottom: 1px solid #f2f2f2;
}

#footer .sitemap ul {
	font-size: 0;
}

#footer .sitemap ul li {
	font-size: 1.4rem;
	line-height: 32px;
	display: inline-block;
}

@media(max-width:768px){
	#footer .sitemap ul li {
		line-height: 2.4rem;
	}
}

#footer .sitemap ul li:before {
	content: "｜";
	margin: 0 2px;
}

#footer .sitemap ul li:first-child:before {
	display: none;
}

#footer .copyright {
	text-align: center;
	line-height: 70px;
	font-size: 12px;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";			
}

@media(max-width:768px){
	#footer .copyright {
		line-height: 35px;
		font-size: 10px;
	}
}

#footer .pagetop {
	position: fixed;
	bottom: 0;
	right: 0;
}

#footer .pagetop a {
	display: block;
	width: 70px;
	height: 70px;
	background-color: #012b66;
	text-indent: -9999px;
	overflow: hidden;
	background-image: url(../img/footer_pagetop_arrow.webp);
	background-size: 12px 7px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

@media(max-width:768px){
	#footer .pagetop a {
		width: 35px;
		height: 35px;
	}
}


/*

*/


#calendar .calendarBox {
	overflow: hidden;	
	margin: 0 -20px;
}

@media(max-width:768px){
	#calendar .calendarBox {
		margin: 0;
	}
}

#calendar .calendarBox > .calendar {
	width: 50%;
	padding: 0 20px;
	float: left;
}

@media(max-width:768px){
	#calendar .calendarBox > .calendar {
		width: 100%;
		padding: 0;
		float: none;
	}
	
	#calendar .calendarBox > .calendar + .calendar{
		margin-top: 40px;
	}
}

#calendar .calendarBox > .calendar .month {
	text-align: center;
	font-size: 20px;
	line-height: 1.5;
	margin-bottom: 20px;
	color: #014099;	
}

@media(max-width:768px){
	#calendar .calendarBox > .calendar .month {
		margin-bottom: 10px;
	}
}

#calendar .calendarBox > .calendar table {
	width: 100%;
	font-size: 15px;
}

#calendar .calendarBox > .calendar table th {
	border-bottom: 1px solid #000;
	text-align: center;
	padding: 12px 0;
}

#calendar .calendarBox > .calendar table td {
	padding: 8px 0;
	text-align: center;
}

#calendar .calendarBox > .calendar table tr:nth-child(2) td {
	padding-top: 16px;
}

#calendar .calendarBox > .calendar table span {
	position: relative;
	display: inline-block;
	width: 40px;
	line-height: 30px;
	text-align: center;
	padding-bottom: 12px;
}

#calendar .calendarBox > .calendar table .close span {
	color: #fff;
}

#calendar .calendarBox > .calendar table .am_close span {
	color: #fff;
}

#calendar .calendarBox > .calendar table .pm_close span {
	color: #fff;
}

#calendar .calendarBox > .calendar table .other span {
	color: #fff;
}

#calendar .calendarBox > .calendar table span:before{
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 15px;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -15px;
}

#calendar .calendarBox > .calendar table .close span:before{
	background-color: #014099;
}

#calendar .calendarBox > .calendar table .am_close span:before{
	background-color: #809fcc;
}

#calendar .calendarBox > .calendar table .pm_close span:before{
	background-color: #4170b3;
}

#calendar .calendarBox > .calendar table .other span:before{
	background-color: #999999;
}

#calendar .calendarBox > .calendar table span:after {
	font-size: 10px;
	line-height: 1;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;	
	letter-spacing: 0;
}

#calendar .calendarBox > .calendar table .close span:after {
	content: "休診日";
	color: #014099;
}

#calendar .calendarBox > .calendar table .am_close span:after {
	content: "午前休";
	color: #014099;
}

#calendar .calendarBox > .calendar table .pm_close span:after {
	content: "午後休診";
	color: #014099;
}

#calendar .calendarBox > .calendar table .other span:after {
	content: "その他";
	color: #999999;
}

/*

*/

.btn {
	width: 280px;
	line-height: 58px;
	height: 58px;
	text-align: center;
	border: 1px solid #014099;
	color: #014099;
	position: relative;
	display: inline-block;
	font-size: 16px;
	line-height: 1.5;
	padding: 16px 30px;
	vertical-align: top;
	position: relative;
	transition: color ease .3s,  background-color ease .3s;
}

.btn.concept-btn{
	height: 75px;
}

.btn:hover {
	color: #fff;
	background-color: #014099;
}

.btn span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 1.4;
	width: 100%;
}


.btn:after {
	content: "";
	content: "";
	background-image: url(../img/icon_arrow.webp);
	width: 8px;
	height: 12px;
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -6px;
}

.btn:hover:after {
	background-image: url(../img/icon_arrow_w.webp);
}

a.blank {
	text-decoration: underline;
}

a.blank:hover {
	text-decoration: none;
}

a.blank:after {
	content: "";
	background-image: url("../img/icon_blank.gif");
	width: 14px;
	height: 10px;
	display: inline-block;
}
