#topmain {
  width: 960px;
  height: 245px;
  margin: 0 auto;
}

#topmain #mainimage {
  width: 765px;
  height: 240px;
  float: left;
}

.fee-box {
  background: #f8fafc;
  /* 薄い青グレー */
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1rem 1.25rem;
  line-height: 1.9;
}

.fee-box h3 {
  margin: 0 0 .5rem;
  font-size: 1.05rem;
}

.fee-box ul {
  margin: 0;
  padding-left: 1.2rem;
}

.fee-box .price {
  font-weight: 700;
  font-size: 1.05em;
  letter-spacing: .02em;
}

.fee-box a {
  text-decoration: underline;
}

#mainimage #slide {
  margin-bottom: 0;
  overflow: hidden;
  background-color: #fff;
  float: left;
}

#mainimage #slide ul {
  list-style: none;
  position: relative;
  margin-left: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  width: 768px;
  height: 220px;
}

#mainimage #slide ul li {
  float: left;
  width: 768px;
  margin: 0;
  padding: 0;
  position: absolute;
}

div#pagenation {
  height: 12px;
  display: block;
  position: relative;
  overflow: visible;
  top: 6px;
  right: 28px;
  margin: 0;
  padding: 0;
}

div#pagenation ul {
  margin: 0;
  padding: 0;
  position: relative;
  float: left;
  list-style: none;
}

div#pagenation li {
  margin: 0;
  margin: 0 2px;
  padding: 0;
  position: relative;
  left: 714px;
  float: left;
}

div#pagenation li a {
  width: 12px;
  height: 12px;
  overflow: visible;
  display: block;
  background-image: url(../images/pagenation.gif);
  background-position: 0 0;
}

div#pagenation li a:hover {
  background-position: 0 12px;
}

div#pagenation li.active a {
  background-position: 0 12px;
}

div#pagenation li a img {
  visibility: hidden;
  display: none;
}

#topmain .topics {
  width: 190px;
  float: right;
}

#topmain .topics .topics01,
#topmain .topics .topics02,
#topmain .topics .topics03,
#topmain .topics .topics04,
#topmain .topics .topics05 {
  width: 190px;
  height: 59px;
  margin-bottom: 2px;
}

#topmain .topics .topics01 a {
  width: 190px;
  height: 59px;
  background: url(../images/topics01.gif);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics01 a:link,
#topmain .topics .topics01 a:visited {
  width: 190px;
  height: 59px;
  background: url(../images/topics01.gif);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics02 a {
  width: 190px;
  height: 59px;
  background: url(../images/topics05.jpg);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics02 a:link,
#topmain .topics .topics02 a:visited {
  width: 190px;
  height: 59px;
  background: url(../images/topics05.jpg);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics03 a {
  width: 190px;
  height: 59px;
  background: url(../images/innai.jpg);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics03 a:link,
#topmain .topics .topics03 a:visited {
  width: 190px;
  height: 59px;
  background: url(../images/innai.jpg);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics04 a {
  width: 190px;
  height: 59px;
  background: url(../images/topics04.png);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics04 a:link,
#topmain .topics .topics04 a:visited {
  width: 190px;
  height: 59px;
  background: url(../images/topics04.png);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics05 a {
  width: 190px;
  height: 59px;
  background: url(../images/topics05.gif);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics05 a:link,
#topmain .topics .topics05 a:visited {
  width: 190px;
  height: 59px;
  background: url(../images/topics05.gif);
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics01 a:active,
#topmain .topics .topics01 a:hover {
  width: 190px;
  height: 59px;
  background: url(../images/topics01_over.gif);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics02 a:active,
#topmain .topics .topics02 a:hover {
  width: 190px;
  height: 59px;
  background: url(../images/topics05_hover.jpg);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics03 a:active,
#topmain .topics .topics03 a:hover {
  width: 190px;
  height: 59px;
  background: url(../images/innai_hover.jpg);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics04 a:active,
#topmain .topics .topics04 a:hover {
  width: 190px;
  height: 59px;
  background: url(../images/topics04_hover.png);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#topmain .topics .topics05 a:active,
#topmain .topics .topics05 a:hover {
  width: 190px;
  height: 59px;
  background: url(../images/topics05_hover.gif);
  background-repeat: no-repeat;
  background-size: 190px;
  text-indent: -9999px;
  display: block;
}

#navi {
  margin: 0;
  padding: 0;
  background-color: #004e97;
}

#navi .navi {
  width: 960px;
  margin: 0 auto;
}

#contents h2 {
  margin: 0;
  padding: 0;
  width: 680px;
  height: 40px;
  color: #004e97;
  font-size: 116.6%;
  text-indent: 46px;
  line-height: 30px;
  background-image: url(../images/common/h2_bk.png);
  background-size: 40px 30px;
  background-repeat: no-repeat;
  display: block;
}

#contents #left_contents a:active,
#contents #left_contents a:link,
#contents #left_contents a:visited {
  text-decoration: none;
  color: #004e97;
}

#contents #left_contents a:hover {
  text-decoration: underline;
  color: #333;
}

#contents #left_contents div.topics {
  width: 305px;
  background: #fff;
  border: 4px solid #004e97;
  border-radius: 5px;
  margin-bottom: 14px;
  float: left;
  padding: 10px;
  text-align: center;
}

#contents #left_contents #topics {
  display: block;
  width: 680px;
  background-color: #fff;
}

#contents #left_contents #topics .topics_title {
  width: 680px;
  float: left;
  border: none;
  height: 34px;
  background: 0 0;
}

#contents #left_contents #topics .topics_title h2 {
  width: 400px;
  float: left;
  height: 30px;
}

#contents #left_contents #topics .topics_title .newsLink {
  float: right;
  width: 220px;
  height: 30px;
  text-align: right;
  margin: 0;
  padding: 0;
  padding-right: 5px;
}

#contents #left_contents #topics .topics_title .newsLink a {
  margin: 0;
}

#contents #left_contents #topics .topics_title .newsLink img {
  height: 24px;
  margin-bottom: 6px;
}

#contents #left_contents .topics_list {
  float: left;
  width: 675px;
  border: 5px solid #004e97;
  border-radius: 5px;
  max-height: 300px;
  overflow-y: scroll;
}

/**/

#contents #left_contents .topics_list ul {
  padding: 0;
  padding: 0 0 15px 0;
}

#contents #left_contents .topics_list ul li {
  display: block;
  padding: 10px 0 8px 10px;
  margin: 0;
  border-bottom: 1px dotted #ccc;
  list-style: none;
  max-height: 999999px;
}

#contents #left_contents .topics_list ul li:nth-child(even) {
  background: #f7f7f7;
}

#contents #left_contents .topics_list ul li a:hover {
  text-decoration: underline;
  color: #333;
}

#contents #left_contents .topics_list ul li img {
  width: 28px;
  padding: 8px 0 0 15px;
}

