@charset "UTF-8";

/*==========================================================================

	00. common
	01. caries(虫歯治療)
	02. perio(歯周病)
	03. extraction(親知らずの抜歯)
	04. root(根管治療)
	05. kids(小児歯科)
	06. implant(インプラント)
	07. denture(入れ歯)
	08. correct(矯正治療)
	09. esthetics(審美歯科)
	10. wihitening(ホワイトニング)
	11. prevent(予防歯科）
	12. halitosis (口臭治療）
	13. staff(院長スタッフ)
	14. tour(院内ツアー)
	15. price(料金表)
	16. map_time(地図・診療時間)
	17. recruit(スタッフ募集)
	18. contact(お問い合わせ)
	19. reason(特徴)
	20. menu(診療メニュー)

	23.CMS

========================================================================== */
/*
	00. common
========================================================================== */
.menu_ttl {
  margin-top: -10px;
  margin-bottom: 35px;
}

.menu_ttl span {
  display: inline-block;
  width: 125px;
}

.menu_ttl img {
  width: 100%;
  height: auto;
  margin-top: -12px;
}

.page-catch .ttl-low2 {
  width: 500px;
  margin: 0 auto 20px;
}

/* kids */
.page-catch .page_ttl {
  width: 600px;
  padding: 5px;
  text-align: center;
  color: #FFF;
  border-radius: 3px;
  display: inline-block;
}

.page-catch .bg_or {
  background: #FFC758;
}

.page-catch .bg_pk {
  background: #FF9898;
}

.page-catch .fa-check-square-o {
  color: #FF373A;
}

/*　prevent */
.page-catch span.under_line {
  display: inline-block;
  position: relative;
}

.page-catch span.under_line:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  border-bottom: 1px #000 solid;
}

.pk {
  color: #FF9DC7;
}

.txt150 {
  font-size: 150%;
}

/*
	01. caries(虫歯治療)
========================================================================== */
section.caries {
  padding-bottom: 40px;
}

/*　症例画像3枚並び  */
.caries .case-records-three {
  text-align: center;
}

.caries .case-records-three li {
  width: 149px;
  text-align: left;
  vertical-align: top;
  display: inline-block;
}

.caries .case-records-three li:nth-child(1) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 50px 0px 0px;
}

.caries .case-records-three li:nth-child(2) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 50px 0px 0px;
}

.concept_cont_list {
  width: 700px;
  margin: 0 auto 40px;
}

.concept_cont_list_item {
  width: 230px;
  box-sizing: border-box;
  border: 1px solid #4c99ef;
  padding: 15px;
  float: left;
  background: #FFFFFF;
}

.concept_cont_list_item:nth-child(-n+2) {
  margin: 0 5px 0 0;
}

.concept_cont_list_item_img {
  margin: 0 0 15px 0;
}

.concept_cont_list_item_img img {
  max-width: 100%;
}

.concept_cont_list_item_ttl {
  text-align: center;
  color: #4c99ef;
  font-size: 14px;
  line-height: 21px;
  border-bottom: 1px solid #4c99ef;
  padding-bottom: 4px;
  margin-bottom: 0.5em;
}

.concept_cont_list_item_ttl_img {
  width: 21px;
  margin-right: 0.25em;
}

.hover:hover {
  opacity: 0.7;
  display: block;
}

/*
02. perio(歯周病)
========================================================================== */
section.perio {
  padding-bottom: 40px;
}

/* 4つ並び */
.perio .list-emd-wrap {
  position: relative;
  overflow: hidden;
}

.perio .list-emd {
  position: relative;
  left: 50%;
  float: left;
}

.perio .list-emd li {
  position: relative;
  float: left;
  left: -50%;
  width: 120px;
  padding-left: 60px;
  background: url(../images/common/arrow02.png) no-repeat 9px 64px;
}

.perio .list-emd li img {
  margin-bottom: 5px;
}

.perio .list-emd li:first-child {
  background: none;
  padding-left: 0;
}

/*
03. extraction(親知らずの抜歯)
========================================================================== */
section.extraction {
  padding-bottom: 40px;
}

/*　症例画像2枚並び画像サイズ小  */
.extraction .case-sm {
  padding: 20px 120px;
}

/*
	04. root(根管治療)
========================================================================== */
section.root {
  padding-bottom: 40px;
}

/*　ttl-low4 */
.root .ttl-low4 span.ttl_box {
  margin-right: 5px;
  padding: 5px 30px;
  color: #fff;
  font-size: 100%;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  background: #FFC758;
}

/*　症例画像3枚並び  */
.root .case-records-three {
  text-align: center;
}

.root .case-records-three li {
  width: 149px;
  text-align: left;
  vertical-align: top;
  display: inline-block;
}

.root .case-records-three li:nth-child(1) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 50px 0px 0px;
}

.root .case-records-three li:nth-child(2) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 50px 0px 0px;
}

/*
05. kids(小児歯科)
========================================================================== */
section.kids {
  padding-bottom: 40px;
}

/* anchor link */
.kids .anchor {
  text-align: left;
  letter-spacing: -.40em;
  margin-bottom: 60px;
}

.kids .anchor li {
  width: 49%;
  margin-right: 2%;
  font-size: 20px;
  letter-spacing: normal;
  display: inline-block;
  position: relative;
}

.kids .anchor li:first-child a {
  padding: 2% 0;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  background: #FFC758;
  display: block;
}

.kids .anchor li:last-child {
  margin-right: 0%;
}

