@charset "utf-8";


/*---------------------------------

common

----------------------------------*/
#page-fv {
    height: 400px;
    justify-content: center;
    align-items: center;
    background-size: cover;
    background-position: center;
}

#bread-nav {
    font-size: 13px;
	margin-top: 30px;
}
.bread-nav__list > li {
    display:inline;
	margin-left: 10px;
}
.bread-nav__list > li:before {
    content: '>';
	margin-right: 10px;
}
.bread-nav__list > li:first-child {
    margin-left:0;
}
.bread-nav__list > li:first-child:before {
    display: none;
}
.bread-nav__list > li a {
    color: var(--main-color);
	border-bottom: solid 1px;
}

/* main-nav page ver */
.main-nav {
    margin-top: -50px;
}
.main-nav__list {
    background: #fff;
    padding: 10px 0;
    border-radius: 10px;
}

/* page title */
.page-title {
    font-size: 22px;
    font-weight: 400;
    font-family: var(--font-marugo);
	padding-bottom: 10px;
	margin-bottom: 40px;
	border-bottom: dotted 1px var(--main-color);
}
.page-title span {
    color: var(--main-color);
}
.page-subtitle {
    text-align: center;
	margin-bottom: 100px;
}
.page-subtitle h3 {
	font-size: 24px;
	font-family: var(--font-marugo);
	font-weight: 400;
	line-height: 1.8;
	color: var(--main-color);
}
.page-subtitle h4 {
	font-size: 20px;
	font-family: var(--font-marugo);
	font-weight: 400;
	line-height: 1.8;
	margin-top: 20px;
}

/* page box */
.page-box {
	margin-bottom: 110px;
	position: relative;
	z-index: 1;
}
.page-box.-bg {
	padding: 110px 0;
}
.page-box.-bg:after {
	content: '';
	width: 200vw;
	height: 100%;
	background: #f0f4f7;
	position: absolute;
	left: -50vw;
	top: 0;
	z-index: -1;
}
.page-box.-bg-wht:after {
	background: #fff;
}



/* text image */

.page-text-image {
    text-align: center;
	margin-bottom: 50px;
}
.page-text-image span {
    font-size: 90px;
    font-weight: 100;
    font-family: var(--font-Oswald);
    display: inline-block;
	line-height: 1;
    padding: 0 10px;
    background: url("../img/cmn/text_bg.jpg") no-repeat center;
    background-size: cover;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* slide */
.page-slick-slide {
	margin-top: 60px;
}
.page-slick-slide .slick-slide {
    margin-left: 20px;
    width: 300px;
}

/* page-subnav */
.page-subnav__list {
	display: flex;
	flex-wrap: wrap;
}
.page-subnav__list >li{
	width: 48%;
	margin: 0 0 10px 4%;
}
.page-subnav__list >li:nth-child(2n+1) {
	margin-left: 0;
}
.page-subnav__list >li a {
	display: block;
	font-size: 17px;
	padding: 15px 30px;
	border: solid 1px var(--main-color);
	color: var(--base-color);
	position: relative;
	border-radius: 10000px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.page-subnav__list >li a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 1px;
    border-right: solid 1px;
    transform: rotate(45deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 5px);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.page-subnav__list >li a:hover {
	color: #fff;
	background: var(--base-color);
}


/* three base */
/* 画像とテキストのセット */
.cmn-imgtext {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
	position: relative;
}
.cmn-imgtext .img {
    width: 46%;
	max-width: 430px;
}
.cmn-imgtext .has-btn li {
    margin-bottom: 10px;
}
.cmn-imgtext .has-btn li a {
    display: block;
    font-size: 15px;
    width: 100%;
    text-align: center;
    line-height: 1;
    padding: 15px 0;
    color: var(--main-color);
    border: solid 1px var(--main-color);
	border-radius: 100px;
	position: relative;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.cmn-imgtext .has-btn li a:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-top: solid 1px var(--main-color);
	border-right: solid 1px var(--main-color);
	transform: rotate(45deg);
	margin-left:20px;
	vertical-align: middle;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.cmn-imgtext .has-btn li a:hover {
	color: #fff;
	background: var(--main-color);
}
.cmn-imgtext .has-btn li a:hover:after {
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
}
.cmn-imgtext .info {
    width: 50%;
}
.cmn-imgtext .info .info-text01 {

}
.cmn-imgtext .info .info-text01:not(:last-child) {
    margin-bottom: 30px;
}
.cmn-imgtext .info .info-text02 {
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 20px;
}
.cmn-imgtext .info .info-text03 {
    font-size: 24px;
	font-family: var(--font-marugo);
    font-weight: 500;
    margin-bottom: 20px;
}
.cmn-imgtext .info .info-box {
    padding: 20px;
    background: #eff6fb;
}
.cmn-imgtext .info .info-list {
	margin-bottom:50px;
}
.cmn-imgtext .info .info-list li {
	font-size: 15px;
	line-height:2;
	padding-left:20px;
	margin-bottom: 10px;
	position: relative;
}
.cmn-imgtext .info .info-list li:last-child {
	margin-bottom:0;
}
.cmn-imgtext .info .info-list li:before {
    content: '■';
    color: var(--main-color);
    position: absolute;
    left: 0;
    top: 0;
}

.cmn-imgtext .info .tel a {
    font-size: 36px;
    font-family: var(--font-en);
    color: var(--main-color);
    letter-spacing: 2px;
}
.cmn-imgtext .info .tel a i {
	display: inline-block;
	width: 21px;
	height: 34px;
	background: url("../img/cmn/tel_gd.svg") no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right:10px;
}
.cmn-imgtext-wrap {
	margin-top: 70px;
}


.cmn-cause {
    margin: 110px 0 70px;
}
.cmn-cause--list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.cmn-cause--list li {
    width: 32%;
    padding: 60px 20px;
    position: relative;
    background: #f0f4f7;
    border-radius: 10px;
}
.cmn-cause--list li .point {
    font-size: 18px;
    width: 96px;
    height: 96px;
    line-height: 96px;
    text-align: center;
    margin-left: -48px;
    color: #fff;
    border-radius: 100px;
    background: var(--main-color);
    position: absolute;
    top: -48px;
    left: 50%;
}
.cmn-cause--list li .point span{
	font-size: 24px;
}
.cmn-cause--list li h4{
    font-size: 20px;
	font-weight: 400;
    font-family: var(--font-marugo);
    text-align: center;
    margin-bottom: 20px;
}


/* 関連リンク */
.relation-link {
    margin-top: 70px;
}
.relation-link h4 {
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
	margin-bottom: 30px;
}
.relation-link--list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.relation-link--list li {
    width: 30%;
}
.relation-link--list li a {
	display:block;
    width: 100%;
    text-align: center;
    line-height: 1;
    padding: 15px 0;
    color: var(--main-color);
    background: #fff;
    border: solid 1px;
	border-radius: 100px;
	position: relative;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.relation-link--list li a:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-top: solid 1px #a38e66;
	border-right: solid 1px #a38e66;
	transform: rotate(45deg);
	margin-left:20px;
	vertical-align: middle;
}
.relation-link--list li a:hover {
	color: #fff;
	background: var(--main-color);
}

@media (max-width: 815px) {

	#page-fv {
		height: 200px;
	}
	.page-box {
		margin-bottom: 60px;
	}
	.page-box.-bg {
		padding: 60px 0;
	}

	.page-title {
		font-size: 16px;
		margin-bottom: 30px;
	}
	.page-subtitle {
		margin-bottom: 50px;
	}
	.page-subtitle h3 {
		font-size: 17px;
	}
	.page-subtitle h4 {
		font-size: 14px;
		margin-top: 10px;
	}

	.page-text-image {
		margin-bottom: 30px;
	}
	.page-text-image span {
		font-size: 60px;
	}
	.page-slick-slide .slick-slide {
		margin-left: 20px;
		width: 200px;
	}
	
	.page-subnav__list {
		display: block;
		padding: 20px;
	}
	.page-subnav__list >li {
		width: 100%;
		margin: 0 0 15px;
	}
	.page-subnav__list >li a {
		font-size: 14px;
	}
}


/*---------------------------------
about-three
----------------------------------*/

.about-three-reason__list {
    position: relative;
    padding: 200px 0 100px;
}
.about-three-reason__list:after {
	content: '';
	width: 200vw;
	height: 100%;
	background: url("../img/cmn/feature_bg.png") repeat-x center top;
	background-size: cover;
	position: absolute;
	left: -50vw;
	top:0;
	z-index: -1;
}

@media (max-width: 815px) {


}

/*---------------------------------

docotor

----------------------------------*/
.doctor-main .img {
	margin-bottom: 80px;
}
.doctor-main .img p {
    color: #fff;
    font-size: 78px;
    font-family: var(--font-en);
    font-weight: 400;
    line-height: 1;
    position: absolute;
    left: 0;
    bottom: -12px;
}
.doctor-main h3 {
	font-size: 26px;
    font-weight: 400;
    font-family: var(--font-marugo);
	line-height: 1.6;
	margin-bottom: 20px;
}
.doctor-main h4 {
	font-size: 20px;
    font-family: var(--font-marugo);
	font-weight: 400;
	margin-bottom: 50px;
}
.doctor-main h4 span {
	font-size: 120%;
}
.doctor-profile {
	border-radius: 10px;
	background: #f5f5ef;
	padding: 10px 40px;
	margin: 70px auto 0;
}
.doctor-profile table {
	width: 100%;
	line-height: 1.6;
}
.doctor-profile table th {
	font-size: 14px;
	font-weight: 500;
	vertical-align: top;
	text-align: left;
	padding: 20px 0;
	width: 120px;
}
.doctor-profile table td {
	padding: 20px 0;
	font-size: 14px;
}
.certificate-img {
	margin-top:20px;
}


@media (max-width: 815px) {

	.doctor-main .img {
		margin-bottom: 40px;
	}
	.doctor-main .img p {
		font-size: 40px;
		bottom: -7px;
	}
	.doctor-main h3 {
		font-size: 20px;
		margin-bottom: 20px;
	}
	.doctor-main h4 {
		font-size: 14px;
		margin-bottom: 30px;
	}

	.doctor-profile {
		padding: 10px 20px 30px;
		margin: 40px auto 0;
	}
	.doctor-profile table th {
		font-size: 14px;
		display: block;
		width: auto;
	}
	.doctor-profile table td {
		padding: 0;
		font-size: 12px;
		display: block;
		width: auto;
	}

}


/*---------------------------------

system

----------------------------------*/
.system-intro {
    text-align: center;
    padding-top: 140px;
	background: url("../img/pages/system/system_intro_title_bg.png") no-repeat center top -40px;
	background-size: 615px;
}
.system-intro h3 {
    color: var(--main-color);
    font-size: 65px;
    font-weight: 400;
    font-family: var(--font-optima);
}
.system-intro h4 {
    font-size: 22px;
    font-weight: 400;
    margin-top: 40px;
}
.system-intro__list {
	display: flex;
	justify-content: center;
	margin-top: 50px;
}
.system-intro__list >li {
	width: 20%;
	height: 0;
	padding-top: 20%;
	position:relative;
}
.system-intro__list >li:after {
	content: '';
	width: calc(100% + 10px);
	height: calc(100% + 10px);
	border: solid 1px var(--main-color);
	border-radius: 10000px;
	position: absolute;
	top:-5px;
	left: -5px;
}
.system-intro__list >li p {
	font-size: 18px;
    font-weight: 100;
    font-family: var(--font-marugo);
	line-height: 1.9;
	text-align: center;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

#system-about {
	background: url("../img/cmn/cmn_bg.jpg") no-repeat center;
	background-size: cover;
}

.system-info__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.system-info__list >li {
    width: 48%;
    border: solid 2px var(--main-color);
    border-radius: 10px;
	overflow: hidden;
}
.system-info__list .title {
	text-align: center;
	padding: 40px 0;
}
.system-info__list .title h4 {
	font-size: 45px;
    font-family: var(--font-optima);
	font-weight: 100;
	line-height: 1;
	color: var(--main-color);
}
.system-info__list .title h5 {
	font-size: 17px;
	font-weight: 400;
}
.system-info__list p {
	padding: 25px;
	line-height: 2;
}
.s-i__list01 .title {
	background: #fef0f1;
}
.s-i__list02 .title {
	background: #f6f7fc;
}

.system-info__table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: solid 2px var(--main-color);
    border-radius: 10px;
    overflow: hidden;
}
.system-info__table th {
    font-size: 21px;
    font-weight: 500;
    font-family: var(--font-marugo);
    border-bottom: solid 1px var(--main-color);
    border-left: solid 1px var(--main-color);
    padding: 20px;
}
.system-info__table th.th01 {
	width: 200px;
}
.system-info__table th.th02 {
	background: #f0f0f0;
}
.system-info__table th.th03 {
	color: var(--main-color);
	background: #f6f7fc;
}
.system-info__table td {
	font-size: 15px;
	padding: 20px;
	border-bottom: solid 1px var(--main-color);
	border-left: solid 1px var(--main-color);
}
.system-info__table td span {
	color: var(--main-color);
	border-bottom: solid 1px;
}

#system-num {
    background: #f0f4f7;
}

