@import url('https://fonts.googleapis.com/css2?family=Cinzel&family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP&display=swap');

@charset "utf-8";
/*
Theme Name: yasudadental
*/

/**
 *
 * 初期化
 *
 */
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,
font,
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 {
	margin: 0;
	padding: 0;
	outline: 0;
	border: 0;
	background: transparent;
	vertical-align: baseline;
	font-size: 100%;
}
body {
	margin: 0px;
	padding: 0px;
	border: 0px;
	color: #49331D;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック";
	font-size: 12px;
	line-height: 150%;
	text-align: left;
	background-repeat: repeat-x;
	background-position: left top;
	min-width: 1110px;
	animation: fadeIn 1s ease 0s 1 normal;
	-webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
div,
img,
h1,
h2,
h3,
h4,
h5,
h6,
p,
form,
pre {
	margin: 0px;
	padding: 0px;
	border: 0px;
}
ul,
li {
	margin: 0px;
	padding: 0px;
}
input,
select {
	font-size: 16px;
}
fieldset {
	border: none;
	margin: 0px;
	padding: 0px;
}
legend {
	display: none;
}
pre {
	font-size: 12px;
}
ol,
ul {
	list-style: none;
}
blockquote,
q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

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

/**
 *
 * 共通定義
 *
 */
img,
 video {
	 max-width: 100%;
	 height: auto;
}
.type {
	font-family: 'Noto Serif JP', serif;
}
.type-all * {
	font-family: 'Noto Serif JP', serif;
}
.en {
	font-family: 'Cinzel', serif;
}
.en-all * {
	font-family: 'Cinzel', serif;
}

em {
	font-style: italic;
}
.clear {
	float: none;
	clear: both;
}
.clearfix:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content: ".";
}
.clearfix {
	min-height: 1px;
}
a:link {
	color: #564488;
	text-decoration: underline;
}
a:visited {
	color: #564488;
	text-decoration: underline;
}
a:hover {
	color: #564488;
	text-decoration: none;
}
a:active {
	color: #564488;
	text-decoration: underline;
}
.over {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.over:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}
.right {
	text-align: right;
}
.center {
	text-align: center;
}
.left {
	text-align: left;
}

.orange {
	color: #ed7600;
}
.blue {
	color: #00b2b2;
}
.green {
	color: #008a8a;
}
.brown {
	color: #573f32;
}
.bg-orange {
	background: #ff8000;
}
.bg-blue {
	background: #00a3d9;
}
.bg-pink {
	background: #ff7373;
}

/**
 *
 * パンくずリスト
 *
 */
#bread {
	position: absolute;
	left: 0px;
	top: -80px;
	z-index: 15;
}
#breadcrumb {
	position: relative;
	/*background: url(/img/glue_0.png) left center no-repeat;*/
	margin-bottom: 5px;
}
#breadcrumb ul {
	margin-top: 10px;
	margin-left: 0px !important;
	list-style-image: none !important;
	padding-left: 0px !important;
	margin-bottom: 0px !important;
}
#breadcrumb:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0px;
	content: ".";
}
#breadcrumb ul li {
	float: left;
	margin: 0px 2px;
	font-size: 12px;
	color: white !important;
}
#breadcrumb ul li a {
	color: white !important;
}
#breadcrumb ul li:after {
	content: ">";
	visibility: visible;
	display: inline-block;
	padding: 0 5px;
}
#breadcrumb ul li:last-child:after {
	content: none;
}

/**
 *
 * ページ送り
 *
 */
.pagenavi {
	clear: both;
	margin: 10px auto 0px auto;
	padding-bottom: 10px;
	color: black;
	text-align: center !important;
	font-size: 12px;
}
.pagenavi:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0px;
	content: ".";
}
.pagenavi a,
.wp-pagenavi span {
	margin: 1px;
	text-decoration: none;
}
.page-numbers {
	display: inline-block;
	padding: 4px 10px;
	border: 1px solid #63513b;
	background: white;
	color: #63513b;
}
.page-numbers:after {
}
.pagenavi a:hover,
.wp-pagenavi span.current {
}
.pagenavi .prev {
	display: inline-block;
	width: 107px;
	height: 30px;
	border: 0px;

	color: #63513b;
}
.pagenavi .prev:hover {
}
.pagenavi .next {
	display: inline-block;
	margin-left: 15px;
	width: 107px;
	height: 30px;
	border: 0px;

	color: #63513b;
}
.pagenavi .next:hover {
}
.pagenavi .prev:after,
.pagenavi .next:after {
	content: "" !important;
}

.pagenavi span.current {
	background: #63513b;
	color: white;
	font-weight: bold;
}

/**
 *
 * レイアウト定義
 *
 */
