@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
.content_low {
	padding: calc(100 / var(--break) * 100vw) 0 calc(200 / var(--break) * 100vw);
}
.main_page {
	padding-top: calc(100 / var(--break) * 100vw);
	height: calc(500 / var(--break) * 100vw);
	background: #7a7369;
}
.page_main section:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}

@media only screen and (min-width: 768px) and (max-width: 1599px) {
}
@media only screen and (min-width: 768px) and (max-width: 1299px) {
}
@media only screen and (max-width: 767px) {
	.content_low {
		padding: 13vw 0 25vw;
	}
	.content_low .inner, .main_page .inner {
		max-width: calc(702 / var(--break) * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: 20vw;
	}
	.col_img {
		text-align: center;
	}
}



/*
------------------------------------------------------------------*/
.hdg2 .ja {
    display: block;
    margin-bottom: calc(18 / var(--break03));
    line-height: 1.6;
    letter-spacing: .1em;
    font-size: calc(50 / var(--break03));
	font-family: vdl-v7mincho, sans-serif;
	font-weight: 500;
	font-style: normal;
    text-align: center;
    color: #fff;
}

.hdg2 .en {
    display: block;
    line-height: 1;
    letter-spacing: .1em;
    font-size: calc(24 / var(--break03));
	font-family: aboreto, sans-serif;
	font-weight: 400;
	font-style: normal;
    text-align: center;
    color: #fff;
}
@media (max-width: 767px) {
    .hdg2 .ja {
        margin-bottom: 2vw;
        line-height: 1.5;
        letter-spacing: 0;
        font-size: calc(50 / 750 * 100vw);
    }

    .hdg2 .en {
        letter-spacing: 0;
        font-size: calc(30 / 750 * 100vw);
    }
}

/* copy_common01
------------------------------------------------------------------*/
.copy_common01{
	border-bottom: 2px solid #222;
}
@media(max-width: 767px) {
	.copy_common01{
		letter-spacing: 0;
		border-bottom-width: 1px;
	}
}

/* copy_common02
------------------------------------------------------------------*/
.copy_common02{
	text-align: center;
}
.copy_common02 .deco{
	display: inline-block;
	padding: 0 calc(30 / var(--break02));
	position: relative;
	z-index: 1;
}
.copy_common02 .deco::before,
.copy_common02 .deco::after
{
	content: "";
	width: calc(83 / var(--break02));
	height: calc(10 / var(--break02));
	margin: auto;
	background: url(images/page/deco_copy_common02.png)no-repeat center / contain;
	position: absolute;
	top: 0;
	bottom: 0;
}
.copy_common02 .deco::before{left: 100%;}
.copy_common02 .deco::after{right: 100%;}

.copy_common02.txt_white .deco::before,
.copy_common02.txt_white .deco::after
{
	background: url(images/page/deco_copy_common02_white.png)no-repeat center / contain;
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* copy_common03
------------------------------------------------------------------*/
.copy_common03{
	padding: calc(16 / var(--break02));
	color: #fff;
	background: #bfa87e;
	text-align: center;
	position: relative;
	z-index: 1;
}
.copy_common03::before,
.copy_common03::after
{
	content: "";
	width: calc(32 / var(--break03));
	height: calc(32 / var(--break03));
	margin: auto;
	border: solid #fff 2px;
	position: absolute;
	inset: calc(10 / var(--break03));
	z-index: -1;
}
.copy_common03::before{
	border-bottom: 0 !important;
	border-right: 0 !important;
	bottom: auto !important;
	right: auto !important;
}
.copy_common03::after{
	border-top: 0 !important;
	border-left: 0 !important;
	top: auto !important;
	left: auto !important;
}

.copy_common03.mini{
	padding: calc(11 / var(--break02));
}
.copy_common03.mini::before,
.copy_common03.mini::after
{
	width: calc(38 / var(--break03));
	height: calc(38 / var(--break03));
}
@media(max-width: 767px) {
	.copy_common03{
		letter-spacing: 0;
		padding: 2vw;
	}
	.copy_common03::before,
	.copy_common03::after
	{
		width: calc(40 / 750 * 100vw);
		height: calc(40 / 750 * 100vw);
		border-width: 1px;
		inset: calc(10 / 750 * 100vw);
	}
}


/* copy_common04
------------------------------------------------------------------*/
.copy_common04{
	padding-bottom: calc(10 / var(--break02));
    line-height: 1.6;
	border-bottom: 1px solid #bfa87e;
}
.copy_common04 .deco{
    padding-left: calc(48 / var(--break02));
	background: url(images/page/deco_copy_common04.png)no-repeat center left / calc(32 / var(--break02));
	position: relative;
	z-index: 1;
}
@media(max-width: 767px) {
	.copy_common04{
		margin-left: -1vw;
		margin-right: -1vw;
		padding-bottom: 2vw;
		letter-spacing: 0;
		font-size: calc(37 / 750 * 100vw);
	}
	.copy_common04 .deco{
		padding-left: calc(50 / 750 * 100vw);
		background: url(images/page/deco_copy_common04.png)no-repeat center left / calc(44 / 750 * 100vw);
	}
}

/* row_common30
------------------------------------------------------------------*/
.row_common30{
	max-width: 1320px;
	margin-left: auto;
	margin-right: auto;
}
.row_common30>.col {
	max-width: 400px;
	width: 30.4%;
	background: #f0f0ec;
	position: relative;
	z-index: 1;
}
.row_common30 .copy{
	padding: calc(16.5 / var(--break03));
	font-size: calc(24 / var(--break03));
	text-align: center;
	color: #fff;
	background: #365073;
	position: relative;
	z-index: 1;
}
.row_common30 .col:nth-of-type(2n) .copy{
	background: #965588;
}
.row_common30 .areaText{
	padding: calc(26 / var(--break03)) calc(26 / var(--break03)) calc(36 / var(--break03));
}
@media(min-width: 768px) {
	.row_common30>.col {margin-right: 4.399%;}
	.row_common30>.col:nth-of-type(3n),
	.row_common30>.col:last-child {margin-right: 0;}
	.row_common30>.col:nth-of-type(n + 4){margin-top: calc(50 / var(--break03));}
}

@media (max-width: 767px) {
	.row_common30>.col {
		max-width: calc(340 / 750 * 100vw);
		width: 48%;
		margin-right: calc(21 / 750 * 100vw);
	}
	.row_common30>.col:nth-of-type(2n),
	.row_common30>.col:last-child {margin-right: 0;}
	.row_common30>.col:nth-of-type(n + 3) {
		margin-top: calc(40 / 750 * 100vw);
	}
	.row_common30 .copy{
		padding: 2.75vw;
		letter-spacing: 0;
		font-size: calc(26 / 750 * 100vw);
	}
	.row_common30 .areaText{
		padding: 3vw;
		letter-spacing: 0;
		font-size: calc(28 / 750 * 100vw);
	}
}


/* row_common31
------------------------------------------------------------------*/
.row_common31>.col {
	max-width: 480px;
	width: 32%;
	padding: 0 calc(35 / var(--break03)) calc( 40/ var(--break03));
	position: relative;
	z-index: 1;
}
.row_common31>.col::before{
	content: "";
	width: 100%;
	height: calc(100% - 210 / var(--break04));
	margin: auto;
	background: #fff;
	position: absolute;
	inset:  auto 0 0;
	z-index: -1;
}
.row_common31 .img{
	max-width: 410px;
	width: 100%;
	margin: 0 auto calc(40 / var(--break04));
}
.row_common31 .text{
	max-width: 380px;
	width: 99%;
	margin: auto;
}
.row_common31 .fz28{
	font-size: calc(28 / var(--break04));
}
@media (max-width: 767px) {
	.row_common31>.col {
		max-width: calc(646 / 750 * 100vw);
		width: 100%;
		margin: 0 auto 7vw;
	}
	.row_common31>.col:last-child{
		margin-bottom: 0;
	}
	.row_common31>.col::before{
		height: calc(100% - 282 / 750 * 100vw);
	}
	.row_common31 .img{
		width: calc(551 / 750 * 100vw);
	}
}
/* row_common40
------------------------------------------------------------------*/
.row_common40 > .box{
	width: 24%;
	padding: calc(28 / var(--break04)) 0;
	color: #fff;
	background: #365073;
}
@media(min-width: 768px) {}
@media (max-width: 767px) {
	.row_common40 > .box{
		width: 48.75%;
		letter-spacing: -.04em;
		font-size: 87.5%;
	}
	.row_common40 > .box:nth-of-type(n + 3){
		margin-top: 2.5vw;
	}
}
/* row_anchor_link
------------------------------------------------------------------*/
.row_anchor_link > .anchor{
	width: 22.6%;
	padding: calc(20 / var(--break03)) 0;
	line-height: 1.7;
	font-size: calc(22 / var(--break03));
	background: #f0f0ec;
	transition: .5;
	position: relative;
	z-index: 1;
}
.row_anchor_link > .anchor::before{
	content: "";
	width: 100%;
	height: calc(100% - 10 / var(--break03));
	margin: auto;
	position: absolute;
	border-top: #7a7369 solid 1px;
	border-bottom: #7a7369 solid 1px;
	inset: 0;
	z-index: -1;
}
.row_anchor_link > .anchor::after {
    content: "";
    width: calc(26 / var(--break02));
    height: calc(24 / var(--break02));
    margin: auto;
    background: url(images/index/arw_flow.svg) no-repeat center / contain;
    position: absolute;
    top: calc(100% + 10 / var(--break02));
    left: 0;
    right: 0;
    z-index: -1;
}
@media(min-width: 768px) {
	.row_anchor_link > .anchor:hover{
		color: #fff;
		background: #7a7369;
		transition: .5;
	}
	.row_anchor_link > .anchor:hover::before{
		border-top-color: #fff ;
		border-bottom-color: #fff;
	}
}
@media(max-width: 767px) {
	.row_anchor_link > .anchor{
		max-width: calc(340 / 750 * 100vw);
		width: 48.5%;
		min-height: calc(120 / 750 * 100vw);
		letter-spacing: 0;
		padding: 2vw 0;
		font-size: calc(28 / 750 * 100vw);
	}
	.row_anchor_link > .anchor::after {
		content: "";
		width: calc(26 / var(--break02));
		height: calc(24 / var(--break02));
		margin: auto;
		background: url(images/index/arw_flow.svg) no-repeat center / contain;
		position: absolute;
		top: calc(100% + 10 / var(--break02));
	}
	.row_anchor_link > .anchor:nth-of-type(n + 3){
		margin-top: calc(56 / 750 * 100vw);
	}	
}

/*
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}

/* box_common
------------------------------------------------------------------*/
.box_common .areaCopy{
	padding: calc(9 / var(--break02));
	line-height: 1.6;
	color: #fff;
	background: #bfa87e;
}
.box_common .areaText{
	padding: calc(40 / var(--break02)) calc(40 / var(--break02)) calc(80 / var(--break02));
	border: 1px solid #222;
	border-top: 0;
}
@media(max-width: 767px) {
	.box_common .areaCopy{
		padding: 3.5vw;
	}
	.box_common .fz32{
		letter-spacing: 0;
		font-size: 100.1%;
	}
	.box_common .areaText{
		padding: 3vw 4vw 5vw;;
	}
}

/* box_common02
------------------------------------------------------------------*/
.box_common02{
	border: 1px solid #222222;
}
@media(max-width: 767px) {
	.box_common02{
		padding-left: 4vw;
		padding-right: 4vw;
	}
}


/*
------------------------------------------------------------------*/
.bdr_common{
	width: 100%;
	height: 1px;
	background: #222222;
}
@media(max-width: 767px) {
	
}

/* tbl_common01
------------------------------------------------------------------*/
.tbl_common01 table {
	border-color: #222222
}
.tbl_common01 tbody th {
	vertical-align: middle;
	background: #7a7369;
}
.tbl_common01 tbody td {
	background: #fff;
}
.tbl_common01 tr:not(:last-child) th{
	border-bottom-color:#fff;
}
.tbl_common01 tr:not(:last-child) td {
	border-bottom-color: #222222
}

.tbl_common02 table {
	border-color: #222222
}
.tbl_common02 tbody th {
	vertical-align: middle;
	background: #365073;
}
.tbl_common02 tbody td {
	background: #fff;
}
.tbl_common02 tr:not(:last-child) th{
	border-bottom-color:#fff;
}
.tbl_common02 tr:not(:last-child) td {
	border-bottom-color: #222222
}

@media(max-width: 767px) {

}

/* btn_common
------------------------------------------------------------------*/
.btn_common{
	max-width: 100%;
	width: calc(400 / var(--break02));
	min-height: calc(80 / var(--break02));
	color: #fff;
	background: #222222;
	position: relative;
	z-index: 1;
}
.btn_common::before{
	content: "";
	width: calc(10 / var(--break02));
    height: calc(10 / var(--break02));
    border: 1px solid;
    border-color: transparent transparent #fff #fff;
    margin: auto;
    position: absolute;
    top: .15em;
    bottom: 0;
	right: calc(20 / var(--break02));
    transform: rotate(-135deg);
    transition: .3s;
}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.btn_common{
		width: calc(600 / 750 * 100vw);
		height: calc(100 /750 * 100vw);
	}
	.btn_common::before{
		width: calc(14 /750 * 100vw);
		height: calc(14 /750 * 100vw);
		right: calc(28 /750 * 100vw);
	}
	.btn_common .fz22{
		font-size: calc(34 /750 * 100vw);
	}
}

/* row_clinic_common
------------------------------------------------------------------*/
.row_clinic_common > .col{
	max-width: 820px;
	width: 48%;
}
.row_clinic_common .tbl_time {
	margin-left: auto;
	margin-right: auto;
}
@media(min-width: 768px) {
	.row_clinic_common > .col:nth-of-type(n + 3){
		margin-top: calc(60 / var(--break03));
	}
}
@media(max-width: 767px) {
	.row_clinic_common > .col{
		width: 100%;
		margin: 0 auto calc(100 / 750 * 100vw);
	}
	.row_clinic_common > .col:last-child{
		margin-bottom: 0;
	}
	.row_clinic_common .img{
		margin-bottom: 6vw;
	}
	.row_clinic_common .tbl_time {
		margin-left: auto;
		margin-right: auto;
	}
	.row_clinic_common .address{
		margin-bottom: 6vw;
	}
	.row_clinic_common .address .fz24{
		letter-spacing: 0;
		font-size: 100%;
	}
	.row_clinic_common .wrap_map{
		margin-left: -3.2vw;
		margin-right: -3.2vw;
	}
}


/* logo02
------------------------------------------------------------------*/
.logo02{
	max-width: 100%;
	width: calc(400 / var(--break02));
}
.logo03{
	max-width: 100%;
	width: calc(472 / var(--break02));
}
.logo04{
	max-width: 100%;
	width: calc(364 / var(--break02));
}
.logo05{
	max-width: 100%;
	width: calc(526 / var(--break02));
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.logo02{
		width: calc(480 / 750 * 100vw);
	}
	.logo03{
		width: calc(554 / 750 * 100vw);
	}
	.logo04{
		width: calc(437 / 750 * 100vw);
	}
	.logo05{
		max-width: 100%;
		width: calc(526 / var(--break02));
	}
}


/* row_contact
------------------------------------------------------------------*/
.bg_contact{
	padding: calc(40 / var(--break02)) 0;
	position: relative;
	z-index: 1;
}
.row_contact{
	max-width: 1160px;
	margin-left: auto;
	margin-right: auto;
}
.row_contact .btn{
	max-width: 48.5%;
	width: calc(560 / var(--break02));
	height: calc(140 / var(--break02));
	padding-top: calc(5 / var(--break04));
	background: #fff;
	position: relative;
	z-index: 1;
}
.row_contact .s1{
	display: block;
	line-height: 1;
	margin-bottom: calc(18 / var(--break02));
	font-size: calc(28 / var(--break02));
}
.row_contact .s2{
	line-height: 1;
    letter-spacing: .1em;
	font-size: calc(44 / var(--break02));
	position: relative;
	z-index: 1;
}
.row_contact .btn_tel .s2{
	padding-left: calc(46 / var(--break03));
	position: relative;
	z-index: 1;
}
.row_contact .btn_tel .s2::before {
    content: "";
    width: calc(30 / var(--break03));
    height: calc(30 / var(--break03));
    margin: auto;
	background: url(images/page/icon_tel.svg)no-repeat center / contain;
    position: absolute;
	top: 0;
    bottom: 0;
    left:  0;
    z-index: 1;
}
.row_contact .btn_web{color: #fff;}
.row_contact .btn_web::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    border-width: calc(9.5 / var(--break03));
    border-style: solid;
    border-color: transparent #fff #fff transparent;
    bottom: calc(5 / var(--break03));
    right: calc(5 / var(--break03));
    z-index: 1;
}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.bg_contact{
		padding: calc(60 / 750 * 100vw) 0;
	}
	.row_contact .btn{
		max-width: 100%;
		width: calc(560 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		margin: 0 auto calc(30 / 750 * 100vw);
		padding-top: 2vw;
	}
	.row_contact .btn:last-child{margin-bottom: 0;}
	.row_contact .s1{
		margin-bottom: 1.5vw;
		letter-spacing: .1em;
		font-size: calc(28 / 750 * 100vw);
	}
	.row_contact .s2{
		letter-spacing: .1em;
		font-size: calc(44 / 750 * 100vw);
	}
	.row_contact .btn_tel .s2{
		padding-left: calc(46 / 750 * 100vw);
	}
	.row_contact .btn_tel .s2::before {
		width: calc(30 / 750 * 100vw);
		height: calc(30 / 750 * 100vw);
	}
	.row_contact .btn_web::before {
		border-width: calc(9.5 / var(--break03));
		border-style: solid;
		border-color: transparent #fff #fff transparent;
		bottom: calc(5 / var(--break03));
		right: calc(5 / var(--break03));
		z-index: 1;
	}	
}


/* row_contact02
------------------------------------------------------------------*/
.row_contact02{
	max-width: 100%;
	width: calc(680 / var(--break03));
	margin-left: auto;
	margin-right: auto;
}
.row_contact02 .btn_tel{
	max-width: 59.5%;
	width: calc(405 / var(--break03));
	height: calc(140 / var(--break03));
	padding-top: calc(5 / var(--break03));
	background: #fff;
	border: 1px solid #222;
	position: relative;
	z-index: 1;
}
.row_contact02 .s1{
	display: block;
	line-height: 1;
	margin-bottom: calc(18 / var(--break03));
	font-size: calc(22.5 / var(--break03));
}
.row_contact02 .s2{
	line-height: 1;
    letter-spacing: .1em;
	font-size: calc(43 / var(--break03));
	position: relative;
	z-index: 1;
}
.row_contact02 .btn_tel .s2{
	padding-left: calc(46 / var(--break03));
	position: relative;
	z-index: 1;
}
.row_contact02 .btn_tel .s2::before {
    content: "";
    width: calc(30 / var(--break03));
    height: calc(30 / var(--break03));
    margin: auto;
	background: url(images/page/icon_tel.svg)no-repeat center / contain;
    position: absolute;
	top: 0;
    bottom: 0;
    left:  0;
    z-index: 1;
}
.row_contact02 .btn_web{
	max-width: 37.5%;
	width: calc(255 / var(--break03));
	height: calc(140 / var(--break03));
	padding-top: calc(5 / var(--break03));
	color: #fff;
	background: #365073;
	position: relative;
	z-index: 1;
}
.row_contact02 .btn_web::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    border-width: calc(9.5 / var(--break03));
    border-style: solid;
    border-color: transparent #fff #fff transparent;
    bottom: calc(5 / var(--break03));
    right: calc(5 / var(--break03));
    z-index: 1;
}
.row_contact02 .btn_web .s2{
	font-size: calc(30 / var(--break03));
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	.row_contact02 .btn_tel .s2{
		padding-left: calc(40 / var(--break03));
	}
}
@media(max-width: 767px) {
	.row_contact02{
		width: calc(560 / 750 * 100vw);
	}
	.row_contact02 .btn_tel{
		max-width: 100%;
		width: calc(560 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		padding-top: 2.5vw;
		margin: 0 auto calc(30 / 750 * 100vw);
	}
	.row_contact02 .s1{
		letter-spacing: .1em;
		margin-bottom: 1vw;
		font-size: calc(28/ 750 * 100vw);
	}
	.row_contact02 .s2{
		font-size: calc(43 /750 * 100vw);
	}
	.row_contact02 .btn_tel .s2{
		letter-spacing: .14em;
		padding-left: calc(40 /750 * 100vw);
	}
	.row_contact02 .btn_tel .s2::before {
		width: calc(30 / 750 * 100vw);
		height: calc(30 /750 * 100vw);
	}
	.row_contact02 .btn_web{
		max-width: 100%;
		width: calc(560 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		margin-bottom:0;
		padding-top: 2.5vw;
	}
	.row_contact02 .btn_web::before {
		border-width: calc(10 /  750 * 100vw);
	}
	.row_contact02 .btn_web .s2{
		font-size: calc(44 /750 * 100vw);
	}	
}


/* row_contact03
------------------------------------------------------------------*/
.row_contact03{
	max-width: 100%;
	width: calc(520 / var(--break03));
}
.row_contact03 .btn_tel{
	width: calc(320 / var(--break03));
	height: calc(110 / var(--break03));
	padding-top: calc(5 / var(--break03));
	background: #fff;
	position: relative;
	z-index: 1;
}
.row_contact03 .s1{
	display: block;
	line-height: 1;
	margin-bottom: calc(10 / var(--break03));
	font-size: calc(18 / var(--break03));
}
.row_contact03 .btn_tel .s2{
	padding-left: calc(30 / var(--break03));
    line-height: 1;
    letter-spacing: .1em;
	font-size: calc(34 / var(--break03));
	position: relative;
	z-index: 1;
}
.row_contact03 .btn_tel .s2::before {
    content: "";
    width: calc(22 / var(--break03));
    height: calc(22 / var(--break03));
    margin: auto;
	background: url(images/page/icon_tel.svg)no-repeat center / contain;
    position: absolute;
	top: 0;
    bottom: 0;
    left:  0;
    z-index: 1;
}
.row_contact03 .btn_web{
	width: calc(200 / var(--break03));
	height: calc(110 / var(--break03));
	padding-top: calc(5 / var(--break03));
	color: #fff;
	position: relative;
	z-index: 1;
}
.row_contact03 .btn_web::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    border-width: calc(10 / var(--break03));
    border-style: solid;
    border-color: transparent #fff #fff transparent;
    bottom: calc(5 / var(--break03));
    right: calc(5 / var(--break03));
    z-index: 1;
}
.row_contact03 .btn_web .s2{
	line-height: 1;
	font-size: calc(24 / var(--break03));
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(max-width: 767px) {

}

/* リスク・副作用
------------------------------------------------------------------*/
.box_risk01 {
	background: #7a7369;
}
.box_risk01 .box {
	overflow: hidden;
	max-height: 180px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	color: #fff;
	background: #7a7369;
	padding-right: calc(50 / var(--break) * 100vw);
}
/* パーフェクトスクロールバー */
.risk .ps__thumb-y, .box_invisalign .ps__thumb-y {
	background: #fff !important;
	right: 0px !important;
	width: 4px !important;
}
.risk .ps--active-x > .ps__rail-x,
.risk .ps--active-y > .ps__rail-y, .box_invisalign .ps--active-x > .ps__rail-x,
.box_invisalign .ps--active-y > .ps__rail-y {
	background: none !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1!important;
}
.risk .ps .ps__rail-x.ps--clicking, .risk .ps .ps__rail-x:focus, .risk .ps .ps__rail-x:hover, .risk .ps .ps__rail-y.ps--clicking, .risk .ps .ps__rail-y:focus, .risk .ps .ps__rail-y:hover, .box_invisalign .ps .ps__rail-x.ps--clicking, .box_invisalign .ps .ps__rail-x:focus, .box_invisalign .ps .ps__rail-x:hover, .box_invisalign .ps .ps__rail-y.ps--clicking, .box_invisalign .ps .ps__rail-y:focus, .box_invisalign .ps .ps__rail-y:hoverr {
	opacity: 1!important;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 751px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.box_risk01 .box {
		padding-right: 4vw;
		max-height: calc(420 / var(--break) * 100vw);
	}
	.box_risk01 .ttl, .box_invisalign .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.box_risk01 .txt {
		letter-spacing: 0;
	}
	.sp.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .sp.risk .ps-container > .ps-scrollbar-y-rail, .box_invisalign .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .box_invisalign .ps-container > .ps-scrollbar-y-rail {
		right: 0!important;
		width: 2px!important;
	}
}


/* 採用情報 recruit
------------------------------------------------------------------*/
.tbl_guideline01:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.tbl_guideline01 table {
	border-color: ;
}
.tbl_guideline01 th {
	background: ;
}
.tbl_guideline01 tr:not(:last-child) td {
	border-bottom-color: ;
}
.tbl_form01 th {
	color: #333333;
}
.tbl_form01 td input,
.tbl_form01 td textarea {
	background-color: #eee;
}
.tbl_form01 .require span:after {
	color: #fff;
	background-color: #376551;
}
.btn_submit input {
	border: none;
	background: #222222;
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.tbl_form01 .require span{
		display: inline;
		position: relative;
		z-index: 1;
	}
	.tbl_form01 .require span:after {
		width: calc(100 / var(--break) * 100vw);
        height: calc(55 / var(--break) * 100vw);
        line-height: calc(55 / var(--break) * 100vw);
		left: calc(100% + var(--size15px));
		right: auto;
	}
	.tbl_guideline01 td a {
		text-decoration: underline;
		color: var(--guideline-color);
	}
}

/* お問い合わせ contact
------------------------------------------------------------------*/
.grecaptcha-badge { visibility: hidden; }
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}

/* ブログ blog
------------------------------------------------------------------*/
#sidebar {
	width: 24%;
}
#sidebar h4 {
	background: #959595;
	color: #fff;
	font-weight: 500;
	font-size: 1.25rem;
	line-height: calc(40 / var(--break) * 100vw);
	margin-bottom: calc(4 / var(--break) * 100vw);
	text-align: center;
}
#sidebar caption {
	margin-bottom: calc(5 / var(--break) * 100vw);
}
#wp-calendar {
	width: 100%;
	margin-bottom: calc(10 / var(--break) * 100vw);
}
#wp-calendar thead th {
	background: #eee;
	border: 1px solid #eee;
	border-right-color: #eee;
	font-size: .8125rem;
	font-weight: normal;
}
#wp-calendar tbody td {
	border: 1px solid #eee;
	text-align: center;
	font-size: .875rem;
	line-height: 1.8;
}
#wp-calendar tbody td a {
	color: #959595;
	text-decoration: underline;
}
.wp-calendar-nav{
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin-bottom: calc(60 / var(--break) * 100vw);
	line-height: 1.5;
}
.wp-calendar-nav-prev{padding-left: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav-next{padding-right: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav a{
	padding-bottom: calc(3 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
#sidebar ul li {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
#sidebar ul li a {
	border-bottom: 1px solid #333;
	padding-bottom: calc(4 / var(--break) * 100vw);
	line-height: 2.1;
}
.post_main {
	width: 71%;
}
.navigation {
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.navigation li {
	width: calc(170 / var(--break) * 100vw);
}
.navigation .navitop {
	text-align: center;
}
.navigation .naviright {
	text-align: right;
}
.navigation li a {
	padding-bottom: calc(4 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
}
.post_content img {
	max-width: 100%;
	height: auto;
}
.date_single {
	display: block;
	text-align: right;
	font-size: .8125rem;
	margin-top: calc(-30 / var(--break) * 100vw);
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.post_content {
	line-height: 1.75;
}
.thmb {
	width: calc(120 / var(--break) * 100vw);
}
.thmb img {
	height: calc(120 / var(--break) * 100vw);
	object-fit: cover;
}
.thmb a:hover .img_thmb {
	opacity: .75;
}
.txt_post {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.page_main section.blog_archive {
	padding-bottom: calc(35 / var(--break) * 100vw);
	border-bottom: 1px solid #959595;
}
.post_main section.blog_archive:not(:last-child) {
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.txt_post a {
	color: inherit;
}
.txt_post a:hover {
	text-decoration: underline;
}
.txt_post h4 {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1.7;
	font-size: 1.25rem;
	letter-spacing: .1em;
}
.blog_archive .txt_post .date {
	color: #959595;
}
.txt_post .txt_excerpt {
	line-height: 1.75;
	margin-top: calc(8 / var(--break) * 100vw);
}
.txt_post .txt_excerpt .more {
	color: #aaa;
	text-decoration: underline;
}
.page_main .wp-pagenavi {
	margin-top: calc(60 / var(--break) * 100vw);
	text-align: center;
	font-size: .875rem;
}
.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #959595;
	color: #959595;
	padding: 0 calc(10 / var(--break) * 100vw);
	margin: calc(2 / var(--break) * 100vw);
	display: inline-block;
}
.page_main .wp-pagenavi span.pages {
	padding: 0 calc(11 / var(--break) * 100vw);
}
.page_main .wp-pagenavi a:hover, .page_main .wp-pagenavi span.current {
	border-color: #959595;
	background: #959595;
	color: #fff;
}
.page_main .wp-pagenavi span.current {
	font-weight: normal;
}
.post_content li {
	list-style: inherit;
	margin-left: 1.5em;
}
.post_content > h4,.post_content > h5{
	line-height: 1.6;
	font-size: 1.25rem;
	letter-spacing: 0.1em;
	margin-bottom: calc(35 / var(--break) * 100vw );
}
#sidebar .category h4{
	margin-bottom: calc(20 / var(--break) * 100vw );
}
#sidebar .category ul{
	gap:calc(10 / var(--break) * 100vw ) 3%;
}
#sidebar .category ul li{
	font-size: 1rem;
	width: auto;
	overflow: visible;
	white-space:normal;
}
#sidebar .category ul li a{
	border: 1px solid #959595;
	background: #959595;
	color: #fff;
	padding: calc(4 / var(--break) * 100vw ) calc(8 / var(--break) * 100vw );
	line-height: 1.6;
}
#sidebar .category ul li a.is-active{
	background: #fff;
	color: #959595;
}

@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.page_main {
		display: block!important;
	}
	#sidebar {
		width: 100%;
	}
	#sidebar h4 {
		line-height: calc(80 / var(--break) * 100vw);
	}
	.post_main {
		width: 100%;
		margin-bottom: 20vw;
	}
	.thmb {
		width: calc(210 / var(--break) * 100vw);
	}
	.thmb img {
		height: calc(210 / var(--break) * 100vw);
	}
	.txt_post {
		width: calc(100% - calc(240 / var(--break) * 100vw));
	}
	.txt_post h4 {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.navigation li {
		width: calc(200 / 750 * 100vw);
	}
	.page_main .wp-pagenavi span.pages,.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
		padding: .5vw 2vw;
		margin: calc(4 / 750 * 100vw);
	}
	.page_main section.blog_archive {
		padding-bottom: 6vw;
	}
	.post_main section.blog_archive:not(:last-child) {
		margin-bottom: 6vw;
	}
	.post_main .wp-pagenavi {
		margin-top: 12vw;
		display:-webkit-box;/*--- Androidブラウザ用 ---*/
		display:-ms-flexbox;/*--- IE10 ---*/
		display: -webkit-flex;/*--- safari（PC）用 ---*/
		display:flex;
		-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
		-ms-flex-pack:justify;/*--- IE10 ---*/
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap; /* Safari */
		flex-wrap: wrap;
	}
	.single_post > h3 {
		letter-spacing: 0;
		font-size: 1.1875rem;
	}
	.post_content > h4,.post_content > h5{
		letter-spacing: 0;
		font-size: 1.125rem;
	}
	#sidebar .category ul li a{
		border-radius: calc(8 / var(--break)* 100vw);
		padding: calc(4 / var(--break)* 100vw) calc(14 / var(--break)* 100vw);
	}
}