#contents #left_contents .topics_list ul li a.new {
  background-image: url(https://jkk-sotohp.or.jp/sosac/images/common/icon_new.png);
  background-repeat: no-repeat;
  background-position: right;
  padding-right: 30px;
}

#contents #left_contents .topics_list ul li a.pin {
  background-image: url("../images/common/icon_pin.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left;
  padding-left: 30px;
  color: #E55674;
  font-weight: bold;
  font-size: 24px;
}

#contents #left_contents .topics_list ul li .pin::before {
  padding-left: 50px;
}

#contents #left_contents .topics_list ul li span {
  font-weight: 700;
  color: #0052cc;
  padding-right: 16px;
}

#contents #left_contents .medical_depart {
  width: 100%;
}

#contents #left_contents .medical_depart ul {
  display: block;
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#contents #left_contents .medical_depart li {
  width: 220px;
  position: relative;
}

#contents #left_contents .medical_depart li .medical_title {
  display: block;
  font-size: 20px;
  margin-bottom: 10px;
  text-align: center;
  color: #111;
  padding: 20px 0;
  height: 30px;
  line-height: 30px;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  border-width: 1px;
  border-style: solid;
  border-color: #A49F8E;
  background: #e1f4ff
}

#contents #left_contents .medical_depart li .small {
  font-size: 14px;

}

#contents #left_contents .medical_depart li .medical_title:hover {
  background-color: #004E97;
  text-decoration: none;
  color: #FFF;
}

#contents #left_contents .medical_depart li a:link {
  text-decoration: none;
}

#contents #left_contents .medical_depart li.blank {
  border: none;
  background: none;
}

#contents #left_contents #about,
#contents #left_contents #guidance,
#contents #left_contents #news,
#contents #left_contents #policy,
#contents #left_contents #recruit,
#contents #left_contents #sitemap {
  width: 100%;
  float: left;
  margin-bottom: 20px;
}

#contents #left_contents .guidance_wrap {
  float: left;
  width: 680px;
}

#contents #left_contents #schedule {
  width: 100%;
  float: left;
  background: #004e97;
  padding: 3px;
  border-radius: 5px;
  color: #fff;
}

#contents #left_contents #schedule_btn {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-top: 20px;
}

#schedule_btn .schedule-link {
  display: block;
  padding: 10px;
  text-align: center;
  background-color: #f4f8fb;
  border: 1px solid #5d9aca;
  border-radius: 0px;
  text-decoration: none;
  color: #004E97;
  font-weight: 600;
}

#schedule_btn .schedule-link span {
  display: block;
  margin-top: 6px;
  font-weight: normal;
  font-size: 0.95em;
}

#schedule_btn .schedule-link:hover {
  background-color: #004E97;
  color: #ffffff;
  text-decoration: none;
}

#contents #left_contents #schedule_btn a:hover {
  color: #ffffff;
  text-decoration: none;
}

/*#contents #left_contents #schedule_btn a {
  color: #004e97;
  text-decoration: underline;
}
#contents #left_contents #schedule_btn a:active, #contents #left_contents #schedule_btn a:link, #contents #left_contents #schedule_btn a:visited {
  color: #004e97;
  text-decoration: underline;
}
#contents #left_contents #schedule_btn a:hover {
  color: #004e97;
  text-decoration: none;
}*/
#contents #left_contents #guidance h3,
#contents #left_contents #recruit h3 {
  min-width: 172px;
  float: left;
  margin-bottom: 15px;
  margin-top: 15px;
  padding: 5px 1px;
  text-align: center;
  background: #004e97;
  color: #fff;
  font-size: 100%;
  border: 0;
  border-radius: 5px;
}

#contents #left_contents #guidance h3.yoyaku {
  width: 100%;
  margin-bottom: 0px;
  padding: 10px 1px;
  text-align: center;
  background: #cd5c5c;
  color: #fff;
  font-size: 1.1em;
  border: none;
  border-radius: 0px;
}

#contents #left_contents #guidance h3.kensinyoyaku {
  width: 100%;
  margin-bottom: 0px;
  padding: 10px 5px;
  text-align: center;
  background: #bc5c5c;
  color: #fff;
  font-size: 100%;
  border: none;
  border-radius: 0px;
  float: left;
}

.triangle {
  float: left;
  width: 0;
  height: 0;
  margin: 0 328px 20px;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid #cd5c5c;
  clear: both;
}

#contents #left_contents h4 {
  min-width: 102px;
  text-align: left;
  margin: 0;
  margin-top: 30px;
  margin-bottom: 15px;
  padding: 0;
  padding: 1px 15px;
  color: #004e97;
  font-size: 100%;
  border-left: 10px solid #004e97;
  display: block;
  clear: both;
  max-height: 999999px;
}

#contents #left_contents h4 img.tantoui {
  text-align: right;
  margin-left: 15px;
  width: 140px;
}

#contents #left_contents h4.change {
  border-bottom: 1px solid #004e97;
  margin-top: 40px;
}

#contents #left_contents h4.top {
  border-bottom: 1px solid #004e97;
  margin-top: 0;
}

#contents #left_contents h5 {
  min-width: 102px;
  text-align: left;
  margin: 0;
  margin-bottom: 5px;
  padding: 0;
  padding: 1px 15px;
  color: #004e97;
  font-size: 108%;
  border-bottom: 2px solid #004e97;
  display: block;
  clear: both;
}

#contents #left_contents h6 {
  font-weight: 400;
  min-width: 102px;
  text-align: left;
  margin: 0;
  margin-top: 10px;
  margin-bottom: 5px;
  padding: 0;
  color: #004e97;
  font-size: 100%;
  display: block;
  clear: both;
}

#contents #left_contents h7 {
  font-weight: 400;
  width: 670px;
  text-align: left;
  margin: 0;
  margin-top: 10px;
  margin-bottom: 5px;
  padding: 10px 0;
  text-indent: 1em;
  color: #000;
  font-size: 100%;
  display: block;
  clear: both;
  border-top: solid 2px #004e97;
  border-bottom: solid 2px #004e97;
  max-height: 999999px;
}

#contents #left_contents .dental-section-title {
  font-size: 125%;
  font-weight: bold;
  color: #004e97;
  border-bottom: 2px solid #004e97;
  padding: 5px 0;
  margin-top: 35px;
  margin-bottom: 20px;
  clear: both;
}

#contents #left_contents #about div.card {
  float: left;
}

#contents #left_contents #about div.images_w {
  float: left;
  width: 100%;
}

#contents #left_contents #about div.images {
  float: left;
  width: 320px;
  margin-right: 10px;
  margin-bottom: 10px;
}

#contents #left_contents #about div.images-right {
  float: right;
  width: 320px;
  margin-left: 15px;
  margin-bottom: 10px;
  clear: both;
}

#contents #left_contents #guidance div.part_wrap {
  float: right;
  margin-top: 25px;
}

