@charset "utf-8";


body,input,select,textarea{font-family:'swis721','nsans','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Osaka,sans-serif;color:#333;font-size: 15px;line-height: 1.75;}
	@media only screen and (max-width:767px)	{body,input,select,textarea{font-size: 14px;line-height: 1.5;}}

body{min-width:100%;background:#fff;}

::selection {background:#3b5997;color:#fff;}
::-moz-selection {background:#3b5997;color:#fff;}

body a,body a:hover{text-decoration:none;color:#69c;}
body a:hover,body a:active,body a:focus{opacity:.75;}
body a,body a:hover,body a:active,body a:focus{outline:0;}




/* header */
.bn-area{width: 470px;display: flex;justify-content:space-between;align-items:center;}
	@media only screen and (max-width:991px)	{.bn-area{display: none;}}



/* footer */
.footer-box{background: #f6f6f6;border: 1px solid #ddd;padding: 19px;margin: 15px auto 0;width: 100%;display: block;}
	@media only screen and (max-width:767px)	{.footer-box{padding: 14px;}}

.footer-box h3{border-bottom: 1px dotted #ddd;font-size: 16px;padding-bottom: 15px;margin-bottom: 15px;}
	@media only screen and (max-width:767px)	{.footer-box h3{font-size: 15px;padding-bottom: 10px;margin-bottom: 10px;}}

.footer-box p{font-size: 14px;line-height: 1.5;text-align: left;}
	@media only screen and (max-width:767px)	{.footer-box p{font-size: 12px;}}


.footer-box p a{text-decoration: underline;}


/* main */
.bg-blue{background:#369;}
.bg-ivory{background:#f9f5e1;}
.bg-canary{background:#fffdee;border-top: 1px solid #ede7da;border-bottom: 1px solid #ede7da;}

.bg-gray{background:#f6f6f6;border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;}
.bg-gray:first-child{border-top: none;}
.bg-gray:last-child{border-bottom: none;}

.anchor-point .bg-gray{border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;}
.anchor-point:last-child .bg-gray:last-child{border-bottom: none;}

.bg-gray .well{background:#fff;}

.bg-green{background: #f90;color:#fff;}

.bg-first{background:#fffcf6;}

.bg-sky{background:#f90;}
.bg-cherry{background:#f7b7c5;}

.bg-applegreen{background:#f90;color:#fff;}

.marker-green	{background:linear-gradient(transparent 60%, #6fc 0%);}
.marker-blue	{background:linear-gradient(transparent 60%, #6ff 0%);}
.marker-orange	{background:linear-gradient(transparent 60%, #fc3 0%);}
.marker-pink	{background:linear-gradient(transparent 60%, #fcc 0%);}

.marker{background:linear-gradient(transparent 50%, #fc3 0%);font-family: 'swis721-r','nsans-b',sans-serif;}


.ja{font-family: 'swis721-r',nsans-b,sans-serif;font-size: 16px !important;vertical-align: middle;}


/* access */
#gmaps-ful{margin-top: -60px;}
	@media only screen and (max-width:767px)	{#gmaps-ful{}}

#gmaps-ful iframe{width: 100%;height: 500px;}
	@media only screen and (max-width:767px)	{#gmaps-ful iframe{height: 300px;}}




/* index */
#idx1{}
#idx1 h2{text-align: center;font-size: 36px;padding-bottom: 15px;color:#69c;line-height: .75;margin-bottom: 30px;position: relative;}
	@media only screen and (max-width:767px)	{#idx1 h2{font-size: 21px;padding-bottom: 15px;margin-bottom: 15px;}}

#idx1 h2:after{content: "";position: absolute;top: 100%;left: 50%;right: 50%;display: block;background: #69c;width: 170px;height: 2px;margin:0 -85px;}
	@media only screen and (max-width:767px)	{#idx1 h2:after{width: 100px;margin:0 -50px;}}

#idx1 p{color:#69c;font-size: 21px;line-height: 1.4285714285;font-weight: bold;}
	@media only screen and (max-width:767px)	{#idx1 p{font-size: 16px;line-height: 1.5;}}



#idx2{background: url(../images/bg-idx2.jpg) center top no-repeat;}
	@media only screen and (max-width:767px)	{#idx2{}}

#idx2 h2{font-size: 27px;line-height: 1;margin-bottom: 30px;color:#fff;text-align: center;padding-bottom: 15px;position: relative;text-shadow: 0 0 3px rgba(0,0,0,.33);}
	@media only screen and (max-width:767px)	{#idx2 h2{font-size: 17px;margin-bottom: 30px;}}
	@media only screen and (max-width:575px)	{#idx2 h2{line-height: 1.25;}}

#idx2 h2:after{content: "";position: absolute;top: 100%;left: 50%;right: 50%;display: block;background: #fff;width: 170px;height: 2px;margin:0 -85px;box-shadow: 0 0 3px rgba(0,0,0,.33);}
	@media only screen and (max-width:767px)	{#idx2 h2:after{font-size: 14px;}}

#idx2 h2 + p{color:#fff;text-shadow: 0 0 3px rgba(0,0,0,.33);}

.ssc-box{display: block;background: #fff;box-shadow: 0 0 5px rgba(0,0,0,.2);padding: 20px;width: 100%;text-align: center;}
	@media only screen and (max-width:767px)	{.ssc-box{padding: 10px 10px 15px;}}


.ssc-img{display: block;margin: -20px -20px 20px;}
	@media only screen and (max-width:767px)	{.ssc-img{margin: -10px -10px 15px;}}

.ssc-img img{width: 100%;height: auto;}

.ssc-box h3{text-align: center;color:#69c;font-size: 18px;margin-bottom: 10px;}
	@media only screen and (max-width:767px)	{.ssc-box h3{font-size: 16px;}}

.ssc-box p{color:#333;}
	@media only screen and (max-width:767px)	{.ssc-box p{font-size: 12px;}}



#idx3{}
	@media only screen and (max-width:767px)	{#idx3{}}

#idx3 h2{font-size: 27px;line-height: 1;margin-bottom: 30px;color:#69c;text-align: center;padding-bottom: 15px;position: relative;}
	@media only screen and (max-width:767px)	{#idx3 h2{font-size: 17px;margin-bottom: 30px;}}

#idx3 h2:after{content: "";position: absolute;top: 100%;left: 50%;right: 50%;display: block;background: #69c;width: 170px;height: 2px;margin:0 -85px;}
	@media only screen and (max-width:767px)	{#idx3 h2:after{font-size: 14px;}}


.link-box{display: table;width: 100%;border: 1px solid #ddd;background: #fff;}

.link-img,.link-txt{display: table-cell;vertical-align: middle;}


.link-img{width: 24%;}
.link-img img{width: 100%;height: auto;}


.link-txt{padding: 5px 15px;color:#333;font-size: 16px;line-height: 20px;}
	@media only screen and (max-width:1199px)	{.link-txt{font-size: 15px;}}




.tit-teikan{text-align: center;margin-bottom: 30px;font-size: 18px;}
	@media only screen and (max-width:767px)	{.tit-teikan{margin-bottom: 15px;font-size: 16px;}}

.tit-t-lvl1{margin: 30px 0 15px;}
.tit-t-lvl2{margin: 20px 0 10px;}
.tit-t-lvl3{margin: 10px 0 5px;}



.link-marker{position: absolute;top: -1px;right: -1px;width: 24px;text-align: center;background: #69c;color:#fff;display: block;}
.link-marker svg{display: block;margin: 5px auto;}


/* order */

/*@media only screen and (max-width:575px)	{
	#service3 .container .row [class*="col-"]:nth-of-type(1){order:2;}
	#service3 .container .row [class*="col-"]:nth-of-type(2){order:1;}

	#service5 .container .row [class*="col-"]:nth-of-type(1){order:2;}
	#service5 .container .row [class*="col-"]:nth-of-type(2){order:1;}
}*/





/* service */





/* common */
.contact-box{border: 8px solid #f90;background: #fff;}
	@media only screen and (max-width:767px)	{.contact-box{padding: 12px;}}
	@media (min-width:768px)	{.contact-box{padding: 27px;}}

.contact-box h3{font-family: 'nsans-b',sans-serif;text-align: center;background: #f90;color:#fc0;}
	@media only screen and (max-width:767px)	{.contact-box h3{padding: 15px;margin: -20px -20px 12px;font-size: 21px;}}
	@media (min-width:768px)	{.contact-box h3{padding: 20px;margin: -35px -35px 27px;font-size: 33px;}}

.contact-box hr{margin: 14px 0;}

.contact-box h4{background: #c00;color:#fff;text-align: center;font-weight: bold;margin-bottom: 10px;padding: 5px 10px;}
	@media only screen and (max-width:767px)	{.contact-box h4{font-size: 16px;}}
	@media (min-width:768px)	{.contact-box h4{font-size: 18px;}}










a.box,a.box:hover,a.box:active,a.box:focus{color:inherit;}


/* company */





/* company,office,profile */
.signature			{text-align:center;font-weight:bold;line-height:1.5;font-size:21px;margin-top: 30px;}
	@media only screen and (max-width:767px)	{.signature{font-size:18px;margin-top: 20px;}}

.signature small	{display: block;margin-top: 10px;}
	@media only screen and (max-width:767px)	{.signature small{font-size:12px;}}
	@media (min-width:768px)	{.signature small{font-size:14px;}}

/* page-bg */
.h2-service{background-image: url(../images/h2-service.jpg);}
.h2-works{background-image: url(../images/h2-works.jpg);}
.h2-company{background-image: url(../images/h2-company.jpg);}
.h2-contact{background-image: url(../images/h2-contact.jpg);}




.mb30{margin-bottom:30px}


#top_bnr img{
	width: 100%;
	display: block;
}
#top_bnr img:hover{
	opacity: 0.7;
}
@media (min-width:768px){
	#top_bnr img{
		width: 80%;
	}
}
/*2023/9/28追加*/
.dental-fes-qr {
	display: block;
	margin: 30px auto 0;
}
.dental-fes-qr img {
	max-width: 100px;
}

.sns-area{
	display: flex;
	gap: .5rem;
}
.sns-area img{
	width: 40px;
	height: 40px;
}
@media only screen and (max-width:767px){
	.sns-area img{
		width: 35px;
		height: 35px;
	}
}