@charset "utf-8";

/*@import url('https://fonts.googleapis.com/css2?family=EB+Garamond&family=Noto+Sans+JP:wght@300;400;500;700&family=Urbanist&display=swap');*/

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

html {
	font-size: 16px;
}

body {
	position: relative;
	line-height: 1.45;
	font-family: "Noto Sans JP", sans-serif;
	color: #333333;
	word-break: break-all;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	-webkit-overflow-scrolling: touch;
	font-weight: 400;
	overflow-x: hidden;
    font-size: 17px;
}



p {
	display: block;
	margin-block-start: 0em;
	margin-block-end: 0em;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
}

.bold {
	font-weight: 700 !important;
}


* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

*::after,
*::before {
	box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
}

main {
	display: block;
}


a {
	text-decoration: none;
	color: inherit
}

a:hover {
	opacity: 0.7;
}

.clear {
	clear: both;
}

a[href^="tel:"] {
	cursor: default;
	opacity: 1;
}

a[href^="tel:"]:hover {
	text-decoration: none;
}

br {
	font-size: 0;
}

.u-desktop {
	display: none;
}

.m-desktop {
	display: none !important;
}

@media screen and (min-width: 768px) {
	.u-mobile {
		display: none;
	}
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
	.item-new__date {
		position: relative;
		top: -4px
	}

	.item-new__tag {
		position: relative;
		top: -4px;
	}
}

main {
	overflow: hidden;
}

/* header */
.header__light,
.toggle__light {
	padding: 4vw 4vw 2vw 4vw;
	background: rgb(3, 80, 163);
	background: linear-gradient(90deg, rgba(3, 80, 163, 1) 0%, rgba(3, 114, 206, 1) 40%);
}

.header__toggle-btn {
	width: 10.667vw;
	height: 10.667vw;
	background-color: transparent;
	border: 1px solid #fff;
}

.toggle-btn {
	position: absolute;
	top: 4vw;
	right: 4vw;
	z-index: 1000;
	background-color: transparent !important;
	border: 1px solid #fff;
}

.fix-btn-menu {
	position: fixed;
	border: 1px solid #333333;
	background-color: #fff !important;
}

.fix-btn-menu .toggle-btn__items .toggle-btn__item {
	background: #333333;
}
.toggle-btn.js-is-open{
	display: block !important;
	position: fixed;
    border: 1px solid #333333;
    background-color: #fff !important;
}
.toggle-btn.js-is-open .toggle-btn__items .toggle-btn__item{
	background-color: #333333;
}

/* .fix-btn-menu.js-is-open {
	border: 1px solid #fff;
	background-color: transparent !important;
}

.fix-btn-menu.js-is-open .toggle-btn__items .toggle-btn__item {
	background: #fff;
} */

.header__logo,
.toggle__logo {
	text-align: center;
}

.header__logo-image,
.toggle__logo-image {
	width: 41.067vw;
	min-width: 200px;
}

.js-current {
	background-color: #014a9b;
}

.js-current a {
	color: #fff;
}

/* menu button */
body .js-is-open {
	overflow: hidden;
}

.toggle-btn__items {
	width: 10.667vw;
	height: 10.667vw;
	position: relative;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	background-color: transparent;
	display: block;
}