.system-flow__list >li {
    padding: 30px;
    margin-bottom: 80px;
    border-radius: 10px;
    border: solid 2px var(--main-color);
    position: relative;
}
.system-flow__list >li:not(:last-child):after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--main-color) transparent transparent transparent;
	border-width: 20px 20px 0px 20px;
	position: absolute;
	bottom: -50px;
	left: calc(50% - 20px);
}
.system-flow__list >li h3 {
	color: var(--main-color);
    font-size: 22px;
    font-weight: 500;
    font-family: var(--font-marugo);
	margin-bottom: 25px;
}
.system-flow__list .box {
    display: flex;
    justify-content: space-between;
}
.system-flow__list .box .img {
    width: 35%;
}
.system-flow__list .box .info {
    width: 60%;
}
.system-flow__list .box .info b {
	font-weight: 500;
    color: var(--main-color);
}

.system-flow__sublist {
    display: flex;
    flex-wrap: wrap;
}
.system-flow__sublist >li {
	width: 30%;
	margin: 0 0 30px 5%;
}
.system-flow__sublist >li:nth-child(3n+1) {
	margin-left: 0;
}
.system-flow__sublist >li h4 {
	font-size: 17px;
	font-family: var(--font-marugo);
	margin: 15px 0 5px;
}
.system-flow__sublist >li p {
	line-height: 1.6;
}

.system-flow2__list {
    display: flex;
}
.system-flow2__list >li {
    width: 48%;
    margin: 0 0 70px 4%;
    border-radius: 10px;
    border: solid 2px var(--main-color);
    position: relative;
}
.system-flow2__list >li:nth-child(2n+1) {
    margin-left: 0;
}
.system-flow2__list >li:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--main-color) transparent transparent transparent;
	border-width: 20px 20px 0px 20px;
	position: absolute;
	top: -50px;
	left: calc(50% - 20px);
}
.system-flow2__list >li h3 {
	color: var(--main-color);
	text-align: center;
	font-size: 20px;
	font-family: var(--font-marugo);
	background: #f0f4f7;
	padding: 20px 0;
	margin-bottom: 15px;
    border-radius: 10px 10px 0 0;
}
.system-flow2__list >li .in {
	padding: 30px;
}
.system-flow2__list >li h4 {
	font-size: 17px;
	font-weight: 400;
	text-align: center;
	margin-bottom: 15px;
}
.system-flow2__list >li h4 span {
	color: var(--main-color);
	font-size: 45px;
	font-family: var(--font-optima);
}
.system-flow2__list >li p {

}