#contents #left_contents #guidance div.part_wrap2 {
  float: right;
  margin: 15px 15px;
}

#contents #left_contents #guidance div.part {
  display: inline;
  width: 140px;
  margin-top: 15px;
  margin-right: 6px;
  /*float: right;*/
}

#contents #left_contents #guidance table#schedule_table01 {
  border-collapse: collapse;
  width: 100%;
  color: #666;
  float: left;
  font-size: 100%;
}

#contents #left_contents #guidance table#schedule_table01 th.am {
  background: #fff;
  color: #ff8080;
  color: #f60;
  width: 10%;
  text-align: center;
  white-space: nowrap;
}

#contents #left_contents #guidance table#schedule_table01 th.pm {
  background: #fff;
  color: #8fd1f2;
  color: #39f;
  width: 10%;
  text-align: center;
  white-space: nowrap;
}

#contents #left_contents #guidance table#schedule_tableuke {
  border-collapse: collapse;
  width: 100%;
  color: #666;
  float: left;
  clear: both;
  font-size: 89%;
}

#contents #left_contents #guidance table#schedule_tableuke th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
  background-color: #FFEECF;
  white-space: nowrap;
}

#contents #left_contents #guidance table#schedule_tableuke td {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
}

#contents #left_contents #guidance table#schedule_tableuke th.am {
  background: #fff;
  color: #ff8080;
  color: #f60;
  width: 10%;
  text-align: center;
  white-space: nowrap;
}

#contents #left_contents #guidance table#schedule_tableuke th.pm {
  background: #fff;
  color: #8fd1f2;
  color: #39f;
  width: 10%;
  text-align: center;
  white-space: nowrap;
}


#contents #left_contents #guidance sup {
  font-size: 0.7em;
  /* 上付き文字のサイズ */
  vertical-align: super;
  /* 上付き文字の位置調整 */
  color: red;
}

#contents #left_contents #guidance .reception {
  width: 630px
}

#contents #left_contents #guidance .reception img {
  width: 630px;
  margin: 0 25px;
  ;
}

@media only screen and (max-width: 480px) {

  #contents #left_contents .topics_list ul li,
  #contents #left_contents .topics_list ul li a,
  #contents #left_contents .topics_list ul li a:link,
  #contents #left_contents .topics_list ul li a:hover,
  #contents #left_contents .topics_list ul li a:focus {
    font-size: 12px;
  }
}

.am {
  color: #f60;
}

.pm {
  color: #39f;
}

#contents #left_contents #guidance table#dentistry_table01 {
  border-collapse: collapse;
  border: none;
  width: 100%;
  color: #666;
  float: left;
  font-size: 100%;
}

#contents #left_contents #guidance table#dentistry_table01 th {
  font-weight: bold;
  padding: 7px;
  border: 0px;
  vertical-align: top;
  text-align: left;
  background-color: #FFF;
  white-space: nowrap;
}

#contents #left_contents #guidance table#dentistry_table01 td {
  padding: 7px;
  padding-right: 0;
  vertical-align: top;
}

#contents #left_contents #guidance table#schedule_table01 td {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
}

#contents #left_contents #guidance table#schedule_table01 th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
  background-color: #b6d0fc;
  white-space: nowrap;
}

#contents #left_contents #guidance table#schedule_table01 td {
  background-color: #fff;
  width: 15%;
  text-align: center;
}

#contents #left_contents #guidance table#schedule_table01 td.comment {
  text-align: left;
  line-height: 1.8;
}

#contents #left_contents #guidance table#schedule_table01 td.comment .dermatology_schedule {
  width: 45%;
  float: left;
  padding: 0 15px;
}

#contents #left_contents #guidance table#schedule_table01 td.comment .dermatology_schedule dl dt {
  font-weight: 700;
}

#contents #left_contents #guidance table#schedule_table01 .sun {
  background: #fff;
  color: #f60;
  width: 10%;
  text-align: center;
}

#contents #left_contents #guidance table#schedule_table01 .sun02 {
  color: #f60;
  text-align: center;
}

/* 表全体 */
#contents #left_contents #guidance table#schedule_table02 {
  border-collapse: collapse;
  width: 100%;
  font-size: 89%;
  border: 1px solid #666;
}

/* schedule_table02：表の見出し */
#contents #left_contents #guidance table#schedule_table02 th {
  background-color: #b6d0fc;
  white-space: nowrap;
}

/* セル・見出し共通 */
#contents #left_contents #guidance table#schedule_table02 td,
#contents #left_contents #guidance table#schedule_table02 th {
  font-weight: 400;
  padding: 6px;
  border: 1px solid #666;
  text-align: left;
  vertical-align: top;
}

/* 通常のセル */
#contents #left_contents #guidance table#schedule_table02 .list {
  background: #fff;
  vertical-align: top;
}

/* リンク */
#contents #left_contents #guidance table#schedule_table02 a {
  text-decoration: underline;
}

/* 空欄行 */
#contents #left_contents #guidance table#schedule_table02 td.empty-row {
  padding: 14px 16px;
  color: #aaa;
  text-align: center;
}

/* 休診 */
#contents #left_contents #guidance table#schedule_table02 .status-closed {
  background-color: #fde6e6;
  color: #b42323;
  width: 14%;
  font-weight: 600;
}

/* 診療時間変更 */
#contents #left_contents #guidance table#schedule_table02 .status-time-change {
  background-color: #e5f0ff;
  color: #175da8;
  width: 14%;
  font-weight: 600;
}

/* 代診 */
#contents #left_contents #guidance table#schedule_table02 .status-substitute {
  background-color: #e8f4df;
  color: #376b27;
  width: 14%;
  font-weight: 600;
}

/* 通常診療 */
#contents #left_contents #guidance table#schedule_table02 .status-open {
  background-color: #f2f2f2;
  color: #444;
  width: 14%;
  font-weight: 600;
}


/* 時間欄の診療・休診ラベル共通 */
#contents #left_contents #guidance table#schedule_table02 .time-label {
  display: inline-block;
  padding: 3px 8px;
  margin: 2px 3px 2px 0;
  border-radius: 3px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
}

/* 診療時間 */
#contents #left_contents #guidance table#schedule_table02 .time-clinic {
  color: #175da8;
  background-color: #e5f0ff;
}

/* 休診時間 */
#contents #left_contents #guidance table#schedule_table02 .time-closed {
  color: #b42323;
  background-color: #fde6e6;
}

/* 時間変更 */
#contents #left_contents #guidance table#schedule_table02 .time-change {
  color: #175da8;
  background-color: #e5f0ff;
}

/* 午前・午後の休診表示 */
#contents #left_contents #guidance table#schedule_table02 .period-closed {
  display: inline-block;
  padding: 3px 9px;
  margin: 2px 3px 2px 0;
  border-radius: 3px;
  background-color: #fde6e6;
  color: #b42323;
  font-weight: 600;
  font-size: 14px;
}