.toggle-btn__items .toggle-btn__item {
	display: block;
	position: absolute;
	height: 5px;
	width: 6vw;
	background: #fff;
	opacity: 1;
	left: 50%;
	-webkit-transform: rotate(0deg) translateX(-50%);
	-moz-transform: rotate(0deg) translateX(-50%);
	-o-transform: rotate(0deg) translateX(-50%);
	transform: rotate(0deg) translateX(-50%);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

.toggle-btn__items .toggle-btn__item:nth-child(1) {
	top: 2.65vw;
}

.toggle-btn__items .toggle-btn__item:nth-child(2) {
	top: 5vw;
}

.toggle-btn__items .toggle-btn__item:nth-child(3) {
	top: 7.285vw;
}

.toggle-btn.js-is-open .toggle-btn__item:nth-child(1) {
	top: 4.7vw;
	left: 2.3vw;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}

.toggle-btn.js-is-open .toggle-btn__item:nth-child(2) {
	opacity: 0;
	left: -60px;
}

.toggle-btn.js-is-open .toggle-btn__item:nth-child(3) {
	top: 4.7vw;
	left: 2.3vw;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

/* end menu button */
/* header-info */
.info-group {
	margin-top: 1vw;
	margin-bottom: -1vw;
	color: #fff;
	text-align: center;
}

.info-group__text {
	font-size: max(4.267vw, 16px);
	text-align: center;
	font-weight: 300;
}

.map-address {
	position: relative;
	padding: 0.8vw 2.5vw 2vw 7.333vw;
	border: 1px solid #fff;
	border-radius: 999px;
	line-height: 1;
	margin-top: 2.3vw;
	margin-bottom: 1vw;
}

.map-address::before {
	position: absolute;
	top: 50%;
	left: 2.5vw;
	transform: translateY(-50%);
	content: '';
	width: 3.067vw;
	height: 4.133vw;
	background-image: url(../images/icon/icon-map.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;

}

.map-address__text {
	font-size: max(4.267vw, 16px);
	text-align: center;
	font-weight: 300;
}

.closed-day__text {
	font-size: max(4.267vw, 16px);
	text-align: center;
	font-weight: 300;
	display: inline-flex;
	align-items: center;
	padding: 0 4vw;
	border: 1px solid #fff;
	margin: 1.4vw 0;
}

.info-group__tel-number {
	line-height: 1;
}

.button-icon-link__number-text {
	position: relative;
	font-size: max(6vw, 16px);
	padding-left: 7vw;
	font-weight: 700;
	color: #0176d5;
	display: inline-block;
}

.button-icon-link__number-text::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 5.867vw;
	height: 5.867vw;
	background-image: url(../images/icon/icon-phone--blue.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.button-icon-link--tel {
	position: relative;
	padding: 2vw 2vw 2vw !important;
}

.button-icon-link--tel::before {
	position: absolute;
	top: 50%;
	right: 2.5vw;
	transform: translateY(-50%);
	content: '';
	width: 9.733vw;
	height: 2.4vw;
	background-image: url(../images/icon/icon-link.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.button-icon-link--tel .button-icon-link__text {
	padding-right: 0;
}

.button-icon-link--tel .button-icon-link__text::before {
	content: none;
}

.tel-number__text {
	font-size: max(6.667vw, 16px);
	font-weight: 700;
}

.tel-number {
	padding-left: 8vw;
	position: relative;
}

.tel-number::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 5.867vw;
	height: 5.867vw;
	background-image: url(../images/icon/icon-phone--white.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;

}

/* toggle */

.nav__item {
	border-top: 1px solid #004cbc;
	text-align: center;
	padding-top: 4.267vw;
	padding-bottom: 4.667vw;
	padding: 4.267vw 0 4.667vw;
	background-color: #fff;
}

.nav__link {
	padding: 0 1rem 0;
	display: inline-block;
	color: #004cbc;
	font-weight: 300;
	font-size: max(5.333vw, 16px);
}

.toggle {
	display: none;
	position: fixed;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 100;
	background-color: #fff;
	overflow-y: scroll;
	background: rgb(3, 80, 163);
	background: linear-gradient(90deg, rgba(3, 80, 163, 1) 0%, rgba(3, 114, 206, 1) 40%);
	overflow-x: hidden;
}

.toggle__light-blue-container {
	padding: 0 5.333vw;
}

.submenu-wrap {
    position: relative;
}

.submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 10%;    
    background-color: #fff; /* You can customize the background color */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Optional: Add box shadow for styling */
}

.submenu li {
    border-bottom: 1px solid #222222;
    line-height: 1.4em;
    padding: 10px 20px;
    width: 250px;
}

.nav__item:hover .submenu {
    display: block;
}


/* End header */
.fv {
	overflow: hidden;
}



.banner__title {
	position: relative;
	font-size: max(4.800vw, 16px);
	text-align: center;
	padding-top: 5vw;
	padding-bottom: 2.667vw;
}


.fv__img {
	width: 100%;
}

.i-desktop {
	display: none;
}



.float-cta {
    display: block;
    position: fixed;
    bottom: 10px;
    /* bottom: 0.625rem; */
/*     bottom: 7rem; */
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    width: 100%;
    z-index: 1;
}

.cta__link {
	width: calc(50% - 1.5px);
	text-align: center;
	display: flex;
	align-items: center;
	padding: 10px 0 5px;
	justify-content: center;
	min-height: 12.708vw;
}

.cta__link:first-child {
    border-right: 1.5px solid #014a9b;
}

.cta__link:last-child {
    border-left: 1.5px solid #014a9b;
}

.cta__link--mail {
	width: calc(33.33333% + 6px);
	border-left: 3px solid #014a9b;
	border-right: 3px solid #014a9b;
}

.cta {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 5px 0;
	background-color: #fff;
	margin: 0 5px;
	border-radius: 10px;
	border: 3px solid #014a9b;
	justify-content: center;
}

.cta__img--tel {
	width: 11.200vw;
}

.cta__img--mail {
	width: 11.333vw;
}

.cta__img--map {
	width: 12.267vw;
}

@media screen and (min-width: 768px) {
	.u-mobile {
		display: none;
	}

	.u-desktop {
		display: block;
	}

	.i-desktop {
		display: inline-block;
	}
}

@media screen and (min-width: 1024px) {
	.m-desktop {
		display: block !important;
	}
}

/* dental-treatment */
.dental-treatment__inner {
	padding: 0 5.333vw;
}

.figure-content-shadow {
	text-align: center;
	margin-top: 4vw;
	box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
	-webkit-box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
	-moz-box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
}

.figure-content-shadow__img-wrapper {
	padding: 2.667vw;
}

.figure-content-shadow__img-image {
	width: 17.467vw;

}

.figure-content-shadow__title {
	font-size: max(6.667vw, 16px);
	color: #014a9b;
}

.figure-content-shadow__text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
	padding-left: 2vw;
	padding-right: 2vw;
	word-break: break-word;
    text-align: left;
}

.button-icon-link {
	position: relative;
	border-top: 0.400vw solid rgba(43, 133, 227, .9);
	border-right: 0.400vw solid rgba(43, 133, 227, .7);
	border-bottom: 0.400vw solid rgba(43, 133, 227, .9);
	border-left: 0.400vw solid rgba(43, 133, 227, .7);
	background-color: transparent;
	border-radius: 999px;
	width: 100%;
	padding: 4.5vw 2vw 4.8vw;
	padding-right: 10.667vw;
	margin: 2.5vw auto 4vw;
	margin-left: 4.7vw;
	margin-right: 4.7vw;
	max-width: calc(100% - 9.4vw);
}

.button-icon-link__text {
	position: relative;
	font-size: max(4.533vw, 16px);
	color: #0176d5;
}

.button-icon-link::before {
	position: absolute;
	top: 50%;
	right: 2.5vw;
	transform: translateY(-50%);
	content: '';
	width: 9.733vw;
	height: 2.400vw;
	background-image: url(../images/icon/icon-link.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;

}

/* information-clean-dental-clinic */
.information-clean-dental-clinic {
	margin-top: 5.333vw;
	background-image: url(../images/top/bg__base--second.jpg);
	background-size: 704px 1464px;
	background-position: left top;
}

.information-clean-dental-clinic__inner {
	padding: 5.333vw;
}

.information-clean-dental-clinic__upper {
	margin-bottom: 3vw;
}

.work-schedule-table.u-mobile {
	margin-top: 6vw;
}

.working-time__title {
	font-size: max(8vw, 16px);
	color: #014a9b;
	font-weight: 500;
	text-align: center;
	line-height: 1.4;
}

.working-time__subtitle {
	font-size: max(7.467vw, 16px);
	color: #014a9b;
	font-family: 'EB Garamond', serif;
}


.subtitle {
	display: block;
	text-align: center;
	line-height: 1;
}

.implant-img {
	max-width: 100%;
	margin: 0 auto;
}

.work-schedule-table {
	width: 100%;
	text-align: center;
	font-size: max(4.267vw, 16px);
	margin-top: 6.3vw;
}

.work-schedule-table__subheader {
	background-color: #f0f7fc;
	border: 1px solid #b0d2ee;
	font-weight: 300;
	line-height: 1.56;
}

.work-schedule-table__header {
	width: 43%;
	background-color: #fff;
	border: 1px solid #b0d2ee;
	line-height: 1.56;
	font-weight: 300;
}

.work-schedule-table__tick {
	width: 57%;
	background-color: #fff;
	border: 1px solid #b0d2ee;
	line-height: 1.56;
	font-weight: 300;
}

.work-schedule-table__header--center {
	background-color: #014a9b;
	border: 1px solid #b0d2ee;
	color: #fff;
	line-height: 1.8;
	font-weight: 400;
}

.working-time-of-the-day__period .period-wrapper {
	margin-bottom: 7vw;
}

.text-note__text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
}

.text-note__item {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
}

.period__title-text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
}

.period__time {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
}

.period__text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;   
}

.note__text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;    
}

.emphasize__text {
	font-size: max(4.533vw, 16px);
	color: #cc0000;
	font-weight: 700;
	margin-bottom: 3vw;
}

.text-note__subtext {
	font-size: max(4.533vw, 16px);
	font-weight: 400;
}

.clean-dental-clinic-address__subtitle {
	font-size: max(4.533vw, 16px);
	font-weight: 500;
	padding: 1.2vw 4vw;

}

.clean-dental-clinic-address__text-note {
	padding-left: 2.5vw;
}

.information-map__title {
	font-size: max(5.867vw, 16px);
	font-weight: 500;
	text-align: center;
}

.information-map__text-address {
	font-size: max(4.533vw, 16px);
	font-weight: 400;
	text-align: center;
}

.information-map__text-address {
	font-size: max(4.533vw, 16px);
	font-weight: 400;
}

.phone-black {
	text-align: center;
}

.phone-black__text::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 8vw;
	height: 8vw;
	background-image: url(../images/icon/icon-phone.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.phone-black__text {
	font-size: max(8vw, 16px);
	font-weight: 500;
	position: relative;
	padding-left: 10.5vw;
}

.medical-examination-date {
	border: 1px solid #b0d2ee;
	margin-top: 4vw;
	padding: 2.5vw 3.7vw;
}

.button-icon-link--full {
	position: relative;
	max-width: 100%;
	margin: 2.5vw 0 4vw;
}

.button-icon-link--full .button-icon-link__text::before {
	content: none;
}

.button-icon-link--full::before {
	position: absolute;
	top: 50%;
	right: 2.5vw;
	transform: translateY(-50%);
	content: '';
	width: 9.733vw;
	height: 2.4vw;
	background-image: url(../images/icon/icon-link.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.map-clean-dental-clinic {
	margin-left: -5.333vw;
	margin-right: -5.333vw;
}

.map-clean-dental-clinic__iframe {
	width: 100%;
	height: 76.667vw;	

}

.map-clean-dental-clinic iframe {
	max-width: 670px;
}

.clean-dental-clinic-address__subtitle-wrapper {
	border-bottom: 1px solid #b0d2ee;
}

.clean-dental-clinic-address {
	border: 1px solid #b0d2ee;
}

.text-note__list {
	padding-left: 4.3vw;
}

.text-note__item {
	list-style: disc;
}

.text-note__item::marker {
	font-size: 2.5vw;
}

.text-note__list--auto-custome {
	padding-left: 1vw;
}

.text-note__list--auto-custome .text-note__item {
	list-style: none;
}

.text-note__list--auto-custome .text-note__item::before {
	content: attr(data-counter);
}

.working-time-of-the-day {
	margin-top: 2.5vw;
}

.section-title {
	margin-top: 8vw;
}

.section-title__text--en {
	font-size: max(16vw, 16px);
	text-align: center;
	font-family: 'Urbanist', sans-serif;
	line-height: 1;
}

.clean-dental-clinic-address .clean-dental-clinic-address__text-note:last-child {
	margin-bottom: 2vw;
}

.clean-dental-clinic-address__text-note {
	margin-top: 2.5vw;
	margin-bottom: 8vw;
}

.section-title__text--ja {
	font-size: 5.333vw;
	display: block;
	text-align: center;
	line-height: 1.5;
}

.card {
	margin-top: 5.3vw;
}

/* greetings-form-the-director */
.greetings-form-the-director__inner {
	padding: 5.333vw 5.333vw 4vw;
}

.greetings-form-the-director {
	background-image: url(../images/top/bg__base--second.jpg);
	background-size: 704px 1464px;
	background-position: left top;

}

.greetings-form-the-director__bottom {
	margin-top: 3vw;
}

.greetings-form-the-director__title {
	word-break: break-word;
	font-family: 'EB Garamond', serif;
	font-size: max(13.333vw, 16px);
	text-align: center;
	color: #014a9b;
	line-height: 1.2;

}

.greetings-form-the-director__subtitle {
	font-size: max(5.333vw, 16px);
	color: #014a9b;
	margin-top: 3vw;
}

.greetings-form-the-director__director {
	margin-top: 5vw;
	margin-bottom: 3vw;
}

.director__text {
	display: block;
	font-weight: 500;
	font-size: max(4.533vw, 16px);
}

.director__text-name {
	font-weight: 500;
	font-size: max(6.667vw, 16px);
}

.director__text-name-katakana {
	font-weight: 500;
	font-size: max(4.533vw, 16px);
}

.greetings-form-the-director__text {
	font-weight: 400;    
	font-size: max(4.533vw, 16px);
}

/* concept */
.concept__inner {
	padding: 0 5.333vw;
}

.sentence-content__title {
	position: relative;
	font-size: max(5.600vw, 16px);
	color: #014a9b;
	padding-left: 3.333vw;
	margin-top: 3vw;
	margin-bottom: 1vw;
}

.sentence-content__title::before {
	position: absolute;
	content: '';
	width: 0.533vw;
	height: calc(100% - 3vw);
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background-color: #0176d5;
	border-radius: 999px;
}

.sentence-content__text {
	font-weight: 400;    
	font-size: max(4.533vw, 16px);
}

.img-sentence__wrapper {
	margin-left: -5.333vw;
	margin-right: -5.333vw;
	padding: 5.333vw 5.333vw 4vw;
}

.img-sentence__wrapper:nth-child(odd) {
	background-color: #ededf0;
}

.concept__button-icon-link {
	margin-top: 4vw;
}

.concept__img-sentence {
	padding-top: 5vw;
}

/* news */
.news {
	margin-top: -2vw;
}

.news__inner {
	padding: 0 5.333vw 5.333vw;
}

.item-new__date {
	font-size: max(4.533vw, 16px);
	color: #0176d5;
	font-weight: 400; 
}

.news__item-new {
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	padding: 4vw 0;
	margin-top: -1px;
}

.item-new__tag {
	display: inline-block;
	margin-left: 2vw;
	font-size: max(4.533vw, 16px);
	color: #fff;
	background-color: #1879db;
	border-radius: 5px;
	padding: 0.7vw 2vw 0.8vw;
	line-height: 1;
	font-weight: 300;
}

.item-new__link {
	display: block;
	font-size: max(4.533vw, 16px);
	word-break: break-word;
	margin-top: 1.5vw;
	font-weight: 400;    
}

.news__list {
	margin-top: 5vw;
}

/* dental-examination-service */
.dental-examination-service {
	background-image: url(../images/top/bg__base--second.jpg);
	background-size: 704px 1464px;
	background-position: left top;
}

.dental-examination-service__inner {
	padding: 5.333vw;
}

.dental-examination-service__service-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 2.667vw 4vw;
}

.dental-examination-service__service-buttons .service-button {
	width: calc(50% - 2vw);
	text-align: center;
	padding: 2vw;
	border-radius: 1.333vw;
	box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
	-webkit-box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
	-moz-box-shadow: 0px 0px 8px 0px rgba(222, 222, 222, 1);
	background: rgb(3, 80, 163);
	background: linear-gradient(0deg, rgba(9, 92, 176, 1) 0%, rgba(55, 150, 233, 1) 60%);
	border: none;
}

.service-button__wrapper {
	background-color: #fff;
	height: 100%;
	padding: 2.667vw 0 0.3vw;
	margin-top: auto;
	border-radius: 1.333vw;
	display: block;
}

.service-button__icon {
	width: 100%;
	display: block;
}

.service-button__title {
	display: inline-block;
	font-size: max(4.267vw, 16px);
	font-weight: 500;
	color: #014a9b;
	background-color: #e2f1fd;
	border-radius: 999px;
	padding: 0 4vw 0.5vw;
	line-height: 1.5;
	margin-top: 2vw;
	max-height: 50px;
}

.service-button__subtitle {
	font-size: max(4.267vw, 16px);
	font-weight: 400;    
	width: 100%;
	display: block;
}

.figure__icon-root-canal-treatment {
	width: 8.267vw;
}

.figure__icon-cavity-treatment {
	width: 13.733vw;
}

.figure__icon-pediatric-treatment {
	width: 15.333vw;
}

.figure__icon-preventive-treatment {
	width: 13.733vw;
}

.figure__icon-surgical-treatment {
	width: 17.733vw;
}

.figure__icon-periodontal-disease-treatment {
	width: 20.933vw;
}

.figure__icon-denture-treatment {
	width: 12vw;
}

.figure__icon-aesthetic-treatment {
	width: 12.133vw;
}

.figure__icon-implant {
	width: 6.533vw;
}

.figure__icon-Home-visit-medical-treatment {
	width: 12.800vw;
}

/* column */

.column {
	background-image: url(../images/top/bg__column--sp.jpg);
	background-size: 100vw 138.133vw;
	background-position: left 28vw;
	background-repeat: no-repeat;
}

.column__inner {
	padding: 0 5.333vw 8vw;

}

.column__text {
	font-size: max(4.533vw, 16px);
	font-weight: 400;   
	text-align: center;
}

.column__content {
	margin-top: 11.5vw;
}


/* instagram */
.instagram__inner {
	padding: 12vw 5.333vw 13.333vw;
}

.instagram__img-wrapper {
	text-align: center;
}

.instagram__img {
	width: 45.467vw;
}

.instagram__plugin {
	margin-top: 6.667vw;
}

/* blog */

.blog__inner {
	padding-left: max(5.333vw, 15px);
	padding-right: max(5.333vw, 15px);
	width: 100%;
}

.card {
	width: 100%;
}

.cards {
	display: flex;
	flex-wrap: wrap;
}

.card__link {
	display: block;
}

.card__info-text {
	font-size: max(4.533vw, 16px);
	padding-top: max(1.867vw, 8px);
	padding-bottom: max(1.867vw, 8px);
	padding-left: max(2.667vw, 10px);
	padding-right: max(6.667vw, 30px);
	column-gap: max(4vw, 15px);
	background-color: #F2F2F3;
	display: flex;
	line-height: 1.6;
	flex-wrap: wrap;
	font-weight: 500;
}


.card__title {
	font-size: max(4.267vw, 15px);
	font-weight: 400;
}

.card__img {
	width: 100%;
	height: auto;
}

.card__info-wrapper {
	position: relative;
	margin-top: 4vw;
	margin-bottom: 4vw;
}

.card__info-icon {
	width: max(3.467vw, 18px);
	right: max(2.667vw, 10px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.blog {
	padding-bottom: 11.200vw;
}




@media screen and (min-width:768px) {

	.cards {
		display: flex;
		flex-wrap: wrap;
		column-gap: 2.75%;
	}

	.blog__inner {
		max-width: 1440px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.blog__inner {
		padding: 0 15px;
	}

	.card {
		width: 100%;
	}

	.card__info-text {
		font-size: 20px;
		column-gap: 20px;
		row-gap: 5px;
		padding-left: 15px;
		padding-right: 40px;
		padding-top: 9px;
		padding-bottom: 9px;
		margin-top: 20px;
	}

	.card__info-wrapper {
		position: relative;
		margin-top: 20px;
		margin-bottom: 0;
	}

	.card__date {
		width: auto;
	}

	.card__category {
		width: auto;
	}

	.card__title {
		font-size: 17px;
		line-height: 1.875;
		padding-top: 20px;
	}

	.card__info-icon {
		width: 18px;
		right: 15px;
	}

	.card__img {
		width: 100%;
		height: 250px;
		object-fit: cover;
		object-position: center;
		transition: all 0.3s ease-in-out;
	}

	.card__link:hover .card__img {
		transform: scale(1.1);
	}

	.card__img-wrapper {
		overflow: hidden;
	}

	.blog {
		padding-bottom: 93px;
	}

}


@media screen and (min-width: 768px) and (max-width: 1024px) {
	.u-table {
		display: block;
	}
}



/* Hide reCAPTCHA mark */
.grecaptcha-badge {
	visibility: hidden;
}

/* footer */
.footer {
	background: rgb(3, 80, 163);
	background: linear-gradient(90deg, rgba(3, 80, 163, 1) 0%, rgba(3, 114, 206, 1) 40%);
}

.footer__inner {
	padding-left: 5.333vw;
	padding-right: 5.333vw;
}

.light-blue-container__upper {
	padding-top: 9.333vw;
}

.working-time__logo {
	text-align: center;
}

.working-time__logo-image {
	width: 41.067vw;
	min-width: 200px;
}

.medical-examination-date--light {
	border: none;
	color: #fff;
	padding: 0 1.3vw;
}

.light-blue-container__bottom {
	margin-top: 2.5vw;
	margin-bottom: 2.5vw;
}

.light-blue-container__bottom .map-clean-dental-clinic__iframe {
	height: 390px;
}

.address__text {
	text-align: center;
	font-size: max(4.267vw, 16px);
	font-weight: 400;
	color: #fff;
    font-size: 17px;
}

.footer__copy,
.toggle__copy {
	background-color: #003f7e;
	margin-left: -5.333vw;
	margin-right: -5.333vw;
	padding: 5.333vw 0 4vw;
}

.sns__icon-link {
	text-align: center;
}

.footer__sns {
	margin-bottom: 2.5vw;
}

.toggle__sns {
	margin-bottom: 2.5vw;
}

.footer__copy-text,
.toggle__copy-text {
	font-size: max(4.267vw, 16px);
	font-weight: 200;
	color: #fff;
	text-align: center;
}

.icon-link__img--instagram {
	width: 9.333vw;
}

table.tbl-experience {
    width: 100%;
    border-collapse: collapse;        
}

table.tbl-experience tr td:first-child {
    width: 16%;
}

.img-logos {
    display: block;
    margin: 20px auto;
}


/* /// */
@media screen and (max-width: 480px) {
	.toggle-btn__items .toggle-btn__item {
		height: 3px;
	}
}

@media screen and (max-width: 420px) {
	.button-icon-link {
		padding-right: 6.667vw;
        margin-top: 20px;        
	}
    
    .button-icon-link2 {
        padding-top: 0;
    }

	.button-icon-link::before {
		width: 4.733vw;
	}

}



/* table */
@media screen and (min-width: 768px) {

	.header__logo-image,
	.toggle__logo-image {
		width: 233px;
		margin-top: 0;
	}

	.tel-number::before {
		width: 24px;
		height: 24px;
	}

	.map-address::before {
		width: 12px;
		height: 18px;
	}

	.button-icon-link__number-text::before {
		width: 24px;
		height: 24px;
	}

	.button-icon-link::before {
		width: 40px;
		height: 10px;
	}

	.figure-content-shadow__img-image {
		width: 65px;
	}

	.phone-black__text::before {
		width: 24px;
		height: 24px;
	}

	.figure__icon-root-canal-treatment {
		width: 52px;
	}

	.figure__icon-cavity-treatment {
		width: 82px;
	}

	.figure__icon-pediatric-treatment {
		width: 86px;
	}

	.figure__icon-preventive-treatment {
		width: 88px;
	}

	.figure__icon-surgical-treatment {
		width: 98px;
	}

	.figure__icon-periodontal-disease-treatment {
		width: 120px;
	}

	.figure__icon-denture-treatment {
		width: 70px;
	}

	.figure__icon-aesthetic-treatment {
		width: 70px;
	}

	.figure__icon-implant {
		width: 42px;
	}

	.figure__icon-Home-visit-medical-treatment {
		width: 70px;
	}

	.instagram__img {
		width: 200px;
	}

	.working-time__logo-image {
		width: 233px;
	}

	.icon-link__img--instagram {
		width: 36px;
	}

	.service-button__icon {
		min-height: 60px;
		margin-bottom: 15px;
		display: flex;
		align-items: center;
		justify-content: center;
        margin-top: 40px;
	}
    
    .service-button__icon img {
        height: 60px;
        width: auto;
        object-fit: contain;
    }

	.i-desktop {
		display: inline-block;
	}

	/* font-size */
	.info-group__text {
		font-size: 17px;
	}

	.tel-number__text {
		font-size: 30px;
	}

	.info-group__text {
		font-size: 17px;
	}

	.map-address__text {
		font-size: 16px;
	}

	.closed-day__text {
		font-size: 17px;
		padding: 0 18px;
		margin: 10px 0;
		line-height: 1.4;
	}

	.nav__link {
		font-size: 17px;
		padding: 0 24px;
		color: #333333;
		font-weight: 400;
	}

	.banner__title {
		font-size: 21px;
		padding-top: 40px;
		padding-bottom: 25px;
	}

	.button-icon-link__text {
		font-size: 16px;
	}

	.button-icon-link__number-text {
		font-size: 20px;
	}

	.figure-content-shadow__title {
		font-size: 25px;
	}

	.figure-content-shadow__text {
		font-size: 17px;
	}

	.working-time__title {
		font-size: 30px;
	}

	.working-time__subtitle {
		font-size: 28px;
	}

	.work-schedule-table {
		font-size: 16px;
	}

	.text-note__text {
		font-size: 17px;
	}

	.text-note__item {
		font-size: 17px;
	}

	.period__title-text {
		font-size: 17px;
	}

	.period__time {
		font-size: 17px;
	}

	.period__text {
		font-size: 17px;
	}

	.note__text {
		font-size: 17px;
	}

	.emphasize__text {
		font-size: 17px;
	}

	.phone-black__text {
		font-size: 30px;
	}

	.information-map__title {
		font-size: 24px;
	}

	.information-map__text-address {
		font-size: 17px;
	}

	.clean-dental-clinic-address__subtitle {
		font-size: 17px;
		padding: 11px 35px;
	}

	.text-note__subtext {
		font-size: 17px;
	}

	.section-title__text--en {
		font-size: 70px;
	}

	.section-title__text--ja {
		font-size: 20px;
	}

	.greetings-form-the-director__title {
		font-size: 50px;
	}

	.greetings-form-the-director__subtitle {
		font-size: 20px;
	}

	.director__text {
		font-size: 17px;
	}

	.director__text-name {
		font-size: 25px;
	}

	.director__text-name-katakana {
		font-size: 17px;
	}

	.greetings-form-the-director__text {
		font-size: 17px;
	}

	.sentence-content__title {
		font-size: 23px;
	}

	.sentence-content__text {
		font-size: 17px;
	}

	.item-new__date {
		font-size: 17px;
	}

	.item-new__tag {
		font-size: 15px;
		display: inline-block;
		margin-left: 20px;
		padding: 5px 13px;
	}

	.item-new__link {
		font-size: 17px;
	}

	.service-button__title {
		font-size: 14px;
		margin-top: auto;
	}

	.service-button__subtitle {
		font-size: 12px;
		margin-bottom: 5px;
		margin-top: 8px;
	}

	.column__text {
		font-size: 17px;
	}

	.address__text {
		font-size: 17px;
	}

	.footer__copy-text,
	.toggle__copy-text {
		font-size: 16px;
	}

	/* Distance */
	.info-group {
		margin-bottom: 0;
	}

	.map-clean-dental-clinic {
		margin-left: 0px;
		margin-right: 0px;
	}

	.img-sentence__wrapper {
		margin-left: 0;
		margin-right: 0;
	}

	/* __inner */
	.instagram__inner {
		padding: 100px 15px 100px;
	}

	.column__inner {
		padding: 0 15px 25px;

	}

	.dental-examination-service__inner {
		padding: 100px 15px;
	}

	.news__inner {
		padding: 0 15px 100px;
	}

	.concept__inner {
		padding: 0 15px;
	}

	.greetings-form-the-director__inner {
		padding: 100px 15px 95px;
	}

	.information-clean-dental-clinic__inner {
		padding: 100px 15px;
	}

	.dental-treatment__inner {
		padding: 0 15px;
	}

	/* footer */
	.footer__inner {
		padding-left: 15px;
		padding-right: 15px;
	}

	.footer__copy {
		margin-left: -15px;
		margin-right: -15px;
		padding: 30px 0 35px;
	}

	.footer__sns {
		margin-bottom: 17px;
	}

	.toggle__sns {
		margin-bottom: 17px;
	}

	.footer__nav {
		margin-left: -15px;
		margin-right: -15px;
		border-bottom: 1px solid #fff;
	}

	.footer__nav .nav__item {
		background-color: transparent;
		position: relative;
	}

	.footer__nav .nav__item::before {
		content: '';
		position: absolute;
		top: 45%;
		right: 0;
		transform: translateY(-50%);
		height: 17px;
		width: 1px;
		background-color: #c0d5ea;
	}

	.footer__nav .nav__item:last-child:before {
		content: none;
	}

	.footer__nav .nav__item .nav__link {
		color: #fff;
		padding: 0 24px 0;
	}

	.nav__item {
		padding: 20px 0 27px;
		border-top: 0px;
	}

	.light-blue-container__wrapper {
		display: flex;
		flex-wrap: wrap;
	}

	.light-blue-container__upper {
		padding-top: 0;
		width: 50%;
	}

	.light-blue-container__bottom {
		width: 50%;
		padding-left: 50px;
	}

	.light-blue-container__bottom .map-clean-dental-clinic__iframe {
		height: 270px;
	}

	.working-time__logo {
		text-align: left;
	}

	.info-group {
		text-align: left;
	}

	.info-group__text {
		text-align: left;
	}

	.address__text {
		text-align: left;
	}

	.medical-examination-date--light {
		padding: 0;
	}

	.text-note__item::marker {
		font-size: 10px;
	}

	.text-note__list {
		padding-left: 16px;
	}

	.toggle__light-blue-container {
		padding: 0 15px;
	}

	.light-blue-container__wrapper {
		margin-top: 75px;
		margin-bottom: 60px;
	}

	.light-blue-container__bottom {
		margin-top: 0;
		margin-bottom: 0;
	}

	.light-blue-container__address {
		margin-top: 15px;
	}

	.light-blue-container__address {
		margin-top: 15px;
	}

	.tel-number {
		padding-left: 33px;
	}

	.working-time__info-group {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
	}

	.work-schedule-table {
		margin: 25px 0;
	}

	.medical-examination-date {
		margin-top: 0;
	}

	.work-schedule-table__subheader {
		background-color: #fff;
	}

	.work-schedule-table__row .work-schedule-table__header {
		min-width: 37px;
		width: 37px;

	}

	.work-schedule-table__row .work-schedule-table__header:first-child {
		min-width: 145px;
		width: 30%;
	}

	.work-schedule-table__row th {
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.work-schedule-table__row td {
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.work-schedule-table__tick {
		width: auto;
	}

	/* instagram */
	.instagram__plugin {
		margin-top: 50px;
	}

	/* column */
	.column {
		background-image: url(../images/top/bg__column--pc.jpg);
		background-size: 2175px 512px;
		background-position: top center;
	}

	.section-title {
		margin-top: 0;
		padding-top: 90px;
	}

	.column__content {
		margin-top: 45px;
	}

	/* service */

	.dental-examination-service__service-buttons {
		gap: 20px;
	}

	.dental-examination-service__service-buttons .service-button {
		width: calc(50% - 10px);
	}

	/* news */
	.news {
		margin-top: 0;
	}



	.news__item-new {
		padding: 25.5px 0;
	}

	.item-new__link {
		margin-top: 0;
	}

	.news__list {
		margin-top: 45px;
	}

	/* concept */
	.button-icon-link--full {
		margin: 0;
		width: auto;
	}

	.concept__button-icon-link {
		text-align: center;
	}

	.button-icon-link {
/*		padding: 16px 65px 17px 33px;*/
        padding: 10px 65px 10px 33px;
	}

	.button-icon-link::before {
		right: 15px;
	}

	.button-icon-link--full::before {
		right: 15px;
	}

	.concept__button-icon-link {
		margin-top: 50px;
	}

	.sentence-content__title {
		margin-bottom: 20px;
		margin-top: 20px;
	}

	.sentence-content__title {
		padding-left: 25px;
	}

	.sentence-content__title::before {
		height: 50px;
		width: 3px;
	}

	.img-sentence__wrapper {
		padding: 0;
	}

	.img-sentence__sentence-content {
		padding: 40px 0px 40px 50px;
	}

	.img-sentence__img {
		width: 100%;
	}

	.img-sentence__wrapper {
		margin-top: 0;
	}

	.concept__img-sentence {
		padding-top: 45px;
	}

	.greetings-form-the-director__director {
		margin-top: 23px;
		margin-bottom: 15px;
	}

	.greetings-form-the-director__bottom {
		margin-top: 20px;
	}

	.figure-avatar {
		width: 100%;
	}


	/* information-clean-dental-clinic */
	.clean-dental-clinic-address__text-note {
		margin-top: 15px;
		margin-bottom: 28px;
		padding-left: 25px;
	}

	.phone-black__text {
		padding-left: 35px;
	}

	.working-time__emphasize {
		margin-bottom: 15px;
	}

	.emphasize__text {
		margin-bottom: 15px;
	}

	.working-time-of-the-day__period .period-wrapper {
		margin-bottom: 30px;
	}

	.working-time-of-the-day {
		margin-top: 15px;
	}

	.medical-examination-date {
		padding: 10px 15px 15px 20px;
	}

	.medical-examination-date--light {
		padding-top: 0;
	}

	.period-wrapper {
		display: flex;
		flex-wrap: wrap;
	}

	.period__upper {
		width: 70px;
	}

	.period__bottom {
		width: calc(100% - 70px);
	}

	.working-time-of-the-day .period__bottom {
		padding-left: 50px;
	}

	.working-time__work-schedule-table {
		text-align: center;
	}

	.information-clean-dental-clinic .work-schedule-table {
		margin: 20px auto;
	}

	.work-schedule-table__img {
		margin: 0 auto;
	}

	.figure-clean-dental-clinic__img {
		width: 100%;
	}

	.button-icon-link {
		width: auto;
	}

	.figure-content-shadow__img-wrapper {
		padding: 10px;
	}

	.figure-content-shadow__img {
		width: 100%;
	}

	.dental-treatment__wrapper {
		display: flex;
		flex-wrap: wrap;
		gap: 30px;
	}

	.figure-content-shadow {
		text-align: center;
		margin-top: 0;
		width: 100%;
	}

	.information-clean-dental-clinic {
		margin-top: 100px;
	}

	.button-icon-link__text {
		display: block;
        position: relative;
/*        top: 10px;*/
        top: 0;
        font-weight: 500;
        font-size: 15px;
	}

	.banner__button-icon-link {
		text-align: center;
	}

	.button-icon-link--tel {
		padding: 16px 100px 17px 75px !important;

	}

	.button-icon-link__number-text {
		padding-left: 30px;
        padding-top: 10px;
	}

	/* menu */
	.nav__list {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
        margin-bottom: 75px;
        margin-left: 5%;
	}
	.js-current a {
		position: relative;
		color: #333333;
	}

	.js-current a::before {
		content: '';
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: -10px;
		width: calc(100% - 50px);
		height: 3px;
		background-color: #0176d5;
	}

	/* header */
	.map-address {
		margin: 0px;
		padding: 8px 30px 10px 42px;
	}

	.header__info-group {
		text-align: center;
	}

	.info-group__text {
		text-align: center;
	}

	.map-clean-dental-clinic__iframe {
		height: 390px;
	}

	.button-icon-link {
		border-top: 3px solid rgba(43, 133, 227, .9);
		border-right: 3px solid rgba(43, 133, 227, .7);
		border-bottom: 3px solid rgba(43, 133, 227, .9);
		border-left: 3px solid rgba(43, 133, 227, .7);
	}

	.emphasize__button-icon-link {
		text-align: center;
	}

	.work-schedule-table__header {
		background-color: #e2f1fd;
	}

	.info-group__tel-number {
		margin-top: 10px;
		margin-bottom: 10px;
	}

	.working-time__info-group {
		position: relative;
		top: 10px;
	}

	.working-time__wrapper {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.working-time__logo {
		width: 233px;
	}

	.toggle__info-group {
		text-align: center;
	}

	.toggle-btn__items {
		width: 80px;
		height: 80px;
	}

	.header__toggle-btn {
		width: 80px;
		height: 80px;
	}

	.toggle-btn__items .toggle-btn__item {
		width: 50px;
	}

	.toggle-btn__items .toggle-btn__item:nth-child(1) {
		top: 20px;
	}

	.toggle-btn__items .toggle-btn__item:nth-child(2) {
		top: 37.5px;
	}

	.toggle-btn__items .toggle-btn__item:nth-child(3) {
		top: 55px;
	}

	.toggle-btn.js-is-open .toggle-btn__item:nth-child(3) {
		top: 35px;
		left: 15px;
	}

	.toggle-btn.js-is-open .toggle-btn__item:nth-child(1) {
		top: 35px;
		left: 15px;
	}

	.toggle__nav {
		background-color: #fff;
	}
	.toggle__nav .nav__list {
		display: block;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.toggle__nav .nav__item {
		border-top: 1px solid #004cbc;
	}
}

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

    .map-clean-dental-clinic__iframe {
        height: 545px;
    }
}

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

    .map-clean-dental-clinic__iframe {
        height: 568px;
    }
}

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

    .map-clean-dental-clinic__iframe {
        height: 592px;
    }
}

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

    .map-clean-dental-clinic__iframe {
        height: 717px;
    }
}

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

    .map-clean-dental-clinic__iframe {
        height: 767px;
    }
}

/* desktop */
@media screen and (min-width: 1024px) {
	
	.nav__link {
		padding: 0 30px 0;
	}

	/* __inner */
	.instagram__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.column__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.dental-examination-service__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.news__inner {
		max-width: 1030px;
		margin: 0 auto;
	}

	.concept__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.greetings-form-the-director__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.information-clean-dental-clinic__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.dental-treatment__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.footer__inner {
		max-width: 1470px;
		margin: 0 auto;
	}

	.footer {
		overflow: hidden;
	}

	.footer__copy,
	.footer__nav {
		margin-left: -5000px;
		margin-right: -5000px;
	}

	.u-table {
		display: none !important;
	}

	.dental-examination-service__service-buttons .service-button {
		padding: 7px;
		border-radius: 10px;
	}

	.service-button__wrapper {
		border-radius: 10px;
		padding: 20px 5px 5px;
	}

	.dental-examination-service__service-buttons .service-button {
		width: calc((100% - 80px) / 5);
        height: 250px;
	}
    
    .dental-examination-service__service-buttons .service-button.service-button2 {
		width: calc((100% - 80px) / 4);
        height: 250px;
	}

	.service-button__title {
		padding: 4px 10px 6px;
		min-width: 140px;
		text-align: center;
        font-size: 14px;
	}

	.item-new__link {
		display: inline-block;
		margin-left: 20px;
	}

	.news__item-new {
		padding-left: 35px;
	}

	.concept {
		overflow: hidden;
		padding-bottom: 5px;
	}

	.concept__img-sentence {
		margin: 0 -5000px;

	}

	.img-sentence__wrapper {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}

	.img-sentence__img-wrapper {
		width: calc(50vw - 15px);
		max-width: 720px;
	}

	.img-sentence__sentence-content {
		width: calc(50vw - 15px);
		max-width: 720px;

	}

	.img-sentence__wrapper:nth-child(even) .img-sentence__img-wrapper {
		order: 2;
	}

	.img-sentence__wrapper:nth-child(even) .img-sentence__sentence-content {
		order: 1;
		padding: 0 50px 0 0;
	}

	.img-sentence__wrapper:nth-child(odd) .img-sentence__sentence-content {
		order: 1;
		padding: 0 0 0 50px;

	}

	.sentence-content__text {
		padding-left: 25px;
	}

	.greetings-form-the-director__wrapper {
		display: flex;
	}

	.greetings-form-the-director__upper {
		width: 50%;
	}

	.figure-avatar {
		max-width: 670px;
	}

	.greetings-form-the-director__bottom {
		width: 50%;
		padding-left: 55px;
		margin-top: -12px;
	}

	.greetings-form-the-director__title {
		text-align: left;
	}

	.greetings-form-the-director__subtitle {
		text-align: left;
		margin-top: 10px;
	}

	.director__text {
		display: inline-block;
	}

	.director__text-name {
		margin-left: 15px;
	}

	/* blog */
	.cards {
		gap: 30px;
	}

	.card {
		margin-top: 45px;
		width: calc((100% - 60px) / 3);
	}

	.emphasize__button-icon-link {
		text-align: left;
	}

	.information-clean-dental-clinic__wrapper {
		display: flex;
		flex-wrap: wrap;
	}

	.information-clean-dental-clinic__upper {
		width: 50%;
	}

	.figure-clean-dental-clinic__img {
		max-width: 670px;
	}

	.map-clean-dental-clinic__iframe {
		max-width: 670px;
	}

	.information-clean-dental-clinic__bottom {
		width: 50%;
		padding-left: 50px;
		margin-top: -10px;
	}

	.clean-dental-clinic-address__subtitle-wrapper {
		/* border-top: 1px solid #b0d2ee; */
	}

	.text-note__list--auto-custome {
		padding-left: 0px;
	}

	.text-note__list {
		padding-left: 35px;
	}

	.information-map__title {
		text-align: left;
	}

	.information-map__text-address {
		text-align: left;
	}

	.phone-black {
		text-align: left;
	}

	.information-clean-dental-clinic .work-schedule-table {
		max-width: 100%;
	}

	.working-time__title {
		text-align: left;
	}

	.working-time__subtitle {
		text-align: left;
	}

	.dental-treatment__wrapper {
		gap: 25px;
	}

	.figure-content-shadow {
		width: calc((100% - 75px) / 4);

	}

	.button-icon-link {
		margin: 0;
		max-width: 100%;
        width: 62%;
	}

    .button-icon-link--dental-treatment {
        width: 92%;
    }

    .button-icon-link3 {
		margin: 0;
		max-width: 100%;
        width: 40%;
	}
    
    .button-icon-link.button-icon-link2 {
        position: relative;
        top: -5px;
    }
 
	.figure-content-shadow__button-icon-link {
		margin-bottom: 20px;
		margin-top: auto;
        margin-top: 30px;
	}

	.figure-content-shadow__text {
		padding: 5px 15px 15px;
	}

	.banner {
		overflow-x: hidden;
		position: relative;
	}

	.information-clean-dental-clinic__upper {
		margin-bottom: 0;
	}

	.emphasize__information-map {
		margin-top: 10px;
	}

	.information-clean-dental-clinic__map-clean-dental-clinic {
		margin-top: -245px;
	}

	.work-schedule-table__row .work-schedule-table__header {
		width: 72px;
	}

	.work-schedule-table__row .work-schedule-table__header:first-child {
		width: 36%;
	}

	.clean-dental-clinic-address .clean-dental-clinic-address__text-note:last-child {
		margin-bottom: 15px;
	}

	.figure-content-shadow__button-icon-link {
		padding-left: 5px;
		padding-right: 5px;
	}

	.figure-content-shadow__title {
		display: inline-flex;
		text-align: center;
		justify-content: center;
		width: 100%;
	}

	.dental-treatment {
		padding-top: 70px;
	}

	.banner__copy {
		position: absolute;
		width: 100%;
		max-width: 1470px;
		padding: 0 15px;
		left: 50%;
		top: 42%;
		transform: translate(-50%, -50%);
		z-index: 1;
	}

	.banner__title-wrapper {
		position: absolute;
		width: 630px;
		top: 0;
		right: 0;
		max-width: 100%;
		margin-left: auto;
	}

	.banner__title {
		padding-top: 0;
		padding-bottom: 45px;
		text-align: left;
	}

	.nav--light-gradient-blue {
/*		background-color: rgba(255, 255, 255, 0.7);*/
        background-color: rgba(255, 255, 255, 0.5);
		position: relative;
		margin-bottom: -75px;
		z-index: 2;
	}

	.nav--light-gradient-blue .nav__item {
		background-color: transparent;
	}

	.header__inner {
		background: rgb(3, 80, 163);
		background: linear-gradient(90deg, rgba(3, 80, 163, 1) 0%, rgba(3, 114, 206, 1) 40%);
        height: 112px;
	}

	.header__light {
		display: flex;
		flex-wrap: wrap;
		max-width: 1470px;
		padding: 30px 15px 10px;
		margin: 0 auto;
		background: transparent !important;
		justify-content: space-between;
	}

	.header__logo {
		width: 233px;
	}

	.header__info-group {
		width: calc(100% - 233px);
		max-width: 990px;
		position: relative;
		padding-right: 200px;
		text-align: right;
		margin-top: -8px;
	}

	.info-group__text {
		display: inline-block;
	}

	.info-group__tel-number {
		position: relative;
		display: inline-block;
		margin-left: 10px;
		margin-top: -5px;
	}

	.info-group__map-address {
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		margin: 0;
		display: inline-block;
	}

	.info-group__closed-day {
		display: inline-block;
		margin-right: 7px;
	}

	.map-address::before {
		left: 15px;
	}

}

@media screen and (min-width: 1025px) and (max-width: 1200px) {
    .information-clean-dental-clinic__map-clean-dental-clinic {
		margin-top: -370px;
	}
}

@media screen and (max-width: 1024px) {
    .information-clean-dental-clinic__map-clean-dental-clinic {
		margin-top: -580px;
	}
}


@media screen and (min-width: 1024px) and (max-width: 1400px) {
	.figure-content-shadow__button-icon-link .button-icon-link {
		padding: 16px 30px 17px 10px;
	}

	.figure-content-shadow__button-icon-link .button-icon-link::before {
		width: 20px;
		height: 10px;
		right: 10px;
	}

	.figure-content-shadow__title {
		font-size: 18px;
		letter-spacing: -1px;
	}

	.figure-content-shadow__text {
		padding: 5px 5px 15px;
	}

	.director__text-name-katakana {
		letter-spacing: -1px;
	}

	.greetings-form-the-director__title {
		font-size: 40px;
	}

	.sentence-content__title {
		font-size: 21px;
	}

	.sentence-content__title {
		margin-top: 15px;
		margin-bottom: 0px;
	}

	.banner__copy {
		top: 40%;
	}

	.banner__title {
		font-size: 18px;
	}

	.banner__title {
		padding-bottom: 10px;
	}

	.banner__title-wrapper {
		width: 545px;
	}

	.footer__nav .nav__item .nav__link {
		color: #fff;
		padding: 0 35px 0;
	}
}

@media screen and (min-width: 1024px) and (max-width: 1200px) {
	.header__logo {
		width: 200px;
		align-items: center;
		display: flex;
	}

	.header__info-group {
		width: calc(100% - 200px);
		padding-right: 165px;
		padding-left: 15px;
	}

	.map-address {
		padding: 8px 20px 10px 40px;
	}
}




#page-title {
    position: relative;
/*    height: 300px;   */
    height: 370px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    margin-top: 75px;
}

#page-title h2 {
    position: absolute;
    content: "";
/*    bottom: 20px;*/
/*    left: 50px;*/
/*    left: 80px;*/
/*    left: 50%;*/
    left: 20%;
    transform: translateX(-50%);
/*    top: 60px;    */
    top: 125px;
    font-size: 34px;
    text-align: left;
    /* background: rgba(255,255,255,0.6); */
    padding: 30px 30px 30px 50px;
    line-height: 1.4em;
}

#page-title h2.case-banner-title {
    background: none;
    font-size: 20px;
    line-height: 1.8em;
    color: #0157ac; 
}

#page-title h2.case-banner-title span {
    color: #0157ac;
    font-size: 34px;    
}

#page-title h2 span {
    color: #0157ac;
    font-size: 34px;
}

