@charset "UTF-8";
p strong {
	font-weight: bold !important;
}
p em {
	font-style: italic !important;
}
p em strong,
p strong em {
	font-weight: bold !important;
	font-style: italic !important;
}

p a {
	color: #6b75c1;
	text-decoration: underline;
	margin: 0 1px;
}
section img {
    box-sizing: border-box;
}
.flex {
	display: flex;	
}
.flex img{
	max-width: 100%;
}
.flex-wrap {
	flex-wrap: wrap;	
}
.align-center {
	align-items: center;	
}
.align-base {
	align-items: baseline;	
}
.between {
	justify-content: space-between;
}
.futura {
	font-family: futura-pt, sans-serif;
}
.ready{
	font-weight: bold;
	text-align: center;
	font-size: 26px;
	margin: 60px 0 100px;
	color: #FF373A;
}
table .empty{
	display: none;
}
/*
	. staff(院長スタッフ)
========================================================================== */
section.staff {
    margin-bottom: 40px;
}
.staff .staff_group,
.staff .staff_career,
.staff .staff_hobby,
.staff .staff_img {
	width: 48%;
}
.staff .staff_group,
.staff .staff_career,
.staff .staff_hobby {
	margin-bottom: 20px;
}
.staff .staff_img {
	float: right;
}
.staff .staff_certificate li {
	width: 19%;
    margin-bottom: 1.25%;
    margin-right: 1.25%;
	display: flex;
    align-items: center;
	padding: 3px;
	border: 1px solid #ccc;
	box-sizing: border-box;
}
.staff .staff_certificate li:nth-child(5n) {
    margin-right: 0;
}

/*table-nocolor*/
.staff .table-nocolor th {
	width: 5em;
	text-align: left;
}
.staff .table-nocolor td {
	text-align: left;
}

/*table-nostyle*/
.staff .table-nostyle th {
	vertical-align: top;
    padding: 0 1em 0 0;
}
.staff .table-nostyle td {
	vertical-align: top;
	padding: 0;
}

/*
	. tour(院内ツアー)
========================================================================== */
section.tour {
    margin-bottom: 40px;
}
.tour div {
    margin-bottom: 10px;
}
.tour div:last-of-type {
    margin-bottom: 0;
}



/*
	. map_time(地図・診療時間)
========================================================================== */
section.map_time {
    margin-bottom: 40px;
}
/* tel */
.map_time .tel{
	font-size: 22px;
}
/* table-nostyle */
.map_time .table-nostyle th {
	padding: 6px 0px;
}
.map_time .fa-long-arrow-right{
	margin:0 10px;
}
/* googlemap responsive */
.map_time .gmap iframe {
	display: block;
	width: 100%;
}
.map_time .table-nocolor th,
.map_time .table-nocolor td{
	padding: 7px 3px 4px;
}
.map_time .table-nocolor thead td{
	background:#E2E2E2;
	color: #333;
	border: 1px solid #ccc;
}
.map_time .table-nocolor tbody th{
	background: #fff;
	border: 1px solid #ccc;
}
/*
	. recruit(スタッフ募集)
========================================================================== */
section.recruit {
    margin-bottom: 40px;
}
/* anchor */
.recruit .anchor {
	text-align: left;
	letter-spacing: -.40em;
	margin-bottom: 40px;
	display: flex;
	justify-content: space-between;
}
.recruit .anchor li {
	width: 100%;
	letter-spacing: normal;
	display: block;
    padding: 0 1%;
}
.recruit .anchor li a {
	padding: 4% 0;
	text-align: center;
	color:#FFF;
	border-radius: 5px;
	display: block;
}
.recruit .anchor li:first-child a,
.recruit .anchor li:nth-child(5) a {
	background:#71C3ED;
}
.recruit .anchor li:nth-child(2) a,
.recruit .anchor li:nth-child(6) a {
	background:#88D7AF;
}
.recruit .anchor li:nth-child(3) a {
	background:#F8BD52;
}
.recruit .anchor li:nth-child(4) a {
	background:#F8B9A8;
}

.rec_txt {
	margin-bottom: 40px;	
}
.rec_txt .rec_item {
	margin-bottom: 20px;	
}
.rec_txt .rec_item:last-of-type {
	margin-bottom: 0;	
}