#contents #left_contents #news table#table01,
#contents #left_contents #news table#table02,
#contents #left_contents #news table#table03 {
  border-collapse: collapse;
  width: 100%;
  font-size: 96%;
}

#contents #left_contents #news table#table01 td,
#contents #left_contents #news table#table01 th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: left;
  vertical-align: top;
}

#contents #left_contents #news table#table02 td,
#contents #left_contents #news table#table02 th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: left;
  vertical-align: top;
}

#contents #left_contents #news table#table03 td,
#contents #left_contents #news table#table03 th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: left;
  vertical-align: top;
}

#contents #left_contents #news table#table01 th {
  background-color: #b6d0fc;
  text-align: left;
}

#contents #left_contents #news table#table02 th {
  background-color: #b6d0fc;
  text-align: left;
  width: 15%;
  white-space: nowrap;
}

#contents #left_contents #news table#table03 th {
  background-color: #e8fcff;
  text-align: left;
  white-space: nowrap;
  color: #0072e3;
  font-size: 108.8%;
}

#contents #left_contents #news table#table03 td.title {
  color: #0080c0;
  border-right: none;
  text-align: left;
  width: 10%;
  white-space: nowrap;
}

#contents #left_contents #news table#table02 td.sosac {
  background-color: #d5f1fd;
}

#contents #left_contents #news table#table02 td.sosac_r {
  background-color: #f5fcfe;
}

#contents #left_contents #news table#table01 th.first {
  width: 36%;
}

#contents #guidance .point01 {
  color: red;
}

#contents #left_contents .point01,
#contents #left_contents table .point01 {
  color: red;
}

#contents #left_contents .point02,
#contents #left_contents table .point02 {
  color: #00f;
}

#contents #left_contents .under-point02 {
  border-bottom: double 3px #000;
}

#contents #left_contents .under-point03 {
  border-bottom: dashed 1px red;
}

#contents #left_contents #guidance table#kensin,
#contents #left_contents table#outline {
  border-collapse: collapse;
  width: 100%;
  font-size: 100%;
  margin-bottom: 15px;
}

#contents #left_contents #guidance table#kensin td {
  font-weight: 400;
  padding: 12px;
  border: 1px solid #666;
  text-align: left;
}

#contents #left_contents #guidance table#kensin th {
  font-weight: 400;
  padding: 12px;
  border: 1px solid #666;
  text-align: left;
  background-color: #e1ebfc;
  white-space: nowrap;
}

#contents #left_contents #guidance table#kensin th.kantan {
  background-color: #ffff66;
  text-align: center;
}

#contents #left_contents #guidance table#kensin td.kantan {
  background-color: rgba(255, 255, 102, 0.3);
}

#contents #left_contents #guidance table#kensin th.hyoujun {
  background-color: rgba(208, 18, 27, 0.4);
  text-align: center;
}

#contents #left_contents #guidance table#kensin td.hyoujun {
  background-color: rgba(208, 18, 27, 0.2);
}

#contents #left_contents #guidance table#kensin td.center {
  text-align: center;
}

#contents #left_contents #guidance table#kensin th.center {
  text-align: center;
}

#contents #left_contents #guidance table#kensin td.nowrap {
  white-space: nowrap;
}

#contents #left_contents table#outline td {
  font-weight: 400;
  padding: 10px;
  border: 1px solid #666;
  text-align: left;
}

#contents #left_contents table#outline th {
  font-weight: 400;
  padding: 10px;
  border: 1px solid #666;
  text-align: left;
  background: #f8f8f8;
}

#contents #left_contents #guidance #zaitaku {
  padding-top: 5px;
}

#contents #left_contents #policy ul li {
  list-style-type: decimal;
  list-style-image: decimal;
  margin: 0;
  margin-left: 30px;
  padding: 0;
}

#contents #left_contents .sentence {
  padding: 6px 0;
  float: left;
  margin-bottom: 10px;
  width: 100%;
}

#contents #left_contents .sentence table.doctor td {
  padding: 20px;
}

#contents #left_contents .sentence table.lecture {
  border: none;
  border-collapse: collapse;
}

#contents #left_contents .sentence table.lecture th {
  white-space: nowrap;
  vertical-align: top;
  padding: 10px;
  border: none;
  border: 1px #888 solid;
  background-color: #e7e7e7;
  font-weight: 400;
}

#contents #left_contents .sentence table.lecture td {
  vertical-align: top;
  padding: 10px;
  border: none;
  border: 1px #888 solid;
}

#contents #left_contents .sentence table.lecture td span {
  color: red;
  font-size: 91.6%;
}

#contents #left_contents .sentence dl {
  margin-left: 15px;
  margin-bottom: 15px;
}

#contents #left_contents .sentence dl dt {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat;
  background-repeat: none;
  background-position: left center;
  padding-left: 15px;
}

#contents #left_contents .sentence dl.kensinqa dt {
  background: 0 0;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/bk_q.gif) no-repeat;
  background-repeat: none;
  background-position: left center;
  padding-left: 36px;
  font-size: 108.8%;
  font-weight: 700;
  color: #004e97;
  padding-top: 3px;
  margin-top: 10px;
  height: 24px;
}

#contents #left_contents .sentence dl.kensinqa dd {
  padding: 10px 0;
  border-bottom: 1px solid #004e97;
  line-height: 2.0em;
  max-height: 999999px;
}

#contents #left_contents #updateday {
  float: left;
  font-size: 91.6%;
  color: #6e6e6e;
  width: 100%;
  text-align: right;
}

#contents #left_contents .sentence .photo400_w {
  width: 400px;
  margin: 0 auto;
  margin-bottom: 10px;
}

#contents #left_contents .photo600_w {
  width: 600px;
  margin: 10px auto;
}

#contents #left_contents .sentence .photo400_w .caption {
  width: 400px;
  margin: 0 auto;
  text-align: center;
  line-height: 1.8;
}

#contents #left_contents .sentence .photo600_w .caption {
  width: 600px;
  margin: 0 auto;
  text-align: center;
  line-height: 2;
}

#contents #left_contents .sentence p.lead {
  width: 100%;
  font-size: 100%;
  margin-bottom: 14px;
  letter-spacing: 0.05em;
}

#contents #left_contents .sentence p.img_center {
  text-align: center;
}

p.lead .caution {
  color: red;
}

#contents #left_contents .sentence table.change_schedule {
  border: none;
}

#contents #left_contents .sentence table.change_schedule th {
  text-align: center;
}

#contents #left_contents .sentence table.change_schedule td {
  text-align: center;
  font-size: 108.8%;
}

#contents #left_contents .sentence table .red {
  color: #FF0000;
}

#contents #left_contents .sentence table td.photo {
  width: 260px;
  margin: 0 auto;
  vertical-align: top;
}

#contents #left_contents .sentence ul li {
  text-indent: 1em;
  line-height: 1.8rem;
}