.kids .anchor li:last-child a {
  padding: 2% 0;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  background: #FF9898;
  display: block;
}

.kids .kids_ttl {
  line-height: 1.4;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  font-size: 17px;
  border-radius: 5px;
}

.kids .col_pk {
  background: #FF9898;
}

.kids .col_or {
  background: #FFC758;
}

.kids .txt_pk {
  color: #FF9898;
}

.kids .txt_or {
  color: #FFC758;
}

/*　症例画像2枚並び画像サイズ小  */
.kids .case-sm {
  padding: 20px 110px;
}

/*
	06. implant(インプラント)
========================================================================== */
section.implant {
  padding-bottom: 40px;
}

.implant .ttl_circle {
  font-size: 18px;
  font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin-bottom: 15px;
}

.implant .ttl_circle span {
  display: inline-block;
  width: 48px;
  height: 48px;
  line-height: 48px;
  font-size: 24px;
  background: #f19158;
  border-radius: 27px;
  text-align: center;
  color: #fff;
  margin-right: 10px;
}

/*
	07. denture(入れ歯)
========================================================================== */
section.denture {
  padding-bottom: 40px;
}

.denture .static img {
  width: initial;
}

.denture .box-img-left .img {
  width: 30%;
}

.denture .ttl-low4 {
  font-size: 24px;
}

.page-catch .price8 {
  vertical-align: -1px;
  font-size: 145%;
}

.denture .price8 {
  vertical-align: -1px;
  font-size: 145%;
}

.denture .ttl-low3 {
  position: relative;
}

.denture .ttl-low3 .icon {
  background: #ff8400;
  color: #fff;
  font-weight: bold;
  padding: 0em 0.5em;
  display: inline-block;
  line-height: 1.4;
  border: 1px solid #fff3d6;
  border-radius: 2em;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
  position: absolute;
  left: 28.6%;
  bottom: 2px;
  font-size: 95%;
}

/*
	08. correct(矯正治療)
========================================================================== */
section.correct {
  padding-bottom: 40px;
}

.correct .correct_ttl {
  font-size: 120%;
  text-align: center;
}

.correct .txt170 {
  font-size: 170%;
}

/*　underline */
.correct span.under_line {
  display: inline-block;
  position: relative;
}

.correct span.under_line:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  border-bottom: 1px #000 solid;
}

/*　correct_box */
.correct .correct_box {
  text-align: center;
  letter-spacing: -.40em;
}

.correct .correct_box li {
  width: 43%;
  padding: 15px;
  margin-right: 4%;
  letter-spacing: normal;
  border-radius: 5px;
  border: 1px #CCC solid;
  vertical-align: top;
  display: inline-block;
}

.correct .correct_box li:last-child {
  margin-right: 0%;
}

.correct .correct_box_ttl {
  padding: 8px 0;
  color: #fff;
  border-radius: 3px;
  background: #FFC758;
}

.correct .correct_split {
  width: auto;
  padding: 10px;
  border-radius: 5px;
  border: 1px #FFC758 solid;
  box-sizing: border-box;
  display: table;
}

.correct .correct_split dt {
  vertical-align: middle;
  display: table-cell;
}

.correct .correct_split dt img {
  width: 100%;
}

.correct .correct_split dd {
  text-align: left;
  font-size: 90%;
  vertical-align: middle;
  display: table-cell;
}

.correct .correct_rel {
  padding: 35px 0;
  color: #666;
  font-size: 120%;
}

.correct .correct_rel dd:nth-child(4) {
  transform: rotate(90deg);
}

/* ローフォースメカニクス */
.correct .low_force {
  text-align: center;
  letter-spacing: -.40em;
}

.correct .low_force li {
  width: 40%;
  margin-right: 5%;
  vertical-align: top;
  letter-spacing: normal;
  display: inline-block;
}

.correct .low_force li:last-child {
  margin-right: 0%;
  width: 54%;
}

.correct .low_force dl {
  text-align: left;
  display: table;
}

.correct .low_force dt {
  vertical-align: top;
  display: table-cell;
}

.correct .low_force dd {
  padding-left: 10px;
  vertical-align: middle;
  display: table-cell;
}

.correct .box-img-left .img {
  width: 38%;
  padding: 0 5px 0 0;
}

/*　症例画像2枚並び画像サイズ小  */
.correct .case-sm {
  padding: 15px 20px 0;
}

.correct .case-records {
  background: url(../images/common/arrow02.png) no-repeat center 60%;
}

/* itero */

section.correct.itero h3 {
  padding: 4px;
  text-align: center;
  color: #3B90DC;
  font-size: 18px;
  font-weight: 800;
  background: #E1EDF9;
  border-radius: 20px;
}

section.correct.itero h4 {
  margin-bottom: 30px;
  padding-bottom: 4px;
  color: #3B90DC;
  font-size: 18px;
  font-weight: 800;
  border-bottom: solid 1px #A8CEEF;
}

/*
	09. esthetics(審美歯科)
========================================================================== */
section.esthetics {
  padding-bottom: 40px;
}

#gikoushi .gikoushi-career {
  width: 100%;
  border-collapse: collapse;
  margin: 4px 0 8px;
}

#gikoushi .gikoushi-career td {
  border-bottom: 1px dotted #e0d5c8;
  padding: 7px 6px;
  vertical-align: top;
  text-align: left;
  background: none;
}