@media (max-width: 815px) {

	.system-intro {
		padding-top: 60px;
		background-size: contain;
	}
	.system-intro h3 {
		font-size: 36px;
	}
	.system-intro h4 {
		font-size: 14px;
		margin-top: 20px;
	}
	.system-intro__list >li {
		width: 23%;
		padding-top: 23%;
	}
	.system-intro__list >li:after {
		width: calc(100% + 4px);
		height: calc(100% + 4px);
		top: -2px;
		left: -2px;
	}
	.system-intro__list >li p {
		font-size: 10px;
	}

	.system-info__list {
		display: block;
	}
	.system-info__list >li {
		width: 100%;
		margin-bottom: 20px;
	}
	.system-info__list .title h4 {
		font-size: 30px;
	}
	.system-info__list .title h5 {
		font-size: 15px;
		margin-top: 5px;
	}

	.system-info__table th {
		font-size: 12px;
		padding: 10px;
	}
	.system-info__table td {
		font-size: 11px;
		padding: 10px;
		vertical-align: top;
	}
	.system-info__table th.th01 {
		width: 90px;
	}

	.system-flow__list >li {
		padding: 20px;
	}
	.system-flow__list >li h3 {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.system-flow__sublist >li {
		width: 48%;
		margin: 30px 0 0 4%;
	}
	.system-flow__sublist >li:nth-child(3n+1) {
		margin: 30px 0 0 4%;
	}
	.system-flow__sublist >li:nth-child(2n+1) {
		margin-left: 0;
	}
    .system-flow__sublist >li h4 {
        font-size: 14px;
        margin: 10px 0;
    }
	.system-flow__sublist >li p {
		font-size: 11px;
	}
	.system-flow__list .box {
		display: block;
	}
	.system-flow__list .box .img {
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}
	.system-flow__list .box .info {
		width: 100%;
	}
	.system-flow2__list >li h3 {
		font-size: 13px;
		padding: 10px 0;
	}
	.system-flow2__list >li .in {
		padding: 10px 10px 20px;
	}
	.system-flow2__list >li h4 {
		font-size: 10px;
	}
	.system-flow2__list >li h4 span {
		font-size: 30px;
	}
	.system-flow2__list >li p {
		font-size: 10px;
	}
	.system-flow2__list >li .more {
		margin-top: 20px;
	}
	.system-flow2__list >li .more a {
		min-width: 100%;
		font-size: 12px;
	}

}




/*---------------------------------

feature

----------------------------------*/
.feature-box {
}
.feature-title {
	color: var(--main-color);
	font-size: 25px;
	font-weight: 400;
	font-family: var(--font-en);
	text-align: center;
	line-height: 1;
	padding: 15px;
	margin-bottom: 40px;
    background-image: linear-gradient(to right, #e4eaf0, #f4f3f5);
}
.feature-img {
    text-align: center;
    margin-bottom: 40px;
}
.feature-check {
    color: var(--main-color);
    padding: 20px;
    margin: 40px 0;
    border: solid 1px;
    border-radius: 5px;
}
.feature-check__list >li {
    margin: 5px 0;
    padding-left: 20px;
    position: relative;
}
.feature-check__list >li:before {
	content: '□';
	position: absolute;
	left: 0;
}
.feature-point__list >li {
	margin-bottom: 40px;
}
.feature-point__list >li h4 {
	padding: 10px 20px;
	font-size: 16px;
	color: var(--main-color);
	border-radius: 1000px;
	background: #f0f4f7;
	margin-bottom: 20px;
}
.feature-point__list >li h5 {
	font-size: 16px;
	color: var(--main-color);
	margin-bottom: 5px;
}


.medical-box {
    background: #f6f5ef;
    padding: 20px;
    border-radius: 10px;
}
.medical-box h3 {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: dotted 1px var(--main-color);
}
.medical-box h3 span {
    font-size: 15px;
    color: #fff;
    background: var(--main-color);
    border-radius: 1000px;
    padding: 1px 10px;
    margin-right: 10px;
}
.medical-box img {
    margin-top: 40px;
}

.feature-catch {
    max-width: 420px;
    margin: 0 auto 120px;
}



@media (max-width: 815px) {


}


/*---------------------------------

treatment

----------------------------------*/

#treatment {
    background: #f0f4f7;
}

.menu-img {
    margin-top: 90px;
    text-align: center;
}
.menu-sub {
    margin-top: 110px;
}
.menu-sub h3 {
    font-size: 22px;
    font-weight: 400;
    font-family: var(--font-marugo);
    text-align: center;
	margin-bottom: 70px;
}
.menu-sub h3 span {
    display: inline-block;
    font-size: 26px;
    margin-top: 10px;
    border-bottom: solid 1px var(--main-color);
    padding: 0 10px 5px;
}



@media (max-width: 815px) {

	.menu-sub {
		margin-top: 60px;
	}
	.menu-sub h3 {
		font-size: 15px;
		margin-bottom: 40px;
	}
	.menu-sub h3 span {
		font-size: 17px;
		padding: 0 0 5px;
	}

}


.menu-group:not(:last-child) {
    margin-bottom: 80px;
}

/* cmn-bg */
.cmn-bg {
    padding: 60px 0;
    background: #fbf7ef;
}
/* cmn-bg */
.cmn-caution {
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
    text-align: center;
    margin-top: 20px;
}

/* cmn-worries */
.cmn-worries {
    margin-top: 80px;
    padding: 20px 20px 10px;
    border: solid 1px #bbbbbb;
}
.cmn-worries h4 {
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
    padding-left: 10px;
    margin-bottom: 20px;
    border-left: solid 5px;
}
.cmn-worries--list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.cmn-worries--list li {
    width: 50%;
    margin-bottom: 10px;
    padding-left: 20px;
    position: relative;
}
.cmn-worries--list li:before {
    content: '■';
    color: var(--main-color);
    position: absolute;
    left: 0;
    top: 0;
}
.cmn-worries.full li {
	width: 100%;
}

/* cmn-h4 & p */
.cmn-h4p {
	margin-top: 70px;
}
.cmn-h4p h4 {
	font-size: 18px;
	font-weight: 500;
	color: var(--main-color);
    padding-left: 10px;
    margin-bottom: 20px;
    border-left: solid 5px;
}

.bnrs--list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.bnrs--list li {
    width: 48%;
}

/* menu-flow */
.menu-flow__list li:not(:last-child) {
	margin-bottom: 30px;
}
.menu-flow__list li h4 {
	font-size: 18px;
	font-weight: 500;
	color: var(--main-color);
	margin-bottom: 20px;
}
.menu-flow__list li p {
	padding: 20px;
	line-height: 2.2;
	border:solid 1px #bbbbbb;
}


/* menu-price */
.menu-price .price-tax {
    text-align: right;
	margin-bottom:10px;
}
.menu-price--list li {
    display: table;
	width: 100%;
	border:solid 1px var(--main-color);
	margin-bottom: 20px;
}
.menu-price--list li:last-child {
	margin-bottom: 0;
}
.menu-price--list li h4 {
    display: table-cell;
	width: 50%;
	font-size: 18px;
    font-family: var(--font-marugo);
	font-weight: 500;
	color: #fff;
	background:var(--main-color);
	text-align:center;
	padding: 20px;
	vertical-align: middle;
}
.menu-price--list li p {
    display: table-cell;
	font-size: 18px;
	padding: 20px;
	text-align: right;
	vertical-align: middle;
}
.menu-price--list li.set {
	border-bottom: solid 1px #ccc;
	margin-bottom:0;
}
.menu-price--list li.set-item {
	border-top:none;
}


/* teatment-case */
.teatment-case--list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.teatment-case--list > li {
    width: 48%;
    padding: 30px 30px 80px;
    margin: 0 0 4% 4%;
    position: relative;
    background: #fff;
    border-radius: 10px;
}
.teatment-case--list > li:nth-child(2n+1) {
    margin-left: 0;
}
.teatment-case--list li .icon {
    display: -webkit-flex;
    display: flex;
    font-size: 18px;
    width: 96px;
    height: 96px;
    color: #fff;
    text-align: center;
    background: var(--main-color);
    border-radius: 100px;
    align-items: center;
    justify-content: center;
	position: absolute;
	top: -20px;
	left: 0;
}
.teatment-case--list li .img {
	margin-bottom: 30px;
	text-align:center;
}
.teatment-case--list li h4 {
    font-size: 20px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 20px;
    text-align: center;
    padding-bottom: 10px;
    border-bottom: solid 1px;
    font-family: var(--font-marugo);
}
.teatment-case--list ul li {
    line-height: 1.7;
    padding-left: 20px;
    margin-bottom: 10px;
    position: relative;
}
.teatment-case--list ul li:before {
    content: '■';
    color: var(--main-color);
    position: absolute;
    left: 0;
    top: 0;
}
.teatment-case--list .more {
    width: calc(100% - 60px);
    text-align: center;
    position: absolute;
    left: 30px;
    margin: 0 auto;
    bottom: 30px;
}


/* cmn-carepoint--list */
.cmn-carepoint--list {
}
.cmn-carepoint--list li {
	font-size: 20px;
    font-family: var(--font-marugo);
    color: var(--main-color);
	text-align:center;
	padding: 15px 0;
	margin-bottom: 20px;
    border: solid 1px;
}
.cmn-carepoint--list li:last-child {
	margin-bottom: 0;
}



@media (max-width: 815px) {

	.cmn-h4p {
		margin-top: 40px;
	}
	.cmn-h4p h4 {
		font-size: 16px;
	}

}

/*---------------------------------
treatment cmn
----------------------------------*/

.treatment-detail-box {
	margin-bottom: 60px;
}

/* image */
.treatment-imgs {
	margin-bottom: 50px;
	border-radius: 10px;
	overflow: hidden;
}
.treatment-imgs__list {
	display:flex;
	align-items: center;
}
.treatment-imgs__list >li {
	width: 50%;
	text-align: center;
}
.treatment-subimg {
    margin-top: 60px;
}

/* detail */
.treatment-detail-title {
    font-size: 20px;
    text-align: center;
    background: #f0f4f7;
    padding: 10px;
    margin-bottom: 30px;
    line-height: 1.7;
}
.treatment-detail-title span {
    color: var(--main-color);
}

/* worry */
.treatment-worry {
    border: solid 2px var(--main-color);
    border-radius: 10px;
    overflow: hidden;
    margin-top: 60px;
	background: #fff;
}
.treatment-worry-title {
	color: #fff;
    font-size: 18px;
    text-align: center;
    padding: 10px;
    background: var(--main-color);
}
.treatment-worry__list {
	display: flex;
	flex-wrap: wrap;
	padding: 30px;
}
.treatment-worry__list >li {
   color: var(--main-color);
	font-weight: 500;
	width: 48%;
	margin: 0 0 10px 4%;
	padding-left: 20px;
	position: relative;
	line-height: 1.6;
}
.treatment-worry__list >li:nth-child(2n+1) {
	margin-left: 0;
}
.treatment-worry__list >li:before {
	content: '□';
	position: absolute;
	left: 0;
}

.treatment-worry__list.full {
	display:block;
}
.treatment-worry__list.full >li {
	width: 100%;
	margin: 0 0 10px;
}


/* point */
.treatment-point {
    margin-top: 60px;
}
.treatment-point__list {
    display: flex;
    align-items: center;
    justify-content: center;
}
.treatment-point__list >li {
    width: 22%;
    height: 0;
    padding-top: 22%;
    margin-left: 3%;
    text-align: center;
    position: relative;
    border: solid 1px var(--main-color);
    border-radius: 10000px;
}
.treatment-point__list >li:first-child {
    margin-left: 0;
}
.treatment-point__list >li p {
    color: var(--main-color);
    font-size: 18px;
    width: 100%;
    line-height: 1.5;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.treatment-point__list >li p span {
    font-size: 110%;
    font-weight: 500;
}

/* caution */
.treatment-caution {
    margin-top: 60px;
    padding: 20px 40px;
    border: solid 1px var(--main-color);
    border-radius: 10px;
	background: #fff;
}
.treatment-caution h5 {
	font-size: 18px;
	margin-bottom: 10px;
	padding-left: 15px;
	border-left: solid 4px var(--main-color);
}
.treatment-caution h5 span {
	color:var(--main-color);
}
.treatment-caution ul >li {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 10px;
}


/* symptoms */
.treatment-symptoms__list >li {
    border: solid 2px var(--main-color);
    border-radius: 10px;
    margin-bottom: 25px;
    overflow: hidden;
}
.treatment-symptoms__list h4 {
	color: var(--main-color);
	font-size: 20px;
	background: #f0f4f7;
	padding: 20px 20px 20px 40px;
	position: relative;
}
.treatment-symptoms__list h4:before {
	content: '';
	width: 4px;
	height: calc(100% - 40px);
	background: var(--main-color);
	position: absolute;
	left: 20px;
	top: 20px;
}
.treatment-symptoms__list .in {
	display: flex;
	flex-wrap: wrap;
	padding: 30px;
}
.treatment-symptoms__list .in .img {
	width: 50%;
	text-align: center;
}
.treatment-symptoms__list .in .icon {
    display: flex;
    align-items: center;
    justify-content: center;
	width: 70px;
	height: 70px;
	line-height: 1;
	color: var(--main-color);
	font-size: 31px;
	font-family: var(--font-en);
	background: #f0f4f7;
	border-radius: 10000px;
	position: absolute;
	left: 0;
	top: 0;
}
.treatment-symptoms__list .in .info {
	width: 50%;
}
.treatment-symptoms__list .treatment-method {
	margin-top: 30px;
}
.treatment-symptoms__list .treatment-method h5 {
    font-size: 15px;
    font-weight: 400;
    color: #fff;
    display: inline-block;
    padding: 2px 20px;
    background: var(--main-color);
    border-radius: 100px;
    margin-bottom: 10px;
}
.treatment-symptoms__list .treatment-method .icons {
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: 500;
}
.treatment-symptoms__list .treatment-method .icons span:before {
	content: '■';
	color: var(--main-color);
}

/* flow */
.treatment-flow__list >li{
    margin: 0 0 20px;
    padding: 30px;
    background: #f0f4f7;
}
.treatment-flow__list.bg-white >li {
	background: #fff;
}
.treatment-flow__list >li h4 {
    display: flex;
    align-items: center;
    font-size: 20px;
    font-family: var(--font-marugo);
    margin-bottom: 20px;
    padding-bottom: 10px;
	border-bottom: solid 1px var(--main-color); 
}
.treatment-flow__list >li h4 .num {
    color: #fff;
    font-family: var(--font-en);
    background: var(--main-color);
    padding: 5px 0;
    border-radius: 1000px;
    margin-right: 10px;
    width: 110px;
    text-align: center;
}

.treatment-flow__list2 >li {
    font-size: 20px;
    font-family: var(--font-marugo);
    margin: 0 0 20px;
    padding: 20px 30px;
    background: #fff;
    border-radius: 1000px;
}
.treatment-flow__list2 >li span {
    display: inline-block;
	color: #fff;
    font-family: var(--font-en);
    background: var(--main-color);
    padding: 5px 20px;
	border-radius: 1000px;
	margin-right: 10px;
}


/* reason */
.treatment-reason-nav {
	margin-bottom: 60px;
}
.treatment-reason-nav__list {
	display:flex;
	flex-wrap: wrap;
}
.treatment-reason-nav__list >li {
	width: 48%;
    margin: 0 0 20px 4%;
    font-size: 16px;
    font-family: var(--font-marugo);
}
.treatment-reason-nav__list >li:nth-child(2n+1) {
	margin-left: 0;
}
.treatment-reason-nav__list >li a {
	color: var(--base-color);
	display: block;
    padding: 20px 10px 20px 20px;
    background: #f0f4f7;
    border-radius: 10000px;
}
.treatment-reason-nav__list >li .num {
    display: inline-block;
	color: #fff;
    font-family: var(--font-en);
    background: var(--main-color);
    padding: 5px 10px;
	border-radius: 1000px;
	margin-right: 10px;
}


@media (max-width: 815px) {

	.treatment-detail-title {
		font-size: 15px;
	}

	.treatment-worry-title {
		font-size: 15px;
	}
	.treatment-worry__list {
		display: block;
		padding: 20px;
	}
	.treatment-worry__list >li {
		width: 100%;
		margin: 0 0 10px;
	}

	.treatment-point__list >li {
		width: 32%;
		padding-top: 32%;
	}
	.treatment-point__list >li p {
		font-size: 12px;
	}

	.treatment-caution {
		margin-top: 40px;
		padding: 20px;
	}
	.treatment-caution h5 {
		font-size: 15px;
	}

	.treatment-symptoms__list h4 {
		font-size: 16px;
		padding: 10px 10px 10px 30px;
	}
	.treatment-symptoms__list h4:before {
		width: 3px;
		height: calc(100% - 20px);
		left: 15px;
		top: 10px;
	}
	.treatment-symptoms__list .in {
		display: block;
		padding: 30px 20px;
	}
	.treatment-symptoms__list .in .img {
		width: 100%;
		margin-bottom: 20px;
	}
	.treatment-symptoms__list .in .info {
		width: 100%;
	}

	.treatment-reason-nav__list {
		display: block;
	}
	.treatment-reason-nav__list >li {
		width: 100%;
		margin: 0 0 10px;
		font-size: 16px;
		text-align: center;
	}
	.treatment-reason-nav__list >li a {
		padding: 15px;
		border-radius: 10px;
	}
	.treatment-reason-nav__list >li .num {
		display: block;
		margin: 0 auto 5px;
		width: 100px;
	}
	
	.treatment-flow__list >li {
		padding: 20px;
	}
	.treatment-flow__list >li h4 {
		font-size: 15px;
		margin-bottom: 10px;
	}

}

/*---------------------------------
implant
----------------------------------*/
#implant04 .cmn-text {
	margin-bottom: 100px;
}


/*---------------------------------
menu estheti
----------------------------------*/

.about-esthetic--list li {
    margin-bottom: 50px;
    padding: 30px;
    background: #f0f4f7;
	border-radius: 10px;
}
.about-esthetic--list li:last-child {
    margin-bottom: 0;
}
.about-esthetic--list li h3 {
    font-size: 20px;
	font-family: var(--font-marugo);
    font-weight: 500;
    color: var(--main-color);
    padding-left: 10px;
    margin-bottom: 20px;
    border-left: solid 5px;
}
.about-esthetic--list li h4 {
	font-size: 16px;
	font-weight: 500;
	color: var(--main-color);
	line-height: 2.2;
}
.about-esthetic--list li p {
	margin-bottom: 40px;
}
.about-esthetic--list li p:last-child {
    margin-bottom: 0;
}
.about-esthetic--list li p b {
    color: var(--main-color);
    border-bottom: solid 1px;
}

@media (max-width: 815px) {

	.about-esthetic--list li {
		margin-bottom: 30px;
		padding: 20px;
	}
	.about-esthetic--list li h3 {
		font-size: 16px;
	}
	.about-esthetic--list li h4 {
		font-size: 15px;
	}

}

/*---------------------------------
menu denture
----------------------------------*/
.denture-type--list > li:not(:last-child) {
    margin-bottom: 70px;
}
.denture-type-in {
    display: table;
    width: 100%;
}
.denture-type-in .img {
    display: table-cell;
    width: 50%;
	vertical-align: top;
}
.denture-type-in .info {
    display: table-cell;
    width: 50%;
}
.denture-type-in .info .desc {
    margin-bottom: 20px;
}
.denture-type-in .info .price {
    margin-bottom: 30px;
}
.denture-type-in .info .price li {
    display: table;
    width: 100%;
    border: solid 1px var(--main-color);
    margin-bottom: 15px;
}
.denture-type-in .info .price li:last-child {
	margin-bottom: 0;
}
.denture-type-in .info .price li .price-title {
	text-align:center;
	color: #fff;
	display: table-cell;
	width: 120px;
	padding: 10px 0;
	background: var(--main-color);
}
.denture-type-in .info .price li .price-info {
	text-align:right;
	display: table-cell;
	padding: 10px;
	vertical-align: middle;
}
.denture-type-in .info .meritdemrit {
    padding: 20px;
	margin-bottom: 20px;
    border: solid 1px #bbbbbb;
}
.denture-type-in .info .meritdemrit .icon {
    font-size: 15px;
    font-weight: 400;
    color: #fff;
    display: inline-block;
    padding: 2px 20px;
    background: var(--main-color);
    border-radius: 100px;
    margin-bottom: 10px;
}
.denture-type-in .info .meritdemrit h5 {
    font-size: 16px;
	font-weight: 500;
    margin-bottom: 10px;
}
.denture-type-in .info .meritdemrit ul li {
	margin-bottom: 10px;
	padding-left: 20px;
	position: relative;
}
.denture-type-in .info .meritdemrit ul li:before {
    content: '■';
    color: var(--main-color);
    position: absolute;
    left: 0;
    top: 0;
}


/*---------------------------------
menu invisalign
----------------------------------*/
.invisalign-point--list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.invisalign-point--list li {
    width: 30%;
    margin: 0 0 70px 5%;
}
.invisalign-point--list li:nth-child(3n+1) {
    margin-left: 0;
}
.invisalign-point--list li .img {
	text-align:center;
	margin-bottom: 20px;
}
.invisalign-point--list li h4 {
	color: var(--main-color);
	text-align:center;
	font-size: 16px;
	margin-bottom: 10px;
}
.invisalign-point--list li p {
}

#invisalign03 .treatment-flow--list h4 {
    color: var(--main-color);
}
.invisalign-staff {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.invisalign-staff .img {
	width: 48%;
}
.invisalign-staff .profile {
	width: 48%;
}
.invisalign-staff .profile h3 {
	color: var(--main-color);
}
.profile-list >li {
	margin-top: 5px;
}

.invisalign-flow > li {
	margin-bottom: 120px;
	position:relative;
}
.invisalign-flow > li:not(:last-child):after {
	content: '';
	display:block;
	width: 0;
	height: 0;
	margin-left: -107px;
	border-style: solid;
	border-width: 40px 107px 0 107px;
	border-color: var(--main-color) transparent transparent transparent;
	position: absolute;
	bottom: -90px;
	left: 50%;
}
.invisalign-flow h4 {
    font-size: 18px;
	font-family: var(--font-marugo);
	font-weight: 500;
    color: var(--main-color);
    padding-left: 10px;
    border-left: solid 5px;
}
.invisalign-flow h4 > span {
	margin-right: 20px
}
.invisalign-flow h4 span span {
    font-size: 24px;
	margin-left: 10px
}
.invisalign-flow p {
    margin-top:20px;
	line-height: 2.2;
}
.invisalign-flow-in {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.invisalign-flow-in .img {
    width: 50%;
    text-align: right;
}
.invisalign-flow-in .info {
    width: 50%;
}
.invisalign-flow-in .info ul {
    margin-top: 20px;
}
.invisalign-flow-in .info ul > li {
	margin-top: 10px;
	padding-left: 20px;
	position: relative;
}
.invisalign-flow-in .info ul > li:before {
    content: '';
    color: var(--main-color);
    width: 6px;
    height: 12px;
    border-right: solid 2px;
    border-bottom: solid 2px;
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: 4px;
}

#invisalign05 .treatment-flow--list li {
	color:var(--main-color);
	border: solid 1px var(--main-color);
}

.invisalign-point-in {
    margin-bottom: 70px;
	position: relative;
}
.invisalign-point-in.-bg {
    padding: 70px 0;
}
.invisalign-point-in.-bg:after {
	content: '';
	width: 200vw;
	height: 100%;
    background: #fbf7ef;
	position: absolute;
	top: 0;
	left: -50vw;
	z-index: -1;
}

.invisalign-point--header {
	color:var(--main-color);
    text-align: center;
    margin-bottom: 50px;
}
.invisalign-point--header p {
    font-size: 22px;
}
.invisalign-point--header p  span {
    font-size: 28px;
}
.invisalign-point--header h3 {
	font-size: 30px;
	font-family: var(--font-marugo);
	font-weight: normal;
}



.invisalign-point03-in {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
}
.invisalign-type {
    width: 45%;
    margin: 0 2%;
    padding: 30px 20px;
    text-align: center;
    background: #f5f5f5;
}
.invisalign-type h4 {
    display: flex;
    width: 100%;
    font-size: 26px;
    font-weight: 500;
    min-height: 3em;
    margin-bottom: 30px;
    justify-content: center;
    align-items: center;
}
.invisalign-type p {
	margin-bottom: 20px;
}
.invisalign-type:nth-child(2) {
	background: #fbf7ef;
}
.invisalign-type:nth-child(2) h4 {
    color: var(--main-color);
}

.invisalign-price-in:not(:last-of-type) {
    margin-bottom: 100px;
}
.invisalign-price-in .text01 {
    margin-bottom: 50px;
}
.invisalign-price-in .text02 {
    text-align: right;
}
.invisalign-price table {
    width: 100%;
    text-align: center;
	color: var(--main-color);
	margin-bottom: 20px
}
.invisalign-price table th {
	font-weight: normal;
	padding: 10px 0;
	background: #fff;
}
.invisalign-price table td {
	padding: 10px 0;
	background: #fff;
}

.invisalign-price table th:nth-child(2),
.invisalign-price table th:nth-child(3),
.invisalign-price table td:nth-child(2),
.invisalign-price table td:nth-child(3) {
	color: #fff;
}
.invisalign-price table th:nth-child(2),
.invisalign-price table td:nth-child(2) {
	background: #696969;
}
.invisalign-price table th:nth-child(3),
.invisalign-price table td:nth-child(3) {
	background: var(--main-color);
}

.invisalign-price table td span {
	font-size: 90%;
}

#invisalign07 table {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    margin-bottom: 70px;
	border-top: solid 1px var(--main-color);
	border-left: solid 1px var(--main-color);
}
#invisalign07 table th {
	color: var(--main-color);
	font-weight: normal;
	padding: 15px 0;
	background: #fbf7ef;
	border-right: solid 1px var(--main-color);
	border-bottom: solid 1px var(--main-color);
}
#invisalign07 table td {
	padding: 10px 0;
	border-right: solid 1px var(--main-color);
	border-bottom: solid 1px var(--main-color);
}