.l-wrap {
	position: relative;
	margin: 0px auto;
	padding: 0px;
	text-align: left;
	overflow: hidden;
	color: #49331D;
}
.l-header {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 10;
}

.l-nav {
	position: relative;
	z-index: 100;
	height: 50px;
	display: block;
	margin: 0px auto 0;
	transition: 0.3s ease;
	background: #fff;
}
.l-nav.is-fixed {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
	background: #fff;
}
.l-nav.is-fixed + .l-main {
	margin-top: 50px;
}

.l-main {
	position: relative;
	display: block;
	margin: 0px auto 0;
}
.l-main.is-sub {
	margin: -50px auto 0;
}
.l-nav.is-sub.is-fixed + .l-main.is-sub {
	margin-top: 50px;
}
.l-main:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content: ".";
}
.l-sidebar {
	margin: 0px auto 0;
}

.l-content {
	position: relative;
}
/* .l-content.is-sub:before {
	content: "";
	display: block;
	background: url(./img/top/feature-stick-1.png) 0 0 no-repeat;
	background-size: contain;
	width: 214px;
	height: 337px;
	position: absolute;
	left: -50px;
	top: -50px;
}
.l-content.is-sub:after {
	content: "";
	display: block;
	visibility: visible;
	opacity: 1;
	background: url(./img/top/feature-stick-2.png) 0 0 no-repeat;
	background-size: contain;
	width: 203px;
	height: 340px;
	position: absolute;
	right: -50px;
	top: -50px;
} */

.l-footer {
	clear: both;
	text-align: center;
	background: #49331D;

}

/**
 *
 * Box
 *
 */
.box-960 {
	width: 960px;
	margin: 0px auto;
	position: relative;
}
.box-980 {
	width: 980px;
	margin: 0px auto;
	position: relative;
}
.box-990 {
	width: 990px;
	margin: 0px auto;
	position: relative;
}
.box-900 {
	width: 900px;
	margin: 0px auto;
	position: relative;
}
.box-1000 {
	width: 1000px;
	margin: 0px auto;
	position: relative;
}
.box-1010 {
	width: 1010px;
	margin: 0px auto;
	position: relative;
}
.box-1050 {
	width: 1050px;
	margin: 0px auto;
	position: relative;
}
.box-1110 {
	width: 1110px;
	margin: 0px auto;
	position: relative;
}
.box-1120 {
	width: 1120px;
	margin: 0px auto;
	position: relative;
	overflow: hidden;
}
.box-content {
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
}

/**
 *
 * Header
 *
 */
.l-header .header-inner {
	max-width: 1700px;
	padding-left: 50px;
	padding-right: 50px;
}
.header-logo {
	width: 450px;
	position: relative;
}
.header-notice {
	position: absolute;
	left: 50px;
	top: 110px;
	text-align: left;
}
.header-notice a {
	color: red !important;
	text-decoration: underline !important;
}
.header-notice a:hover {
	text-decoration: none !important;
}
.header-title {
	text-align: right;
	font-size: 13px;
	font-weight: 500;
	color: #49331D;
	line-height: 1.2em;
	font-weight: normal;
	padding-top: 10px;
	margin-bottom: 0;
}
.header-tel {
	position: absolute;
	right: 50px;
	top: 30px;
	width: 512px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.header-tel .header-tel-intro {
	text-align: center;
	font-size: 15px;
	color: #49331D;
	line-height: 21px;
	background: rgba(211,195,177,0.25);
	width: 100%;
	margin-bottom: 5px;
}
.header-tel a {
	display: block;
	width: 262px;
}
.header-tel .header-tel-time {
	text-align: left;
	font-size: 15px;
	color: #49331D;
	margin-bottom: 0;
}
.header-time {
	text-align: left;
	font-size: 14px;
	line-height: 1.2em;
	color: white;
	margin-right: 20px;
	padding-top: 5px;
}


/**
 *
 * NAV
 *
 */
.l-nav {
	margin-top: 30px;
}

.l-nav .nav-inner {
	max-width: 1700px;
	padding-left: 50px;
	padding-right: 50px;
	margin: 0 auto;

}
.nav-inner-logo {
	position: absolute;
	left: 15px;
	top: 15px;
	width: 280px;
	display: none;
}

.l-nav.is-fixed .nav-inner-logo {
	display: block;
}

.l-nav .nav-inner.is-active {
}

.l-nav .nav-inner > ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	box-sizing: border-box;
	background: url(img/nav-sep.png) left top no-repeat;
	background-size: 1px 50px;
}
.l-nav.is-fixed .nav-inner > ul {
	display: -webkit-flex;
	display: flex;

}
.l-nav.is-fixed .nav-inner{
	padding: 5px 0;
}