#contents #left_contents .sentence ul#rows-2 li {
  width: 48%;
  display: inline-block;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  margin-left: 10px;
  margin-right: 0;
  padding-right: 0;
  white-space: nowrap;
}

#contents #left_contents .sentence ul#yobou_list_kouhi li {
  width: 40%;
  display: inline-block;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  margin-left: 15px;
}

#contents #left_contents .sentence ul#yobou_list_kouhi li a {
  text-decoration: underline;
  font-weight: 700;
}

#contents #left_contents .sentence ul#yobou_list_kouhi li a:link #contents #left_contents .sentence ul#yobou_list_kouhi li a:visited {
  text-decoration: underline;
  font-weight: 700;
}

#contents #left_contents .sentence ul#yobou_list_kouhi li a:active,
#contents #left_contents .sentence ul#yobou_list_kouhi li a:hover {
  text-decoration: none;
  font-weight: 700;
}

#contents #left_contents .sentence ul#yobou_list li,
#contents #left_contents .sentence ul#zaitaku_list li {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  margin-left: 15px;
}

#contents #left_contents .sentence ul#zaitaku_menu {
  margin-top: 0;
  width: 680px;
  display: flex;
  margin-left: 15px;
}

#contents #left_contents .sentence ul#zaitaku_menu li {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  display: table-cell;
  vertical-align: middle;
  width: 200px;
  margin: 0;
  text-indent: 0;
  border-radius: 5px;
  padding-left: 15px;
}

#contents #left_contents .section table.yakkyoku {
  border: none;
  margin-top: 15px;
  margin-bottom: 30px;
  font-size: 83.3%;
}

#contents #left_contents .section table.yakkyoku th {
  font-size: 100%;
  vertical-align: top;
  text-align: center;
  padding: 8px 4px;
  background: #f8f8f8;
  white-space: nowrap;
  font-weight: 400;
}

#contents #left_contents .section table.yakkyoku td {
  font-size: 100%;
  padding: 8px;
  background: #fff;
  vertical-align: top;
}

#contents #left_contents .section table.yakkyoku .center {
  text-align: center;
}

#contents #left_contents .section table.yakkyoku .caution {
  font-size: 83.3%;
  border-right: none;
  border-left: none;
}

#contents #left_contents .section table.yakkyoku .none {
  border: none;
}

#contents #left_contents .section table.yakkyoku .innai {
  border: 2px solid #f29718;
}

#contents #left_contents .section table.yakkyoku .bk {
  background: #ffd664;
}

#contents #left_contents .section table.yakkyoku .ingai {
  border: 1px solid #9c3;
}

#contents #left_contents .section table.yakkyoku .bkg {
  background: #e3ffc8;
}

#contents #left_contents .section table.yakkyoku p {
  padding-left: 5px;
}

#contents #left_contents .sentence dl#ingai_list,
#contents #left_contents .sentence dl#innai_list {
  font-size: 100%;
  margin-left: 0;
}

#contents #left_contents .sentence dl#ingai_list dt {
  float: left;
  white-space: nowrap;
}

#contents #left_contents .sentence dl#innai_list dt {
  float: left;
  white-space: nowrap;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon_orange.gif) no-repeat left;
  padding-left: 15px;
}

#contents #left_contents .sentence dl#ingai_list dt {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon_green.gif) no-repeat left;
  padding-left: 15px;
}

#contents #left_contents .sentence dl#ingai_list dd {
  margin-left: 5px;
  text-align: right;
}

#contents #left_contents .sentence dl#innai_list dd {
  margin-left: 5px;
  text-align: right;
}

#contents #left_contents .sentence ul#yakkyoku_list li {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon_orange.gif) no-repeat left;
  vertical-align: middle;
  margin-left: 1em;
  line-height: 2em;
  text-indent: 0;
  padding-left: 1em;
}

#contents #left_contents .sentence #contactform,
#contents #left_contents .sentence #vform,
#contents #left_contents .section #vform,
#contents #left_contents #vform,
#contents #left_contents #vform_con {
  border-collapse: collapse;
  width: 100%;
  color: #666;
  float: left;
  font-size: 89%;
  margin-top: 15px;
  border: 0px;
}

#contents #left_contents .sentence #vform,
#contents #left_contents #vform,
#contents #left_contents #vform_con {
  display: flex;
}

#contents #left_contents .sentence #contactform td,
#contents #left_contents .sentence #vform td,
#contents #left_contents #vform td {
  vertical-align: middle;
  font-weight: 400;
  padding: 10px;
  border: 1px solid #666;
  text-align: left;
  line-height: 2em;
}

#contents #left_contents #vform_con td {
  vertical-align: middle;
  font-weight: 400;
  padding: 10px;
  width: 500px;
  border: 1px solid #666;
  text-align: left;
  line-height: 2em;
}

#contents #left_contents .sentence #vform td ul li,
#contents #left_contents #vform_con td ul li {
  text-indent: 0;
  line-height: 2rem;
  margin-top: 2px;
}

#contents #left_contents .sentence #contactform th,
#contents #left_contents .sentence #vform th,
#contents #left_contents #vform th {
  vertical-align: top;
  font-weight: 400;
  padding: 10px;
  border: 1px solid #666;
  text-align: center;
  background: #f8f8f8;
  white-space: nowrap;
}

#contents #left_contents .sentence #vform_con th,
#contents #left_contents #vform_con th {
  vertical-align: middle;
  font-weight: 400;
  padding: 10px;
  border: 1px solid #666;
  text-align: center;
  background: #f8f8f8;
  white-space: nowrap;
}

#contents #left_contents .sentence #contactform span.hissu,
#contents #left_contents .sentence #vform span.hissu {
  color: #f32e66;
}

#contents #left_contents .sentence #vform span.hissu {
  background-color: #f32e66;
  color: #FFF;
  font-size: 12px;
  margin-left: 10px;
  padding: 0 4px;
}

#contents #left_contents .sentence #vform span.nini {
  background: #1A66FF;
  color: #FFF;
  font-size: 12px;
  margin-left: 10px;
  padding: 0 4px;
}

#contents #left_contents .sentence #contactform textarea,
#contents #left_contents .sentence #vform textarea {
  width: 100%;
}

#contents #left_contents .sentence .box_pp {
  width: 100%;
  height: 250px;
  overflow-x: hidden;
  overflow-y: scroll;
  border: 1px solid #CCC;
}

#contents #left_contents .sentence .box_pp .inner {
  padding: 30px 15px;
  font-size: 14px;
}

#contents #left_contents .sentence .box_pp .inner p {
  line-height: 2.4;
}

#contents #left_contents .sentence .box_pp .inner .tit_pp {
  padding: 4px 0px;
  font-size: 14px;
}

#contents #left_contents .sentence .box_agree {
  width: 100%;
  justify-content: center;
  display: flex;
}