#page-title h2 {
    font-size: 20px;
    color: #0157ac; 
    line-height: 1.8em;
}

.bg-gray {
    background: #f0eeee;
}

.bg-gray2 {
    background: #F4F9FD;
}

.bg-gray3 {
    background: #ededf0;
}

.bg-white {
    background: #fff;
}

.bg-lightgrey {
    background: #f5f5f5;
}

.bg-lightgrey2 {
    background: #f4f9fd;
}

.bg-lightgrey3 {
    background: #EDEDF0;
}

.bg-blue {
    background: #e8f6fe;
}

.bg-lightblue {
    background: #F4F9FD;
}

.bg-light {
    background: #EDF6FF;
}

#greetings {
    padding: 40px 0 60px;
    margin: 0 auto;
}

#case5a {
    padding-bottom: 60px;
    max-width: 1140px;
    margin: 0 auto;
	padding: 80px 0 60px;
}


.headline {
    text-align: center;
/*    font-size: 50px;*/
    font-size: 36px;
    color: #014A9B;
    margin-bottom: 60px;
    line-height: 0.8em;
}



.headline.head-border {
    box-sizing: content-box;
    padding: 20px 15px;
    font-size: 24px;
    font-weight: 700;
/*
    border-width: 2px;
    border-style: solid;    
    border-image: linear-gradient(to bottom, #7fc3fa, #2a83e2) 1;     
    border-image-slice: 1; 
    border-radius: 5px!important;
*/
     background: 
        linear-gradient(#fff 0 0) padding-box, /*this is your white background*/
        linear-gradient(to bottom, #7fc3fa, #2a83e2) border-box;
      color: #014A9B;
      padding: 20px 15px;
      border: 2px solid transparent;
      border-radius: 5px;
}

.headline-border-wrap {
    
}

#case9 .headline.head-border {
    margin-bottom: 20px;
}

.headline-sub {
    font-size: 24px;
    text-align: center;   
    color: #014A9B;
}

.job-title {
    font-size: 17px;
}

.name-doctor {
    font-size: 24px;
}

.case-intro .headline {
    color: #014A9B;
    margin-top: 60px;
    margin-bottom: 20px;
    border-radius: 5px;
}

.headline-note {
    text-align: center;
    color: #014A9B;
    margin-bottom: 40px;
    font-size: 18px;
}

.bg-gray2 .headline-note {
    color: #000;
}

.bg-blue-no .headline-note {
	color: #000;
}

.redtxt {
	color: red;
}

.bluetxt {
	color: blue;
}

.headline3 {
    text-align: center;    
    font-size: 36px;  
    color: #014A9B;
}

.headline4 {
    text-align: center;    
    font-size: 32px;
}

.sub-headline {
/*    margin-top: 30px;*/
    margin-top: -10px;
}

.my-subhead {
/*    font-size: 20px;*/
    font-size: 17px;
    text-align: left;
}

.my-flex {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
/*    column-gap: 45px;*/
    justify-content: center;
}

.my-flex-border {
    background: #fff;  
    padding: 30px 20px;
    box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.4);
    border-radius: 5px;
}