@media (max-width: 815px) {

	.invisalign-point--header {
		margin-bottom: 30px;
	}
	.invisalign-point--header p {
		font-size: 17px;
	}
	.invisalign-point--header p span {
		font-size: 24px;
	}
	.invisalign-point--header h3 {
		font-size: 20px;
	}

	.invisalign-point-in {
		margin-bottom: 50px;
	}
	.invisalign-point-in.-bg {
		padding: 50px 0;
	}

	.invisalign-type h4 {
		display: block;
		font-size: 18px;
		min-height: auto;
		margin-bottom: 20px;
	}

}




/*---------------------------------
menu occlusalcorrectio
----------------------------------*/
#botulinum {
	background: #f0f4f7;
}

.botulinum-caustion__list >li {
    margin-bottom: 10px;
    padding-left: 20px;
    line-height: 2;
    position: relative;
}
.botulinum-caustion__list >li:before {
    content: '・';
    position: absolute;
    left: 0;
    top: 0;
}

#botulinum05 .cmn-worries--list {
    display: block;
}
#botulinum05 .cmn-worries--list li {
    width: 100%;
}
#botulinum05 .menu-price {
    margin-top: 80px;
}


/*---------------------------------
menu oral-surgery
----------------------------------*/
.oral-surgery02-item {
    padding: 20px;
    margin-top: 50px;
    background: #fff;
}
.oral-surgery02-item h4 {
    font-size: 17px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 20px;
    padding-left: 10px;
    border-left: solid 5px;
}
.oral-surgery02-item p {
	margin-bottom: 10px;
}
.oral-surgery02-item ul {
    display: -webkit-flex;
    display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.oral-surgery02-item ul li {
    padding-left: 20px;
	margin-bottom: 10px;
    position: relative;
}
.oral-surgery02-item.half ul li {
	width: 50%;
}
.oral-surgery02-item ul li:before {
    content: '■';
    color: var(--main-color);
    position: absolute;
    left: 0;
    top: 0;
}

@media (max-width: 815px) {

	.oral-surgery02-item h4 {
		font-size: 15px;
	}

}

/*---------------------------------
menu periodontal
----------------------------------*/
#orthodontist04 .treatment-flow--list li {
	border: solid 1px #bbbbbb;
}

