@charset "UTF-8";

/*--------------------------------------------------------------------------------
 * 
 * 
 * リセット CSS
 * 
 * 
--------------------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

html,
body {
	width: 100%;
	height: 100%;
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*--------------------------------------------------------------------------------
 *
 *
 * フォント関連
 *
 *
--------------------------------------------------------------------------------*/

/*.open_sans {
	font-family: 'Open Sans', sans-serif;
}*/

.semibold {
	font-weight: 600;
}

.bold {
	font-weight: 700;
}

/*--------------------------------------------------------------------------------
 *
 *
 * Clearfix
 *
 *
--------------------------------------------------------------------------------*/

.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * 基本設定
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

body {
	font:  500 100%/2 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'Noto Sans JP', "メイリオ", sans-serif;
	color:#3e3a39;
	background: #fff;
	position: relative;
	font-feature-settings : "palt";
	letter-spacing: 0.05em;
}

a:link,
a:visited {
	color: #008ac8;
	text-decoration: none;
	transition: .3s ease;
}

a:hover,
a:active {
	color: #008ac8;
	text-decoration: none;
	transition: .3s ease;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	backface-visibility: hidden;
}

a:link img,
a:visited img {
	opacity: 1.0;
	transition: .3s ease;
}

a:hover img,
a:active img {
	opacity: 0.6;
	transition: .3s ease;
}

a .scale {
	overflow: hidden;
}

a .scale img {
	transition: transform 0.3s linear;
}

a:hover .scale img {
	transform: scale(1.1);
	cursor:pointer;
}

@media (min-width: 961px) {

	.pc {
		display: block !important;
	}

	.sp {
		display: none !important;
	}

}

@media (max-width: 960px) {

	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * ヘッダー
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#header {
	width: 100%;
	background: rgba(255,255,255,.9);
	height: 100px;
	z-index: 10000;
}

#header .inner {
	width: 92%;
	height: 100px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#header .logo {
	width: 219px;
	height: 55px;
}

@media (min-width: 961px) {

	#header {
		position: fixed;
		overflow: hidden;
	}

	#header #g_nav {
		margin-top: 3px;
		font-size: 0.875rem;
	}

	#header #g_nav ul {
		display: flex;
	}

	#header #g_nav ul li {
		margin-left: 2rem;
	}

	#header #g_nav ul li a {
		display: block;
		position: relative;
		font-weight: bold;
		color: #3e3a39;
	}

	#header #g_nav ul li a:hover,
	#header #g_nav ul li a:active {
		color: #008ac8;
	}

	#header #g_nav ul li a::after {
		display: block;
		content: '';
		width: 80%;
		height: 3px;
		background: transparent;
		border-radius: 2px;
		margin: 0 auto;
		transition: .3s ease;
	}

	#header #g_nav ul li a:hover::after,
	#header #g_nav ul li a:active::after {
		background: #008ac8;
		transition: .3s ease;
	}
	
	#header #navicon {
		display: none;
	}

}