#gikoushi .gikoushi-career td:first-child {
  width: 4.8em;
  color: #ee7614;
  white-space: nowrap;
}

#gikoushi .img-column.menu-btn.for-two {
  position: static;
  left: auto;
  float: none;
  width: 100%;
  display: table;
  table-layout: fixed;
  border-collapse: collapse;
}

#gikoushi .img-column.menu-btn.for-two li {
  position: static;
  left: auto;
  float: none;
  display: table-cell;
  width: 50%;
  vertical-align: top;
}

#gikoushi .img-column.menu-btn.for-two li:first-child {
  padding-right: 10px;
}

#gikoushi .img-column.menu-btn.for-two li:last-child {
  margin-left: 0;
  padding-left: 10px;
}

#gikoushi .img-column.menu-btn.for-two img {
  width: 100%;
  height: auto;
  display: block;
  box-sizing: border-box;
}

/*
	10. wihitening(ホワイトニング)
========================================================================== */
section.whitening {
  padding-bottom: 40px;
}

/* anchor wrap_two */
.whitening .wht_ttl {
  line-height: 1.4;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  font-size: 17px;
  border-radius: 5px;
}

.whitening .col_bl {
  background: #3bc7e5;
}

.whitening .col_or {
  background: #fdac0d;
}

.whitening .col_pk {
  background: #f47575;
}

.whitening .wrap_two {
  overflow: hidden;
}

.whitening .wrap_two a {
  text-decoration: none;
  display: block;
}

.whitening .wrap_two_lt {
  width: 48%;
  margin-right: 4%;
  float: left;
}

.whitening .wrap_two_lt a {
  text-decoration: none;
  display: block;
}

.whitening .wrap_two_rt {
  width: 48%;
  float: left;
}

.whitening .wrap_two_rt a {
  text-decoration: none;
  display: block;
}

.whitening .anc_btn {
  padding: 3px 8px;
  color: #fff;
  float: right;
  text-decoration: none;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  background: #C2A085;
  display: inline-block;
}

.whitening i.fa-arrow-circle-right {
  color: #FFF;
}

/*　症例画像2枚並び */
.whitening .case-records_small {
  letter-spacing: -.40em;
  background: url(../images/common/arrow02.png) no-repeat center center;
  padding: 0;
  text-align: center;
}

.whitening .case-records_small li {
  width: 132px;
  margin-right: 60px;
  letter-spacing: normal;
  display: inline-block;
}

.whitening .case-records_small li:last-child {
  margin-right: 0px;
}

.whitening .case-records_small li img {
  width: 100%;
}

/*　ttl-low4 */
.whitening .ttl-low4 span.ttl_box_bl {
  margin-right: 5px;
  padding: 5px 30px;
  color: #FFF;
  font-size: 100%;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  background: #3bc7e5;
}

.whitening .ttl-low4 span.ttl_box_gr {
  margin-right: 5px;
  padding: 5px 30px;
  color: #FFF;
  font-size: 100%;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  background: #5dc392;
}

/*　症例画像4枚並び */
.whitening .list-emd-wrap {
  position: relative;
  overflow: hidden;
}

.whitening .list-emd {
  position: relative;
  left: 50%;
  float: left;
}

.whitening .list-emd li {
  position: relative;
  float: left;
  left: -50%;
  width: 112px;
  font-size: 12px;
  padding-left: 60px;
  background: url(../images/common/arrow02.png) no-repeat 15px 30px;
}

.whitening .list-emd li img {
  margin-bottom: 5px;
}

.whitening .list-emd li:first-child {
  background: none;
  padding-left: 0;
}

/* flow */
.whitening .flow {
  width: 100%;
  display: table;
}

.whitening .flow dt {
  padding-right: 10px;
  font-size: 200%;
  vertical-align: top;
  display: table-cell;
}

.whitening .flow dt.bl {
  color: #8BD2E4;
}

.whitening .flow dt.gr {
  color: #82D7D8;
}

.whitening .flow dd {
  width: 95%;
  padding-top: 10px;
  vertical-align: top;
  display: table-cell;
}

/*　症例画像3枚並び  */
.whitening .case-records-three {
  text-align: center;
}

.whitening .case-records-three li {
  width: 164px;
  height: 170px;
  text-align: left;
  vertical-align: top;
  display: inline-block;
}

.whitening .case-records-three li span {
  margin-top: 5px;
  font-size: 90%;
  display: block;
}

.whitening .case-records-three li:nth-child(1) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 40px 0px 0px;
}

.whitening .case-records-three li:nth-child(2) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 40px 0px 0px;
}

/*　症例画像3枚並び2  */
.whitening .case-records-three2 {
  text-align: center;
}

.whitening .case-records-three2 li {
  width: 130px;
  text-align: left;
  vertical-align: top;
  display: inline-block;
}

.whitening .case-records-three2 li:nth-child(1) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 40px 0px 0px;
}

.whitening .case-records-three2 li:nth-child(2) {
  background: url(../images/common/arrow02.png) no-repeat right center;
  background-size: 30px auto;
  margin-right: 5px;
  padding: 0px 40px 0px 10px;
}

/* table-nocolor */
.whitening .table-nocolor th {
  width: 70px;
}

.whitening .table-nocolor th,
.whitening .table-nocolor td {
  text-align: left;
}

/*
11. prevent(予防歯科）
========================================================================== */
section.prevent {
  padding-bottom: 40px;
}