#contents #left_contents .sentence .box_agree .box_check {
  width: 100%;
  position: relative;
  /*display: flex;*/
  align-items: center;
  padding: 20px 0;
  text-align: center;
}

#contents #left_contents .sentence .btn_submit {
  max-width: 350px;
  margin-right: auto;
  margin-left: auto;
  height: 45px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 700;
  letter-spacing: 0.15em;

  font-family: inherit;
  padding: 10px 30px;
  font-size: 16px;
  background: none;
  border-radius: 8px;
  border: none;
  background-color: #0052cc;
  color: #fff;
  cursor: pointer;
}

#contents #left_contents .sentence .btn_submit:hover {
  max-width: 350px;
  margin-right: auto;
  margin-left: auto;
  height: 45px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 700;
  letter-spacing: 0.15em;
  font-family: inherit;
  padding: 10px 30px;
  font-size: 16px;
  background: none;
  border-radius: 8px;
  border: none;
  background-color: #4C85D9;
  color: #FFFFFF;
  cursor: pointer;
}

#contents #left_contents .sentence ul#contact_list li {
  background: url(../images/common/list_icon.gif) no-repeat left 10px;
  text-indent: 0;
  padding-left: 15px;
  width: 94%;
}

#contents #left_contents .sentence ol#number {
  counter-reset: number;
  list-style: none;
  margin: 0;
  padding: 0;
}

#contents #left_contents .sentence ol#number li {
  padding: 10px 0 6px 0;
  margin: 0;
  font-weight: 700;
  line-height: 1.8em;
  color: #006ab7;
}

#contents #left_contents .sentence ol#number li:before {
  counter-increment: number;
  content: counter(number);
  float: left;
  background: #dce7f9;
  border: 2px solid #006ab7;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  color: #006ab7;
  text-align: center;
  line-height: 1.5;
  margin-right: 6px;
}

#contents #left_contents .sentence ol.currentday {
  border: 4px solid #004e97;
  padding: 8px 0;
  margin-top: 4px;
}

#contents #left_contents .sentence ol.currentday li {
  font-weight: 700;
  color: #006ab7;
  line-height: 1.5;
  margin-left: 2em;
}

#contents #left_contents .sentence ol#number p,
#contents #left_contents .sentence ol.currentday p {
  margin-left: 0em;
  margin-right: 0em;
}

#contents #left_contents .sentence #pumpkin {
  width: 680px;
  padding: 10px 0;
  margin-bottom: 15px;
  float: left;
}

#contents #left_contents .sentence #pumpkin div.image {
  float: left;
  width: 302px;
  border: 1px solid #ececec;
  text-align: center;
}

#contents #left_contents .sentence #pumpkin div.thumbnail {
  display: inline-block;
  width: 164px;
  text-align: center;
  margin-right: 0;
  margin-bottom: 10px;
}

#contents #left_contents .sentence #pumpkin div.thumbnail a:link {
  text-decoration: none;
  font-size: 91.6%;
}

#contents #left_contents .sentence #pumpkin div.thumbnail a:active,
#contents #left_contents .sentence #pumpkin div.thumbnail a:hover {
  text-decoration: underline;
}

#contents #left_contents .sentence #pumpkin div.thumbnail img {
  width: 164px;
  border: 1px solid #ececec;
}

#contents #left_contents .sentence #pumpkin div.sentence {
  width: 330px;
  padding: 0 20px;
  float: left;
}

#contents #left_contents .sentence #pumpkin div.sentence ol li {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  margin-left: 15px;
  text-indent: 1em;
  line-height: 2.4;
}

#contents #left_contents .sentence #pumpkin div.sentence h5 {
  float: left;
  width: 310px;
  color: #fff;
  line-height: 2em;
  height: 2em;
  background: #004e97;
}

#contents #left_contents .sentence #pumpkin div.sentence h6 {
  width: 340px;
  text-align: right;
  color: #004e97;
  margin: 0;
  font-size: 100%;
  display: block;
  clear: both;
}

#contents #left_contents .sentence #pumpkin div.sentence ol li {
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  margin-left: 15px;
  text-indent: 1em;
  line-height: 2.4;
}

div.sentence div.banner {
  margin-bottom: 15px;
}

div.sentence div.banner img {
  width: 630px;
  margin: 0 25px;
}

#contents #left_contents .doctors_wrap {
  width: 680px;
  float: left;
  border-bottom: 1px solid #004e97;
  margin-bottom: 15px;
}

#contents #left_contents .doctors_wrap .doctor_pic {
  width: 249px;
  float: left;
}

#contents #left_contents .doctors_wrap .doctor_pic img {
  width: 240px;
}

#contents #left_contents .doctors_wrap .doctor_text {
  width: 411px;
  float: right;
}

#contents #left_contents .doctors_wrap .doctor_left {
  width: 680px;
  float: left;
}

#contents #left_contents .doctors_wrap .doctor_text p {
  font-size: 100%;
}

#contents #left_contents .doctors_wrap .doctor_text ul li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}

#contents #left_contents .doctors_wrap .doctor_text ul li:before {
  border-radius: 50%;
  /*丸くする*/
  width: 5px;
  /*点の幅*/
  height: 5px;
  /*点の高さ*/
  display: block;
  position: absolute;
  /*絶対配置*/
  left: 0;
  /*点の位置*/
  top: 0.6em;
  /*点の位置*/
  content: "";
  background: #004e97;
}

#contents #left_contents .doctors_wrap .doctor_text p span.point01 {
  color: red;
}

#contents #left_contents .doctors_wrap .doctor_text h3 {
  font-size: 100%;
  border-bottom: 2px #004e97 solid;
  margin: 10px 0;
  height: 30px;
  text-indent: 2em;
  display: block;
}

#contents #left_contents .doctors_wrap .doctor_text h3.name {
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/h3_doctor_text.gif);
  background-repeat: no-repeat;
  background-position: left center;
  display: block;
  line-height: 36px;
}

#contents #left_contents .doctors_wrap .doctor_text h3.time {
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/h3_doctor_time.gif);
  background-repeat: no-repeat;
  background-position: left center;
  display: block;
}

#contents #left_contents .doctors_wrap .doctor_text h3 span {
  color: #004e97;
  margin: 0 15px 0 30px;
  font-size: 83%;
}

#contents #left_contents .doctors_wrap div.profile {
  color: #004e97;
  font-size: 15px;
}

#contents #left_contents .doctors_wrap .doctor_pic img {
  border: none;
  border: 1px solid #eee;
  padding: 2px;
}

#contents #left_contents .doctors_wrap table {
  border-top: 1px solid #a7c8e6;
  border-right: 1px solid #a7c8e6;
  border-collapse: collapse;
  margin-bottom: 0;
}

#contents #left_contents .doctors_wrap table td {
  color: #393939;
  border-bottom: 1px solid #a7c8e6;
  border-left: 1px solid #a7c8e6;
  padding: 5px 10px;
  text-align: left;
  padding-left: 1em;
}