.l-nav .nav-inner > ul > li {
	display: block;
	letter-spacing: normal;
	position: relative;
	text-align: center;
	background: url(img/nav-sep.png) right top no-repeat;
	background-size: 1px 50px;
	width: 100%;
}

.l-nav .nav-inner > ul > li:first-child img {
	position: relative;

}

.l-nav .nav-inner > ul > li .menu-link {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	margin: 0;
	z-index: 5;
	padding: 0;
	border: none !important;
	line-height: 0px !important;
}
.l-nav .nav-inner > ul > li .menu-link:after {
	content: "";
	display: block;
	background: url(img/nav-angle.png) center top no-repeat;
	background-size: 9px 5px;
	width: 10px;
	height: 6px;
	position: absolute;
	left: 50%;
	bottom: 0px;
	margin-left: -5px;
}

.l-nav .nav-inner > ul > li img {
	vertical-align: top;
	position: relative;

}

.l-nav .nav-inner > ul > li > a,
.l-nav .nav-inner > ul > li > span {
	display: block;
	text-align: center;
	margin: 0px 0px 0px;
	padding: 5px 15px 15px 15px;
	font-size: 17px;
	color: #49331D;
	box-sizing: border-box;
	letter-spacing: 0.1em;

}

.l-nav .nav-inner > ul > li > a {
	text-decoration: none;
}

.l-nav .nav-inner > ul > li > a:hover,
.l-nav .nav-inner > ul > li > span:hover {
	text-decoration: none;
	cursor: pointer;
}

.l-nav .nav-inner > ul > li:hover .menu-sub,
.l-nav .nav-inner > ul > li:hover .menu-sub {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.1s ease-in-out;
	-moz-transition: 0.1s ease-in-out;
	-o-transition: 0.1s ease-in-out;
	transition: 0.1s ease-in-out;
	top: 40px;
}
.menu-sub {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: 0px;
	top: 25px;
	z-index: 50;
}
.l-nav li:last-child .menu-sub {
	left: auto;
	right: 0;
}
.menu-sub.is-active {
}
.menu-sub ul {
	width: 280px;
	z-index: 999;
}
.menu-sub ul li {
	border-bottom: none;
	margin: 0px 0px;
}
.menu-sub ul li:last-child {
	border-bottom: none;
}
.l-nav .nav-inner > ul > li:hover .menu-sub a,
.l-nav .nav-inner > ul > li:hover .menu-sub a {
	padding: 5px;
	-webkit-transition: 0.1s ease-in-out;
	-moz-transition: 0.1s ease-in-out;
	-o-transition: 0.1s ease-in-out;
	transition: 0.1s ease-in-out;
}
.menu-sub ul li a {
	display: block;
	padding: 0px 5px;
	font-size: 14px;
	position: relative;
	text-align: left;
	box-sizing: border-box;
	color: #49331D;
	background: rgba(211,195,177,0.95);
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	text-decoration: none;
}

.menu-sub ul li a:hover {
	color: rgba(211,195,177,0.95);
	background: #49331D;
	-webkit-transition: 0s ease-in-out;
	-moz-transition: 0s ease-in-out;
	-o-transition: 0s ease-in-out;
	transition: 0s ease-in-out;
}
.menu-sub .to-back {
}
.menu-sub .to-back:hover {
	cursor: pointer;
}
.menu-sub .to-back:before {
}

.btn-nav {
	display: none;
}

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

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

/**
 *
 * Box contact
 *
 */
 
.box-contact-wrap {
	margin-top: 0px;
	position: relative;
	background: #D3C3B1;
}
.box-contact-pics {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
}
.box-contact-wrap .title-main-caption {
	color: #FFFFFF;
	margin-top: 100px;
}
.box-contact-wrap .title-main-caption:before {
	background: url(../img/top/box-contact-title.png) 0 0 no-repeat;
	background-size: contain;
}
.box-contact-wrap .title-main-caption:after {
	background: url(../img/top/box-contact-title.png) 0 0 no-repeat;
	background-size: contain;
}
.box-contact-wrap .title-main {
	
}