/*
12. halitosis (口臭治療）
========================================================================== */
section.halitosis {
  padding-bottom: 40px;
}

/*
	13. staff(院長スタッフ)
========================================================================== */
section.staff {
  padding-bottom: 40px;
}

.staff h3 img {
  width: 200px;
}

.staff .box-two-column .box-left {
  width: 320px;
  float: left;
}

.staff .box-two-column .box-right {
  width: 380px;
  float: right;
}

.staff .borde-b {
  border-bottom: 1px dashed #aaa;
  padding-bottom: 20px !important;
  margin-bottom: 30px;
}

.staff .borde-b:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}

/* table-nocolor */
.staff .table-nocolor th {
  width: 90px;
  text-align: left;
}

.staff .table-nocolor td {
  text-align: left;
}

.staff .txt120.mincho {
  font-size: 140%;
  padding-left: 5px;
  letter-spacing: .08em;
}

.staff img.staff-portrait {
  width: 420px;
  max-width: 100%;
  height: auto;
}

.staff .staff-role {
  display: inline-block;
  margin: 0 0 8px;
  padding: 2px 12px 1px;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: .16em;
  line-height: 1.6;
  color: #ee7614;
  background: #fff8f2;
  border: 1px solid #ffd7b0;
}

.mainPhoto.copyright-hero {
  background: #fff8f2;
}

.copyright-hero-title {
  width: 1100px;
  margin: 0 auto;
  padding: 28px 16px;
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: .08em;
  color: #ff8400;
}

section.copyright-page {
  padding-bottom: 20px;
  text-align: left;
}

section.copyright-page p,
section.copyright-page li {
  font-size: 15px;
  line-height: 1.9;
}

/*
	14. tour(院内ツアー)
========================================================================== */
section.tour {
  padding-bottom: 40px;
}

/*
	15. price(料金表)
========================================================================== */
section.price {
  padding-bottom: 60px;
}

.price-first-visit-badge {
  display: inline-block;
  background: #fff;
  border: 1px solid #e0d5c8;
  color: #666;
  font-size: 12px;
  line-height: 1.4;
  padding: 4px 10px 3px;
  margin-bottom: 8px;
}

.price .list-dot li {
  padding-left: 1em;
  background: url(../images/common/disc.png) no-repeat left top 0.25em;
}

.price .img img {
  width: 320px;
}

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

/*table-normal*/
.price .table-normal th {
  background: #ccc;
  border: 1px solid #999;
}

.price .table-normal td {
  text-align: left;
  vertical-align: middle;
}

.price .table-normal td:first-child {
  width: 170px;
  text-align: center;
}

.price .table-normal td:last-child {
  width: 150px;
  line-height: 2.5;
  font-weight: bold;
  text-align: center;
}

.price .w70 {
  width: 70px;
}

/* table_star */
.price .table_star {
  width: 150px;
  margin: 0 auto;
  display: table;
}

.price .table_star dt {
  text-align: right;
  display: table-cell;
}

.price .table_star dd {
  width: 85px;
  padding-left: 5px;
  text-align: left;
  display: table-cell;
}

.price .table-normal th {
  color: #484848;
}

#link06.price th {
  width: 200px;
}

/* ストローマン */
.price .table-nocolor.table-straumann th:nth-of-type(4){
	width: 3em;
}
.price .table-nocolor.table-straumann th:nth-of-type(6){
	width: 5em;
}
.price .table-nocolor.table-straumann th{
  white-space: nowrap;
}
.price .table-nocolor.table-straumann td{
  padding:6px 6px;
}

/* 上部構造 */
.price .table-normal.table-implant-3 th:nth-of-type(1) {
  width: 140px;
}
.price .table-normal.table-implant-3 th:nth-of-type(2),
.price .table-normal.table-implant-3 th:nth-of-type(3),
.price .table-normal.table-implant-3 th:nth-of-type(4) {
  width: 4em;
}
.price .table-normal.table-implant-3 th:nth-of-type(5) {
  width: 8em;    
}
.price .table-normal.table-implant-3 td:nth-of-type(6) {
  font-weight:
  normal;
  line-height: 1.4;
}

.price .table-normal.table-implant-3 td{
  text-align:center;
  width:auto;
}
/*
	16. map_time(地図・診療時間)
========================================================================== */
section.map_time {
  padding-bottom: 50px;
}

.map_time .web_img {
  width: 178px;
}

/* googlemap responsive */
.map_time .ggmap iframe {
  display: block;
  width: 690px;
}

.map_time .table-nostyle th {
  padding-bottom: 10px;
  padding-left: 5px;
}

.map_time .table-nocolor tbody th {
  background: #fff;
}

.map_time .table-nocolor td:last-of-type,
.map_time .table-nocolor thead th:last-of-type {
  display: none;
}

.map_time .map img {
  border: 2px solid #967d69;
}

.map_time .tel-link {
  color: #4c99ef
}

.map_time .map_ttl {
  text-align: center;
}

.map_time .map_ttl p {
  font-size: 160%;
  margin: 0 auto;
  width: 600px;
  padding: 7px 0;
  border-top: 2px solid #967d69;
  border-right: 2px solid #967d69;
  border-left: 2px solid #967d69;
  background: #fff3d6;
  color: #ee7614;
}

