@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
.content_low {
	padding: calc(100 / var(--break) * 100vw) 0 calc(200 / var(--break) * 100vw);
}
.main_page {
	background: url("images/page/bg_main.jpg")no-repeat center right/ auto 100%;
	height: calc(330 / var(--break) * 100vw);
}
.page_main section:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.head_low01 h1 {
	max-width: 400px;
}
@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;
	}
	.main_page {
		background: url("images/page/bg_main.jpg") no-repeat center / cover;
	}
	.hdg2 {
        letter-spacing: .05em;
        font-size: 155%;
    }
	.hdg3 {
		letter-spacing: 0;
		font-size: calc(46 / var(--break) * 100vw);
	}
	.head_low01 h1 {
    	/* max-width: calc(500 / var(--break) * 100vw); */
		max-width: calc(400 / var(--break) * 100vw);
	}
	.col_img {
		text-align: center;
	}
}


/* コンテンツ名 class
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}

/* リスク・副作用
------------------------------------------------------------------*/
.box_risk01 .box {
	overflow: hidden;
	max-height: 180px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	background: #eee;
	padding-right: calc(50 / var(--break) * 100vw);
}
.box_invisalign {
	max-width: 1000px;
	border: ;
}
.box_invisalign .box {
	overflow: hidden;
	max-height: 180px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	padding-right: calc(50 / var(--break) * 100vw);
}
/* パーフェクトスクロールバー */
.risk .ps__thumb-y, .box_invisalign .ps__thumb-y {
	background: #333333 !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: #5d5d5d;
}
.tbl_guideline01 th {
	background: #5d5d5d;
}
.tbl_guideline01 tr:not(:last-child) td {
	border-bottom-color: #5d5d5d;
}
.tbl_form01 th {
	color: #333333;
}
.tbl_form02 table {
	border-color: #5d5d5d;
}
.tbl_form02 th {
	background: #5d5d5d;
}
.tbl_form02 tr:not(:last-child) td {
	border-bottom-color: #5d5d5d;
}
.tbl_form02 td input {
    border: 1px solid #ddd;
    padding: 4px;
    width: 49%;
}
.tbl_form02 td textarea {
    border: 1px solid #ddd;
    width: 100%;
    max-height: 200px;
}
.tbl_form01 td input,
.tbl_form01 td textarea {
	background-color: #eee;
}
.tbl_form01 .require span:after {
	color: #fff;
	background-color: #5d5d5d;
}
.btn_submit input {
	border: none;
	background: #5d5d5d;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.tbl_guideline01 td a {
		text-decoration: underline;
		color: var(--guideline-color);
	}
	.tbl_form02 td input {
		width: 100%;
	}
}

/* お問い合わせ 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 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;
}
.thmb {
    width: calc(120 / var(--break)* 100vw);
}
.thmb img {
    height: calc(120 / var(--break)* 100vw);
    object-fit: cover;
}
@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);
	}
}