#contents #left_contents .doctors_wrap table th {
  width: 100px;
  border-bottom: 1px solid #a7c8e6;
  border-left: 1px solid #a7c8e6;
  background: #b6d0fc;
  color: #666;
  padding: 5px 10px;
  vertical-align: top;
  font-weight: 400;
}

#contents #left_contents .section .sectionTitle {
  background: #e1f4ff;
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: bold;
  text-indent: 2em;
  color: #111;
  padding: 20px 0;
  border-width: 1px;
  border-style: solid;
  border-color: #A49F8E;
}

#contents #left_contents .section .sectionTitle img {
  width: 160px;
  height: 60px;
}

#contents #left_contents .guidance_kalist {
  margin-left: 15px;
}

#contents #left_contents .guidance_kalist li {
  font-size: 91.6%;
  float: left;
  min-width: 140px;
  padding: 0 2px;
  line-height: 1.8;
}

#contents #left_contents .guidance_kalist li a {
  padding: 0 1em;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/arrow_underlist.gif);
  background-repeat: no-repeat;
  background-position: left;
}

#contents #left_contents .guidance_kalist li a:link {
  padding: 0 1em;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/arrow_underlist.gif);
  background-repeat: no-repeat;
  background-position: left;
}

#contents #left_contents .recruit_wrap {
  float: left;
  width: 680px;
}

#contents #left_contents #recruit table#recruit_table {
  border-collapse: collapse;
  width: 100%;
  color: #666;
  float: left;
  clear: both;
}

#contents #left_contents #recruit table#recruit_table td {
  font-weight: 400;
  padding: 5px;
  border: 1px solid #666;
  padding-left: 15px;
}

#contents #left_contents #recruit table#recruit_table th {
  font-weight: 400;
  padding: 5px;
  border: 1px solid #666;
  padding-left: 15px;
  text-align: center;
  background: #deeafe;
  padding-left: 0;
}

#contents #left_contents #sitemap .sitemap {
  float: left;
  width: 100%;
  margin-bottom: 15px;
}

#contents #left_contents #sitemap h3 {
  border-bottom: 1px solid #069;
  font-weight: 700;
}

#contents #left_contents #sitemap .sitemap ul {
  margin-top: 10px;
  float: left;
}

#contents #left_contents #sitemap .sitemap ul li {
  font-size: 91.6%;
  margin-bottom: 5px;
  /*float: left;
  width: 170px;*/
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/arrow_newlist.gif) no-repeat;
  background-position: left;
}

#contents #left_contents #sitemap .sitemap ul li a:link,
#contents #left_contents #sitemap .sitemap ul li a:visited #contents #left_contents #sitemap .sitemap ul li a:active {
  color: #0052cc;
  text-decoration: none;
}

#contents #left_contents #sitemap .sitemap ul li a:hover {
  color: #333;
  text-decoration: underline;
}

#contents #left_contents div.information {
  width: 100%;
}

#contents #left_contents div.information dl {
  border-bottom: 1px dotted #004e97;
}

#contents #left_contents div.information dl dd {
  margin: 0;
  padding: 10px;
  max-height: 999999px;
}

#contents #left_contents div.information dl dt {
  margin: 0;
  padding: 10px;
  max-height: 999999px;
  float: left;
  clear: both;
  width: 100px;
}

#contents #left_contents div.information dl dd {
  margin: 0;
  margin-left: 120px;
}

#contents #left_contents div.information dd.new {
  background-image: url(https://jkk-sotohp.or.jp/sosac/images/common/icon_new.png);
  background-repeat: no-repeat;
  background-position: 96%;
}

#contents #right_contents .top_banner {
  width: 240px;
  height: 54px;
}

#contents #right_contents .top_banner_u {
  margin-top: 5px;
  padding-bottom: 5px;
}

#contents #right_contents .side_banner {
  width: 240px;
  height: 80px;
}

#contents #right_contents .side_banner_contact {
  width: 240px;
}

#contents #right_contents div.whatnew {
  width: 240px;
  clear: left;
  overflow: hidden;
  margin-bottom: 15px;
}

#contents #right_contents div.whatnew h2 {
  width: 100%;
}

#contents #right_contents div.whatnew ul {
  width: 100%;
}

#contents #right_contents div.whatnew ul li {
  float: left;
  width: 100%;
  padding-bottom: 1px;
  display: inline;
  position: relative;
}

#contents #right_contents div.whatnew ul li a,
#contents #right_contents div.whatnew ul li a:hover {
  text-decoration: none;
}

#contents #right_contents div.whatnew ul li .side_title {
  display: block;
  text-align: center;
  color: #111;
  padding: 10px 0;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  border-width: 1px;
  border-style: solid;
  border-color: #A49F8E;
  background: #f6f6f6;
}

#contents #right_contents div.whatnew ul li .side_title:hover {
  background-color: #004E97;
  text-decoration: none;
  color: #FFF;
}

/*
#contents #right_contents div.whatnew img {
  width: 116px;
  height: 46px;
}

#contents #right_contents div.whatnew ul li img {
  border: 1px solid #e2e2e2;
  border-radius: 5px;
}*/
#contents #right_contents div.whatnew ul.recruit li {
  width: 100%;
  display: inline-block;
  background: url(https://jkk-sotohp.or.jp/sosac/images/common/list_icon.gif) no-repeat left;
  padding-left: 15px;
}

#profile {
  float: left;
  width: 100%;
}

#profile>div {
  width: 50%;
  float: left;
  margin-bottom: 15px;
}

#profile div.img {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

#profile div.img img {
  width: 240px;
  vertical-align: middle;
}

#profile .profile>ul>li {
  text-indent: 0 !important;
}

.font-sizeL {
  font-size: 18px;
}

.idea {
  text-indent: 0 !important;
  font-weight: bold;
}

.idea img {
  width: 680px;
  height: 70px;
  margin-bottom: 1em;
}

.idea li {
  list-style: disc;
  margin-left: 15px;
  font-size: 1em;
  line-height: 1.75em;
}

.padding-left {
  padding-left: 25px;
}

#contents #left_contents .dent-cont p {
  margin-bottom: 6px;
}

#contents div.dentist {
  padding-bottom: 20px;
  padding-top: 20px;
  border-top: 1px dashed #999;
  overflow: hidden;
}

.margin-top {
  margin-top: 25px;
}

.margin-bottom {
  margin-bottom: 25px;
}

.padding-top {
  padding-top: 25px;
}

#contents div.dentist>div.point-text {
  width: 100%;
  float: left;
}

#contents div.dentist>div.point-pic {
  width: 240px;
  float: right;
}

#contents div.dentist p.ms {
  color: #fff;
  font-size: 16px;
  text-align: center;
  background-color: #09f;
  text-indent: 0;
  margin-bottom: 0.8px;
  padding: 4px 12px;
}