@media (max-width: 960px) {

	#header {
		background: #fff;
		/*position: relative;*/
	}

	#navicon {
		width: 100px;
		height: 100px;
		position: absolute;
		top: 0;
		right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		cursor: pointer;
		z-index: 10000;
	}

	#navicon a,
	#navicon a span {
		display: inline-block;
		transition: .3s ease;
		box-sizing: border-box;
	}

	#navicon a {
		position: relative;
		width: 40px;
		height: 20px;
	}

	#navicon a.active {
		position: fixed;
	}

	#navicon a span {
		position: absolute;
		left: 0px;
		width: 40px;
		height: 2px;
		background: #3e3a39;
	}

	#navicon a.active span {
		background: #3e3a39;
	}

	#navicon a span:nth-of-type(1) {
		top: 0;
	}

	#navicon a span:nth-of-type(2) {
		top: 9px;
	}

	#navicon a span:nth-of-type(3) {
		bottom: 0;
	}

	#navicon a.active span:nth-of-type(1) {
		transform: translateY(7px) rotate(-45deg);
	}

	#navicon a.active span:nth-of-type(2) {
		opacity: 0;
	}

	#navicon a.active span:nth-of-type(3) {
		transform: translateY(-10px) rotate(45deg);
	}

	#g_nav {
		background: rgba(255,255,255,.9);
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		z-index: 10000;
		opacity: 0;
		visibility: hidden;
		transition: .3s ease;
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
	}

	#g_nav.active {
		opacity: 1;
		visibility: visible;
		transition: .3s ease;
	}

	#g_nav ul {
		text-align: center;
		display: block;
	}

	#g_nav ul li {
		text-align: left;
	}

	#g_nav ul a {
		display: block;
		color: #3e3a39;
		height: 50px;
		line-height: 50px;
		font-size: 1.25rem;
		box-sizing: border-box;
		letter-spacing: 0.1em;
		font-weight: bold;
	}

	html.active,
	body.active {
		position: fixed;
	}

}

@media (max-width: 600px) {

	#header {
		height: 80px;
	}

	#header .inner {
		height: 80px;
	}

	#header .logo {
		width: 159px;
		height: 42px;
	}

	#navicon {
		width: 80px;
		height: 80px;
	}

	#navicon a {
		position: relative;
		width: 30px;
		height: 16px;
	}

	#navicon a span {
		position: absolute;
		left: 0px;
		width: 30px;
		height: 2px;
		background: #3e3a39;
	}

	#navicon a span:nth-of-type(2) {
		top: 7px;
	}

	#navicon a.active span:nth-of-type(1) {
		transform: translateY(7px) rotate(-45deg);
	}

	#navicon a.active span:nth-of-type(3) {
		transform: translateY(-6px) rotate(45deg);
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * メインビジュアル
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
 * 
 * slick.js
 * 
--------------------------------------------------------------------------------*/

/* Slider */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

/* Arrows */
.slick-prev,
.slick-next {
	position: absolute;
	bottom: 0;
	display: block;
	width: 70px;
	height: 64px;
	line-height: 64px;
	padding: 0;
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	z-index: 9999;
}

.slick-prev {
	left: 0;
	background: rgba(255,255,255,1) url("images/common/prev.png") no-repeat center center/11px 18px;
}

.slick-next {
	left: 70px;
	background: rgba(255,255,255,1) url("images/common/next.png") no-repeat center center/11px 18px;
}

.slick-prev:hover,
.slick-next:hover {
	background-color: #fafafa;
}

/* Dots */
.slick-dotted.slick-slider {
	/*margin-bottom: 30px;*/
}

.slick-dots {
	position: absolute;
	bottom: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
}

.slick-dots li {
	position: relative;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
	text-align: center;
}

.slick-dots li button {
	display: block;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #048dc9;
	padding: 3px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	margin: 0 auto;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
	outline: none;
}

.slick-dots li.slick-active button {
	width: 10px;
	height: 10px;
	margin-top: -2px;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	.slick-prev,
	.slick-next {
		width: 50px;
		height: 46px;
		line-height: 46px;
	}

	.slick-prev {
		left: 0;
		background-size: 9px 15px;
	}

	.slick-next {
		left: 50px;
		background-size: 9px 15px;
	}

	.slick-dots {
		justify-content: flex-end;
		bottom: 16px;
		right: 20px;
	}

}

@media (max-width: 600px) {

}


/*--------------------------------------------------------------------------------
 * 
 * 独自設定
 * 
--------------------------------------------------------------------------------*/

#mv {
	width: 100%;
	height: 100vh;
	overflow: hidden;
	position: relative;
}

#mv .slider_01_img {
	width: 100%;
	height: 100vh;
}

#mv .slider_01_5 {
	background: url("images/slider01/01_b.jpg") no-repeat center bottom/cover;
}