.my-flex-border2 {
    background: #fff;  
    padding: 30px 30px;
    box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.4);
    border-radius: 5px;
}

.flex-item50 {
    max-width: calc(100%/ 2 - 45px);
    width: 100%;
    padding: 0 15px;
}

.flex-item60 {
    max-width: calc(60% - 45px);
    width: 100%;
    padding: 0 15px;
}

.flex-item40 {
    max-width: calc(40% - 45px);
    width: 100%;
    padding: 0 15px;
    position: relative;
}

.img-adjust {
    position: absolute;
    top: 60%;
    transform: translateY(-50%);
}

.flex-item20 {
    max-width: calc(20% - 45px);
    width: 100%;
    padding: 0 15px;
}

.flex-item60b {
    max-width: 60%;
}

.flex-item40b {
    max-width: 40%;
}


.flex-item100 {
/*    max-width: calc(100% - 60px);*/
    max-width: calc(100% - 45px);
}

.flex-item100b {
    max-width: 100%;
}

.case-intro .flex-item50 {
    padding: 0 25px;
    max-width: calc(100%/ 2 - 35px);
}

.case-intro2 .flex-item50 {
    background: #fff;
    padding-left: 0;
    padding-right: 0;
    max-width: calc(100%/ 2 - 60px);   
/*    max-width: calc(100%/ 2 - 50px); */
}

.case-intro2 .flex-item100 {
    max-width: calc(100% - 120px);
/*    max-width: calc(100% - 100px);*/
}

.flex-item100 img {
    width: 100%;
    object-fit: cover;
    margin:  0 auto;
}

.flex-item50 img {
    width: 100%;
/*    height: 400px;*/
    height: auto;
    object-fit: cover;
    margin:  0 auto;
}



.case-box .flex-item50 img {
    object-fit: contain;
    height: 100%;
}

.flex-item50 .case-box img {
    object-fit: contain;
    height: 100%;
}

.flex-item50 .case-box1 img {
    object-fit: contain;
    height: 100%;
}

.flex-item50 .case-box2 img {
    object-fit: contain;
    height: 100%;
}

.flex-item50 .case-box3 img {
    object-fit: contain;
    height: 100%;
}

.flex-spaced {
	justify-content: space-between!important;
}

.flex-start {
    justify-content: flex-start;
}

#profile4 .my-flex .flex-item50 img {
    height: auto;
    width: 100%;
}

.flex-item50 h4 {
    margin-bottom: 30px;
    text-align: left;
}

#profile3.case-intro2 .flex-item50 {
    width: 100%;
}

table.tbl-profile {
    margin-bottom: 20px;
/*    font-size: 20px;*/
    font-size: 17px;
}


table.tbl-profile tr:nth-child(1) td,
table.tbl-profile tr:nth-child(2) td {
    line-height: 2.8em;
}

table.tbl-profile tr td:first-child {
    width: 17%; 
}

table.tbl-profile tr td:last-child {
    width: auto;
    text-align: left;
    
}

.my-flex2 {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    column-gap: 60px;
    justify-content: center;
    margin-top: 60px;
}

.flex-item60 {
    max-width: calc(60% - 60px);
}

.flex-item60b {
    max-width: 60%;
}

.flex-item40 {
    max-width: calc(40% - 60px);
}

.flex-item40 img {
    width: 100%;
/*    height: 400px;*/
    height: auto;
    object-fit: cover;
    margin:  0 auto;
}

table.tbl-profile2 tr td:nth-child(1),
table.tbl-profile2 tr td:nth-child(2),
table.tbl-profile2 tr td:nth-child(3){
    line-height: 2.0em;
}

#profile2 {
    padding: 0 15px 40px;
}

#profile3 {
/*    background-image: linear-gradient(to right, #fff, #8ED1FC); */
    padding: 20px 15px;
}

#profile4 {
/*   background-image: linear-gradient(to right, #fff, #8ED1FC); */
/*   padding: 20px 150px 80px;*/
    padding: 20px 70px 10px;
}

#profile4.case-intro2 {
    padding: 20px 60px 10px;
}

table.tblprofile5 {
    width: 120%;
}

table.tbl-profile5 tr td:first-child {
    width: 30%;
    line-height: 2.8em;
}

table.tbl-profile5 tr td:last-child {
    width: 70%;
}

/*
table.tbl-profile5 tr:nth-child(1) td,
table.tbl-profile5 tr:nth-child(2) td {
    line-height: 2.8em;
}
*/

#staff {
/*    padding: 20px 150px 80px;*/
    padding: 60px 0 80px;
}

.staff-headline {
    font-size: 25px;
    text-align: center;
    margin-bottom: 10px;
}

.staff-group-photo {   
    display: block;
    margin: 0 auto 40px;
/*    max-width: 550px;*/
    width: 100%;
}

.staff-group-photo img {
    width: 100%;
    height: auto;
}

.staff-intro {
    max-width: 1090px;
    text-align: center;
    margin: 0 auto;
}

.staff-intro2 {
    margin: 40px auto 0;
    max-width: 1140px;
    padding: 60px 40px;
}

.staff-intro p {
/*    display: inline-block;*/
    text-align: left;
}

.bg-darkgrey {
    background: #d9d9d9;
}

.headline2 {
    text-align: center;    
    font-size: 50px;    
    padding: 80px 15px;
/*    line-height: 1.4em;*/
    line-height: 0.6em;
}

.txt-bold {
    font-weight: 700;
}

.txt-blue {
    font-size: 24px;
    color: #014A9B;
}

.txt-blue2 {
    color: #014A9B;
}

.txt-black {
    color: #000;
}

.headline2 span {
    color: #000;
}

.concept-intro {
    max-width: 800px;
    text-align: center;
    margin: 0 auto;
    padding: 60px 15px;
}

.concept-intro p {
    display: inline-block;
    text-align: left;
}

img.img-dental01 {
    width: 100%;
}

img.img-dental01a {
    width: 50%;
    padding-right: 30px;
}

img.img-dental02 {
    width: 50%;  
    height: 125px;
}

img.img-dental03 {
    padding-top: 30px;
    width: 100%;   
}

.img-doctor4 {
    height: 480px!important;
    width: 100%!important;
    object-fit: cover!important;
}

.img-doctor5 {
    height: 300px!important;
    width: 100%!important;
    object-fit: cover!important;
    margin-top: 40px!important;
}

.img-dental {
    height: 500px!important;
    width: 100%!important;
    object-fit: cover!important;
}

.txt-subhead {
/*    font-size: 19px;*/
    font-size: 24px;
}

.txt-subhead2 {
    font-size: 16px;
}

.txt-desc {
    font-size: 18px;
    font-weight: normal;
}

.txt-desc {
    font-size: 16px;
    font-weight: normal;
}

.txt-red {
    color: #FD0505;
}

.pd-30 {
    padding: 30px;
}

.ol-wrap {
    display: block;
    text-align: center;
}
.ol-wrap ol {
/*    text-align: center;*/
    text-align: left;
    display: inline-block;
/*    padding-left: 60px;*/
    padding-left: 30px;
}

.ol-wrap ol li {    
    text-align: left;
    list-style: decimal;
}
.img-gigi1 {
    max-width: 600px;
    margin: 20px auto;
}

.w-750 {
    max-width: 750px;
    margin: 0 auto;
    display: block;
    text-align: left;
}

.w-1440 {
    max-width: 1440px;
    margin: 0 auto;    
}

.w-1140 {
    max-width: 1140px;
    margin: 0 auto;    
}

.w-1080 {
    max-width: 1080px;
    margin: 0 auto;    
}

.w-1020 {
    max-width: 1020px;
    margin: 0 auto;    
}



.txt-center {
    text-align: center;
}

.txt-left {
    text-align: left;
}

.txt-right {
    text-align: right;
}

.d-inline {
    display: inline-block;
}

.sp-none {
    display: inline-block;
}

.sp-show {
    display: none;
}

.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.white-box {
    background: #fff;
    max-width: 640px;
    margin: 80px auto 40px; 
    padding: 40px;
}


.white-box-inner .box-title {
    display: block;
    text-align: center;
}

.white-box-inner p {
   text-align: left;
}

ol.my-ol {
    margin-left: 18px;
}


ol.my-ol li {
    list-style: decimal!important;
	margin-left: 10px;
}

.med-info {
    text-align: left;
/*    max-width: 1140px;*/
    max-width: 1020px;
    margin: 0 auto;
}

.med-info .ol-wrap {
    text-align: left!important;
}

.my-process {
   text-align: center;
}

#case1 {
    margin: 0 auto;
    padding: 0 30px 110px;
/*    max-width: 980px;*/
    max-width: 1140px;
}

.case-flex {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    margin-top: 80px;
    justify-content: center;    
}

.case-item {
    flex: 100%;
    max-width: calc(100% / 3 - 80px);
    margin: 0 80px 30px 0;    
}

.case-item:last-child {
    margin-right: 0;
}

.case-img img {
    width: 100%;
    margin-bottom: 5px;
}

.case-title {
    margin-bottom: 20px;
    font-weight: 700;
    font-size: 20px;
    text-align: center;
}

#case2 {
    margin: 0 auto;
    padding: 0 30px 110px;
/*    max-width: 980px;*/
    max-width: 1140px;
}

#case2 .case-title {
    font-size: 17px;
}

#case3 {
    margin: 0 auto;
    padding: 0 30px 110px;
/*    max-width: 980px;*/
    max-width: 1140px;
}

#case3 .case-title {
    font-size: 17px;
}

.case-flex2 {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
/*    margin-top: 80px;*/
    justify-content: center;    
}

.case-flex2:first-child {
    margin-top: 80px;
}

