@charset "utf-8";

/* =============================================================





html & body





*  ============================================================= */

html {
	color: #3d4333;
	font-family: "Kosugi Maru", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 62.5%;
  font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body img {
	height: auto;
	vertical-align: top;
	width: 100%;
}

/* =============================================================





wrap





*  ============================================================= */

.wrap {
	background-color: #fef7ea;
	overflow: hidden;
	padding-top: 24px;
	position: relative;
	width: 100vw;
}

@media screen and (min-width: 960px) {
	.wrap {
		padding-top: 80px;
	}
}

/* =============================================================





header





*  ============================================================= */

#header {
	overflow: hidden;
	width: 100vw;
	z-index: 1000;
}


#header.header-fixed {
	background-color: rgba( 255, 255, 255, 0.9 );
	position: fixed;
		top: 0;
		left: 0;
}

#header .header-inn {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 72px;
	margin: 0 auto;
	width: 88%;
	max-width: 480px;
}

@media screen and (min-width: 960px) {
	#header .header-inn {
		height: 96px;
		width: 90%;
		max-width: 1200px;
	}
}

/* ============================================


inn-left


*  ============================================ */

#header .header-inn .inn-left {
	display: flex;
	align-items: center;
}

/* ------------------------------------------
left-logo
*  ------------------------------------------ */

#header .header-inn .inn-left .left-logo {
	width: clamp(100px, 32vw, 120px);
}

@media screen and (min-width: 960px) {
	#header .header-inn .inn-left .left-logo {
		width: 160px;
	}
}

/* ============================================


inn-right


*  ============================================ */

#header .header-inn .inn-right {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

#header .header-inn .inn-right a {
	display: block;
	width: 140px;
}

@media screen and (min-width: 960px) {
	#header .header-inn .inn-right a  {
		width: 180px;
	}
}

/* =============================================================





fv





*  ============================================================= */

.fv {
	width: 100%;
}

.fv .fv-inn {
	margin: 0 auto;
	width: 88%;
	max-width: 480px;
}

@media screen and (min-width: 960px) {
	.fv .fv-inn {
		width: 90%;
		max-width: 1200px;
	}
}

/* ============================================


h1.inn-ttl


*  ============================================ */

.fv .fv-inn h1.inn-ttl {
	color: #26803a;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 5.8rem;
	font-weight: 900;
	letter-spacing: 0.1rem;
	margin-top: 40px;
	text-align: center;
}

.fv .fv-inn h1.inn-ttl span {
	font-size: 3.2rem;
}

/* =============================================================





sec





*  ============================================================= */

.sec {
	width: 100%;
}

@media screen and (min-width: 960px) {
	.sec {
		margin-top: -80px;
	}
}

.sec .sec-inn {
	margin: 0 auto;
	width: 88%;
	max-width: 480px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn {
		width: 90%;
		max-width: 1200px;
	}
}

/* ============================================


inn-index


*  ============================================ */

.sec .sec-inn .inn-index {
	margin: 56px auto 0;
	width: 88%;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-index {
		margin: 0;
		padding-top: 160px;
		width: 320px;
	}
}

/* ------------------------------------------
ol.index-list
*  ------------------------------------------ */

.sec .sec-inn .inn-index ol.index-list li {
	border-bottom: .5px solid #26803a;
}

.sec .sec-inn .inn-index ol.index-list li:first-of-type {
	border-top: .5px solid #26803a;
}

.sec .sec-inn .inn-index ol.index-list li a {
	color: #26803a;
	display: block;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: clamp(1.7rem, 0.44vw + 1.58rem, 2rem);
	font-weight: 700;
	padding-bottom: 20px;
	padding-left: 4px;
	padding-top: 20px;
	position: relative;
	transition: all 0.3s;
	width: 100%;
}

.sec .sec-inn .inn-index ol.index-list li a::after {
	content: '';
	border: 5px solid transparent;
	border-top: 10px solid #ffb100;
	height: 0;
	position: absolute;
		top: 50%;
		right: 4px;
	transform: translateY(-32%);
	width: 0;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-index ol.index-list li a {
		font-size: 1.8rem;
		padding-bottom: 24px;
		padding-left: 8px;
		padding-top: 24px;
	}
	.sec .sec-inn .inn-index ol.index-list li a::after {
		border: none;
	}
	.sec .sec-inn .inn-index ol.index-list li a.active {
		background-color: #eaf5d6;
	}
	.sec .sec-inn .inn-index ol.index-list li a:hover {
		background-color: #eaf5d6;
	}
}

/* ============================================


inn-conts


*  ============================================ */

.sec .sec-inn .inn-conts {
	margin: 0 auto;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts {
		margin: 0 0 0 auto;
		padding-top: 80px;
		width: 64%;
	}
}