#orthodontist06 .cmn-worries,
#orthodontist06 .cmn-boxtext {
	background: #fff;
}




/*---------------------------------
menu periodontal
----------------------------------*/
.periodontal-type {
    margin: 70px 0;
}
.periodontal-type--list li {
	display: table;
	width: 100%;
	background: #fff;
	margin-bottom: 30px;
	border:solid 1px var(--main-color);
}
.periodontal-type--list li:last-child {
	margin-bottom: 0;
}
.periodontal-type--title {
	display:table-cell;
	width: 30%;
	vertical-align: middle;
	text-align:center;
	background: #c9af7f;
}
.periodontal-type--title h4 {
	display: inline;
	font-size: 18px;
	font-family: var(--font-marugo);
	font-weight: 500;
	color: #fff;
}
.periodontal-type--info {
	display:table-cell;
	line-height:2;
	padding: 20px;
}
.periodontal-type--info h5 {
	color: var(--main-color);
	font-size: 15px;
	fotn-weight: 500;
}

.periodontal-type--list li:nth-child(2) .periodontal-type--title  {
	background: var(--main-color);
}
.periodontal-type--list li:nth-child(3) .periodontal-type--title  {
	background: #7d6d4f;
}


@media (max-width: 815px) {

	.periodontal-type--list li {
		display: block;
		width: 100%;
	}
	.periodontal-type--title {
		display: block;
		width: 100%;
		padding: 10px;
	}
	.periodontal-type--title h4 {
		font-size: 16px;
	}
	.periodontal-type--info {
		display: block;
	}

}


/*---------------------------------
menu precision
----------------------------------*/
.magnification {
    margin-top: 70px;
    text-align: center;
}
.magnification-list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.magnification-list li p {
	color: var(--main-color);
	font-size: 20px;
	margin-bottom: 10px
}
.precision06-in {
    margin-top: 100px;
}
.precision06-group {
    margin-top: 20px;
    padding: 30px;
    background: #fff;
    border-radius: 10px;
}