.case-item2 {
    flex: 100%;
/*    max-width: calc(100% / 3 - 80px);*/
    max-width: calc(100% / 3 - 40px);
/*    margin: 0 80px 30px 0;    */
    margin: 0 40px 30px 0;
}

.case-item2:last-child {
    margin-right: 0;
}

/*
.case-item2:nth-child(3),
.case-item2:nth-child(6),
.case-item2:nth-child(9) {
    margin-right: 0;
}
*/

.case-item2:nth-child(4),
.case-item2:nth-child(8)
 {
/*    margin-right: 0;*/
}

.case-img2 img {
    width: 100%;
    margin-bottom: 5px;
}

#case4 {
    margin: 0 auto;
    padding: 0 30px 110px;
/*    max-width: 980px;*/
    max-width: 1140px;
}

.img-staff img {
    width: 100%;
    height: auto;
    max-width: 650px;
    margin: 0 auto;
    display: block;
}

#case5 {
    margin: 0 auto;
    padding: 0 30px 110px;
    max-width: 980px;
}

.f-24 {
    font-size: 24px;
}

.f-36 {
    font-size: 36px;
}

#equipment {
/*    width: 75%;*/
    margin: 0 auto;
/*    max-width: 1140px;*/
    max-width: 1215px;
}

#equipment img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

#equipment .flex-item100 {
    max-width: calc(100% - 75px);
}

#profile4 .flex-item50:first-child {
    max-width: 50%;
    padding-left: 15px;
}

#profile4 .flex-item50:last-child {
    max-width: 50%;
    /* padding-right: 60px; */
}

/*==== Table Gigi ====*/
table.tbl-gigi {
  border-collapse: collapse;
  margin: 80px auto 0;
  padding: 0;
  width: 100%;
  max-width: 750px;
  table-layout: fixed;
  padding-bottom: 10px;    
}

table.tbl-gigi tr {
  background-color: #fff;
  padding: .35em;
  border-bottom: 2px solid #014A9B;
}
table.tbl-gigi th {
    padding: 1em 10px 1em 1em;
  border-right: 2px solid #fff;
}
table.tbl-gigi td {
  padding: 1em 10px 1em 1em;
  border-right: 2px solid #014A9B;
    vertical-align: middle;
    
}
table.tbl-gigi th {
  font-size: 16px;
}
table.tbl-gigi thead tr{
  background-color: #014A9B;
  color:#fff;
}

table.tbl-gigi thead th:first-child {
    border-left: 2px solid #014A9B;
}

table.tbl-gigi thead th:last-child {
    border-right: 2px solid #014A9B;
}

table.tbl-gigi tbody th {
    background: #014A9B;
    color: #fff;
    border-right: 2px solid #fff;
}


table.tbl-gigi tr td:first-child {
    vertical-align: middle;
    border-left: 2px solid #014A9B;
}

table.tbl-gigi tr td:last-child {
    text-align: left;
}

table.tbl-gigi.tbl-lightblue {
    max-width: 1140px;
}

table.tbl-gigi.tbl-lightblue thead tr {
    background-color: rgba(214, 233, 252, 1);
    color: #014A9B;
    border-top: 2px solid #014A9B;
}

table.tbl-gigi.tbl-lightblue thead th:first-child {
    border-left: 2px solid #014A9B;
    border-right: 2px solid #014A9B;
    width: 15%;
}

table.tbl-gigi.tbl-lightblue thead th:last-child {
    border-right: 2px solid #014A9B;
}

table.tbl-gigi.tbl-lightblue th {
    border-right: 2px solid #014A9B;
}

table.tbl-gigi.tbl-lightblue tbody th {
    background: rgba(214, 233, 252, 1);
    color: #014A9B;
    border-right: 2px solid #014A9B;    
}

table.tbl-gigi.tbl-lightblue tr td:first-child {
    vertical-align: middle;
    border-left: 2px solid #014A9B;;
    background: rgba(214, 233, 252, 1);
    text-align: center;
    color: #014A9B;
    font-weight: 700;
    width: 15%;
}

table.tbl-gigi.tbl-lightblue tr td {
    height: 130px;
}


table.tbl-gigi.tbl-lightblue tr td:last-child {
    text-align: left;
}

.txt{
   text-align: left;
   font-size: 16px;
}

.non{
  background:#fff;
}

p.mgt-20.note {
/*    font-size: 24px;*/
    font-size: 17px;
    margin-left: 35px;
}

.img-big {
    width: 100%;
}

table.tbl-treatment {
    border-collapse: collapse;
    margin: 80px auto 0;
    padding: 0;
    width: 100%;
/*    max-width: 750px;*/
    max-width: 1120px;
    table-layout: fixed;
    padding-bottom: 10px;
    border: 1px solid #000;
    margin-bottom: 40px;
}

table.tbl-treatment tr th {
    padding: 20px;
    border: 1px solid #000;
}

table.tbl-treatment tr th:first-child {
    width: 15%;
}

table.tbl-treatment tr td:first-child {
    width: 15%;
    text-align: center;
}

table.tbl-treatment tr td {
    padding: 20px;
    vertical-align: middle;
    border: 1px solid #000;
}

/* table tooth */
table.tbl-tooth {
    border-collapse: collapse;
    margin: 40px auto 0;
    padding: 0;
    width: 100%;
/*    max-width: 850px;*/
    max-width: 1120px;
    table-layout: fixed;
    padding-bottom: 10px;
    border: 1px solid rgba(1, 74, 155, 1);
    margin-bottom: 40px;
}

table.tbl-tooth tr th {
    padding: 20px;
    border: 1px solid #000;
    background: rgba(214, 233, 252, 1);
    color: rgba(1, 74, 155, 1);
    font-weight: 500;
}

table.tbl-tooth tr th:first-child {
    width: 17%;
}

table.tbl-tooth tr td:first-child {
    text-align: left;
     width: 17%;
}

table.tbl-tooth tr th:nth-child(2) {
    width: 15%;
}

table.tbl-tooth tr td:nth-child(2) {
    width: 15%;
    padding: 0;
    vertical-align: middle;
}

table.tbl-tooth tr td {
    padding: 20px;
    vertical-align: top;
    border: 1px solid rgba(1, 74, 155, 1);
    font-weight: 500;
    background: #fff;
    font-size: 16px;
}

.back_to_top {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    border-radius: 12px !important;
    padding: 2px;
    cursor: pointer;
    z-index: 10000;
}

.back_to_top img {
    height: 50px;
    width: 50px;
}

#treatment1 {
    padding: 60px 0;
}

.ctimg {
	margin-left: 40px;
}

.ctmachine {
	height: 400px;
}

.d-inline {
    display: inline-block;
}


#privacy-policy {
    padding: 20px;
    background-color: #fff;
    border: 2px solid #014A9B;
    word-break: break-all;
    word-wrap: break-word;
/*    max-width: 800px;*/
    max-width: 1140px;
    font-weight: normal;
    font-size: 16px;
    margin: 0 auto;
}

.policy-title {
    text-align: center;
    font-size: 20px;
    color: #014A9B;
    padding-bottom: 30px;
}

.txt-darkblue {
    color: #014A9B;;
    font-weight: normal!important;
}


#web-policy {
/*    max-width: 800px;*/
    max-width: 1140px;
    background-color: #e8f6fe;
    border: 2px solid #222222;
    padding: 20px;
    margin: 80px auto 0;
}

.img-treatment {
    max-width: 800px;
    text-align: center;
    margin: 40px auto;
}

.bg-pattern {
	background-image: url(../images/top/bg__base.jpg);
	background-size: 704px 1464px;
	background-position: left top;
}

.p-relative {
    position: relative;
    padding-left: 80px;
    font-size: 16px;
}

.p-relative .txt-right {
    position: absolute;
    right: 0;
    bottom: 0;    
}

.txt-18 {
    font-size: 18px;
}

.img-right {
    margin-left: auto;
/*    padding-right: 40px;*/
}

.my-flex.mgt-20.flex-start.mgl-25 {
    width: 93%;
}

.w93 {
    width: 93%;
}

table.tbl-time {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
}

table.tbl-time tr th {
    background: #e1f3fd;
    border: 1px solid #000;
    padding: 10px;
}

table.tbl-time tr th:first-child {
    width: 25%;
}

table.tbl-time tr td:first-child {
    width: 25%;
}

table.tbl-time tr td {
    padding: 10px;
    text-align: center;
    border: 1px solid #000;
    background: #fff;
}


span.txt-underline-red {
    border-bottom: 3px solid #ff0000;
}

@media screen and (max-width: 600px) {
    table.tbl-time tr th {
        padding: 5px;
    }
    
    table.tbl-time tr td {
        padding: 5px;
        vertical-align: middle;
    }
    
    table.tbl-gigi {
        border: 0;
        width: 100%
    }

    table.tbl-gigi th {
        background-color: #1A69C6;
        display: block;
        border-right: none;
        font-size: 14px;
    }

    table.tbl-gigi td:first-child {
        background-color: #1A69C6;
        color: #fff;
    }

    table.tbl-gigi thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    table.tbl-gigi tr {
        display: block;
        margin-bottom: .625em;
    }

    table.tbl-gigi td {
        border-bottom: 1px solid #bbb;
        display: block;
        font-size: 14px;
        text-align: right;
        position: relative;
        padding: .625em .625em .625em 4em;
        border-right: none;
    }

    table.tbl-gigi td::before {
        content: attr(data-label);
        font-weight: bold;
        position: absolute;
        left: 10px;
        color: #1A69C6;
    }

    table.tbl-gigi td:last-child {
        border-bottom: 0;
    }

    table.tbl-gigi tbody th {
        color: #fff;
    }
    
    table.tbl-gigi.tbl-lightblue tr td:last-child {
        text-align: right;
    }
}

/*==== Table gigi 2 =======*/
table.tbl-gigi2 {
  border-collapse: collapse;
  margin: 20px auto 0;
  padding: 0;
  width: 100%;
  max-width: 1140px;
  table-layout: fixed;
  padding-bottom: 10px;    
}

table.tbl-gigi2 tr {
  background-color: #fff;
  padding: .35em;
  border-bottom: 2px solid rgba(1, 74, 155, 1);
}

table.tbl-gigi2 th,
table.tbl-gigi2 td {
  padding: 1em 10px 1em 1em;
  border-right: 2px solid rgba(1, 74, 155, 1);    
}

table.tbl-gigi2 th {
    font-size: 20px;
    border-top: 2px solid rgba(1, 74, 155, 1);
    border-left: 2px solid rgba(1, 74, 155, 1);
    background: rgba(214, 233, 252, 1);
    color: rgba(1, 74, 155, 1);
    font-weight: 500;
    vertical-align: middle;
}

table.tbl-gigi2 th:first-child {
    width: 15%;
}

table.tbl-gigi2 th:nth-child(2) {
    text-align: left;
    width: 15%;
}

table.tbl-gigi2 thead tr{
  background-color: #fff;
  color:rgba(1, 74, 155, 1);
}

table.tbl-gigi2 tbody th {
    background: #fff;
    color: rgba(1, 74, 155, 1);
}



table.tbl-gigi2 td {
    color: rgba(1, 74, 155, 1);
    font-weight: 500;
}

table.tbl-gigi2 tr td:first-child {
    vertical-align: middle;
    border-left: 2px solid rgba(1, 74, 155, 1);
    text-align: center;
    width: 15%;
}

table.tbl-gigi2 tr td:nth-child(2) {
    text-align: center;
    width: 15%;
    vertical-align: middle;
}

table.tbl-gigi2 tr td {
    height: 130px;
}

table.tbl-gigi2 tr td:last-child {
    text-align: left;
    vertical-align: middle;
}

.txt{
   text-align: left;
   font-size: 16px;
}

.price {
    text-align: right;
}

.non{
  background:#fff;
}

@media screen and (max-width: 600px) {
    table.tbl-gigi2 {
        border: 0;
        width: 100%
    }

    table.tbl-gigi2 th {
        background-color: #fff;
        color: #000;
        display: block;
        border-right: none;
        font-size: 14px;
    }

    table.tbl-gigi2 td:first-child {
        background-color: #fff;
        color: #000;
    }

    table.tbl-gigi2 thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    table.tbl-gigi2 tr {
        display: block;
        margin-bottom: .625em;
    }

    table.tbl-gigi2 td {
        border-bottom: 1px solid #bbb;
        display: block;
        font-size: 14px;
        text-align: right;
        position: relative;
        padding: .625em .625em .625em 4em;
        border-right: none;
    }

    table.tbl-gigi2 td::before {
        content: attr(data-label);
        font-weight: bold;
        position: absolute;
        left: 10px;
        color: #000;
    }

    table.tbl-gigi2 tr td:first-child {
        vertical-align: middle;
        border-left: 2px solid rgba(1, 74, 155, 1);        
        width: 100%;
    }

    table.tbl-gigi2 tr td:nth-child(2) {        
        width: 100%;
        text-align: right;
    }
    
    table.tbl-gigi2 td:last-child {
        border-bottom: 0;
        text-align: right;
    }
    
    table.tbl-gigi2 tr td:last-child {
        text-align: right;
    }

    table.tbl-gigi2 tbody th {
        color: #000;
    }
    
    table.tbl-gigi2 th:first-child {
        width: 100%;
    }

    table.tbl-gigi2 th:nth-child(2) {
        text-align: left;
        width: 100%;
    }
}

/*==== Table gigi 3 =======*/
table.tbl-gigi3 {
    border-collapse: collapse;
    margin: 60px auto 30px;
    padding: 0;
    width: 100%;
    max-width: 1140px;
    table-layout: fixed;
    padding-bottom: 10px;
    border: 1px solid #1A69C6;
}

table.tbl-gigi3 tr th {
    background-color: #8ED1FC;
    color: #000;
    padding: 10px 30px 10px 30px;
    vertical-align: middle;
    border-bottom: 1px solid #fff;   
}

table.tbl-gigi3 tr td:first-child {
    background-color: #8ED1FC;
    color: #000;
    padding: 10px 30px 10px 30px;
    vertical-align: middle;
    border-bottom: 1px solid #fff;
    width: 30%;
    font-weight: 700;
}

table.tbl-gigi3 tr td {
    padding: 10px 30px 10px 30px;
    border-bottom: 1px solid #1A69C6;
    background: #fff;
}

/*==== Table Flow =====*/
table.tbl-flow {
    border-collapse: collapse;
    margin: 20px auto 30px;
    padding: 0;
    width: 100%;
    max-width: 800px;
    table-layout: fixed;
    padding-bottom: 10px;
}

table.tbl-flow tr td.txt-flow {
    background: #D9D9D9;
    color: #000;
    width: fit-content;
    vertical-align: middle;    
    text-align: center;
}

table.tbl-flow tr td {
    padding: 20px;
}

table.tbl-flow tr td.arrow {
    width: fit-content;
    text-align: center;
    vertical-align: middle;
    color: #000;
    font-size: 40px;
    padding: 0;
}

/*==== Table Case =====*/
#case8 {
    padding: 40px 0 80px;
}

table.tbl-case {
    width: 100%;
    border-collapse: collapse;
/*    margin: 40px auto 0;*/
    margin: 0 auto;
/*    max-width: 920px;*/
/*    max-width: 900px;*/
    max-width: 1024px;
}

table.tbl-case tr td {
/*    padding: 20px 15px;*/
    padding: 20px 45px;
    vertical-align: middle;
    border: 1px solid #1A69C6;
}

table.tbl-case tr td:first-child {
    background: #eff7fe;
    color: #0157ac;
    font-weight: 700;
}


table.tbl-case tr td:last-child {
    background: #fff;
}
table.tbl-case tr td:first-child,
table.tbl-case tr td:last-child {
    width: 50%;
}




/* Contact--------------------- */

.contact-form-st1 {
    width: 100%;
}

.contact-form-st1 tr td {
/*
    background-color: #F6F6F6;    
    background-color: #FDF9F6;
*/
/*    background-color: #D9D9D9;*/
    background-color: #e8f6fe;
/*    border: 1px solid #222222;*/
    color: #000;
/*    font-size: 13px;*/
    font-size: 18px;
    padding: 20px 20px;
}