/* 駐車サービス券のご案内 */
.parking-info {
  margin: 40px 0 50px;
  padding: 28px 24px 20px;
  border: 1px solid #f3ddb4;
  border-radius: 8px;
  background: #fffdf8;
}
.parking-info .ttl-low1 {
  margin: 0 0 16px;
}
.parking-info p {
  margin-bottom: 14px;
  line-height: 1.9;
}
.parking-info .ttl-low3 {
  margin: 24px 0 10px;
  text-align: left;
}
.parking-info table.table-normal {
  margin: 16px 0 10px;
  width: 100%;
}
.parking-info .table-normal th {
  background: #fff;
  color: #e94609;
  text-align: center;
  white-space: nowrap;
}
.parking-info .table-normal td {
  text-align: center;
  line-height: 1.8;
}
.parking-info .parking-note {
  font-size: 13px;
  color: #8a5a2b;
  margin-bottom: 8px;
}
.parking-info ul.parking-list {
  list-style: none;
  margin: 8px 0 14px;
}
.parking-info ul.parking-list li {
  position: relative;
  padding: 6px 0 6px 1.4em;
  border-bottom: 1px dashed #f3ddb4;
  line-height: 1.8;
}
.parking-info ul.parking-list li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 6px;
  color: #ff8400;
  font-weight: 700;
}

/*
	17. recruit(スタッフ募集)
========================================================================== */
section.recruit {
  padding-bottom: 40px;
}

.recruit .table-normal th {
  width: 150px;
}

.recruit .table-normal td {
  text-align: left;
}

.recruit .indent_txt {
  padding-left: 3em;
  text-indent: -3em;
}

/* 職種別ページへの誘導カード（募集トップ / PC） */
.recruit .job-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 6px 0 34px;
}
.recruit .job-card {
  display: flex;
  flex-direction: column;
  border: 1px solid #f3ddb4;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  color: #4a4a4a;
  text-decoration: none;
  transition: box-shadow .2s, transform .2s;
}
.recruit .job-card:hover {
  box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
  transform: translateY(-2px);
}
.recruit .job-card .head {
  background: #ff8400;
  color: #fff;
  padding: 14px 16px;
  font-weight: 700;
  font-size: 18px;
  text-align: center;
}
.recruit .job-card .head .en {
  display: block;
  margin-top: 2px;
  font-size: 11px;
  letter-spacing: .15em;
  font-weight: 600;
  opacity: .9;
}
.recruit .job-card .body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px;
  font-size: 13.5px;
  line-height: 1.8;
}
.recruit .job-card .body p {
  flex: 1;
  margin: 0 0 14px;
}
.recruit .job-card .more {
  display: block;
  text-align: center;
  background: #ff8400;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  border-radius: 999px;
  padding: 10px;
}
.recruit .job-card.dh .head {
  background: #f0649b;
}
.recruit .job-card.dh .more {
  background: #f0649b;
}

/* 求人ページ 動画ボタン（ジョブカード直下 / PC） */
.recruit .recruit-movies {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 0 0 34px;
}
.recruit .recruit-movie-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 18px;
  border: none;
  border-radius: 10px;
  background: #ff8400;
  box-shadow: 0 3px 0 #d97200;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  text-align: center;
  text-decoration: none;
  line-height: 1.5;
  cursor: pointer;
  box-sizing: border-box;
}
.recruit .recruit-movie-btn:hover {
  opacity: .9;
}
.recruit .recruit-movie-btn.alt {
  background: #f0649b;
  box-shadow: 0 3px 0 #cf4d81;
}
.recruit .recruit-movie-btn::before {
  content: "▶";
  font-size: 13px;
}