#mv .slider_01_6 {
	background: url("images/slider01/02_b.jpg") no-repeat center center/cover;
}

#mv .slider_01_7 {
	background: url("images/slider01/03_b.jpg") no-repeat center center/cover;
}

#mv .slider_01_8 {
	background: url("images/slider01/04_b.jpg") no-repeat center center/cover;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	#mv {
		height: 50vh;
	}

	#mv .slider_01_img {
		height: 50vh;
	}

}

@media (max-width: 600px) {

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * コンポーネント
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
 * 
 * 見出し
 * 
--------------------------------------------------------------------------------*/

.hl_01 {
	font-size: 1.2rem;
	font-weight: bold;
	margin-bottom: 40px;
	position: relative;
	display: flex;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.hl_01::before {
	display: block;
	content: '';
	width: 15px;
	height: 15px;
	background: url("images/common/hl.png") no-repeat center center/100%;
	flex-shrink: 0;
	margin: 11px 10px 0 0;
}

.hl_02 {
	font-size: 1.1rem;
	font-weight: bold;
	margin-bottom: 10px;
	color: #048dc9;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	.hl_02 {
		margin-bottom: 20px;
	}

}

@media (max-width: 600px) {

	.hl_01 {
		margin-bottom: 30px;
	}

	.hl_02 {
		margin-bottom: 10px;
		font-size: 1.0rem;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * 植田歯科医院について
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#about {
	width: 100%;
	box-sizing: border-box;
	padding: 138px 0 0;
}

#about .inner {
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
}

#about_content {
	width: 100%;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-bottom: 40px;
}

#about_content .thumb {
	width: 50%;
}

#about_content .thumb .thumb_img {
	margin-bottom: 4px;
}

#about_content .thumb .cap {
	font-size: 0.75rem;
}

#about_content .desc {
	width: 45%;
}

#about_content .desc p {
	font-size: 0.875rem;
}

#about_fac ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#about_fac li {
	width: 13.5%;
	height: 73px;
	line-height: 73px;
	text-align: center;
	font-weight: 600;
	color: #048dc9;
	box-sizing: border-box;
	position: relative;
	flex-shrink: 0;
}

#about_fac li .border {
	display: block;
	width: 100%;
	height: calc( 100% - 2px );
	margin-top: 1px;
	box-sizing: border-box;
	border: 1px solid #048dc9;
	position: absolute;
	top: 0;
	left: 0;
}

#about_fac li .bg {
	display: block;
	white-space: nowrap;
	width: 86%;
	height: 100%;
	margin: 0 auto;
	background: #fff;
	position: relative;
	z-index: 1;
}

#about_fac li .about_fac_item_inner {
	display: block;
	white-space: nowrap;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

#about_fac li .about_fac_item_inner > span {
	letter-spacing: 0.1em;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	#about {
		padding: 60px 0;
	}

	#about_content .thumb {
		width: 48%;
	}

	#about_content .desc {
		width: 48%;
	}
	
	.about_br {
		display: none;
	}
	
	#about_fac li {
		width: 30%;
	}
	
	#about_fac li:nth-child(1),
	#about_fac li:nth-child(2),
	#about_fac li:nth-child(3) {
		margin-bottom: 20px;
	}

}

@media (max-width: 600px) {

	#about_content {
		width: 100%;
		display: block;
		margin-bottom: 20px;
	}
	
	#about_content .hl_02 {
		letter-spacing: 0.1em;
	}

	#about_content .thumb {
		width: 100%;
	}

	#about_content .desc {
		width: 100%;
	}

	#about_content .desc p {
		margin-bottom: 30px;
	}

	#about_fac {
		width: 90%;
		margin: 0 auto;
		padding-top: 20px;
	}

	#about_fac li {
		width: 45%;
		height: 50px;
		line-height: 50px;
		letter-spacing: 0.1em;
	}
	
	#about_fac li:nth-child(1),
	#about_fac li:nth-child(2),
	#about_fac li:nth-child(3),
	#about_fac li:nth-child(4) {
		margin-bottom: 20px;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * 歯科医師紹介
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#profile {
	width: 100%;
	box-sizing: border-box;
	padding: 138px 0 0;
}