.contact-form-st1 tr td:first-child {
    width: 30%;
    max-width: 250px;
/*
    background: #F8ECE0;
    background-color: #EEF1F7;
    background-color: #f7f4ee;
*/
/*
    background: #D9D9D9;
    border: 1px solid #FFF;
*/
    background-color: #e8f6fe;
/*    border: 1px solid #222222;*/
/*    font-size: 13px;*/
    font-size: 18px;
    font-weight: bold;
    white-space: nowrap;
    vertical-align: middle;
}

.contact-form-st1 tr td .form-group {
    margin-bottom: 0;
}

.contact-form-st1 tr td input[type=text],
.contact-form-st1 tr td input[type=email],
.contact-form-st1 tr td textarea {
    width: 100%;
    float: left;
    border: none;
    border-radius: 0;
    border: 1px #E6E6E6 solid;
    padding: 10px;
    box-shadow: none;
	color: #000;
}

.contact-form-st1 tr td input[type=text],
.contact-form-st1 tr td input[type=email] {
    height: 37px;
}

.contact-form-st1 tr td textarea {
    height: 140px;
    resize: none;
}

.contact-form-st1 tr td select {
    width: 100%;
    box-shadow: none !important;
    border-radius: 0;
}

.contact-form-st1 tr.tr_btn td,
.contact-form-st1 tr.agree_check td {
    text-align: center;
    background: none;
}

.contact-form-st1 tr.tr_btn td {
    border: none;
}

.contact-form-st1 tr.no-border td {
    border: none;
}

.btn_submit {
    background-color: #636363;
    border-color: #636363;
    color: #FFF;
    padding: 6px 30px;
    box-shadow: none;
    border: 0;
    width: 120px;
    margin-right: 20px;
}

.btn_reset {
    background-color: #F8ECE0;
    border-color: #ccc;
    color: #000;
    padding: 6px 30px;
    box-shadow: none;
    border: 0;
    width: 120px;
}

.contact-note {
    float: right;
    display: inline-block;
    width: 44px;
    height: 20px;
    line-height: 17px;
    background-color: #636363;
    color: #FFF;
    font-size: 10px;
    font-weight: normal;
    text-align: center;
    margin: 5px 0 0 10px;
}

.contact-form-st1 tr td.privacy {
    padding: 0!important;
}


/* End contact-------------- */

#case6 {
    max-width: 1140px;
    margin: 0 auto;
	padding: 80px 0 0;
}

#contact-form {
    max-width: 1140px;
    margin: 60px auto 0;
    padding: 0 15px 60px;
}


#case7 {
    margin: 0 auto;
    padding: 80px 30px 80px;
    max-width: 1020px;
}


.ft-menu-page {
    text-align: center;
    display: inline-block;
}

.ft-menu-page .menu-wrap a {
    display: inline-block;
    margin-right: 30px;
}

.ft-menu-page .menu-wrap a:hover {
    text-decoration: none;
    color: #1A69C6;
}

.ft-menu-page .menu-wrap:last-child a {
    margin-right: 0;
}

.ft-logo-gigi {
    background: #1A69C6;
    display: inline-block;
    padding: 10px;
}

.ft-flex {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
}

.ft-logo-gigi {
    flex-basis: 25%;
    align-self: center;
    margin-right: 5%;
    max-width: 250px;
}

.ft-menu-page {
    flex-basis: 70%;
    align-self: center;
}

.menu-wrap {
    display: inline-block;
}

#greetings .flex-item50 {
    width: auto;
}

#greetings .flex-item50 img {
    height: auto;
}

#profile3 .flex-item50 {
    /* width: auto; */
}

#profile3 .flex-item50 img {
    height: auto;
    width: 100%;
}

#profile5 .flex-item50 {
    width: auto;
}

#profile5 .flex-item50 img {
    height: auto;
}

ul.my-ul {
    padding-left: 15px;
}

ul.my-ul li {
    list-style: disc;
	margin-left: 10px;
}

.txt-policy {
    word-wrap: break-word;
    white-space: break-spaces;
}

.emphasize__button-icon-link .button-icon-link.button-icon-link--full .button-icon-link__text {
    top: 10px;
}

.case-box {
    background: #fff;
/*    padding: 20px;*/
    padding: 30px;
    min-height: 100%;
/*    box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, 0.2);*/
    box-shadow: 1px 1px 12px 1px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
}

.case-box1 {
    background: #fff;
    padding: 30px;
    min-height: 100%;
}

.bg-white {
    background: #fff;
}

.case-box2 {
    background: #fff;
    padding: 30px;
    min-height: 100%;
    border-top-left-radius: 5px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
/*    box-shadow: -1px -1px 0px 0px rgba(0, 0, 0, 0.2); */
    box-shadow: -1px -1px 1px 1px rgba(0, 0, 0, 0.2);
}

.case-box2a {    
    box-shadow: -1px 0px 0px 0px rgba(0, 0, 0, 0.2);  
}

.case-box3 {
    background: #fff;
    padding: 30px;
    min-height: 100%;
    border-top-right-radius: 5px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
/*    box-shadow: 2px 0px 1px 1px rgba(0, 0, 0, 0.2);  */
/*    box-shadow: 1px -1px 0px 0px rgba(0, 0, 0, 0.2);  */
    box-shadow: 1px -1px 1px 1px rgba(0, 0, 0, 0.2);
}

.case-box3a {
    box-shadow: 1px 0px 0px 0px rgba(0, 0, 0, 0.2); 
}

.case-box4 {
    background: #fff;
    padding: 30px;
    min-height: 100%;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;    
/*    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);   */
/*    box-shadow: 0px 2px 1px 2px rgba(0, 0, 0, 0.2);*/
    box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.2);
}

.shadow {
    box-shadow: 1px 1px 12px 1px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
}

.border-top-left {
    border-top-left-radius: 5px;
    padding-left: 60px;
    padding-right: 30px;
    padding-top: 40px;
}

.middle-left {
    padding-left: 60px;
    padding-right: 30px;
    padding-top: 0;
}

.middle-right {
    padding-right: 60px;
    padding-left: 30px;
    padding-top: 0;
}

.border-top-right {
    border-top-right-radius: 5px;
    padding-right: 60px;
    padding-left: 30px;
    padding-top: 40px;
}

.border-bottom-left {
    border-bottom-left-radius: 5px;
    padding-bottom: 40px;
    padding-left: 60px;
    padding-right: 30px;    
}

.border-bottom-right {
    border-bottom-right-radius: 5px;
    padding-bottom: 40px;
    padding-right: 60px;
    padding-left: 30px;
}

.flex-item100 .border-bottom-right {
    padding-left: 60px;
}

.flex-item100 .case-box1 {
    padding-top: 0;
}

.case-title1 {
    color: #0157ac;
    font-size: 18px;
    border-bottom: 1px solid #0157ac;
    text-align: left;
/*    margin-top: 20px;*/
}

.case-title2 {
    color: #0157ac;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
}

.case-title3 {
    color: #0157ac;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    border-bottom: 1px solid #0157ac;
}

#case9 {
    padding: 60px 10px;
    background-image: url(../images/top/bg__base--second.jpg);
	background-size: 704px 1464px;
	background-position: left top;
}

#case10 {
    padding: 0 10px 60px;
}

.mission-txt {
    font-family: 'EB Garamond', serif;
/*    font-size: max(13.333vw, 16px);*/
    font-size: 24px;
    text-align: center;
    color: #014a9b;
    margin-top: 20px;
    line-height: 2.2em;
}

#concept .flex-item50 {
    max-width: 50%;
    width: 100%;
    padding: 0;    
}

.pdl-50 {
    padding-left: 50px!important;
    padding-right: 15px!important;
}

.pdr-50 {
    padding-right: 50px;
}

.pdr-70 {
    padding-right: 70px;
}

#greetings {
    max-width: 1140px;
}

#greetings .flex-item50 {
    text-align: left;
}

#profile2 {
    max-width: 1140px;
    margin: 0 auto;
}

#profile2 .flex-item50 {
    max-width: calc(100%/ 2 - 32px);
}

#profile3 {
    max-width: 1140px;
    margin: 0 auto;
}

#profile4 {
    max-width: 1140px;
    margin: 0 auto;
    padding: 20px 60px 10px;
}

#profile5 .my-flex {
    max-width: 1140px;
    margin: 0 auto;
    padding: 40px 0;
}

#staff {
    max-width: 1140px;
/*    margin: 60px auto 0;*/
    margin: 0 auto;
}

#concept .my-flex {
    max-width: 1140px;
    margin: 0 auto;
}

.txt-center {
    text-align: center;
}

.service-button {      
    border-radius: 5px;
    height: 320px;
    background-image: linear-gradient(#3796e9, #014a9b);  
    border-width: 10px;   
    border-style: solid;
    border-image: linear-gradient(#3796e9, #014a9b) 1;
}

.service-button__inner {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    height: 300px;
}

.service-button__inner .case-title {
    color: #014a9b;
    border-bottom: 2px solid #014a9b;
    height: 95px;
}

.service-button__inner .case-title.case-title1 {
    padding-top: 30px;
    text-align: center;
}

p.mission-txt.pdt-40.txt-center {
    margin-top: 0;
}

.bg-blue-image {   
	background-image: url(../images/top/bg__base--second.jpg);
	background-size: 704px 1464px;
	background-position: left top;
}

.headline-new {
/*
    font-size: 32px;
    color: rgba(1, 74, 155, 1);
    text-align: center;
    border: 2px solid #8dc9f9;
    border-radius: 10px;
    padding: 5px 10px;
    background: #fff;
*/
    
    box-sizing: content-box;  
    font-size: 24px;
    font-weight: 700;
    background: 
        linear-gradient(#fff 0 0) padding-box, /*this is your white background*/
        linear-gradient(to bottom, #7fc3fa, #2a83e2) border-box;
    color: rgba(1, 74, 155, 1);
    padding: 10px 15px;
    border: 2px solid transparent;
    border-radius: 5px;
    text-align: center;    
    width: 97.5%;
    margin: 0 auto 20px;
}

.headline-new2 {
    width: 97%; 
    margin: 0 auto 20px;
    max-width: 1140px;
}

.workplace-flex {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background-color: #fff; /* Example background color */
    box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.4); /* Horizontal offset, Vertical offset */
    padding: 20px;
    margin-top: 30px;
}

.workplace-img {
    flex: 100%;
    max-width: 30%;
    margin: 0 0 30px 0; 
}

.workplace-txt {
    flex: 100%;
    max-width: 70%;
    margin: 0 0 30px 0;
    padding: 0 0 0 40px;
}

.workplace-flex2 {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background-color: #fff; /* Example background color */
    box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.4); /* Horizontal offset, Vertical offset */
    padding: 20px;
    margin-top: 30px;
}

.workplace-img2 {
    flex: 100%;
    max-width: 30%;
    margin: 0 0 30px 0; 
}

.workplace-txt2 {
    flex: 100%;
    max-width: 70%;
    margin: 0 0 30px 0;
    padding: 0 30px 0 10px;
}

.mgt-20 {
    margin-top: 20px;    
}

.mgt-30 {
    margin-top: 30px;
}

.mgt-60 {
    margin-top: 60px;
}

.mgt-80 {
    margin-top: 80px;
}


.title-sm {
    color: rgba(1, 74, 155, 1);
    border-bottom: 1px solid rgba(1, 74, 155, 1);
    padding-bottom: 10px;
    font-weight: 500;
    text-align: left;
    font-size: 20px;
}

.title-sm2 {    
    padding-bottom: 10px;
    font-weight: 500;
    text-align: left;
    font-size: 20px;
}

.title-sm3 {
    color: rgba(1, 74, 155, 1);
    border-bottom: 1px solid rgba(1, 74, 155, 1);
    padding-bottom: 10px;
    font-weight: 500;
    text-align: left;
    font-size: 20px;
    width: 93%;
}

.space-between {
    justify-content: space-between;
}

.space-even {
    justify-content: space-evenly;
}

.flex-start {
    justify-content: flex-start;
}

.align-center {
    align-items: center;
}

.pdl-0 {
    padding-left: 0;
}

.mgl-10 {
	margin-left: 10px;
}

.mgl-13 {
    margin-left: 13px;
}

.mgl-15 {
    margin-left: 15px;
}

.mgl-20 {
    margin-left: 20px;
}

.mgl-25 {
    margin-left: 25px;
}

.mgl-30 {
    margin-left: 30px;
}

.my-txtwrap {
    margin-top: 30px;
    padding-left: 10px;
}

.my-txtwrap3 {
    margin-top: 10px;
    padding-left: 35px;
}

.merit li{
	list-style: auto;
	padding: 15px 0;
}

.rootcanal {
	padding: 0 0 0 20px;
}

.txt-darkblue2 {
    color: rgba(1, 74, 155, 1);
    font-weight: 700;
    font-size: 18px;
}

.pd-custom {
    padding: 60px 40px 35px 0;
}

img.img-gigi1 {
    height: 500px;
}

.txt-indent {
    padding-left: 20px;
}

.txt-indent2 {
    padding-left: 45px;
}

img.img-botol {
    height: 220px;
    width: 100%;
    object-fit: contain;
}

.pdl-15 {
    padding-left: 15px;
}

.pdl-20 {
    padding-left: 20px;
}

.pdl-25 {
    padding-left: 25px;
}

.pdl-80 {
    padding-left: 80px;
}

.txt-underline {
    text-decoration: underline;
}

a.txt-underline:hover {
    text-decoration: underline;
    cursor: pointer;
}

.my-flex.mgt-40.space-between .flex-item40 {
    padding-left: 0;
    padding-right: 0;
}

img.img-teeth {
    position: relative;
    top: 40px;
    margin-bottom: 40px;
}

img.img-teeth3 {
    position: relative;
    top: 65px;
    margin-bottom: 40px;
}

img.img-pregnant {
    height: 225px;
    object-fit: contain;
}

img.img-eldery {
    object-fit: contain;
    height: 200px;
}

img.img-tooth20 {
    width: 100%;   
    /* margin-left: 9%; */
}

.txt-red {
    color: rgba(250, 9, 9, 1);
}

.dental-implant ol.my-ol {
    margin-left: 35px;
}

img.mgt-20.implant05 {
    margin: 40px 0 20px 20px;
    width: 95%;
}

img.img-implant06 {
    object-fit: contain;
}

img.img-arrowdown {
    width: 100px;
    height: auto;
}

img.img-arrowright.sp-none {
    margin: 0 40px;
    height: 100px;
}

table.tbl-gigi2.tbl-gigi2a {
    margin-top: 40px;
}

table.tbl-gigi2.tbl-gigi2a tr th:nth-child(2) {
    width: auto;
    text-align: center;
}

table.tbl-gigi2.tbl-gigi2a tr td:nth-child(2) {
    width: auto;
    text-align: left;
}

.my-flex-implant {
    margin-left: 15px;
}

.flex-item25 {
    flex: 0 0 20%;  /* Takes up 20% of the container width */
    padding: 0 10px;
}

.flex-item40c {
    flex: 0 0 30%;  /* Takes up 30% of the container width */
    padding: 0 10px;
}

.img-implant1 {
    height: 300px;
    width: 100%;
    object-fit: cover;
}

.img-implant2 {
    height: 300px;
    width: auto;
    object-fit: cover;
    /* margin-left: 40px; */
}

table.tbl-gigi2.tbl-gigi2b tr th:first-child {
    width: 50%;
}

table.tbl-gigi2.tbl-gigi2b tr th:nth-child(2) {
    width: auto;
    text-align: center;
}

table.tbl-gigi2.tbl-gigi2b tr th:nth-child(3) {
    width: auto;
}

table.tbl-gigi2.tbl-gigi2b tr td:first-child {
    width: 50%;
    text-align: left;
}

table.tbl-gigi2.tbl-gigi2b tr td:nth-child(2) {
    text-align: right;
    width: auto;
}

table.tbl-gigi2.tbl-gigi2b tr td:nth-child(3) {
    text-align: center;
    width: auto
}

table.tbl-gigi2.tbl-gigi2b tr td {
    height: auto;
}


table.tbl-gigi2.tbl-gigi2b.mgl-25 {
    margin-left: 25px;    
}


.img-implant08a {
    position: relative;
    top: -40px;
}

.flex-item40.ctimg {
    margin-left: 120px;
}

.space-between {
    justify-content: space-between;
}

.flex-item60.flex-item60b {
    padding: 0;
}

.flex-item60.flex-item60b p {
    text-align: justify;
}

img.img-implant03a {
    margin-top: 40px;
}

.img-teeth2 {
    margin-left: 15px!important;
}

.title-sm.mgt-40.mgl-25.w93 {
    width: 1082px;
}

.title-sm.mgt-40.mgl-25.title-sm4 {
    width: 1082px;
}

.facility-standards {
    margin-top: 10px;
}

.facility-standards__title {
    font-size: 17px;    
}

.facility-standards__content-item-text {
    font-size: 17px;
    margin-top: 10px;
}

.facility-standards__content-item-text a {
    color: #014a9b;
    text-decoration: underline;
}

.facility-standards__content-item-text a:hover {
    text-decoration: underline;
}

.txt-18 {
    font-size: 18px;
}

.blue-border-box {
    border: 1px solid #b0d2ee;
    padding: 15px;
    max-width: 670px;
}

.case-title1.border-top-right.border-bottom-right {
    padding-left: 0;
    padding-bottom: 10px;
    padding-top: 3px;
}


@media screen and (min-width: 1680px) and (max-width: 1920px) {
    .w-1440b {
        max-width: 1440px;
    }
    
    .staff-intro2 {
        max-width: 1440px;
    }
    
    table.tbl-gigi.tbl-lightblue {
        max-width: 1280px;
    }
    
    table.tbl-gigi2 {
        max-width: 1440px;
    }
    
    img.img-gigi1 {
        height: 650px;
    }    
    
    table.tbl-tooth {
        max-width: 1440px;
    }
    
    table.tbl-tooth tr th:first-child {
        width: 16%;
    }
    
    table.tbl-tooth tr th:nth-child(2) {
        width: 10%;
    }    
    
    table.tbl-tooth tr th:nth-child(3) {
        width: 21%;
    }
    
    .dental-implant .flex-item100.mgt-20.mgl-25 {
        padding: 0 15px;
    }
    

    .information-clean-dental-clinic__map-clean-dental-clinic {
        margin-top: -95px;
    }   

} 

@media screen and (min-width: 1500px) and (max-width: 1680px) {
    .information-clean-dental-clinic__map-clean-dental-clinic {
        margin-top: -100px;
    }  
}

@media screen and (max-width: 992px) {
    .contact-form-st1 tr td:first-child {
        width: 40%;
    }
}

@media screen and (max-width: 1024px) {   
    
    #page-title {
        margin-top: 104px;
    }    
    
    #page-title h2 {
        left: 30%;
    }
    
    #profile4.case-intro2 {
        padding: 20px 15px 10px;
    }
    
    table.tbl-case {
        max-width: 870px;
    }
    
    table.tbl-profile tr td:first-child {
        width: 20%;
    }
    
    #greetings .my-subhead {
        text-align: left;
    }
    
    p.mgt-20.note {
        padding: 0 30px;
    }
    
    .service-button__inner .case-title.case-title1 {
        font-size: 16px;
    }
    
    .figure-content-shadow__text {
        height: 270px!important;
    }
    
    .button-icon-link__text {
		font-size: 12px;
	}

    .title-sm.mgt-40.mgl-25.w93 {
        width: 90%;
    }

    .title-sm.mgt-40.mgl-25.title-sm4 {
        width: 90%;
    }
    
    
    
}