.recruit-movie-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, .75);
  align-items: center;
  justify-content: center;
  padding: 24px;
  box-sizing: border-box;
}
.recruit-movie-modal.is-open {
  display: flex;
}
.recruit-movie-dialog {
  position: relative;
  max-width: 420px;
  width: 100%;
}
.recruit-movie-dialog video {
  display: block;
  width: 100%;
  height: auto;
  max-height: 80vh;
  background: #000;
  border-radius: 8px;
}
.recruit-movie-close {
  position: absolute;
  top: -14px;
  right: -14px;
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 50%;
  background: #fff;
  color: #333;
  font-size: 22px;
  line-height: 36px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

/* ---- 歯科助手募集ページ（.recruit-da に限定 / PC） ---- */
.recruit-da {
  line-height: 1.9;
  font-size: 15px;
}
.recruit-da p {
  margin-bottom: 14px;
}
.recruit-da .hl {
  color: #c96e00;
  font-weight: bold;
}
.recruit-da .da-flex {
  display: flex;
  gap: 28px;
  align-items: flex-start;
  margin-bottom: 16px;
}
.recruit-da .da-flex .txt {
  flex: 1;
}
.recruit-da .da-flex .txt p {
  margin-bottom: 0;
}
.recruit-da .da-flex .pic {
  flex-shrink: 0;
  width: 280px;
}
.recruit-da .da-flex .pic img {
  width: 100%;
  height: 190px;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}
/* スマホ幅ではフレックス解除して縦積み */
@media (max-width: 600px) {
  .recruit-da .da-flex {
    flex-direction: column;
    gap: 14px;
  }
  .recruit-da .da-flex .pic {
    width: 100%;
  }
  .recruit-da .da-flex .pic img {
    height: auto;
  }
}
.recruit-da .da-lead {
  margin: 10px 0 40px;
  padding: 24px;
  border: 1px solid #ffbb83;
  border-radius: 8px;
  background: #fffdf8;
}
.recruit-da .da-catch {
  font-size: 19px;
  font-weight: 700;
  color: #e94609;
  margin-bottom: 12px;
}
.recruit-da .badges {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.recruit-da .badge {
  background: #ff8400;
  color: #fff;
  font-size: 12.5px;
  font-weight: 700;
  border-radius: 999px;
  padding: 3px 14px;
}
.recruit-da .badge.alt {
  background: #f0649b;
}
.recruit-da .ttl-low1 {
  margin: 48px 0 18px;
}
.recruit-da .ttl-low3 {
  margin: 26px 0 10px;
  text-align: left;
}
.recruit-da .stages {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 14px;
  margin: 20px 0;
}
.recruit-da .stage {
  border: 1px solid #f3ddb4;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.recruit-da .stage .head {
  background: #fdf1dc;
  padding: 10px 14px;
  font-weight: 700;
  color: #8a5a2b;
}
.recruit-da .stage .wage {
  font-size: 20px;
  font-weight: 800;
  color: #c96e00;
  padding: 10px 14px 0;
}
.recruit-da .stage .wage small {
  font-size: 12px;
}
.recruit-da .stage .body {
  padding: 6px 14px 14px;
  font-size: 13px;
  line-height: 1.7;
}
.recruit-da .patterns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 14px;
  margin: 20px 0;
}
.recruit-da .pattern {
  border: 1px solid #f3ddb4;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.recruit-da .pattern .head {
  background: #fdf1dc;
  padding: 10px 14px;
  font-weight: 700;
  color: #8a5a2b;
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.recruit-da .pattern .head .tag {
  background: #ff8400;
  color: #fff;
  border-radius: 999px;
  font-size: 12px;
  padding: 1px 10px;
}
.recruit-da .pattern .body {
  padding: 12px 14px;
  font-size: 13.5px;
  line-height: 1.7;
}
.recruit-da .pattern .hours {
  color: #c96e00;
  font-weight: 700;
  font-size: 12.5px;
  margin-top: 6px;
}
.recruit-da ul.check {
  list-style: none;
  margin: 8px 0 14px;
}
.recruit-da ul.check li {
  position: relative;
  padding: 6px 0 6px 30px;
  border-bottom: 1px dashed #f3ddb4;
}
.recruit-da ul.check li::before {
  content: "\2713";
  position: absolute;
  left: 6px;
  top: 6px;
  color: #ff8400;
  font-weight: 800;
}
.recruit-da table.table-normal {
  margin: 0 0 30px;
}
.recruit-da .table-normal th {
  background: #fff;
}
.recruit-da .table-normal td {
  line-height: 1.8;
}
.recruit-da .table-normal td .small {
  font-size: 12.5px;
  color: #888;
  display: block;
  margin-top: 4px;
}
.recruit-da .visit {
  margin-top: 56px;
  border: 2px solid #f3ddb4;
  border-radius: 10px;
  background: linear-gradient(180deg, #fffdf8, #fdf3e2);
  padding: 36px 28px;
  text-align: center;
}
.recruit-da .visit h2 {
  font-size: 21px;
  color: #8a5a2b;
  font-weight: 700;
  margin-bottom: 10px;
}
.recruit-da .visit p {
  max-width: 640px;
  margin: 0 auto 18px;
  text-align: left;
}
.recruit-da .tel {
  display: inline-block;
  background: #fff;
  border: 2px solid #ff8400;
  border-radius: 999px;
  padding: 12px 34px;
  font-size: 24px;
  font-weight: 800;
  color: #c96e00;
  text-decoration: none;
  margin: 6px 0 4px;
}
.recruit-da .tel small {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: #4a4a4a;
}
.recruit-da .salary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  background: #fff;
  border: 2px solid #ff8400;
  border-radius: 8px;
  padding: 18px 22px;
  margin: 18px 0 8px;
}
.recruit-da .salary .amount {
  font-size: 26px;
  font-weight: 800;
  color: #c96e00;
}
.recruit-da .salary .amount small {
  font-size: 14px;
  font-weight: 700;
}
.recruit-da .salary .plus {
  font-size: 14px;
  font-weight: 700;
  color: #333;
}
.recruit-da .pay-point {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0 8px;
  padding: 12px 20px;
  background: #fff4e6;
  border: 1px dashed #ff8400;
  border-radius: 8px;
  font-weight: 700;
  color: #c96e00;
  font-size: 15px;
}
.recruit-da .pay-point strong {
  color: #e94609;
  font-size: 20px;
  letter-spacing: .02em;
}
/* スマホ幅では pay-point のフレックス解除して縦積み（本体定義より後ろに置く） */
@media (max-width: 600px) {
  .recruit-da .pay-point {
    display: block;
  }
  .recruit-da .pay-point strong {
    display: block;
    margin-top: 2px;
  }
}
.recruit-da .note {
  font-size: 12.5px;
  color: #888;
}
/* ---- /歯科助手募集ページ ---- */

/*
	18. contact(お問い合わせ)
========================================================================== */
section.contact {
  padding-bottom: 40px;
}

.contact .web_img {
  width: 178px;
}

/* table-nocolor */
.contact .table-nocolor th {
  width: 120px;
  text-align: left;
  font-weight: bold;
  background-color: #eee;
  border: 1px solid #ccc;
}

.contact .table-nocolor td {
  text-align: left;
}

/* box-two-column */
.contact .box-two-column .box-left {
  width: 120px;
}

.contact .box-two-column .box-right {
  width: 570px;
  padding-left: 10px;
}

.contact .list-dot li {
  margin-bottom: 5px;
}

/*フォーム*/
.form {
  width: 100%;
  margin: 10px 0 20px;
  border: 1px solid #ccc;
  border-collapse: collapse;
  box-sizing: border-box;
  border-bottom: none;
}

.form th {
  background-color: #eee;
  padding: 8px 5px 6px;
  border-bottom: 1px solid #ccc;
  text-align: center;
  vertical-align: middle;
}

.form td {
  padding: 10px 5px 10px;
  vertical-align: middle;
  text-align: left;
  background: #fff;
  border-bottom: 1px solid #ccc;
}

.form .required {
  color: #C20E11;
  margin-left: 4px;
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.cardnumber {
  height: 32px;
  width: 94%;
  padding-left: 2px;
  margin: 0 auto;
  display: block;
}

.form input[type="number"] {
  height: 32px;
  width: 3em;
  padding-left: 2px;
  margin: 0 calc(3% - 2px);
}

.form textarea {
  height: 8em;
  width: 94%;
  padding: 2px;
  margin: 0 auto;
  display: block;
  border: 1px solid #CCC;
}

.datetimetd span {
  margin-left: 2%;
}

.wpcf7-datetime {
  width: 94%;
  display: block;
  height: 32px;
}

.form .year-born {
  width: 60px;
  margin-right: 3px;
}

.form .born {
  width: 40px;
  margin: 0 3px 0 6px;
}

.form input.yubin {
  width: 80px;
  height: 28px;
  margin: 0 4px 8px;
  display: inline;
}

.form .addressmore {
  font-size: 11px;
  color: #A2A2A2;
  margin-left: 4px;
}

.form #prefecture {
  min-width: 6em;
  padding-left: 3px;
  margin-left: 2%;
  margin-bottom: 5px;
  display: inline;
  width: 30%;
  margin-right: 1.5%;
  height: 28px;
}

.form #city {
  margin-bottom: 5px;
  display: inline;
  width: 60.5%;
  height: 28px;
}

.form #street {
  width: 94%;
  height: 28px;
}