/* ------------------------------------------
conts-blk
*  ------------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk {
	padding-top: 80px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk {
		padding-top: 120px;
	}
	.sec .sec-inn .inn-conts .conts-blk:first-of-type {
		padding-top: 80px;
	}
}

/* blk-upper ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-upper {
	position: relative;
}

.sec .sec-inn .inn-conts .conts-blk .blk-upper::before {
	content: '';
	background-color: #26803a;
	border-radius: 5px;
	display: block;
	height: 4px;
	margin-bottom: 24px
}

.sec .sec-inn .inn-conts .conts-blk .blk-upper::after {
	content: '';
	background-color: #26803a;
	border-radius: 5px;
	display: block;
	height: 4px;
	margin-top: 24px
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-upper h2.upper-ttl {
	color: #26803a;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: clamp(2.2rem, 0.23vw + 1.98rem, 2.4rem);
	font-weight: 900;
	padding: 0 4px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-upper h2.upper-ttl {
		font-size: 2.6rem;
		padding: 0 8px;
	}
}

/* blk-lower ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower {
	margin-top: 40px;
	padding-left: 16px;
	padding-right: 16px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower h3.lower-ttl {
	color: #26803a;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 20px auto 0;
	width: 90%;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower h3.lower-ttl-wide {
	color: #26803a;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 10px auto 0;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower h3.lower-ttl-wide.mt {
	margin: 20px auto 0;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower h3.lower-ttl.ttl-bold {
	font-size: 2.4rem;
	font-weight: 900;
	margin: 0 auto;
	width: 100%;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower h3.lower-ttl {
		font-size: 2.4rem;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower p.lower-txt {
	font-size: 1.6rem;
	line-height: 1.8;
	margin: 32px auto 0;
	width: 90%;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower p.lower-txt-sml {
	font-size: clamp(1.2rem, 0.23vw + 1.18rem, 1.4rem);
	line-height: 1.6;
	margin: 32px auto 0;
	text-align: center;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower p.lower-txt {
		font-size: 1.8rem;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-img-sml-right,
.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-dental-unit {
	margin-top: 10px;
	text-align: right;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-img-sml-right img {
	width: 120px;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-dental-unit img {
	margin-top: 10px;
	width: 64%;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-img {
	margin-top: 10px;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-img-daytime {
	margin-top: 20px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-dental-unit img {
		width: 250px;
	}
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-img-daytime {
		width: 72%;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-googlemap {
	margin-top: 10px;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-googlemap a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #26803a;
	border-radius: 10px;
	color: #fff;
	height: 50px;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	margin: 0 auto;
	width: 80%;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-googlemap a {
		width: 320px;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-txtbtn {
	background-color: #fff;
	border-radius: 10px;
	margin-top: 30px;
	padding: 8% 12%;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower p.txtbtn-txt {
	font-size: 1.6rem;
	line-height: 1.6;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .txtbtn-btn {
	margin-top: 10px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-txtbtn {
		padding: 24px 32px;
	}
	.sec .sec-inn .inn-conts .conts-blk .blk-lower p.txtbtn-txt {
		font-size: 1.5rem;
		line-height: 1.4;
		text-align: center;
	}
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .txtbtn-btn {
		margin: 10px auto 0;
		width: 280px;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-tel {
	margin-top: 20px;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-tel a {
	display: flex;
	justify-content: center;
	align-items: center;
	border: 3px solid #26803a;
	border-radius: 10px;
	color: #26803a;
	height: 56px;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 3.2rem;
	font-weight: 900;
	padding-bottom: 4px;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-tel a {
		margin: 0 auto;
		width: 64%;
	}
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-tel.left a {
		margin: 0;
		width: 72%;
	}
}

/* ------------------------------------ */

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-contact {
	margin-top: 10px;
}

.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-contact p {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ddd;
/* background-color: #26803a; */
	border-radius: 10px;
	color: #fff;
	height: 50px;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	margin: 0 auto;
	width: 80%;
}

@media screen and (min-width: 960px) {
	.sec .sec-inn .inn-conts .conts-blk .blk-lower .lower-contact p {
		width: 320px;
	}
}

/* =============================================================





footer





*  ============================================================= */

.footer {
	background-color: #26803a;
	margin-top: 160px;
	padding-bottom: 40px;
	padding-top: 40px;
	width: 100vw;
}

.footer .footer-inn {
	margin: 0 auto;
	width: 88%;
	max-width: 480px;
}

@media screen and (min-width: 960px) {
	.footer .footer-inn {
		max-width: 1280px;
	}
}

/* ============================================


inn-copyright


*  ============================================ */

.footer .footer-inn p.inn-copyright {
	color: #fff;
	font-family: "Zen Maru Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 1.4rem;
	font-weight: 700;
}

/* =============================================================





only





*  ============================================================= */

.pc-only {
	display: none;
}

br.pc-only, a.pc-only, span.pc-only {
	display: none;
}

@media screen and (min-width: 960px) {
.pc-only {
		display: block;
	}
	br.pc-only, a.pc-only, span.pc-only {
		display: inline;
	}
}

.sp-only {
	display: block;
}

br.sp-only, a.sp-only, span.sp-only {
	display: inline;
}

@media screen and (min-width: 960px) {
	.sp-only {
		display: none;
	}
	br.sp-only, a.sp-only, span.sp-only {
		display: none;
	}
}