#profile .inner {
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
}

#profile .inner .box {
	width: 100%;
	position: relative;
	margin-bottom: 148px;
}

#profile .inner .box:last-of-type {
	margin-bottom: 0;
}

#profile .inner .box .thumb {
	width: 35%;
	position: absolute;
	z-index: 1;
}

#profile .inner .box .desc {
	width: 70%;
	background: #fafafa;
	position: relative;
	z-index: 0;
	box-sizing: border-box;
	font-size: 0.875rem;
}

#profile .inner .box .desc .hl_02 {
	margin-bottom: 30px;
}

#profile .inner .box .desc .profile_name {
	margin-bottom: 10px;
}

#profile .inner .box .desc .profile_name > span:nth-child(2) {
	font-size: 1.25rem;
	font-weight: bold;
	margin-left: 0.7em;
	letter-spacing: 0.1em;
}

#profile .inner .box .desc p {
	margin-bottom: 10px;
}

#profile .inner .box .desc .career .year {
	margin-right: 1em;
}

.justify{
	text-align: justify;
	text-justify: inter-ideograph;
}

@media (min-width: 961px) {

	#profile .inner .box .thumb {
		top: -55px;
		right: 0;
	}
	
	#profile .inner .box .desc {
		padding: 4% 12% 6% 6%;
	}

	#profile .inner .box:last-of-type .desc {
		padding-bottom: 8%;
	}

}

@media (max-width: 960px) {

	#profile {
		padding: 60px 0 80px;
		background: #fafafa;
	}

	#profile .inner .box {
		margin-bottom: 50px;
	}

	#profile .inner .box .thumb {
		position: relative;
		width: 59%;
		max-width: 350px;
		margin: 0 auto 40px;
	}

	#profile .inner .box .desc {
		width: 100%;
	}

	#profile .inner .box .desc .hl_02 {
		margin-bottom: 10px;
	}

}

@media (max-width: 600px) {

	#profile {
		padding: 60px 0;
	}

	#profile .inner .box .desc .hl_02 {
		font-size: 1rem;
	}
}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * ギャラリー
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#gallery {
	width: 100%;
	box-sizing: border-box;
	padding: 138px 0 0;
}

#gallery .slider .slick-slide {
	width: 350px;
	margin: 0;
}
  
#gallery .slider .slick-slide img {
	width: 100%;
	height: auto;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	#gallery {
		padding: 0;
	}

	#gallery .slider .slick-slide {
		width: 500px;
		margin: 0;
	}

}

@media (max-width: 600px) {

	#gallery .slider .slick-slide {
		width: 248px;
		margin: 0;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * 診察時間・ご予約
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#contact {
	width: 100%;
	box-sizing: border-box;
	padding: 138px 0 0;
}

#contact .inner {
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	font-size: 0.875rem;
}

#contact .inner .box:nth-child(1) {
	width: 51.5%;
}

#contact .inner .box:nth-child(2) {
	width: 38.6%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#contact table {
	width: 100%;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
}

#contact table th,
#contact table td {
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #048dc9;
	text-align: center;
	vertical-align: middle;
}

#contact table .tr_01 th {
	background: #048dc9;
	color: #fff;
	border-right-color: #fff;
	border-bottom: none;
}

#contact table .tr_01 th:last-of-type {
	border-right-color: #048dc9;
}

#contact table td .disc {
	display: block;
	width: 16px;
	height: 16px;
	background: url("images/common/disc.png") no-repeat center center/16px 16px;
	margin: 0 auto;
}

#contact table td .slash {
	display: block;
	width: 16px;
	height: 16px;
	background: url("images/common/slash.png") no-repeat center center/16px 16px;
	margin: 0 auto;
}