.form .kakunin-text {
  display: block;
  font-size: 80%;
  color: #fc9b2a;
}

.form .soudan {
  margin: 0 auto;
  display: block;
}

.form .timemenu select {
  width: 200px;
  height: 28px;
  line-height: 28px;
  padding: 0;
  margin: 0 auto;
  display: block;
}

.form .sp-center {
  text-align: center;
}

.form-btn {
  text-align: center;
  margin-bottom: 50px;
}

.form-btn input {
  margin-right: 20px;
  line-height: 40px;
  cursor: pointer;
  padding: 0 24px;
  background: #ff8400;
  border: none;
  color: #fff;
  -webkit-appearance: none;
}

.form-btn input.send,
.form-btn input.check {
  margin-right: 0;
}

.contact .wpcf7-mail-sent-ok,
.contact .wpcf7-mail-sent-ng,
.contact .wpcf7-validation-errors {
  border: none;
  text-align: center;
  color: #C20E11;
}

.contact span.wpcf7-not-valid-tip {
  font-size: 12px;
  color: #C20E11;
  text-align: left;
}

.ajax-loader {
  width: 16px;
  height: 16px;
}

@media screen and (max-width: 320px) {
  .form #prefecture {
    margin-right: 1%;
  }

  .form #city {
    width: 58%;
  }
}

/*
	19. reason(特徴)
========================================================================== */
section.reason {
  padding-bottom: 40px;
}

/*　anchor link one */
.reason .anchor_link_wrap {
  margin-bottom: 15px;
  padding: 15px 2% 20px 2%;
  border: 1px #CE7171 solid;
  box-sizing: border-box;
}

.reason .anchor_link_wrap a {
  display: block;
}

.reason .anchor_ttl {
  text-align: center;
  color: #bf7b79;
  font-size: 15px;
  border-bottom: 1px #bf7b79 dashed;
}

.reason .team_list {
  width: 100%;
  display: table;
  position: relative;
}

.reason .team_list li {
  vertical-align: top;
  display: table-cell;
}

.reason .team_list li:first-child {
  width: 45%;
  padding-right: 5%;
  text-align: center;
}

.reason .team_list li:last-child {
  width: 50%;
}

.reason .doctors img {
  width: 300px;
}

.reason .attend_doctor {
  padding: 5px 15px 5px 20px;
  color: #594A37;
  border: 1px #EBC4C5 solid;
  background: rgba(255, 223, 223, 0.7);
  display: inline-block;
  position: relative;
  top: -15px;
  left: 0%;
}

.reason .attend_doctor .fa-caret-right {
  color: #D2737B;
}

.reason .history {
  font-size: 80%;
}

.reason .director_img {
  position: absolute;
  bottom: 0;
  right: 0;
}

.reason .director_name {
  text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
  position: absolute;
  bottom: 30px;
  right: 100px;
}

.reason .anchor_link_wrap span.btn {
  width: 90%;
  margin: 0 auto;
  padding: 5px 0;
  color: #fff;
  text-align: center;
  background: #CE7171;
  display: inline-block;
}

.reason .anchor_link_wrap .fa-chevron-circle-down {
  margin-right: 5px;
}

.reason br.anchor_br {
  display: none;
}

/*　anchor link */
.reason .anchor_link {
  text-align: left;
  letter-spacing: -.40em;
}