.box-contact {
	margin: 0 auto;
	position: relative;
	box-sizing: border-box;
}
.box-contact p {
	font-size: 16px;
}
.btn {
	margin-bottom: 18px;
}
.btn > a {
	color: white !important;
	text-decoration: none !important;
	text-align: center;
	display: block;
	font-family: 'Shippori Mincho B1', serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 50px;
	background: #49331D;
	position: relative;
}
.btn > a:hover {
	color: white !important;
	text-decoration: none !important;
	opacity: 0.7;
}
.box-contact .box-contact-tel {
	width: 340px;
	margin: 15px auto;
}
.box-contact-btns {
	display: flex;
	justify-content: center;
}
.box-contact-btns .btn {
	width: 200px;
	margin: 35px 25px;
}
.btn-reserve > a:before {
	content: "";
	display: inline-block;
	background: url(img/btn-reserve.png) 0 0 no-repeat;
	background-size: contain;
	width: 17px;
	height: 20px;
	vertical-align: middle;
	margin-right: 10px;
}
.btn-access > a:before {
	content: "";
	display: inline-block;
	background: url(img/btn-access.png) 0 0 no-repeat;
	background-size: contain;
	width: 15px;
	height: 20px;
	vertical-align: middle;
	margin-right: 10px;
}
.btn-contact > a:before {
	content: "";
	display: inline-block;
	background: url(img/btn-contact.png) 0 0 no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	margin-right: 10px;
}
.box-contact-map {
	position: relative;
}
.box-contact-access {
	text-align: center;
	font-size: 16px;
	line-height: 1.75em;
}
.ic-train {
	display: inline-block;
	vertical-align: middle;
	background: url(img/ic-train.png) 0 0 no-repeat;
	background-size: contain;
	width: 15px;
	height: 18px;
	margin-right: 10px;
}
.ic-car {
	display: inline-block;
	vertical-align: middle;
	background: url(img/ic-car.png) 0 0 no-repeat;
	background-size: contain;
	width: 20px;
	height: 16px;
	margin-right: 10px;
}
.timetable {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 30px;
}
.timetable th {
	text-align: center;
	background: #49331D;
	color: white;
	padding: 15px;
	font-size: 16px;
	border: 1px solid white;
}
.timetable td {
	color: #49331D;
	padding: 25px 15px;
	text-align: center;
	font-size: 16px;
	border: 1px solid white;
}
.timetable-p {
	text-align: left;
	font-size: 15px;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 80px;
}
.map {
	display: block;
	width: 100%;
}

/**
 *
 * Sidebar
 *`
 */
.list-banner-wrap {

	box-sizing: border-box;
	padding:100px 0;
}
.list-banner {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 20px;
	max-width: 1000px;
	margin: 0 auto;
}
.list-banner > li {
	line-height: 0px;
}

.side-nav {
	margin: 0 auto;
	padding: 100px 0 100px;
	background: #D3C3B1;
}
.side-nav .box-content {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 30px 70px;
	max-width: 1000px;
	margin: 0 auto;
	width: auto;
}
.side-nav .box-content:after {
	content: none;
}

.side-nav .side-nav-item h2 {
	font-size: 16px;
	color: #49331D !important;
	border-bottom: 1px solid #49331D;
	padding-bottom: 10px;
	font-weight: 500;
	margin-bottom: 10px;
}
.side-nav .side-nav-item ul {
	margin-bottom: 30px;
}
.side-nav .side-nav-item ul li {

	margin-bottom: 5px;
	line-height: 1.8em;
	margin-bottom: 5px;
}
.side-nav .side-nav-item ul li a {
	text-decoration: none;
	font-size: 16px;
	color: #49331D !important;
	text-decoration: none;
}
.side-nav .side-nav-item ul li a:hover {
	text-decoration: underline;
}

/**
 *
 * Footer
 *
 */
.page-top {
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 1000;
	width: 42px;
}
.page-top img {
	transition: 0.3s ease;
}
.page-top:hover img {
	transform: scale(1.1);
}
.footer-pics {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
}
.footer-logo {
	font-size: 16px;
	margin: 70px auto;

}
.footer-logo a {
	display: block;
	text-align: center;
	color: #fff !important;
	text-decoration: underline !important;
	line-height: 3em;
	font-size: 16px;
	font-weight: normal;
	
}
.footer-logo a:hover {
	color: #fff !important;
	text-decoration: underline !important;
}
.footer-logo img {
	width: 476px;
}
.copyright {
	font-size: 16px;
	color: #fff;
	margin: 30px auto 0;
	line-height: 40px;
	padding-bottom: 30px;
}

form#mailformpro dl dt {
	padding: 10px 0px 8px !important;
}

.link {
	padding-right: 18px;
	text-decoration: underline !important;
}
.sp {
	display: none !important;
}

.br-sp {
	display: none;
}
a.anchor {
	display: block;
	padding-top: 70px;
	margin-top: -70px;
}

.header-fix {
	position: fixed;
	right: 0;
	top: 50%;
	margin-top: -200px;
	width: 90px;
	z-index: 15;
}
.header-fix a {
	display: block;
	line-height: 1;
}
.header-fix a:hover {
	opacity: 0.7;
}

.loading {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100vh;
  margin: 0;
  padding: 0;
  background: white url(img/logo.png) center center no-repeat;
  background-size: 450px 72px;
}
.loading.hide {
  opacity: 0;
  pointer-events: none;
  transition: 2s ease 500ms;
}