/* フォーマット format
------------------------------------------------------------------*/
.format {
	padding-bottom: calc(140 / var(--break) * 100vw);
}
.wrap_format01:not(:last-of-type) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.img_format01 {
	max-width: 1000px;
}
.row_format01 .col_img {
	width: 46%;
	max-width: 570px;
}
.row_format01 .col_txt {
	width: 50%;
}
.list_format01 li {
	max-width: 425px;
}
.row_format03 .col_img {
	width: 29%;
	max-width: 350px;
}
.row_format03 .col_txt {
	width: 67%;
}
.row_format03 .copy {
	border-bottom: 1px solid #333;
}
.row_format03 .copy:before {
	content: "";
	position: absolute;
	width: calc(20 / var(--break) * 100vw);
	height: calc(20 / var(--break) * 100vw);
	left: 0;
	top: .4em;
	background: #333;
}
.txt_format01 {
	max-width: 1000px;
}
.tbl_fee {
	max-width: 1000px;
}
.tbl_fee table {
	border-color: #;
}
.tbl_fee th {
	background: #;
}
.tbl_fee thead th {
	background: #;
	text-align: center;
}
.tbl_fee thead tr th:not(:last-of-type) {
	border-right: 1px solid #fff;
}
.tbl_fee tr:not(:last-child) td {
	border-bottom-color: #;
}
.tbl_fee tbody tr td:not(:last-of-type) {
	border-right: 1px solid #;
}
.tbl_fee01 tbody th {
	text-align: center;
}
.wrap_format01 .box_flow:last-of-type:before {
	display: none;
}
.box_format03 .col_img {
	width: 31%;
	max-width: 345px;
}
.box_format03 .col_txt {
	width: 65%;
}
.row_format04 .col {
	width: 31.8%;
	max-width: 394px;
	margin-right: 2.3%;
}
.row_format04 .col:nth-child(3n), .row_format04 .col:last-child {
	margin-right: 0;
}
.row_format04 .col:not(:nth-child(-n+3)) {
	margin-top: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 {
	border: none;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 .box_a .box {
	width: calc(60 / var(--break) * 100vw);
	height: calc(60 / var(--break) * 100vw);
	left: 0;
	top: 0;
}
.wrap_format01 .box_qa03 .box_a {
	padding-top: calc(30 / var(--break) * 100vw);
	padding-left: calc(100 / var(--break) * 100vw);
}
.box_format04 .ttl {
	font-weight: 300;
	height: calc(50 / var(--break) * 100vw);
}
.list_format02 li:not(:first-child) {
	margin-top: calc(14 / var(--break) * 100vw);
}
.list_format02 .year {
	width: calc(140 / var(--break) * 100vw);
}
.list_format02 .txt {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.risk_format {
	border: 1px solid #333;
}
.risk_format .box{
	overflow-y: scroll;
	max-height: 280px;
	scrollbar-color: #333 #fff;
    scrollbar-width: thin;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.format {
		padding-bottom: 17vw;
	}
	.wrap_format01:not(:last-of-type) {
		margin-bottom: 20vw;
	}
	.img_format01 {
		max-width: 100%;
	}
	.box_format01 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.list_format01 li {
		max-width: 100%;
	}
	.row_format03 .copy {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.row_format03 .copy:before {
		top: .55em;
	}
	.txt_format01 {
		max-width: calc(646 / var(--break) * 100vw);
	}
	.tbl_fee {
		max-width: 100%;
	}
	.tbl_fee01 tbody th {
		text-align: left;
	}
	.box_format03 {
		display: block;
	}
	.box_format03 .copy {
		font-size: 1.125rem;
	}
	.row_format04 {
		display: block;
	}
	.row_format04 .col {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin: 0 auto!important;
	}
	.row_format04 .col:not(:first-child) {
		margin-top: calc(60 / var(--break) * 100vw);!important;
	}
	.row_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.wrap_format01 .box_qa03 .box_a .box {
		width: calc(80 / var(--break) * 100vw);
		height: calc(80 / var(--break) * 100vw);
		font-size: 1.5625rem;
	}
	.tbl_format01.js-scrollable table {
		width: calc(1200 / var(--break) * 100vw);
		font-size: .875rem;
	}
	.img_format02 {
		max-width: calc(500 / var(--break) * 100vw);
	}
	.name_format .job {
		font-size: .875rem;
		letter-spacing: 0;
	}
	.name_format .ja {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.box_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
		height: calc(80 / var(--break) * 100vw);
	}
	.list_format02 li:not(:first-child) {
		margin-top: 2vw;
	}
	.list_format02 .year {
		width: calc(200 / var(--break) * 100vw);
	}
	.list_format02 .txt {
		width: calc(100% - calc(200 / var(--break) * 100vw));
	}
}