#contact table td .triangle {
	display: block;
	width: 20px;
	height: 17px;
	background: url("images/common/triangle.png") no-repeat center center/20px 17px;
	margin: 0 auto;
}

#contact .inner .box .note {
	line-height: 1.75;
}

#contact .inner .box p {
	line-height: 1.75;
}

#contact .inner .box #reservation_tel {
	line-height: 1.75;
	letter-spacing: 0.1em;
	margin-top: -15px;
}

#contact .inner .box #reservation_tel > span {
	display: inline-block;
}

#contact .inner .box #reservation_tel > span:nth-child(1) {
	font-size: 1.125rem;
	margin-right: 0.25em;
}

#contact .inner .box #reservation_tel > span:nth-child(2) {
	font-size: 1.625rem;
	letter-spacing: 0.1em;
}

#contact .inner .box #reservation_tel a {
	color: #3e3a39;
}

#course p{
	margin-top: -15px;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	#contact {
		padding: 60px 0 0;
	}

	#contact .inner {
		display: block;
	}

	#contact .inner .box:nth-child(1) {
		width: 100%;
		margin-bottom: 40px;
	}

	#contact .inner .box .hl_01 {
		margin-bottom: 15px;
	}

	#contact table {
		margin-top: 0px;
	}

	#contact .inner .box:nth-child(2) {
		width: 100%;
	}

	#contact .inner .box #reservation {
		margin-bottom: 40px;
	}

}

@media (max-width: 600px) {

	#contact .inner .box:nth-child(1) {
		margin-bottom: 50px;
	}

	#contact table th,
	#contact table td {
		padding: 6px;
	}

	#contact .inner .box #reservation {
		margin-bottom: 50px;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * アクセス
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#access {
	width: 100%;
	box-sizing: border-box;
}

#access .inner {
	padding-top: 32.8125%;
	position: relative;
	height: 0;
	overflow: hidden;
}

#access .inner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (min-width: 961px) {

	#access {
		padding: 138px 0 0;
		margin-top: -50px;
	}

}

@media (max-width: 960px) {

	#access {
		padding: 60px 0 0;
	}

	#access .inner {
		padding-top: 46.875%;
	}

}

@media (max-width: 600px) {

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * スタッフ募集中 <歯科衛生士>
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/
#jda_link {
	width: 100%;
	box-sizing: border-box;
	padding: 60px 0 0;
	text-align:center;
	text-decoration:underline;
	text-decoration-color:#008ac8;
}
#recruit {
	width: 100%;
	box-sizing: border-box;
	padding: 100px 0 0;
}

#recruit .inner {
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
	/*border: 1px solid #048dc9;*/
	background: #fafafa;
	/*box-sizing: border-box;*/
	display: flex;
	align-items: center;
	line-height: 1.75;
	position: relative;
}

#recruit .inner::after {
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: 1px solid #048dc9;
	position: absolute;
	top: 0;
	left: 0;
}

#recruit .inner .rec_hl {
	width: 40%;
	flex-shrink: 0;
	font-size: 1.25rem;
	font-weight: bold;
	text-align: center;
	color: #048dc9;
	box-sizing: border-box;
	/*background: #fafafa;*/
	letter-spacing: 0.1em;
}

#recruit .inner .desc {
	width: 60%;
	flex-shrink: 0;
	box-sizing: border-box;
	background: #fff;
	font-size: 0.875rem;
	padding: 20px 30px;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

	#recruit {
		padding: 80px 0 0;
	}

	#recruit .inner {
		display: block;
	}

	#recruit .inner .rec_hl {
		width: 100%;
		padding: 30px 0;
	}

	#recruit .inner .desc {
		width: 100%;
		padding: 30px;
	}
	
	#recruit .inner .rec_hl {
		font-size: 1.1rem;
	}
	
	#contact .inner .box #reservation_tel > span:nth-child(2) {
		font-size: 1.8rem;
	}

}