/* reward */
.recruit .reward{
	display:flex;
}
.recruit .reward li{
	width:18.8%;
	margin-right: 1.5%;
}
.recruit .reward li:last-child{
	margin-right: 0%;
}
.recruit .reward li img{
	width:100%;
	box-sizing:border-box;
}
/*table-nocolor*/
.recruit .table-nocolor th{
	width:120px;
}
.recruit .table-nocolor th,
.recruit .table-nocolor td{
	text-align:left;
}
/* tel */
.recruit .tel{
	font-size: 22px;
}

/*
	price(料金表)
========================================================================== */
section.price {
    margin-bottom: 40px;
}
.price_menu{
	margin-bottom: 100px;
}
.price_item {
    margin-bottom: 40px;	
}
.price_item:last-of-type {
    margin-bottom: 0;	
}
.price .cleditcard li {
	float: left;
	margin-right: 8px;
}
.price .cleditcard li img {
	width: auto;
	height: 39px;
}
.price .cleditcard li:last-child {
	margin: 0;
}

.price .red,
.price_menu .p-link{
	color: #482d31;
}

/*table-nocolor*/
.price .table-nocolor th,
.price .table-nocolor td{
	vertical-align:middle;
}

/* whitening */
.price.price_whitening .table-nocolor th {
	width: 14em;
}
.price.price_whitening .table-nocolor td {
	width: auto;
}

/* correct */
.price.price_correct .table-nocolor th:nth-of-type(1) {
	min-width: 9em;
}
.price.price_correct .table-nocolor th:nth-of-type(2) {
	width: 100%;
}
.price.price_correct .table-nocolor th:nth-of-type(3) {
	min-width: 5em;
}
.price.price_correct .table-nocolor td {
	width: auto;
}

/* add */
.price.price_add .table-nocolor th:nth-of-type(1) {
	min-width: 10em;
}
.price.price_add .table-nocolor th:nth-of-type(2) {
	width: 100%;
}
.price.price_add .table-nocolor th:nth-of-type(3) {
	min-width: 5em;
}
.price.price_add .table-nocolor td {
	width: auto;
}
.price.price_add .table-nocolor td:first-of-type {
	min-width: 11vw;
}
.price.price_add .table-nocolor td:last-of-type {
	min-width: 10vw;
}

.price #link01{
	margin-top: 40px;
}

/*
	 . contact(お問い合わせ)
========================================================================== */
section.contact{
    margin-bottom: 60px;
}
/* tel */
.contact p.tel {
	font-size: 22px;
}
.contact h3.ttl-low4 span {
	text-indent: -0.5em;
    display: inline-block;	
}