/*---------------------------------
menu pedodontics
----------------------------------*/
.pedodontics-nav {
    margin-top: 60px;
}
.pedodontics-nav__list {
    text-align: center;
}
.pedodontics-nav__list li {
    display: inline-block;
    width: 30%;
    margin: 0 20px;
}
.pedodontics-nav__list li a {
    display: block;
    text-align: center;
    line-height: 1;
    padding: 15px 0;
    color: var(--main-color);
    border: solid 1px var(--main-color);
    border-radius: 100px;
    position: relative;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.pedodontics-nav__list li a:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-top: solid 1px var(--main-color);
	border-right: solid 1px var(--main-color);
	transform: rotate(45deg);
	margin-left:20px;
	vertical-align: middle;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.pedodontics-nav__list li a:hover {
	color: #fff;
	background: var(--main-color);
}
.pedodontics-nav__list li a:hover:after {
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
}

.pedodontics07-in ul {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.pedodontics07-in ul li {
    width: 45%;
    margin: 0 0 5% 10%;
}
.pedodontics07-in ul li:nth-child(2n+1) {
    margin-left: 0;
}
.pedodontics07-in ul li .img {
	text-align:center;
	margin-bottom: 20px;
}
.pedodontics07-in ul li h4 {
	font-family: var(--font-marugo);
	color: var(--main-color);
	text-align:center;
	font-size: 20px;
	margin-bottom: 10px;
}





/*---------------------------------
menu preventive
----------------------------------*/

.preventive-info {
}
.preventive-info--main {
}
.preventive-info--main h4 {
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 20px;
    padding-left: 10px;
    border-left: solid 5px;
}
.preventive-info--sub {
}
.preventive-info--sub-list {
    display: -webkit-flex;
    display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.preventive-info--sub-list li {
	width: 48%;
	margin: 4% 0 0 4%;
	padding: 30px;
	background: #fff;
	border-radius: 10px;
}
.preventive-info--sub-list li:nth-child(2n+1){
	margin-left:0;
}
.preventive-info--sub-list li h5 {
	color: var(--main-color);
	font-size: 20px;
	font-family: var(--font-marugo);
	font-weight: 500;
    margin-bottom: 20px;
	text-align:center;
}
.preventive-info--sub-list li .cmn-btn {
	margin-top: 30px;
}


/*---------------------------------
menu whitening
----------------------------------*/

.whitening-items__list {
    display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.whitening-items__list li {
    width: 48%;
    margin: 0 0 4% 4%;
    background: #fff;
    padding: 20px;
    border-radius: 10px;
}
.whitening-items__list li:nth-child(2n+1) {
    margin-left: 0;
}
.whitening-items__list li .img {
    margin-bottom: 20px;
}
.whitening-items__list li .info h4 {
    font-size: 18px;
    font-family: var(--font-marugo);
    color: var(--main-color);
	text-align:center;
    margin-bottom: 20px;
}

#whitening03 .cmn-btn {
    text-align: right;
}

#whitening04 .fuki {
    text-align: center;
    margin-bottom: 30px;
}
#whitening04 .fuki span {
    color: var(--main-color);
    font-size: 20px;
    font-weight: 500;
    border-bottom: solid 1px;
}

@media (max-width: 480px) {

	.whitening-items__list li {
		width: 100%;
		margin: 0 0 20px;
	}

}


/*---------------------------------

system

----------------------------------*/
.system-in {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.system-in .system-group {
	width: 48%;
	padding: 30px 20px;
    background: #fff;
}
.system-in .system-group:nth-child(2) {
	margin-left: 4%;
}
.system-group h3 {
    font-size: 20px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 30px;
    text-align: center;
}
.system-group h4 {
    font-size: 18px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 20px;
    padding-left: 10px;
    border-left: solid 5px;
}
.system-group ul li:not(:last-child) {
    margin-bottom: 30px;
}

.system01-list {
    width: 39%;
}
.system01-list li {
    color: var(--main-color);
    font-size: 20px;
    font-family: var(--font-marugo);
    border: solid 1px var(--main-color);
    text-align: center;
    padding: 15px 0;
    margin-bottom: 20px;
}
.system01-text {
    width: 61%;
    padding-top: 15px;
    padding-left: 5%;
}

#system03 .system-in {
    margin-top: 50px;
}
#system03 .system-group {
    background: #eff6fb;
}
#system04 {
    padding: 60px 0;
    background: #fbf7ef;
}
#system06 .system-group {
    background: #fbf7ef;
}
#system06 .system-group .cmn-btn {
	margin-top: 30px;
}
.flow-list > li:not(:last-child) {
    margin-bottom: 40px;
}
.flow-list .flow-title {
	font-size: 18px;
	font-weight: 500;
	color: var(--main-color);
	margin-bottom: 20px;
}
.flow-list .flow-ver01 p {
	padding: 20px;
	border:solid 1px #bbbbbb;
}

.flow-ver02 ul {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.flow-ver02 ul li {
	line-height:2;
    width: 30%;
    margin: 0 0 5% 5%;
    text-align: center;
}
.flow-ver02 ul li:nth-child(3n+1) {
    margin-left: 0;
}
.flow-ver02 ul li .img {
    margin-bottom: 15px;
}
.flow-ver02 ul li h4 {
    font-size: 16px;
	font-weight: 500;
	color: var(--main-color);
	margin-bottom: 10px;
}
.flow-ver03 .cmn-imgtext {
	margin-bottom: 90px;
}
.flow-ver03 .cmn-imgtext:after {
	content: '';
	display:block;
	width: 0;
	height: 0;
	margin-left: -30px;
	border-style: solid;
	border-width: 30px 30px 0 30px;
	border-color: var(--main-color) transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: -60px;
}
.flow-ver03 .cmn-imgtext .info p {
    line-height: 2.2;
    margin-bottom: 20px;
}
.flow-ver03 .cmn-imgtext .info p b {
    font-size: 16px;
}

/*---------------------------------

equipment

----------------------------------*/
.equipment-nav__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.equipment-nav__list >li {
    width: 30%;
    text-align: center;
    margin: 5% 0 0 5%;
}
.equipment-nav__list >li:nth-child(3n+1) {
    margin-left: 0;
}
.equipment-nav__list >li a {
	color: var(--base-color);
}
.equipment-nav__list >li p {
	font-size: 17px;
	line-height: 1.8;
    margin-top: 20px;
}
.equipment-nav__list >li p span {
	font-size: 14px;
	color: var(--main-color);
	border-bottom: solid 1px;
}

.equipment-imgtext__list {
    display: flex;
    flex-wrap: wrap;
}
.equipment-imgtext__list >li {
    width: 48%;
    margin: 70px 0 0 4%;
}
.equipment-imgtext__list >li:nth-child(2n+1) {
    margin-left: 0;
}
.equipment-imgtext__list >li .img {
	margin-bottom: 20px;
}
.equipment-imgtext__list >li h4 {
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 10px;
}
.equipment-imgtext__list >li h4 span {
	color: var(--main-color);
}
.equipment-imgtext__list >li p {
    line-height: 1.8;
}

.equipment-point__list {
    margin-top: 120px;
}
.equipment-point__list > li {
    margin-bottom: 40px;
}
.equipment-point__list > li h5 {
    font-size: 20px;
    font-weight: 400;
    padding-bottom: 10px;
    border-bottom: solid 1px var(--main-color);
}
.equipment-point__list > li h5 span {
    color: var(--main-color);
    margin-right: 1em;
}

.equipment-point__list > li .in {
    display: flex;
	justify-content: space-between;
    margin-top: 40px;
}
.equipment-point__list > li .in .img {
	width: 35%;
}
.equipment-point__list > li .in .info {
	width: 60%;
}


#equipment06 {
    border: solid 2px var(--main-color);
    border-radius: 10px;
	overflow: hidden;
}
#equipment06 .page-subtitle {
	background: #f0f4f7;
	padding: 50px 0;
	margin-bottom: 0;
}
#equipment06 .page-subnav__list {
	padding: 50px 80px;
}


@media (max-width: 815px) {

	.equipment-nav__list {
		justify-content: left;
	}
	.equipment-nav__list >li {
		width: 48%;
		margin: 0 0 30px 4%;
	}
	.equipment-nav__list >li:nth-child(3n+1) {
		margin: 0 0 30px 4%;
	}
	.equipment-nav__list >li:nth-child(2n+1) {
		margin-left: 0;
	}
	.equipment-nav__list >li p {
		font-size: 12px;
		margin-top: 20px;
		text-align: left;
	}

	.equipment-imgtext__list >li h4 {
		font-size: 13px;
	}
	.equipment-imgtext__list >li p {
		font-size: 11px;
	}

	.equipment-point__list > li h5 {
		font-size: 16px;
	}

	#equipment06 .page-subtitle {
		padding: 20px;
		text-align: left;
	}
	#equipment06 .page-subnav__list {
		padding: 20px;
	}

}

/*---------------------------------

access

----------------------------------*/
.access-info {
    margin-top: 70px;
}
.access-info-box {
    margin-bottom: 40px;
}
.access-info-box h3 {
    font-size: 16px;
	color:var(--main-color);
    background: #f0f4f7;
    padding: 10px 20px;
	margin-bottom: 20px;
}
.access-info-box h3 span {
	color:var(--base-color);
    font-size: 15px;
    margin-left: 10px;
}
.access-info-box h3 i {
	display: inline-block;
	width: 32px;
	height: 30px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
    vertical-align: -8px;
	margin-right: 10px;
}
.access-info-box h3 i.icon-car {
	background-image : url("../img/cmn/icon_car.png");
	background-size: 32px 24px;
}
.access-info-box h3 i.icon-train {
	background-image : url("../img/cmn/icon_train.png");
	background-size: 21px 29px;
}
.access-info__list >li {
    margin-bottom: 10px;
}