@media (max-width: 600px) {

	#recruit {
		padding: 60px 0 0;
	}

	#recruit .inner .rec_hl {
		padding: 20px 0;
	}

	#recruit .inner .desc {
		padding: 20px;
		text-align: justify;
	}

	#recruit .inner .desc br {
		display: none;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * フッター
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#footer {
	width: 100%;
	box-sizing: border-box;
	padding: 94px 0 60px;
	font-size: 0.875rem;
}

#footer .inner {
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
}

#footer .inner #footer_content {
	width: 100%;
	display: flex;
	margin-bottom: 30px;
}

#footer #footer_content .logo {
	width: 13%;
	flex-shrink: 0;
}

#footer #footer_content .desc {
	width: 82%;
	letter-spacing: 0.05em;
}

#footer_nav ul {
	display: flex;
	flex-wrap: wrap;
	line-height: 1;
	margin-bottom: 20px;
}

#footer_nav ul li {
	padding-right: 1em;
	margin-right: 1em;
	border-right: 1px solid #3e3a39;
}

#footer_nav ul li:last-of-type {
	padding-right: 0;
	margin-right: 0;
	border-right: none;
}

#footer_nav ul li a:link,
#footer_nav ul li a:visited {
	color: #3e3a39;
}

#footer_nav ul li a:hover,
#footer_nav ul li a:active {
	color: #008ac8;
}

#footer_address {
	line-height: 1.75;
}

#copy {
	text-align: right;
	font-size: 0.6875rem;
	color: #999;
	letter-spacing: 0.05em;
}

@media (min-width: 961px) {

	#footer #footer_content .logo {
		margin-right: 5%;
	}

}

@media (max-width: 960px) {

	#footer {
		padding: 60px 0 40px;
	}

	#footer .inner #footer_content {
		display: block;
	}

	#footer #footer_content .logo {
		width: 20%;
		min-width: 100px;
		margin-bottom: 30px;
	}
	
	#footer #footer_content .desc {
		width: 100%;
	}

	#footer_nav {
		width: 50%;
	}

	#footer_nav ul {
		margin-bottom: 0;
	}

	#footer_nav ul li {
		margin-bottom: 20px;
	}

	#footer_nav ul li:nth-child(2) {
		padding-right: 0;
		margin-right: 0;
		border-right: none;
	}

	#copy {
		text-align: left;
	}

}

@media (max-width: 600px) {

	#footer {
		padding: 60px 0 30px;
	}

	#footer_nav {
		width: 100%;
	}
	
	#footer_nav ul li {
		margin-bottom: 15px;
	}
	
	#footer .inner #footer_content {
		margin-bottom: 20px;
	}

	#copy {
		font-size: 0.625rem;
	}

}

/*--------------------------------------------------------------------------------
 * 
 * 
 * 
 * 
 * ページトップへ戻る
 * 
 * 
 * 
 * 
--------------------------------------------------------------------------------*/

#page_top {
	width: 40px;
	text-align: center;
	position: fixed;
	bottom: 20px;
	right: 30px;
	transform: translate3d(0,150px,0);
	transition: transform .3s;
}

#page_top.active {
	transform: translate3d(0,0,0);
}

#page_top .thumb {
	width: 14px;
	height: 50px;
	margin: 0 auto 4px;
}

#page_top a:link .desc,
#page_top a:visited .desc {
	opacity: 1;
	transition: .3s ease;
}

#page_top a:hover .desc,
#page_top a:active .desc {
	opacity: 0.6;
	transition: .3s ease;
}

@media (min-width: 961px) {

}

@media (max-width: 960px) {

}

@media (max-width: 600px) {

	#page_top {
		width: 30px;
		bottom: 10px;
		right: 20px;
		transform: translate3d(0,120px,0);
		transition: transform .3s;
	}

	#page_top.active {
		transform: translate3d(0,0,0);
	}

	#page_top .thumb {
		width: 10px;
		height: 38px;
		margin: 0 auto;
	}

}