/* table-nocolor */
.contact .table-nocolor th {
	width: 120px;
	text-align: left;
	font-weight: bold;
}
.contact .table-nocolor td {
	text-align: left;
}
/*フォーム*/
.form {
	width: 100%;
	margin: 20px auto 20px;
	border: 1px solid #ccc;
	border-collapse: collapse;
}
.form th {
	white-space: nowrap;
	background-color: #eee;
	border: 1px solid #ccc;
	padding: 8px 12px;
	vertical-align: middle;
	width: 140px;
}
.form td {
	padding: 10px 15px;
	border: 1px solid #ccc;
	vertical-align: middle;
	background: #fff;
}
.form td p {
	margin-bottom: 1em;
}
.form td p:nth-of-type(1) {
	margin-top: 0.5em;
}
.form .required {
	color: #C20E11;
	margin-left: 4px;
}
.form td input[type="text"],
.form td input[type="number"],
.form td input[type="tel"],
.form td input[type="email"],
.form td input[type="adress"],
.form td textarea{
    border: solid 1px #ccc;
	padding: 2px 4px;
}
.form .type span.wpcf7-list-item {
	display: block;	
	margin: 0;
}
.form label {
    line-height: 1;
    display: inline-block;
    margin-right: 10px;
}
.form input{
    vertical-align: middle;
}
.form input[type="radio"]{
    vertical-align: top;
}
.wpcf7-datetime,.hasDatepicker{
	width: 200px;
	margin-bottom: 5px;
	vertical-align: middle;
}
.form input.name,
.form input.telnumber {
    width:250px;
}
.form input.email {
    width:420px;
}
.form td textarea{
	width: 400px;
}
.form .timemenu{
	width: 200px;
}
.form .visit{
	margin: 2px 4px;
}
.form .timemenu select{
	width: 200px;
	height:28px;
	line-height: 28px;
	padding: 0;
}
.form .wpcf7-radio {
    display: flex;
}
.form .wpcf7-radio .wpcf7-list-item {
	display: flex;
	align-items: center;		
}
.form span.wpcf7-list-item.first{
	margin: 0;
}
.form .wpcf7-radio .wpcf7-list-item input {
	margin-right: 0.25em;
}
.form .wpcf7-list-item-label {
    line-height: 0;
}
.form-btn {
	text-align: center;
	margin-bottom: 60px;
}
.form-btn input {
	margin-right: 20px;
	line-height: 40px;
	cursor: pointer;
	padding: 0 30px;
	border-radius: 5px;
	background: #e71a41;
	border: 1px solid #e71a41;
	color: #fff;
	-webkit-appearance: none;
}
.contact div.wpcf7-mail-sent-ok, .contact div.wpcf7-mail-sent-ng, .contact div.wpcf7-validation-errors {
	border: none;
	text-align: center;
	color: #C20E11;
}
.contact02 span.wpcf7-not-valid-tip {
	font-size: 14px;
	color: #C20E11;
	text-align: left;
}
.form .yubin{
	width: 80px;
	margin-bottom: 5px;
}
.form .addressmore{
	font-size: 11px;
	color: #A2A2A2;
	margin-left: 4px;
}
.form #prefecture{
	width: 6em;
	padding-left: 3px;
	margin-right: 10px;
	margin-bottom: 5px;
}
.form #city{
	width: 340px;
	margin-right: 10px;
	padding-left: 3px;
	margin-bottom: 5px;
}
.form #street{
	width: 440px;
	padding-left: 5px;
}
.form .kakunin-text {
	display: block;
	font-size: 80%;
	color: #fc9b2a;
}
.form span.address, .form span.address02 {
	display: block;
	margin-top: 5px;
}
.form span.address input, .form span.address02 input {
	padding-left: 3px;
	width: 400px;
}

/*
	. feature(６つの特徴）
========================================================================== */
.feature h2 br {
	display: none;
}
.feature .anchor_link h2 br {
	display: block;
}

.feature .anchor_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.feature .anchor_link > li {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 15px;
	padding:2% 2% 2%;
	border: 1px #6e9bc5 solid;
    position: relative;
    background: #ffffff;
    box-sizing: border-box;	
}
.feature .anchor_link > li.count4,
.feature .anchor_link > li.count5:nth-child(-n+2) {
	width: 49%;
	margin-right:2%;
}
.feature .anchor_link > li.count5:nth-child(2),
.feature .anchor_link > li.count5:last-child,
.feature .anchor_link > li.count6:nth-child(3n) {
	margin-right: 0%;
}
.feature .anchor_link > li.count4:nth-child(2n) {
	margin-right: 0%;
}
.feature .anchor_link li a {
	display:block;
}
.feature .anchor_link li h2 {
	display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 14px;
    height: 2.5em;
    line-height: 1.25em;
	border-bottom: 1px #6e9bc5 solid;
    padding-bottom: 0.25em;
}
.feature .anchor_link li.count4 .anchor_link_img,
.feature .anchor_link li.count5:nth-child(-n+2) .anchor_link_img {
	width: 49%;
	float: left;
}
.feature .anchor_link li.count5:nth-child(n+3) .anchor_link_img,
.feature .anchor_link li.count6 .anchor_link_img {
	margin-bottom: 0.25em;
}
.feature .anchor_link .anchor_link_img img {
	max-width: 100%;
}
.feature .anchor_link .object-fit-img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	object-position: top;
}
.feature .anchor_link .anchor_link_txt {
	text-align: left;
	font-size: 14px;
}
.feature .anchor_link li.count4 .anchor_link_txt,
.feature .anchor_link li.count5:nth-child(-n+2) .anchor_link_txt {
	width: 49%;
	float: right;
}
.feature .anchor_link li .btn {
	width: 90%;
    margin: 5% 5% 0;
    padding: 5px 0;
    color: #fff;
    border-radius: 100px;
    background: #6e9bc5;
    display: block;
    text-align: center;
}