#contents h3.point {
  margin: 0;
  padding: 0;
  width: 680px;
  height: 40px;
  color: #09f;
  font-size: 125%;
  font-weight: 700;
  text-indent: 46px;
  line-height: 36px;
}

#contents h3.point01 {
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/dt-point01.png);
  background-size: 36px;
  background-repeat: no-repeat;
  display: block;
}

#contents h3.point02 {
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/dt-point02.png);
  background-size: 36px;
  background-repeat: no-repeat;
  display: block;
  color: #09f;
}

#contents h3.point03 {
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/dt-point03.png);
  background-size: 36px;
  background-repeat: no-repeat;
  display: block;
}

#contents h2.nav-top {
  width: 240px;
  height: 70px;
  background: 0 0;
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/nav_top.png) no-repeat;
  background-size: cover;
  text-indent: 0;
  display: block;
}

.dt_banner {
  width: 240px;
  overflow: hidden;
}

.dt_banner .menu01 {
  width: 240px;
  height: 40px;
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/nav_menu01.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
  display: block;
}

.dt_banner .menu02 {
  width: 240px;
  height: 40px;
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/nav_menu02.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
  display: block;
}

.dt_banner .menu03 {
  width: 240px;
  height: 40px;
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/nav_menu03.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
  display: block;
}

.dt_banner .menu04 {
  width: 240px;
  height: 40px;
  background: url(../guidance/images/nav_menu04.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
  display: block;
}

.dt_banner .menu05 {
  width: 240px;
  height: 40px;
  background: url(https://jkk-sotohp.or.jp/sosac/guidance/images/nav_menu05.png) no-repeat;
  background-size: cover;
  text-indent: -9999px;
  display: block;
}

.dt_banner a:hover {
  opacity: 0.6;
}

section.navigation ul.floatL {
  display: inline-block;
}

section.navigation ul.floatL li {
  float: left;
  text-align: center;
  width: 165px;
  margin-bottom: 5px;
}

section.navigation img {
  width: 160px;
  height: 60px;
  border-radius: 5px;
}

section.navigation img:hover {
  opacity: 0.8;
}

#contents #left_contents .senmon_depart ul {
  width: 100%;
}

#contents #left_contents .senmon_depart ul li {
  display: inline-block;
  width: 30%;
  text-align: center;
  background-color: #004e97;
  padding: 11px 0;
  text-decoration: none;
  border-radius: 5px;
}

#contents #left_contents .senmon_depart ul li a {
  text-decoration: none;
  color: #fff;
}

#contents #left_contents .senmon_depart ul li a:active,
#contents #left_contents .senmon_depart ul li a:link,
#contents #left_contents .senmon_depart ul li a:visited {
  text-decoration: none;
  color: #fff;
}

#contents #left_contents .senmon_depart ul li a:hover {
  opacity: 0.6;
}

#contents #left_contents .senmon_depart ul li:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {

  #contents #left_contents .section02 a.tel01[href^="tel:"],
  #contents #left_contents .section02 a.tel02[href^="tel:"] {
    pointer-events: none;
  }
}

.caution {
  color: red;
}

.underline {
  text-decoration: underline;
}

table.tbl-r01 {
  border-collapse: collapse;
  width: 100%;
  color: #666;
  float: left;
  font-size: 89%;
  border: 1px solid #666;
}

table.tbl-r01 tr.weekday th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
  background-color: #b6d0fc;
  white-space: nowrap;
}

table.tbl-r01 tr th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
  background-color: #FCF6AC;
  white-space: nowrap;
  width: 25%;
}

table.tbl-r01 tr.saturday th {
  font-weight: 400;
  padding: 7px;
  border: 1px solid #666;
  text-align: center;
  background-color: #97DDFB;
  white-space: nowrap;
}

table.tbl-r01 td {
  text-align: center;
  border: 1px solid #666;
}

.tab-001 {
  display: flex;
  flex-wrap: wrap;
  max-width: 100%;
}

.tab-001>label {
  flex: 1 1;
  order: -1;
  min-width: 70px;
  padding: .7em 1em .5em;
  border-bottom: 1px solid #f0f0f0;
  border-radius: 0;
  background-color: #e9f0f6;
  color: #535353;
  font-size: .9em;
  text-align: center;
  cursor: pointer;
}

.tab-001>label:hover {
  opacity: .8;
}

.tab-001 input {
  display: none;
}

.tab-001>div {
  display: none;
  width: 100%;
  padding: 1.5em 1em;
  background-color: #fff;
}

.tab-001 .qr {
  text-align: center;
}

.tab-001 .yoyaku {
  text-decoration: underline solid #cd5c5c 3px;

}

.tab-001 div.tel {
  text-align: center;
}

.tab-001 .kensinyoyaku:hover {
  opacity: .8;
}

.tab-001 label:has(:checked) {
  background-color: #fff;
  border-color: #cd5c5c #f0f0f0 #fff;
  border-style: solid;
  border-width: 4px 1px 1px;
  border-radius: 0px;
  color: #333333;
}

.tab-001 label:has(:checked)+div {
  display: block;
}

/* 料金ボックス */
.vaccine-box {
  background: #f8fafc;
  border: 1px solid #dbeafe;
  border-radius: 0px;
  padding: 1rem 1.25rem;
  margin-bottom: 1em;
}

.vaccine-box ul {
  list-style: none;
  /* デフォルトの黒丸を消す */
  margin: 0;
  padding: 0;
  padding-left: 1.2em;
}

#contents #left_contents .sentence .vaccine-box ul li {
  text-indent: 0;
  padding-left: 0em;
  margin-bottom: .4em;

  position: relative;
  padding-left: 1.2em;
  /* マーカー分の余白を確保 */
  margin-bottom: .4em;

}

#contents #left_contents .sentence .vaccine-box ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

/* 実施日ボックス */
.event-schedule {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 0px;
  padding: 1rem 1.25rem;
  margin-bottom: 1em;
}

.event-schedule p {
  margin: 0 0 .5em;
  padding-left: 1.2em;
}

.event-schedule ul {
  margin: 0;
  padding-left: 1.2rem;
}

.event-schedule li {
  margin-bottom: .3em;
}

/* 注意事項リスト */
.point03 {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 0px;
  padding: 0.8rem 1.2rem;
  list-style: disc inside;
  margin: 0 0 1em;
  color: red;
}


.point03 li {
  position: relative;
  margin-bottom: .4em;
}

.point03 li {
  text-indent: 0;
  padding-left: 0em;
  margin-bottom: .4em;

  position: relative;
  padding-left: 1.2em;
  /* マーカー分の余白を確保 */
  margin-bottom: .4em;

}

.point03 li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

/* ===== PDFリンク自動アイコン表示 ===== */
a[href$=".pdf"]::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 16px;
  margin-left: 4px;
  background: url(../images/common/icon_pdf.gif) no-repeat center / contain;
  vertical-align: middle;
}