@media screen and (max-width: 834px) {
    #page-title h2 {
        top: 90px;
        left: 35%;
    }
    
    #page-title {
        margin-top: 0;
    }
    
    .nav__list {
        margin-bottom: 0;
    }
    
    table.tbl-case {
/*        max-width: 700px;*/
        max-width: 725px;
    }
    
    .case-intro2 .flex-item50 {
        max-width: calc(100%/ 2 - 40px);
    }
    
    .case-intro2 .flex-item100 {
        max-width: calc(100% - 80px);
    }
    
    #profile4.case-intro2 {
        padding: 20px 15px 10px;
    }
    
    table.tbl-profile tr td:first-child {
        width: 25%;
    }
    
    .case-item {
        max-width: 100%;
        margin: 0 0 30px 0;
    }
    
    .service-button {
        height: 200px;
    }
    
    .service-button__inner {
        height: 180px;
    }
    
    .figure-content-shadow__text {
        height: auto!important;
        margin-top: 20px;
        display: flex;
        justify-content: center;
    }
    
    .button-icon-link__text {
		font-size: 15px;
        display: block;
	}


    .information-clean-dental-clinic__map-clean-dental-clinic {
        margin-top: 10px;
    }
    
}

@media screen and (max-width: 768px) {
    .case-intro2 .flex-item50 {
        max-width: calc(100%/ 2 - 40px);
    }
    
    .case-intro2 .flex-item100 {
        max-width: calc(100% - 80px);
    }
    
    #profile4.case-intro2 {
        padding: 20px 15px 10px;
    }
    
    table.tbl-case {
        max-width: 660px;
    }
    
    .section-title__text--en {
        font-size: 65px;
    }
}

@media screen and (max-width: 767px) {
    table.tbl-gigi3 tr td:first-child {
        width: 100%;
    }
    table.tbl-profile tr td:first-child {
        width: 100%;
    }

    table.tbl-profile tr td:last-child {
        width: 100%;
        margin-bottom: 20px;
    }
    
    table.tbl-profile tr td {
        display: block;
    }
    
    table.tbl-profile tr:nth-child(1) td, 
    table.tbl-profile tr:nth-child(2) td {
        line-height: 2.0em;
    }
    
    table.tbl-profile5 tr td:first-child {
        width: 100%;
        display: block;
    }

    table.tbl-profile5 tr td:last-child {
        width: 100%;
        display: block;
        margin-bottom: 20px;            
    }
    
    .flex-item50 {
        max-width: 100%;
        margin-bottom: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .flex-item60 {
        max-width: 100%;
        margin-bottom: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .flex-item40 {
        max-width: 100%;
        margin-bottom: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .flex-item20 {
        max-width: 100%;
        margin-bottom: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }


    .img-adjust {
        position: initial;
        top: 0;
        transform: none;
    }
    
    img.mgt-20.implant05 {
        width: 100%;
    }
    
    #equipment .flex-item50 img {
        width: 100%;
        height: auto;
        object-fit: none;
    }
    
    .sp-none {
        display: none;
    }
    
    .sp-show {
        display: inline-block;
    }
    
    .staff-intro {
        padding: 15px!important;
        width: 90%;
    }
    
    table.tbl-gigi2 {
        width: 95%;
    }
    
    .w-750 {
        padding-left: 15px;
    }
    
    table.tbl-gigi2 tr td:first-child {
        border-left: none;
        background-color: #1A69C6;
        color: #fff;
        padding: 15px;
    }
    
    table.tbl-gigi2 tr td {
        height: auto;
    }
    
    table.tbl-gigi {
        width: 95%;
    }
    
    .case-item {
        max-width: 100%;
        margin: 0 0 30px 0;
    }
    
    .service-button {
        height: 260px;
    }

    .service-button__wrapper {
        height: 215px;
    }    

    .service-button__inner {
        height: 300px;
    }
    
    .service-button__icon {
        padding-bottom: 10px;
    }
    
    .service-button__icon img {
        height: 70px;
        width: 100%;
        object-fit: contain;
    }
    
    .case-item2 {
        max-width:  calc(100% / 3 - 15px);
        margin: 0 15px 15px 0;
    }
    
    .case-item2:last-child {
        margin-right: 0;
    }
    
    table.tbl-gigi3 {
/*        width: 100%;*/
        width: 95%;
    }
    
    table.tbl-gigi3 tr th {
        display: block;
    }
    
    table.tbl-gigi3 tr td {
        display: block;
    }
    
    table.tbl-flow {
        width: 100%;
    }
    
    table.tbl-flow tr td {
        display: block;
    }
    
    table.tbl-flow tr td.txt-flow {
        width: 100%;
    }
    
    table.tbl-flow tr td.arrow {
        width: 100%;
        transform: rotate(90deg);
        font-size: 35px;
    }
        
    .contact-form-st1 tr td {
        padding: 10px;
        white-space: wrap;
        width: 100% !important;
        float: left;
        display: block;
    }
    .contact-form-st1 tr td:first-child {
/*        max-width: inherit;*/
        max-width: 320px;
		max-width: unset;
        width: 100%;        
    }
    .btn_submit,
    .btn_reset {
        width: 100px;
    }
    
    
    .no-border td {
        word-wrap: break-word;
        white-space: normal;
    }
    
    span.wpcf7-list-item-label {
        word-wrap: break-word;
        white-space: normal;
    }

    .contact-form-st1 tr.no-border td label {
        word-wrap: break-word;
        white-space: normal;
    }
    
    #page-title h2 {
        font-size: 18px;
        top: 108px;
/*        left: 50px;*/
        width: 80%;
        text-align: center;
        left: 50%;
        transform: translateX(-50%);
    }
    
    .ft-flex {
        flex-wrap: wrap;
    }
    
    .ft-logo-gigi {
        flex-basis: 100%;
        text-align: center;
        margin: 0 auto 30px auto;
    }
    
    .ft-menu-page {
        flex-basis: 100%;
        text-align: center;        
    }
    
    .ft-menu-page .menu-wrap a {
        margin-right: 0;
    }
    
    .menu-wrap {
       display: flex;
        justify-content: center;
    }
    
    .ft-menu-page a {
        display: block;
        text-align: left;        
    }
    
    #case8 {
        padding: 20px 15px 80px;
    }
    
    table.tbl-case {
/*        max-width: 700px;*/
        max-width: 600px;
        margin: 0 auto;
    }
        
    table.tbl-case tr td:first-child {
        background: #1A69C6;
        color: #fff;        
        width: 100%;
        display: block;
    }
    
    table.tbl-case tr td:last-child {
        width: 100%;
        display: block;
    }
    
    .flex-item100 img {
        object-fit: contain;
        height: auto;
    }
    
    #treatment1 .flex-item50 .img-sp {
        height: 420px;
        width: 100%;
        object-fit: cover;
    }
    
    .flex-item50 img {
        height: auto;
        width: 100%;
        object-fit: contain;
    }
    
    #implant .flex-item50 img {
        height: auto;
        object-fit: contain;
        order: 2;
    }
    
    #implant .flex-item50 .txt-subhead {
        order: 1;
    }
    
    tr.no-border {
        display: block;
        padding-left: 0;
        margin-left: -10px;
    }
	
	 #contact-form tr.no-border {
        margin-left: 0;
    }
    
    .order-1-sp {
        order: 1;
    }
    
    .order-2-sp {
        order: 2;
    }

    .order-3-sp {
        order: 3;
    }

    .order-4-sp {
        order: 4;
    }
    
    
    .case-intro2 .flex-item50 {
        max-width: 100%;
    }
    
    .case-intro2 .flex-item100 {
        max-width: 100%;
    }
    
    .section-title__text--en {
        font-size: 52px;
    }
    
    table.tbl-profile tr td {
        width: 100%;
        display: block; 
        text-align: left!important;
    }
    
    #profile2 .flex-item50 {
        max-width: 100%;
    }
    
    #profile4 .flex-item50:first-child {
        max-width: 100%;      
    }
    
    #profile4 .flex-item50:last-child {
        max-width: 100%;
        padding-right: 15px;
    }
    
    .mission-txt {
        font-size: 18px;
    }
    
    #concept .flex-item50 {
        max-width: 100%;
        padding: 0 20px;
    }
    
    #concept .pdl-50 {
        padding-left: 15px!important;
    }
    
    .img-dental {
        height: 300px!important;
        width: 100%!important;
        object-fit: cover!important;
    }
    
    #profile3 .flex-item50 img {
        width: 100%;
    }
    
    #equipment img {
        padding: 0 20px; 
        height: auto;       
    }
    
    .flex-item40 {
/*        padding-left: 0;*/
        padding-right: 0;
    }
    
    .flex-item60 {
/*        padding-left: 0;*/
        padding-right: 0;
    }
    
    .flex-item60.flex-item60b {
        padding-left: 0;
    }
    
    .flex-item40.flex-item40b.mgl-25 {
        margin-left: 0;
    }
    
    .flex-item40.flex-item40b.img-right {
        padding-left: 0;
    }
    
    .txt-indent {
        padding-right: 20px;
    }
    
    #equipment .flex-item100 {
        max-width: 100%;
    }
    
    .my-flex2.mgt-40 {
        margin-top: 20px;
    }
    
    .case-flex {
        margin-top: 40px;
        padding: 0 15px;
    }

    h3.mgt-60 {
        padding-left: 15px;
    }
    
    .flex-item50 h4 {
        text-align: left;
    }
    
    .headline-new {
        font-size: 22px;
        margin: 80px auto 40px;
        width: 82%;
    }
	
	 #case3 .headline-new {
        margin: 0 auto 40px;
    }
    
    #privacy-policy {
		margin: 10px auto 0;
		width: calc(100% - 24px);
    }
	
	.tal-c {
		text-align: center;
	}
    
    .title-sm {
        margin: 0;
        font-size: 17px;
        padding-left: 0;
    }
    
    .sentence-content__title {
        margin-left: 15px;
        padding-left: 15px;
    }
    
    .my-flex {
        width: 90%;
        margin: 20px auto 0;
    }
    
    .img-medical02 {
        padding: 10px;
    }
    
    .p-relative .txt-right {
        bottom: -90px;
        width: 100%;
    }
    
    .txt-indent2 {
        padding-left: 20px;
        padding-right: 15px;
    }
    
    .txt-indent2 .img-medical02 {
        padding: 0 20px 0 0;
    }
    
    table.tbl-gigi.tbl-lightblue tr td:first-child {
        width: 100%;
    }
    
    table.tbl-gigi.tbl-lightblue tr td {
        height: auto;
    }
    
    .pd-custom {
        padding: 60px 15px 35px 15px;
    }
    
    .dental2 p {
        padding: 0 15px;
    }
    
    .dental2 h3.sentence-content__title.mgt-40.mgl-15 {
        margin-left: 15px;
    }
    
    .dental2 .my-flex-border {
        width: 90%;
        margin: 40px auto 10px;
    }
    
    .dental2 .flex-item40.mgt-20.mgl-15 {
        padding-left: 0;
    }
    
    table.tbl-tooth {
        width: 1140px;
    }
    
    .scroll-hint-icon {       
        position: absolute;
        top: 30px!important;
        width: 180px!important;
        min-height: 100px;
    }
    
    .txt-center.mgt-40 {
        padding: 0 15px;
    }
    
    .my-flex.my-flex-border.space-even.mgt-40.mgb-80 {
        margin-bottom: 80px;
    }
    
    .my-txtwrap {
        padding: 0 15px;
    }
    
    .my-txtwrap2 {
        padding: 10px 15px 0;
        margin-bottom: 20px;
    }

    .my-txtwrap3 {
        padding: 0 15px;
    }
    
    .dental3 p {
        padding: 0 15px;
    }
    
    .dental3 ul.my-ul {
        padding: 0 30px;
    }
    
    .dental3 h3.sentence-content__title.mgt-40.mgl-25 {
        margin-left: 30px;
    }
    
    .my-flex.my-flex-border.mgt-40.space-even {
        margin: 40px auto;
    }
    
    .my-flex.my-flex-border.mgt-40.space-even .flex-item60 {
        padding-left: 0;
    }
        
    img.img-tooth20 {
        margin-left: 0;
    }
    
    .my-flex-border.mgt-40.mgb-80 {
        width: 90%;
        margin: 40px auto 80px;
    }
    
    .my-flex-border.mgt-40.mgb-80 .pdl-25 {
        padding-left: 0;
    }
    
    .flex-item60.mgt-20 {
        padding-left: 0;
    }
    
    .dental2 p.nothing {
        padding: 0;
    }
    
    .flex-item40 {
        padding-left: 0;
    }
    
    .flex-item60 {
        padding-left: 0;
    }
    
    .flex-item50.mgt-20.mgl-15 {
        padding: 0;
    }
    
    .flex-item50.mgt-20 {
        padding: 0;
    }
        
    .my-flex-border {
        padding: 30px 15px;
    }
    
    img.img-eldery {
        height: auto;
    }
    
    .title-sm.mgt-40.mgl-15 {
        width: 90%;
        margin: 40px auto 20px;
    }
    
    .title-sm.mgt-60.mgl-15 {
        width: 90%;
        margin: 60px auto 20px;
    }
    
    .my-flex-border.mgt-40 {
        width: 90%;
        margin: 40px auto 20px;
        /*padding: 15px 0;  */    
    }
    
    .dental-implant .flex-item100.mgt-40.mgl-25 {
        margin-left: 0;
        margin-top: 0;
    }
    
    .dental-implant .title-sm.mgl-25 {
        margin-left: 0;
        margin-top: -20px;
    }
    
    .dental-implant .flex-item40.mgt-40.mgl-25 {
        margin-left: 0;
    }
    
    .dental-implant .flex-item50.mgl-15 {
        padding: 0;
    }
    
    img.img-implant02 {
        padding: 0 15px;
    }
    
    table.tbl-gigi2.tbl-gigi2a tr td:last-child {
        text-align: left;
    }
    
    .dental-implant ol.my-ol {
        margin-left: 15px;
    }
    
    .dental-implant .title-sm.mgt-40 {
        width: 90%;
        margin: 20px auto 20px;
    }
    
    img.mgt-20.implant05 {
        margin: 20px auto;
    }
    
    img.img-implant06 {
        height: auto;
    }
    
    .img-implant1 {
        margin-left: 0;
    }
    
    .img-implant2 {
        margin-left: 0;
    }
    
    img.img-arrowdown.sp-show {
        margin: 0 90px;
    }
    
    table.tbl-gigi2.tbl-gigi2b tr td:first-child {
        width: 100%;
    }
    
    table.tbl-gigi2.tbl-gigi2b tr td:nth-child(3) {
        text-align: right;
    }
    
    .dental-implant p.mgt-20.mgl-25 {
        padding: 0 15px;
        margin-left: 0;
    }
    
    .dental-implant .flex-item40.mgt-40.mgl-15 {
        margin-top: -30px;
        margin-bottom: 0;
    } 
    
    .dental-implant .gapless-sp {
        margin-top: -40px;
    }
    
    table.tbl-gigi2.tbl-gigi2b.mgl-25 {
        margin-left: 10px;
    }
    
    .dental-implant .flex-item60.mgt-20.mgl-25 {
        margin-left: 0;
    }
    
    .dental-implant .p.mgl-25 {
        margin-left: 0;
    }
    
    .dental-implant .flex-item100.mgt-20.mgl-25 {
        margin-left: 0;
    }
    
    .dental-implant p.mgt-40.mgl-30.pdr-70 {
        margin-left: 0;
        padding: 0 15px;
    }
    
    .dental-implant p.mgt-20.mgl-30 {
        margin-left: 0;
    }
    
    .dental-implant .my-flex.mgt-40.my-flex-border.flex-start .flex-item60 {
        padding: 0 15px;
    }
    
    .dental-implant .my-txtwrap2 p.mgt-20.mgl-30 {
        padding: 0 15px;
    }
    
    .gapless-sp2 {
        margin-top: -20px;
    }
    
    button.button-icon-link.button-icon-link2.button-icon-link--full {
        width: 380px;
        padding-top: 0;
    }

    .flex-item25 {
        flex: 100%;
        margin-bottom: 20px;
    }

    .flex-item40c {
        flex: 100%;
        margin-bottom: 20px;
    }

    .implant-img {
        padding: 0 15px;
    }

    .img-implant1 {
        width: auto;
    }

    .flex-item40.ctimg {
        margin-left: 0;
        margin-bottom: 0;
    }

    img.img-teeth {       
        top: 0;
        margin-bottom: 0;
    }

    img.img-teeth3 {       
        top: 0;
        margin-bottom: 0;
    }

    .mgl-15 {
        margin-left: 0;
    } 

    .img-teeth2 {
        margin-left: 0!important;
    }

    .figure-content-shadow__icon-image-wrapper {
        padding-top: 20px;
    }

    button.button-icon-link {
        display: block;
        margin: 40px auto 20px;
    }

    table.tbl-time tr td {       
        vertical-align: middle;
    }

    .note__text {
        margin: 20px 0;
    }

    .director__text {
        padding-top: 20px;
    }

    .greetings-form-the-director__text {
        padding-bottom: 20px;
    }

    .sentence-content__title {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .sentence-content__text {
        padding-bottom: 20px;
    }

    .service-button__title {
        padding-bottom: 10px;
    }

    .map-clean-dental-clinic__iframe {
        margin-top: 20px;
    }

    .greetings-form-the-director__subtitle {
        margin-bottom: 40px;
    }

    .section-title__text--ja {
        margin-bottom: 20px;
    }

    #treatment1 {
        padding: 0 0 60px;
    }

    #dental-implant {
        padding-bottom: 0;
    }

    .flex-item100.mgt-40.mgb-40 {
        margin: 0;
    }

    img.img-implant08.img-implant08a {
        margin-top: 10px;
    }

    .flex-item40.mgt-20.mgl-15 {
        margin-bottom: 0;
    }
   
}