@media (max-width: 815px) {


}




/*---------------------------------

case

----------------------------------*/
/* archive */
.page-case--list > li {
    padding: 30px;
    margin-bottom: 30px;
    border: solid 1px #bbbbbb;
}

/* single */
#case-header {
    margin-bottom: 70px;
}
.case-header-in {
    margin-bottom: 10px;
}
.case-date {
    display: inline-block;
    margin-right: 20px;
}
.case-category {
    display: inline-block;
}
.case-category span {
    font-size: 14px;
    color: #fff;
    background: var(--main-color);
    padding: 2px 10px;
    margin-right: 10px;
}
.case-title {
    font-size: 28px;
	font-weight: 500;
}

.case-block {
    margin-bottom: 70px;
}
.case-block h2 {
    font-size: 20px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 30px;
    padding-left: 15px;
    border-left: solid 5px;
}
.case-block-in {
    display: table;
    width: 100%;
}
.case-block-img {
    display: table-cell;
    vertical-align: top;
    width: 30%;
}
.case-block-info {
    display: table-cell;
    padding-left: 5%;
    line-height: 2;
}

#cmn-pager {
    text-align: center;
    margin-top: 130px;
}
#cmn-pager .wp-pagenavi a,
#cmn-pager .wp-pagenavi span {
    padding: 3px 10px;
    color: #222;
	border: none;
}
#cmn-pager .wp-pagenavi span.current {
	color: #fff;
	background: var(--main-color);
}
#post-pager {
    margin-top: 100px;
    text-align: center;
}
#post-pager div {
    display: inline-block;
    margin: 0 20px;
}
#post-pager .prev a,
#post-pager .next a{
    color: #444;
}
#post-pager .return a {
    color: var(--main-color);
}

#post-body .youtube-wrap {
    margin-bottom: 30px;
}
#post-body span b,
#post-body span strong {
    color: inherit;
}

.post-author {
    margin: 50px 0;
    padding: 30px;
    border: solid 1px #f1f1f1;
    border-radius: 10px;
}
.post-author-main {
    display: flex;
    align-items: center;
}
.post-author-main__img {
    width: 160px;
    height: 0;
    padding-top: 160px;
    border-radius: 10000px;
    overflow: hidden;
    position: relative;
}
.post-author-main__img img {
    max-width: 180px;
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}
.post-author-main__info {
    margin-left: 30px;
    padding: 15px 30px 15px 0;
    border-top: dotted 1px #004397;
    border-bottom: dotted 1px #004397;
}
.post-author-main__info h3 {
    font-size: 16px;
    font-weight: normal;
    margin-bottom: 15px;
}
.author-name__jp {
    font-size: 20px;
    font-family: var(--font-marugo);
}
.author-name__en {
    font-family: 'Inter', sans-serif;
    color: var(--main-color);
    margin-top: 5px;
}
.post-author-profile {
    margin-top: 30px;
    padding-top: 30px;
    display: flex;
    justify-content: space-between;
    border-top: solid 1px #f1f1f1;
}
.post-author-profile .box {
    width: 48%;
}
.post-author-profile .box h4 {
    font-size: 15px;
    font-weight: 500;
    color: var(--main-color);
    margin-bottom: 15px;
}
.post-author-profile__list {
    margin-bottom: 30px;
}
.post-author-profile__list >li {
    font-size: 14px;
    margin-bottom: 10px;
    padding-left: 20px;
    position: relative;
}
.post-author-profile__list >li:before {
    content: '・';
    position: absolute;
    left: 0;
    top: 0;
}




/*---------------------------------

post

----------------------------------*/

/* single */
#news-header {
    margin-bottom: 30px;
	padding-bottom: 5px;
    border-bottom: solid 1px #444;
}
.news-header-in {
    margin-bottom: 10px;
}
.news-date {
    display: inline-block;
    margin-right: 20px;
}
.news-category {
    display: inline-block;
}
.news-category span {
    font-size: 14px;
    color: #fff;
    background: var(--main-color);
    padding: 2px 10px;
    margin-right: 10px;
}
.news-title {
    font-size: 24px;
    font-family: var(--font-marugo);
	font-weight: 500;
}

#page-news #post-body p {
    line-height: 2;
}

/* archive */
.page-news--list li {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: solid 1px #d1cac2;
}
.page-news--list li a {
    display: table;
    width: 100%;
    color: #343131;
}
.page-news--list li .news-date {
	display: table-cell;
	width: 100px;
	vertical-align: top;
}
.page-news--list li .news-category {
	display: table-cell;
	width: 130px;
}
.news-category.campaign span {
    background: #dd0000;
}
.page-news--list li .news-title {
	display: table-cell;
	font-weight: normal;
}



/*---------------------------------

blog

----------------------------------*/
.blog-in {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
#blog-contents {
    width: calc(100% - 300px);
}
#blog-body h2 {
    font-size: 18px;
    padding: 10px;
    background: #efefef;
    border-left: solid 5px #0281c3;
}
#blog-body h3 {
    padding-bottom: 2px;
}
#blog-body p {
    line-height: 2;
}

#post-sidebar {
    width: 250px;
    margin-left: 50px;
}
#post-sidebar a {
    color: #333;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-bottom: solid 1px transparent;
}
.sideBox {
    margin-bottom: 50px;
}
.side-title {
    color: var(--main-color);
    font-size: 16px;
    font-weight: 500;
	font-family: var(--font-marugo);
    line-height: 1;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: dotted 1px #000;
}
.side-category--list li {
    font-size: 13px;
    margin-bottom: 10px;
}
.side-category--list li:not(:first-child):before {
    content: '-';
    margin-right: 5px;
}
.side-category--list li:last-child {
	margin-bottom: 0;
}
.side-category--list li a:hover {
	border-bottom: solid 1px #333 !important;
}

/**/
.side-latest--list >li:not(:last-child) {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: dotted 1px #ccc;
}
.side-latest--list a {
    font-size: 13px;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.side-latest--list a .thumb {
    width: 30%;
}
.side-latest--list a .info {
    width: 70%;
    padding-left: 10px;
    font-size: 10px;
}
.side-latest--list a .info .date {
}
.side-latest--list a .info .title {
    font-size: 12px;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.side-latest--list a .info .cat {
    margin-left: -3px;
    width: calc( 100% + 3px);
}
.side-latest--list a .info .cat span {
    display: inline-block;
    color: #fff;
    background: var(--main-color);
    padding: 2px 5px;
    margin: 3px 0 0 3px;
}

/**/
.side-archive--list {
    font-size: 13px;
}
.archive-year {
    font-size: 13px;
}
.side-archive--list ul {
    line-height: 2;
    margin-left: 10px;
}

/* archive */
.page-post--catname {
    margin-bottom: 20px;
}
#blog-header {
    margin-bottom: 30px;
	padding-bottom: 5px;
    border-bottom: solid 1px #444;
}
#blog-header .blog-date {
    margin-bottom:5px;
}
#blog-header .blog-category span {
    font-size: 14px;
    color: #fff;
    background: var(--main-color);
    padding: 2px 10px;
    margin-right: 10px;
}
#blog-header .blog-title {
    margin-top: 8px;
    font-size: 24px;
    font-family: var(--font-marugo);
	font-weight: 500;
}

.blog__list li {
	margin-bottom: 20px;
}
.blog__list li:nth-child(2n+1) {
	margin-left: 0;
}
.blog__list li a {
	display: flex;
	justify-content: space-between;
    color: var(--base-color);
	padding: 10px;
	border: solid 1px #eee;
	border-radius: 10px;
}
.blog__list li .blog-thumb {
    width: 35%;
}
.blog__list li .blog-info {
    width: 60%;
}
.blog__list li .blog-info .title {
	color: var(--main-color);
    font-size: 18px;
	font-weight: 500;
    font-family: var(--font-marugo);
    line-height: 1.7;
    margin-bottom: 10px;
}
.blog__list li .blog-info .date {
    font-size: 13px;
    margin-bottom: 10px;
}
.blog__list li .blog-info .cat {
	font-size: 0;
    margin-left: -5px;
    width: calc( 100% + 5px);
}
.blog__list li .blog-info .cat span {
    display: inline-block;
    font-size: 13px;
    color: #fff;
    background: var(--main-color);
    padding: 2px 10px 4px;
    margin: 5px 0 0 5px;
}

.post-images-double {
    width: 100%;
    height: 240px;
    display: flex;
	justify-content: center;
	overflow: hidden;
}

.news-thumbnail {
    height: auto;
}

.post-images-double img {
    width: 50%;
    height: auto;
	object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 815px) {
     .post-images-double {
        height: auto;
        flex-direction: column;
    }

    .post-images-double img {
        width: 100%;
        height: auto;
    }
}