.reason .anchor_link li {
  width: 44.5%;
  margin-right: 2.4%;
  padding: 15px 2% 50px 2%;
  vertical-align: top;
  letter-spacing: normal;
  display: inline-block;
  position: relative;
  border: 1px #CE7171 solid;
}

.reason .anchor_link li:last-child {
  margin-right: 0%;
}

.reason .anchor_link li a {
  display: block;
}

.reason .anchor_link dt {
  text-align: center;
  color: #bf7b79;
  font-size: 15px;
  border-bottom: 1px #bf7b79 dashed;
}

.reason .anchor_link dd {
  font-size: 12px;
}

.reason .anchor_link dd.check {
  padding-left: 30px;
  background: url(../images/top/reason03_check.png) no-repeat top left;
  display: block;
}

.reason .anchor_link dd:last-child {
  width: 100%;
  position: absolute;
  left: 0px;
  bottom: 15px;
}

.reason .anchor_link dd img {
  max-width: 96%;
  padding: 2%;
  border: 1px #CCC solid;
}

.reason .anchor_link dd span.btn {
  width: 80%;
  margin: 0 auto;
  padding: 5px 0;
  color: #fff;
  text-align: center;
  background: #CE7171;
  display: inline-block;
}

.reason .anchor_link dd .fa-chevron-circle-down {
  margin-right: 5px;
}

/*
	20. menu(診療メニュー)
========================================================================== */
nav.menu {
  padding-bottom: 40px;
  background: transparent;
}

nav.menu ul li {
  border-bottom: 1px dashed #ccc;
}

nav.menu ul li a {
  display: inline-block;
  padding: 15px 10px 13px 10px;
  color: #2b89f0;
}

/*
	23. CMS
========================================================================== */
.roop {
  margin-bottom: 30px;
}

/*サイドバー*/
.menu_cont {
  padding: 0;
}

.wrap_menu_ttl {
  display: none;
}

.sidebar {
  margin-bottom: 30px;
}

.ttl-low-s {
  font-size: 16px;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background: url(../images/common/icon_h_low.png) no-repeat left top 2px;
  padding-left: 20px;
  border-bottom: 1px solid #343434;
  margin-bottom: 12px;
  letter-spacing: 2px;
}

.sidebar li {
  padding: 0 10px 0 20px;
  /* background: url(../images/common/icon_h_sidebar.gif) no-repeat 5px 7px; */
  margin-bottom: 6px;
}

.sidebar li a {
  text-decoration: underline;
  font-size: 14px;
}

.sidebar li a:hover {
  text-decoration: none;
}

.post {
  border-radius: 4px;
  padding: 30px;
  margin: 0 0 20px 0px;
  overflow-wrap: break-word;
}

.post h2 a {
  color: #ce7171;
}

.post .ttl-low1 {
  font-size: 15px;
}

.post .data {
  font-size: 12px;
  color: #777;
  margin-bottom: 4px;
  display: block;
}

.post p {
  margin-bottom: 10px;
  font-size: 14px;
}

.posts-btn {
  text-align: center;
  margin-top: 40px;
  margin-bottom: 50px;
}

.posts-btn li {
  display: inline;
}

.posts-btn li:first-child:after {
  content: "|";
  margin-left: 30px;
}

.posts-btn li:first-child {
  margin-right: 30px;
}

.posts-btn a {
  color: #ce7171;
  text-decoration: underline;
  vertical-align: middle;
}

.posts-btn a i {
  margin: 0 3px;
  font-size: 90%;
  vertical-align: middle;
}

.post iframe,
.post img {
  max-width: 100%;
  height: auto;
}

.case-records-cms {
  background: url(../images/common/arrow01.png) no-repeat center 52%;
  width: 100%;
  margin: 15px auto;
}

.case-records-cms td {
  text-align: center;
  vertical-align: middle;
}

.case-records-cms .before img {
  float: left;
  background: url(../images/common/before_s.png) no-repeat left top;
  padding-top: 14px;
  width: 98px;
  height: auto;
}

.case-records-cms .after img {
  float: right;
  background: url(../images/common/after_s.png) no-repeat left top;
  padding-top: 14px;
  width: 98px;
  height: auto;
}

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

  .case-records-cms .before img,
  .case-records-cms .after img {
    width: 116px;
    height: auto;
  }
}

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

  .case-records-cms .before img,
  .case-records-cms .after img {
    width: 124px;
    height: auto;
  }
}

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

  .case-records-cms .before img,
  .case-records-cms .after img {
    width: 140px;
    height: auto;
  }
}

.cboxPhoto {
  max-width: 90%;
  height: auto;
}

.screen-reader-text {
  display: none !important;
}

#s {
  width: 90%;
  padding: 2px 5px;
  margin: 0 auto;
  display: block;
  line-height: 26px;
}

#searchsubmit {
  display: block;
  margin: 10px auto 30px;
  width: 100px;
  text-align: center;
  padding: 4px;
  font-size: 14px;
  border: 1px solid #ccc;
  background: #ffffff;
  background: -moz-linear-gradient(top, #ffffff 0%, #ededed 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #ededed 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #ededed 100%);
  color: #444;
}

/*フォントサイズリセット解除*/
.post h1 {
  font-size: 30px;
}

.post h2 {
  font-size: 22px;
}

.post h3 {
  font-size: 18px;
}

.post h4 {
  font-size: 14px;
}

.post h5 {
  font-size: 12px;
}

.post h6 {
  font-size: 10px;
}