@media screen and (max-width: 430px) {
    button.button-icon-link.button-icon-link2.button-icon-link--full {
        width: 380px;
        padding: 15px;
    }

}

@media screen and (max-width: 376px) {
    button.button-icon-link.button-icon-link2.button-icon-link--full {
        width: 340px;
        padding-top: 15px;
    }
}

/*=== Blog styling ====*/

/* Blog */
.blog_wrap {
    padding: 60px 30px;   
    margin: 0 auto;
    max-width: 1200px;
}

.main-blog-ct {
    background-color: #fff;
/*    padding-bottom: 30px;*/
    width: 67%;
    float: left;
    margin-right: 3%;
}

.clear {
    clear: both;
}

.header-blog {
    position: relative;  
    font-weight: 700;
    color: #555;
    line-height: 140%;   
    border-bottom: 3px solid #1A69C6;
    font-size: 26px;
    text-align: left;
}

.header-blog:after {
    border-bottom: 3px solid #1A69C6;
}

/* Blog Post Area */
.list-posts .post {
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 1px solid #efefef;
/*==========   SET MIN-HEIGHT IF BLOG POST THUMBNAIL IMAGE EXIST  =============*/
/*    min-height: 180px;*/
}

.list-posts .post:last-child {
/*    margin-bottom: 0;*/
}

.list-posts .post a {
    display: flex;
    flex-wrap: wrap;
}

/*
.list-posts .post a .img {
    width: 30%;
}

.list-posts .post a .img img {
    max-width: 100%;
    height: auto;
}
*/

/* Blog Post Thumbnail Photo */
.blog-photo {
    width: 25%;
    float: left;
/*    margin-right: 1%;*/
}

.blog-photo img {
    height: 150px;   
    width: 100%;
    object-fit: cover;
}

.list-posts .post a .info {
    width: 100%;
    padding-left: 15px;
/*    letter-spacing: 0;   */
}

.info {
    font-size: 16px;
    line-height: 160%;
}

.info div {
    line-height: 160%;
}

.info .info-title {
    font-weight: 700;
    font-size: 18px;
}

.info .date {
    font-size: 14px;
    font-weight: normal;
    padding: 5px 0;
}

.info .excerpt {
    font-weight: normal;
}

/* Side Widget Area */
/*
h2.widgettitle {    
    font-size: 24px;
    color: #000;
    padding: 5px;
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
}
*/

/*
.sidebar {
    padding: 0 15px;
    margin-top: -20px;
    width: 30%;
    float: left;
}
*/

.sidebar::after {
    clear: both;
}

/*
.sidebar-wrap {
    padding: 6px 10px 30px 10px;
    background-color: #fff;
}
*/

.sidebar ul {
    list-style-type: none;
}
.sidebar ul li {
    padding: 10px 0;
    border-bottom: 1px solid #efefef;
    font-size: 16px;
    font-weight: 5500;
    letter-spacing: 0;
}
.sidebar ul li a {
    color: #000;
}

.sidebar ul li:first-child {
    padding-top: 0;
}

/* Single Blog Page */
.single img {
    max-width: 100%;
    height: auto;
}
.single-date {
    margin: 15px 0;
    font-size: 16px;
    letter-spacing: 0;
}

.single-ct {
    font-size: 16px;
    padding-bottom: 30px;
    letter-spacing: 0;    
}

.single-ct p {
    line-height: 160%;
}

.single-ct strong {
    font-weight: bolder;
}

/* calendar widget */
#wp-calendar {
    width: 100%;
}

#wp-calendar caption {
    text-align: right;
    color: #333;
    font-size: 16px;
    margin-top: 10px;
    margin-bottom: 15px;
}

#wp-calendar thead {
    font-size: 10px;
}

#wp-calendar thead th {
    padding-bottom: 10px;
    font-size: 15px;
    padding-left: 10px;
}

#wp-calendar tbody {
    color: #aaa;
}

#wp-calendar tbody td {
    background: #f5f5f5;
    border: 1px solid #fff;
    text-align: center;
    padding: 8px;
}

#wp-calendar tbody td:hover {
    background: #fff;
}

#wp-calendar tbody .pad {
    background: none;
}

/*
#wp-calendar tbody td a {
    background: #1A69C6;
    color: #fff;
}
*/

#wp-calendar tfoot #next {
    font-size: 10px;
    text-transform: uppercase;
    text-align: right;
}

#wp-calendar tfoot #prev {
    font-size: 10px;
    text-transform: uppercase;
    padding-top: 10px;
}

/* Pagination */
.pagination {
    display: flex;
    justify-content: center;
    font-weight: bold;
}

.pagination .page-numbers {
    padding: 8px 15px;
}

.pagination .current {
    background-color: #1A69C6;
    color: #fff; 
}


@media screen and (max-width:1025px) {
    .mgt-20.note {
        margin-left: 0!important;
    }
}

@media screen and (max-width:1024px) {
    section#child-treatment {
        padding: 0 60px;
    }

    section#prevention {
        padding: 0 60px;
    }
    
    section#surgical-treatment {
        padding: 0 60px 80px;
    }
    
    section#periodontal {
        padding: 0 60px;
    }
    
    section#aesthetic {
        padding: 0 60px 80px;
    }

    
}

@media screen and (max-width:834px) {
    .sidebar-wrap {
        padding: 7px 10px 30px 10px;
    }
}

@media screen and (max-width:768px) {
    
    h2.widgettitle {    
        font-size: 18px;
        font-weight: bold;   
    }
    
     .pagination { 
        float: left;        
        display: flex;
        justify-content: center;
        font-weight: bold;
    }
    
    .sidebar-wrap {
        padding: 16px 10px 30px 10px;
    }
}


@media screen and (max-width: 767px) {
    .blog_wrap {
        padding: 30px 10px;
    }
    .main-blog-ct {
        width: 100%;
        margin-right: 0;
        margin-bottom: 60px;
        padding: 20px 10px 30px 10px;
    }
    .list-posts .post a .img {
        width: 100%;
        margin-bottom: 15px;
        text-align: center;
    }
    .list-posts .post a .info {
        width: 100%;
        padding-left: 0;
    }
    .sidebar {
        padding: 0;
        width: 100%;
    }    
    .blog-photo {
        margin-right: 1%;
    }
    
    #staff {
        padding: 20px 0 80px;
    }
    
    #profile4 {
        padding: 20px 0 80px;
    }
    
    .headline {
/*        font-size: 30px;*/
        font-size: 26px;
        line-height: 1.8em;
    }
    
    #greetings {
        padding: 40px 15px 60px;
    }
    
    #case9 {
        padding: 40px 15px 60px;
    }
    
    .flex-item100 {
        max-width: 100%;
    }
    
    .med-info {
        padding: 80px 15px 0;
    }
    
    .txt-subhead {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    p.txt-bold.pdt-60.w-1020 {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    p.txt-bold.pdt-80.txt-subhead2.w-1020 {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .my-flex.pdt-80.w-1020.flex-start {
        padding-left: 15px;
    }
    
    p.txt-bold.txt-center.pdt-80.txt-subhead2 {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    p.txt-center.mgt-30 {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    p {
/*
        padding-left: 15px;
        padding-right: 15px;
*/
/*
        padding-left: 15px;
        padding-right: 15px;
*/
    }
    
    .my-process {
        width: 95%;
        margin: 0 auto;
    }
    
    #page-title {
/*        height: 270px;*/
        height: 225px;
        margin-top: 0;
    }
    
    #page-title h2 {
        top: 65px;
        width: 100%;
    }
    
    section#child-treatment {
        padding: 0 5px;
    }
    
    section#prevention {
        padding: 0 5px;
    }
    
    section#surgical-treatment {
        padding: 0 5px 80px;
    }
    
    section#periodontal {
        padding: 0 5px;
    }
    
    #case4 {
        padding: 0 5px 110px;
    }
    
    .workplace-img {
        max-width: 100%;
    }
    
    .workplace-txt {
        max-width: 100%;
        padding: 0;
    }
    
    .workplace-txt2 {
        max-width: 100%;
        padding: 0;
        order: 2;
    }
    
    .workplace-img2 {
        max-width: 100%;
        order: 1;
    }
    
    .mgl-15 {
        margin-left: 0;
    }
    
	.ctimg {
		margin-left: 0;
	}
	
    .flex-item100.mgt-80.mgl-15 {
        margin-top: 20px;
    }
    
    .mgl-25 {
        margin-left: 15px;
    }
    
    .title-sm.mgt-40.mgl-25 {
        width: 90%;
        margin: 40px auto;            
    }
    
    p.mgt-20.mgl-25 {
        padding: 0 25px;
    }

    .staff-intro p strong {
        margin-top: 20px;
        margin-bottom: -20px;
        display: block;
    }
    
    .my-flex.mgt-40 {
        margin-top: 10px;
    }
    
    .case-flex.mgt-40 {
        margin-top: 0;
    }

    .case-flex {
        margin-top: 10px;
    }

    .case-item-empty {
        display: none;
    }

    .case-item {
        margin-bottom: 10px;
    }

    
}
/* End Blog */


@media screen and (max-width: 767px) {
    .tooth-decay-image-container {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .tooth-decay-image-container img {
        min-width: 1500px;
        width: auto;
        height: auto;
    }

    .figure-content-shadow {
        margin-top: 6vw;
        padding-bottom: 10px;
    }

    .map-clean-dental-clinic__iframe {
        height: 390px;
    }

    button.button-icon-link.button-icon-link3 {
        margin: 0 auto;
    }

    button.button-icon-link.button-icon-link3.less-botton {
        margin: 20px auto 10px;
    }
	
	footer.footer.lower-page .footer__copy,
	footer.footer.lower-page .toggle__copy {
		padding: 5.333vw 0 10px;
	}
	
	.footer__copy,
	.toggle__copy {
		padding: 5.333vw 0 88px;
	}
	
	.back_to_top {
		bottom: 118px;
        right: 15px;
	}
	
	.blog-wrap2 {
		flex-wrap: nowrap;
	}

	.blog-details {
		padding-left: 30px;
	}
}

/*===== Custom ====*/
.mgt-10 {
    margin-top: 10px;
}

.mgt-20 {
    margin-top: 20px;
}

.mgt-25 {
    margin-top: 25px;
}

.mgt-30 {
    margin-top: 30px;
}

.mgt-40 {
    margin-top: 40px;
}

.mgt-60 {
    margin-top: 60px;
}

.mgt-80 {
    margin-top: 80px;
}

.mgb-10 {
    margin-bottom: 10px;
}

.mgb-20 {
    margin-bottom: 20px;
}

.mgb-30 {
    margin-bottom: 30px;
}
.mgb-40 {
    margin-bottom: 40px;
}
.mgb-50 {
    margin-bottom: 50px;
}
.mgb-60 {
    margin-bottom: 60px;
}
.mgb-80 {
    margin-bottom: 80px;
}


.pdt-20 {
    padding-top: 20px;
}

.pdt-30 {
    padding-top: 30px;
}

.pdt-40 {
    padding-top: 40px;
}

.pdt-60 {
    padding-top: 60px;
}

.pdt-80 {
    padding-top: 80px;
}

.pdb-20 {
    padding-bottom: 20px;
}

.pdb-30 {
    padding-bottom: 30px;
}

.pdb-40 {
    padding-bottom: 40px;
}

.pdb-60 {
    padding-bottom: 60px;
}

.pdb-80 {
    padding-bottom: 80px;
}

.mrg-adj {
    margin: 10px 0 0;
}