/*---------------------------------

contact

----------------------------------*/
.contact-form :placeholder {
    color: #ddd;
}
.contact-group:not(:last-of-type) {
    margin-bottom: 40px;
}
.contact-group--item {
    font-size: 18px;
    margin-bottom: 10px;
}
.required {
	color: #ff0000;
}
.cmn-input,
.cmn-select,
.cmn-textarea {
	font-size: 16px;
}
.cmn-input {
    width: 100%;
    height: 80px;
    border: solid 1px #bbbbbb;
    background: #fff;
    text-indent: 10px;
}
.cmn-select {
    width: 100%;
    height: 80px;
    border: solid 1px #bbbbbb;
    background: #fff;
}
.cmn-textarea {
    width: 100%;
    height: 300px;
    border: solid 1px #bbbbbb;
    background: #fff;
    padding: 10px;
}
#btn-send {
    cursor: pointer;
    display: block;
    font-size: 18px;
    width: 100%;
    max-width: 360px;
    text-align: center;
    line-height: 1;
    padding: 30px 0;
    margin: 50px auto 0;
    color: #fff;
    background: var(--main-color);
    border:none;
	border-radius:100px;
}
#btn-send i {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-left: 10px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    vertical-align: 1px;
}


/*---------------------------------

privacy-policy

----------------------------------*/
#privacy-policy p,
.privacy-policy--list ul li {
    line-height: 2;
    font-size: 14px;
}
.privacy-policy--list > li {
    margin-top: 50px;
}
.privacy-policy--list li h3 {
	font-size: 18px;
	font-weight: normal;
	color: var(--main-color);
	margin-bottom: 10px;
}
.privacy-policy--list li h4 {
	font-size: 15px;
	font-weight: normal;
}
.privacy-policy--list li p:not(:last-of-type) {
	margin-bottom: 30px;
}

@media (max-width: 815px) {

	.privacy-policy--list > li {
		margin-top: 30px;
	}
	.privacy-policy--list li h3 {
		font-size: 14px;
	}
	#privacy-policy p,
	.privacy-policy--list ul li {
		font-size: 11px;
	}

}

/*---------------------------------

404

----------------------------------*/
#page404 {
    text-align: center;
    margin-bottom: 100px;
}
#page404 .back a {
	color:#000524;
	text-decoration:underline;
}







/* -----------------------------------

media query

------------------------------------- */
@media (max-width: 815px) {

	.pedodontics-nav__list li {
		display: block;
		width: 100%;
		margin: 0 0 20px;
	}

	.pedodontics07-in ul li {
		width: 48%;
		margin: 0 0 5% 4%;
	}
	.pedodontics07-in ul li:nth-child(3n+1) {
		margin: 0 0 5% 4%;
	}
	.pedodontics07-in ul li:nth-child(2n+1) {
		margin-left: 0;
	}


	.contact-form {
		padding: 0;
	}
	.contact-form table {
		font-size: 13px;
	}
	.contact-form table th {
		font-weight: bold;
		width: 100%;
		float: left;
		padding-bottom: 0;
		font-size: 14px;
		margin-bottom: 5px;
	}
	.contact-form table td {
		width: 100%;
		float: left;
		padding-bottom: 20px;
	}

	.page-news--list li .news-date {
		display: inline-block;
		width: auto;
	}
	.page-news--list li .news-category {
		display: inline-block;
		width: auto;
	}
	.page-news--list li .news-title {
		display: block;
		margin-top: 10px;
		font-weight: bold;
	}


    #blog-contents {
		width: 100%;
		margin-bottom: 50px;
	}
	#post-sidebar{
		width: 100%;
		margin-left: 0;
	}


}



@media (max-width: 480px) {

	#contents {
		margin-bottom: 30px;
	}

	.cmn-imgtext .img {
		width: 100%;
		max-width: 100%;
		text-align: center;
		margin-bottom: 30px;
	}
	.cmn-imgtext .info {
		width: 100%;
	}
	.cmn-worries--list li {
		width: 100%;
	}
	.cmn-carepoint--list li {
		font-size: 16px;
		padding: 15px;
	}	
	.cmn-cause--list li {
		width: 100%;
		margin-bottom: 70px;
	}
	.teatment-case--list > li {
		width: 100%;
		margin: 0 0 30px;
	}
	.relation-link--list li {
		width: 100%;
		margin: 0 auto 20px;
	}
	.treatment-flow--list li {
		width: 100%;
		margin: 0 0 70px;
		padding: 20px;
	}
	.treatment-flow--list h4 {
		font-size: 20px;
	}
	.menu-price--list li h4,
	.menu-price--list li p {
		font-size: 13px;
		display: block;
		width: 100%;
		text-align: center;
		padding: 10px;
	}
	.treatment-flow--list h4 span {
		font-size: 15px;
		color: #fff;
		padding: 10px;
		width: 60%;
		height: auto;
		margin: 0 auto 15px;
		line-height: initial;
		position: relative;
		top: 0;
		left: 0;
	}
	.profiles .profile {
		width: 100%;
		margin-bottom: 20px;
	}
	#about-hirota--director .about-profile--main:not(:last-of-type) {
		margin-bottom: 50px;
	}

.about-subprofile-in {
    padding: 0;
    position: relative;
    bottom: auto;
    left: auto;
    font-size: 13px;
    margin-top: 20px;
}

	.pedodontics07-in ul li {
		width: 100%;
		margin: 0 0 30px;
	}

	.system-in .system-group {
		width: 100%;
		margin: 0 auto 20px !important;
	}
	.flow-ver02 ul li {
		font-size: 12px;
		width: 48%;
		margin: 0 0 5% 4%;
		text-align: left;
	}
	.flow-ver02 ul li:nth-child(3n+1) {
		margin: 0 0 5% 4%;
	}
	.flow-ver02 ul li:nth-child(2n+1) {
		margin-left: 0;
	}
	.flow-ver02 ul li h4 {
		font-size: 14px;
	}

	.mediaclBox-info {
		display:block;
	}
	.mediaclBox-info .img {
		width: auto;
		text-align: center;
	}
	.mediaclBox-info .info {
		width: auto;
	}
	.img-hastexts.has-arrow .img-hastext:first-child:after {
		position: relative;
		transform: rotate(90deg);
		right: auto;
		top: auto;
		margin: 20px auto;
	}

	.access-info--group ul {
		font-size: 12px;
	}
	
	.general-point--list {
		display: block;
	}
	.general-point--list li {
		width: 100%;
		border-radius: none;
		margin: 0 auto 20px;
		padding: 20px 0;
	}
	.general-flow-in .img {
		display: block;
		width: auto;
		text-align: center;
		margin-bottom: 20px;
	}
	.general-flow-in .info {
		display: block;
		width: auto;
	}

	.invisalign-point--list li {
		width: 48%;
		margin: 0 0 50px 4%;
	}
	.invisalign-point--list li:nth-child(3n+1) {
		margin: 0 0 50px 4%;
	}
	.invisalign-point--list li:nth-child(2n+1) {
		margin-left: 0;
	}
	.invisalign-point--list li h4 {
		font-size: 13px;
	}
	.invisalign-point--list li p {
		font-size: 12px;
	}
	.invisalign-flow-in .info {
		display: block;
		width: auto;
		margin-bottom: 30px;
	}
	.invisalign-flow-in .img {
		display: block;
		width: auto;
		text-align: center;
	}

	.invisalign-staff {
		display: block;
		margin: auto;
	}
	.invisalign-staff .img {
		width: 100%;
		text-align:center;
		margin-bottom:30px;
	}
	.invisalign-staff .profile {
		width: 100%;
		padding-left: 0;
	}

	.invisalign-type {
		width: 100%;
		margin: 0 auto 30px;
	}
	.invisalign-price table {
		font-size: 12px;
	}
	.invisalign-price table th,
	.invisalign-price table td {
		padding: 10px;
	}
	.invisalign-price table td span {
		font-size: 10px;
	}
	.invisalign-price-in .text02 {
		font-size: 12px;
		text-align: left;
	}
	#invisalign07 table {
		font-size: 12px;
	}
	#invisalign07 table th {
		font-size: 16px;
	}

	.denture-type-in .img {
		display: block;
		width: auto;
		text-align: center;
		margin-bottom: 30px;
	}
	.denture-type-in .info {
		display: block;
		width: auto;
	}

	.preventive-info--sub-list li {
		width: 100%;
		margin: 50px auto 0;
	}

	.case-block-img {
		display: block;
		width: auto;
		text-align: center;
		margin-bottom: 30px;
	}
	.case-block-info {
		display: block;
		padding-left: 0;
	}

	.blog__list li .blog-info .date {
		font-size: 10px;
		margin-bottom: 5px;
	}
	.blog__list li .blog-info .title {
		font-size: 12px;
		line-height: 1.2;
		margin-bottom: 5px;
	}
	.blog__list li .blog-info .cat span {
		font-size: 10px;
	}

    .post-author {
        padding: 30px 10px;
    }
    .post-author-main__img {
        width: 100px;
        padding-top: 100px;
    }
    .post-author-main__img img {
        max-width: 120px;
    }
    .post-author-main__info h3 {
        font-size: 13px;
        margin-bottom: 10px;
    }
    .author-name__jp {
        font-size: 16px;
    }
    .author-name__en {
        font-size: 12px;
    }
    .post-author-profile {
        display: block;
    }
    .post-author-profile .box {
        width: 100%;
    }
    .post-author-profile .box h4 {
        font-size: 13px;
    }
    .post-author-profile__list >li {
        font-size: 12px;
    }



}

