@charset "UTF-8";
/* Variables */
/* Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

:focus {
  outline: 0;
}

@media screen and (min-width: 768px) {
  html,
  body,
  div,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  font,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table.table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td {
    border: 0;
    font-family: inherit;
    font-size: 18px;
    font-style: inherit;
    font-weight: bold;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
  }
  .c_size {
    width: 100%;
    margin-left: auto;
    margin-left: right;
  }
}
@media screen and (max-width: 767px) {
  html,
  body,
  div,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  font,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table.table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td {
    border: 0;
    font-family: inherit;
    font-size: 15px;
    font-style: inherit;
    font-weight: bold;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
  }
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #000;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5;
  -webkit-text-size-adjust: none;
  display: block;
  background-image: url("../img/body_back.webp");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  width: 100%;
}
body::before {
  content: "";
  display: block;
  background-image: url("../img/body_back.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: -1;
}
body.subpage, body.subpage::before {
  background-image: none;
  background-color: #fff;
}
body.overflow__hidden {
  overflow: hidden;
}

.light_notice {
  font-weight: 700;
}

ol,
ul {
  list-style: none;
}

ul.disc.half li {
  display: inline-block;
  width: 48%;
}
ul.disc li::before {
  content: "・";
}
ul.disc li.none::before {
  content: "";
}

caption,
th,
td {
  font-weight: normal;
  text-align: left;
}

a img {
  border: 0;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}
img.medicalhours {
  max-width: 800px;
}
img.round {
  border-radius: 10px;
}
img.round-small {
  border-radius: 5px;
}

a {
  color: #000;
  text-decoration: none;
}
a:hover {
  opacity: 0.8;
}
a:active, a:focus {
  outline: 0;
}

.inner {
  margin: 0 auto;
  width: 100%;
}

section h2 span {
  font-size: 18px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 1199px) {
  .is-pc {
    display: none !important;
  }
}
@media screen and (min-width: 1200px) {
  .is-sp {
    display: none !important;
  }
}
/* header */
@media screen and (min-width: 1200px) {
  #header {
    display: block;
    position: fixed;
    z-index: 2;
    background-color: #fff;
    width: 100%;
    top: 0;
  }
  body.subpage div.breadcrumb {
    padding: 13px 0;
  }
}
@media screen and (max-width: 1199px) {
  #header {
    display: block;
    position: sticky;
    z-index: 2;
    background-color: #fff;
    width: 100%;
    top: 0;
  }
  body.subpage div.breadcrumb {
    padding: 13px 20px;
  }
}
.c_size {
  width: 200px;
  margin: 0;
}

.c_size2 {
  width: 200px;
  margin-left: 20px;
}

#header .header_content {
  width: 100%;
  position: relative;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1199px) {
  #header .header_content {
    height: 62px;
    justify-content: center;
    align-items: center;
  }
}

.logo a:hover {
  opacity: 0.8;
}
.logo span {
  display: block;
}

.info {
  padding: 10px 0 15px;
}
.info a {
  padding: 0 5px;
  font-size: 15px;
  color: #666;
}
.info a:hover {
  opacity: 0.8;
}
.info .info_head {
  align-self: flex-end;
  display: flex;
  align-items: center;
  gap: 12px;
}
.info .info_head a img {
  height: 35px;
  width: auto;
}
.info .info_head a.reserve {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 19px;
  border-radius: 100px;
  background: #008ad3;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
}
.info .info_head a.reserve::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 18px;
  background: url("../img/icon_calendar.svg") no-repeat center/contain;
}
.info .info_head a.tel {
  display: flex;
  align-items: center;
  color: #008ad3;
  font-weight: 700;
  font-size: 32px;
  line-height: 1;
}
.info .info_head a.tel::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 30px;
  background: url("../img/icon_phone.svg") no-repeat center/contain;
}
.info .line a {
  color: #fff;
  background-color: #c69c6d;
  padding: 3px 20px;
  border-radius: 5px;
}
.info .open {
  font-size: 11px;
}
.info ul {
  margin-top: 0;
}
.info ul li {
  display: inline-block;
  text-align: center;
  margin-right: 20px;
}
.info ul li:last-child, .info ul li.last {
  margin-right: 0;
}
.info ul li a {
  font-size: 18px;
  white-space: nowrap;
  padding: 0;
}
.info ul li a span {
  color: #008ad3;
  font-size: 10px;
}

body.subpage div.breadcrumb {
  background-color: #008ad3;
}

.breadcrumb > div {
  max-width: 1200px;
  margin: 0 auto;
}
.breadcrumb > div ul li {
  display: inline-block;
  color: #fff;
}
.breadcrumb > div ul li::after {
  display: inline-block;
  content: "|";
  padding: 0 10px;
}
.breadcrumb > div ul li:first-child {
  padding-left: 0;
}
.breadcrumb > div ul li:last-child {
  padding-right: 0;
}
.breadcrumb > div ul li:last-child::after {
  content: none;
}
.breadcrumb > div ul li a {
  color: #fff;
}

/* main  */
@media screen and (min-width: 1200px) {
  .fv {
    width: 100%;
    margin-top: 129px;
    height: calc(100vh - 129px);
    overflow: hidden;
    position: relative;
  }
  .fv.subpage {
    height: 316px;
  }
  .fv.subpage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .fv.subpage ul.slide_image li img {
    height: auto;
  }
  .fv ul.slide_image li img {
    width: 100%;
    height: calc(100vh - 129px);
    -o-object-fit: cover;
       object-fit: cover;
  }
  /*
  .fv .slide {
  	width: 100%;
  	margin: 0 auto;
  	text-align: right;
  	display: block;
  	height: calc(100vh - 70px);
  	overflow: hidden;
  	position: relative;
  }
  .fv .slide ul li img {
  	width: 100%;
  	height: calc(100vh - 60px);
  	object-fit: cover;
  }
  */
  .slick-slide {
    height: auto !important;
  }
}
@media screen and (max-width: 1199px) {
  .fv {
    padding-top: 0;
    width: 100%;
    overflow: hidden;
    position: relative;
  }
  .fv ul.slide_image li img {
    width: 100%;
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .fv.subpage img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  section .container,
  div.section .container {
    padding: 0 20px;
  }
}
@media screen and (min-width: 768px) {
  section,
  div.section {
    padding: 90px 0;
    position: relative;
  }
  body.subpage section,
  body.subpage div.section {
    padding: 90px 0 0;
  }
  .two_col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 60px auto;
  }
  .two_col > div {
    width: 48%;
  }
  .two_col > div.table {
    width: 58%;
  }
  .two_col > div.table_img {
    width: 38%;
  }
  .three_col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }
  .three_col > div {
    width: 30%;
  }
  .three_col > div p {
    text-align: center;
  }
  .four_col {
    display: flex;
    flex-wrap: wrap;
    gap: 26px;
    margin: 48px auto;
  }
  .four_col > div {
    width: calc((100% - 78px) / 4);
  }
  .qr_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px auto;
  }
  .qr_box > div.qr_link {
    width: 20%;
    max-width: 100px;
  }
  .qr_box > div {
    width: 79%;
    text-align: left;
  }
  .fv h2 {
    position: absolute;
    left: 65px;
    bottom: 50px;
    width: -moz-fit-content;
    width: fit-content;
    color: #008ad3;
    font-size: 3vw;
    text-shadow: rgb(255, 255, 255) 6px 0px 0px, rgb(255, 255, 255) 5.91686px 0.995377px 0px, rgb(255, 255, 255) 5.66974px 1.96317px 0px, rgb(255, 255, 255) 5.2655px 2.87655px 0px, rgb(255, 255, 255) 4.71532px 3.71022px 0px, rgb(255, 255, 255) 4.03447px 4.44106px 0px, rgb(255, 255, 255) 3.24181px 5.04883px 0px, rgb(255, 255, 255) 2.35931px 5.51667px 0px, rgb(255, 255, 255) 1.41143px 5.83163px 0px, rgb(255, 255, 255) 0.424423px 5.98497px 0px, rgb(255, 255, 255) -0.574341px 5.97245px 0px, rgb(255, 255, 255) -1.55719px 5.79441px 0px, rgb(255, 255, 255) -2.49688px 5.45579px 0px, rgb(255, 255, 255) -3.36738px 4.96596px 0px, rgb(255, 255, 255) -4.14455px 4.33852px 0px, rgb(255, 255, 255) -4.80686px 3.59083px 0px, rgb(255, 255, 255) -5.33596px 2.74364px 0px, rgb(255, 255, 255) -5.71718px 1.8204px 0px, rgb(255, 255, 255) -5.93995px 0.84672px 0px, rgb(255, 255, 255) -5.99811px -0.150428px 0px, rgb(255, 255, 255) -5.89004px -1.14341px 0px, rgb(255, 255, 255) -5.61874px -2.1047px 0px, rgb(255, 255, 255) -5.19172px -3.00766px 0px, rgb(255, 255, 255) -4.62082px -3.82727px 0px, rgb(255, 255, 255) -3.92186px -4.54082px 0px, rgb(255, 255, 255) -3.11421px -5.12852px 0px, rgb(255, 255, 255) -2.22026px -5.57409px 0px, rgb(255, 255, 255) -1.26477px -5.86518px 0px, rgb(255, 255, 255) -0.274238px -5.99373px 0px, rgb(255, 255, 255) 0.723898px -5.95617px 0px, rgb(255, 255, 255) 1.70197px -5.75355px 0px, rgb(255, 255, 255) 2.63288px -5.39147px 0px, rgb(255, 255, 255) 3.49082px -4.87998px 0px, rgb(255, 255, 255) 4.25202px -4.23324px 0px, rgb(255, 255, 255) 4.89538px -3.46919px 0px, rgb(255, 255, 255) 5.40307px -2.60899px 0px, rgb(255, 255, 255) 5.76102px -1.67649px 0px, rgb(255, 255, 255) 5.95932px -0.697531px 0px;
    z-index: 1;
  }
  h2.santelia {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 44px;
    color: #008ad3;
    text-align: center;
  }
  section h2.santelia span {
    color: #000;
    display: block;
    font-size: 20px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    text-align: center;
    font-weight: 700;
  }
  section p.notice {
    font-size: 23px;
    font-weight: 500;
  }
  section p.sub_title {
    text-align: center;
    margin: 10px auto 90px;
  }
  section p.message {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
  }
  section p.name {
    font-size: 26px;
    text-align: right;
    line-height: 34px;
  }
  section p.name span {
    font-size: 18px;
  }
  .fv.subpage h2 {
    text-shadow: none;
    color: #fff;
    font-family: Roboto, sans-serif;
    font-size: 64px;
    letter-spacing: 0.1em;
    left: 50%;
    bottom: 60px;
    transform: translateX(-50%);
  }
  .fv.subpage h2 span {
    display: block;
    font-size: 26px;
    font-weight: bold;
    font-family: "M PLUS Rounded 1c", sans-serif;
    letter-spacing: 2px;
  }
  body.subpage section h3 {
    font-size: 30px;
    color: #008ad3;
    padding-bottom: 5px;
    border-bottom: 2px solid #008ad3;
    letter-spacing: 4px;
    margin-bottom: 45px;
  }
  body.subpage section h3 img {
    height: 55px;
    width: auto;
    margin-right: 15px;
    vertical-align: bottom;
  }
  table {
    width: auto;
    margin: 0;
    border-spacing: 0px 10px;
  }
  table tr th {
    background-color: #c8e4f4;
    padding: 20px 36px;
    font-weight: bold;
    white-space: nowrap;
  }
  table tr td {
    padding: 20px 36px;
    background-color: #edf8ff;
    width: 100%;
  }
  table.career tr td {
    background-color: transparent;
  }
  section.medical::before,
  section.greeting::before {
    height: 300px;
  }
}
@media screen and (max-width: 767px) {
  .fv {
    height: 200px;
  }
  .c_size {
    width: 100%;
  }
  .c_size2 {
    width: 100%;
  }
  section,
  div.section {
    padding: 45px 0;
    position: relative;
  }
  body.subpage section,
  body.subpage div.section {
    padding: 45px 0 0;
  }
  .two_col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 30px auto;
  }
  .two_col > div {
    width: 100%;
    margin: 20px auto;
  }
  body.subpage section .two_col {
    margin: 20px auto;
  }
  .three_col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }
  .three_col > div {
    width: 100%;
    margin-bottom: 20px;
  }
  .three_col > div:last-child {
    margin-bottom: 0;
  }
  .three_col > div p {
    text-align: center;
  }
  body.subpage section .two_col > div {
    margin: 0 auto 20px;
  }
  .four_col {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 30px auto;
  }
  .four_col > div {
    width: calc((100% - 10px) / 2);
  }
  .qr_box > div.qr_link {
    width: 100px;
    display: block;
    margin: 0 auto;
    text-align: center;
  }
  .fv h2 {
    position: absolute;
    left: 15px;
    bottom: 15px;
    width: -moz-fit-content;
    width: fit-content;
    color: #008ad3;
    font-size: 18px;
    text-shadow: 3px 0 #fff, -3px 0 #fff, 0 3px #fff, 0 -3px #fff, 2px 2px #fff, -2px 2px #fff, 2px -2px #fff, -2px -2px #fff;
    z-index: 1;
  }
  h2.santelia {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 30px;
    color: #008ad3;
    text-align: center;
  }
  section h2.santelia span {
    color: #000;
    display: block;
    font-size: 16px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    text-align: center;
    font-weight: 700;
  }
  section p.notice {
    font-size: 14px;
    font-weight: 500;
  }
  p.button {
    text-align: center;
  }
  section p.sub_title {
    text-align: center;
    margin: 10px auto 45px;
  }
  section p.name {
    font-size: 18px;
    text-align: right;
    line-height: 25px;
    margin-bottom: 2em;
  }
  section p.name span {
    font-size: 14px;
  }
  section.greeting,
  section.medical,
  section.medical_hours {
    padding: 45px 0 5px;
  }
  .fv.subpage h2 {
    text-shadow: none;
    color: #fff;
    font-size: 40px;
  }
  .fv.subpage h2 span {
    display: block;
    font-size: 20px;
    font-weight: bold;
    font-family: "M PLUS Rounded 1c", sans-serif;
    letter-spacing: 2px;
  }
  body.subpage section h3 {
    font-size: 20px;
    color: #008ad3;
    padding-bottom: 5px;
    border-bottom: 2px solid #008ad3;
    letter-spacing: 4px;
    margin-bottom: 20px;
  }
  body.subpage section h3 img {
    height: 30px;
    width: auto;
    margin-right: 10px;
    vertical-align: bottom;
  }
  table {
    width: auto;
    margin: 0;
    border-spacing: 0px 5px;
  }
  table tr th {
    background-color: #c8e4f4;
    padding: 10px 10px;
    font-weight: bold;
    white-space: nowrap;
    vertical-align: middle;
  }
  table tr td {
    padding: 10px 0 10px 10px;
    background-color: #edf8ff;
  }
  table.career tr td {
    background-color: transparent;
  }
  section.medical::before,
  section.greeting::before {
    height: 100px;
  }
}
.fv {
  position: relative;
}
.fv img {
  vertical-align: top;
  width: 100%;
}

#wrapper {
  overflow-x: hidden;
}

section img,
div.section img {
  width: 100%;
}

section.medical_hours {
  text-align: center;
}

section.greeting {
  background-color: #f0f8ff;
}
section.greeting::before {
  content: "Message";
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  color: #87795c;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  font-size: 150px;
  line-height: 1;
  opacity: 0.06;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  section.greeting::before {
    font-size: 70px;
  }
}

section.medical {
  background-color: transparent;
}
section.medical::before {
  content: "Medical";
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  color: #87795c;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  font-size: 150px;
  line-height: 1;
  opacity: 0.06;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  section.medical::before {
    font-size: 70px;
  }
}
section.medical .button {
  width: -moz-fit-content;
  width: fit-content;
}

header .container,
section .container,
div.section .container {
  max-width: 1200px;
  margin: 0 auto;
}

section h2 {
  margin-bottom: 20px;
}

section .two_col > div h2 {
  margin-bottom: 40px;
}

section h3 {
  font-size: 34px;
}

p.button {
  margin: 30px auto;
}
p.button a {
  background-color: #008ad3;
  padding: 10px 100px;
  color: #fff;
  border: 1px solid #008ad3;
  border-radius: 30px;
  transition: background-color 0.5s;
}
p.button a:hover {
  background-color: #fff;
  color: #008ad3;
  border-color: #008ad3;
}

section.content p,
section p,
div.section p {
  margin-bottom: 15px;
  line-height: 30px;
}

section.content img {
  max-width: 90%;
  height: auto;
}

.aligncenter {
  text-align: center;
}

a img:hover {
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -moz-opacity: 0.7;
  -khtml-opacity: 0.7;
  opacity: 0.7;
  zoom: 1;
}

.qr_box > div p a {
  text-decoration: underline;
}
.qr_box > div p a:hover {
  text-decoration: none;
}

.pcbr {
  display: inline;
}
@media screen and (max-width: 767px) {
  .pcbr {
    display: none;
  }
}

.spbr {
  display: none;
}
@media screen and (max-width: 767px) {
  .spbr {
    display: inline;
  }
}

/* googlemap */
@media screen and (min-width: 1200px) {
  iframe.gmap {
    width: 100%;
    height: 500px;
    margin: 0;
  }
  footer iframe.gmap {
    width: 100%;
    height: 562px;
    margin: 0;
  }
}
@media screen and (max-width: 1199px) {
  iframe.gmap {
    width: 100%;
    height: 300px;
    margin: 0;
  }
  footer iframe.gmap {
    width: 100%;
    height: 200px;
    margin: 0;
  }
}
/* footer */
@media screen and (min-width: 1200px) {
  footer > div.container {
    max-width: 1200px;
    margin: 50px auto;
  }
  footer .access_route {
    background-color: #f0f8ff;
    padding: 30px;
  }
  footer .access_route ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
  }
  footer .access_route ul li {
    margin-right: 20px;
    font-size: 16px;
  }
  footer .access_route ul li:last-child {
    margin-right: 0;
  }
  footer .access_route ul li img {
    height: 26px;
    width: auto;
    vertical-align: middle;
    margin-right: 5px;
    margin-top: -5px;
  }
  footer .footer_menu {
    padding: 30px 0;
  }
  footer .footer_menu ul li {
    display: inline-block;
    margin-right: 20px;
  }
  footer .footer_menu ul li:last-child {
    margin-right: 0;
  }
  address {
    font-style: normal;
    color: #000;
    font-weight: 500;
    font-size: 12px;
    margin: 40px auto;
    text-align: center;
  }
  footer .two_col {
    margin: 50px auto 70px;
  }
}
@media screen and (max-width: 1199px) {
  footer > div.container {
    width: 100%;
    margin: 10px auto;
  }
  footer .access_route {
    background-color: #f0f8ff;
    padding: 5px;
  }
  footer > div.container {
    padding: 0 20px;
  }
  footer .access_route ul li {
    margin: 20px auto;
    font-size: 12px;
  }
  footer .access_route ul li img {
    width: 26px;
    height: auto;
    vertical-align: middle;
    margin-right: 5px;
    margin-top: -5px;
  }
  footer .footer_menu {
    padding: 10px 0;
  }
  footer .footer_menu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  footer .footer_menu ul li {
    width: 40%;
    margin: 3%;
  }
  footer img.logo {
    max-width: 200px;
  }
  address {
    font-style: normal;
    color: #000;
    font-weight: 400;
    font-size: 8px;
    margin: 0 auto 20px;
    text-align: center;
  }
  footer .two_col {
    margin: 25px auto 35px;
  }
}
#footer {
  clear: both;
  overflow: hidden;
  background-color: #fff;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  footer {
    padding-bottom: 80px;
  }
}
footer .footer_menu {
  background-color: #008ad3;
  text-align: center;
}
footer .footer_menu ul li a {
  color: #fff;
  font-weight: 500;
  font-size: 16px;
}
footer .map_box {
  padding: 0 5%;
}
footer .map_box p {
  margin-bottom: 10px;
}

/* NEWS */
.news_box {
  border-radius: 10px;
  border: 1px solid #eaeaea;
  background-color: #fff;
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .news_box {
    padding: 30px 40px;
  }
}
@media screen and (max-width: 767px) {
  .news_box {
    padding: 15px 20px;
  }
}
.news_box #newsList li {
  padding: 20px 0;
  border-bottom: 1px solid #d0d0d0;
  text-align: left;
  font-weight: 500;
}
.news_box #newsList li:last-child {
  border-bottom: none;
}
.news_box #newsList li span.up_ymd {
  font-size: 14px;
  color: #008ad3;
  display: block;
}
.news_box #newsList li span.title,
.news_box #newsList li span.title a {
  font-size: 16px;
  display: block;
  padding-top: 10px;
  text-align: left;
  font-weight: 500;
}

body.subpage .news_list h3 {
  background-color: #008ad3;
  color: #fff;
  border-bottom: none;
}
@media screen and (min-width: 768px) {
  body.subpage .news_list h3 {
    font-size: 16px;
    padding: 27.5px 33px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 767px) {
  body.subpage .news_list h3 {
    font-size: 14px;
    padding: 15px 16px;
    margin: 0 0 10px;
  }
}
body.subpage .news_list h3 a {
  color: #fff;
}
@media screen and (min-width: 768px) {
  body.subpage .news_list h3 a {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  body.subpage .news_list h3 a {
    font-size: 14px;
  }
}

.news_list div p span.up_ymd {
  font-size: 14px;
  color: #008ad3;
  display: block;
}
.news_list div p span.title {
  font-size: 16px;
  display: block;
}
.news_list div p span.comment {
  font-weight: 500;
}
.news_list div p img {
  width: auto;
  margin: 10px 0;
}

.news_bloc {
  display: flex;
}
@media screen and (min-width: 768px) {
  .news_bloc {
    padding: 0 0 70px;
  }
}
@media screen and (max-width: 767px) {
  .news_bloc {
    padding: 0 0 35px;
    display: block !important;
  }
}
.news_bloc img {
  display: block;
  width: 48%;
  margin-right: 2%;
}
@media screen and (max-width: 767px) {
  .news_bloc img {
    width: 100% !important;
  }
}

.news_txt {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .news_txt {
    width: 100% !important;
  }
}

.gz_news {
  width: 50%;
}
@media screen and (max-width: 640px) {
  .gz_news {
    width: 100%;
  }
}

/* PC_layout */
@media screen and (min-width: 1280px) {
  #header .logo img {
    max-height: 63px;
    width: auto;
  }
  .logo {
    align-content: center;
    max-height: 63px;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1279px) {
  #header .logo img {
    max-height: 35px;
    width: auto;
  }
  .logo {
    align-content: center;
    max-height: 35px;
  }
}
@media screen and (min-width: 1200px) {
  .spview,
  .news_top .news_box dl dd.spview {
    display: none;
  }
  .pcview {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  #header {
    height: 129px;
  }
  #header .header_content img.backimage {
    max-height: 120px;
    width: auto;
  }
  #header .header_content .left,
  #header .header_content .right {
    margin-top: -10px;
  }
  #header,
  .inner {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  #wrapper {
    padding: 0;
    width: 100%;
  }
  body.subpage #wrapper {
    padding: 0 0 90px;
  }
  nav#mainNav {
    clear: both;
    position: relative;
    background: #fff;
    padding: 15px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
  }
  nav#mainNav .inner {
    padding: 0 14px;
  }
  nav#mainNav ul li {
    display: inline-block;
    position: relative;
    z-index: 100;
  }
  nav#mainNav ul li.spview {
    display: none;
  }
  nav#mainNav ul li a {
    display: block;
    text-align: center;
    font-size: 17px;
    width: 175px;
    height: 23px;
    padding: 3px 0 5px;
    color: #000;
    background: #fff;
    border-left: 1px solid #000;
    vertical-align: middle;
    font-weight: bold;
  }
  nav#mainNav ul li a {
    display: block;
  }
  nav#mainNav ul li.last {
    border-right: 1px solid #000;
  }
  a#menu {
    display: none;
  }
  nav#mainNav li.active a,
  nav#mainNav li a:hover,
  nav#mainNav ul li:hover > ul.submenu li.active a {
    color: #aaa;
    background: #fff;
  }
  section h2 {
    font-size: 30px;
  }
  section .content h3 {
    font-size: 30px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
  }
  section h4 {
    font-size: 24px;
    letter-spacing: 0.1em;
  }
}
/* SP_Menu */
@media screen and (max-width: 1199px) {
  nav.NavMenu {
    position: fixed;
    z-index: 3;
    top: 0;
    left: 0;
    background: rgba(0, 138, 211, 0.9);
    color: #fff;
    text-align: center;
    width: 100%;
    transform: translateY(-100%);
    transition: all 0.6s;
    visibility: hidden;
    opacity: 0;
    width: 100%;
    height: 100%;
  }
  nav.NavMenu ul {
    width: 100%;
    margin: 30px auto 0;
    padding: 0;
    vertical-align: middle;
    display: table;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  nav.NavMenu ul li {
    width: 100%;
    margin: 20px auto;
    text-align: center;
  }
  nav.NavMenu ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
  }
  nav.NavMenu ul li a {
    display: block;
    color: #fff;
    padding: 0;
    font-size: 16px;
  }
  nav.NavMenu ul li a span {
    font-size: 13px;
  }
  nav.NavMenu ul li a:hover {
    color: #ddd;
  }
  nav.NavMenu.active {
    transform: translateY(0%);
    visibility: visible;
    opacity: 1;
  }
  .Toggle {
    position: fixed;
    right: 13px;
    top: 10px;
    width: 42px;
    height: 42px;
    cursor: pointer;
    z-index: 4;
  }
  .Toggle.fixed {
    position: fixed;
    right: 5px;
    background-color: rgb(255, 255, 255);
    border-radius: 5px;
  }
  .Toggle.fixed.active {
    background-color: rgba(255, 255, 255, 0);
  }
  .Toggle span {
    display: block;
    position: absolute;
    width: 30px;
    border-bottom: solid 3px #008ad3;
    transition: 0.35s ease-in-out;
    left: 6px;
  }
  .Toggle.active span {
    border-bottom: solid 3px #fff;
  }
  .Toggle span:nth-child(1) {
    top: 9px;
  }
  .Toggle span:nth-child(2) {
    top: 18px;
  }
  .Toggle span:nth-child(3) {
    top: 27px;
  }
  .Toggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    transform: rotate(-45deg);
  }
  .Toggle.active span:nth-child(2),
  .Toggle.active span:nth-child(3) {
    top: 18px;
    transform: rotate(45deg);
  }
  body.subpage #wrapper {
    padding: 0 0 45px;
  }
}
/* SP_layout */
@media screen and (max-width: 1199px) {
  .spview {
    display: block;
  }
  .pcview {
    display: none !important;
  }
  #header {
    height: 62px;
  }
  #header .logo,
  #header .info {
    float: none;
  }
  #header .header_content .backimage {
    width: 10%;
  }
  #header .header_content img.backimage {
    max-height: 80px;
    width: auto;
  }
  #header .header_content .right {
    text-align: right;
  }
  #header img {
    max-height: 40px;
    max-width: 100%;
    vertical-align: middle;
  }
  body.page section .content,
  body.page section .page_ttl {
    margin-bottom: 75px;
  }
  h2 .spview img {
    width: 100%;
  }
  section h2,
  section .top_service h2,
  section .content h3 {
    font-size: 23px;
  }
  section h4 {
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  section h2 span,
  section .content h3 span {
    font-size: 16px;
  }
  section .content {
    width: 100%;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
  }
  .inner_box {
    width: 100%;
    display: block;
  }
  #footer .info {
    float: none;
  }
  #footer #info .info {
    float: none;
    text-align: center;
  }
  #footer.logo,
  #footer .info {
    width: 100%;
    float: none;
  }
  div.contact {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  #header .header_content > div.logo {
    width: 57%;
  }
  #header .header_content img.backimage {
    height: 50px;
    width: auto;
  }
  #header h1 {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  #header {
    height: auto;
    padding-bottom: 0px;
  }
  .logo,
  .info {
    clear: both;
    width: 100%;
    float: none;
    margin: 0;
  }
  .alignleft,
  .alignright {
    float: none;
    display: block;
    margin: 0 auto 10px;
  }
  .tx_news {
    width: 100px;
  }
}
.reserve_button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 100%;
  height: 138px;
  margin: 0 0 40px;
  padding: 10px 20px;
  border-radius: 20px;
  background: #008ad3;
  color: #fff;
  font-weight: 700;
  font-size: 25px;
  line-height: 1;
}
.reserve_button::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 30px;
  background: url("../img/icon_calendar.svg") no-repeat center/contain;
}

ol.default-list {
  list-style: revert;
  margin: revert;
  padding: revert;
}

.message_mindset {
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
}
.message_mindset h3 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
  color: #008ad3;
}
.message_mindset ol,
.message_mindset li {
  margin-top: 0;
  font-weight: inherit;
  font-size: inherit;
}

.footer_clinic p:nth-child(1) {
  margin: 0 0 24px;
}
.footer_clinic p:nth-child(2) {
  margin: 0 0 11px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
}
@media screen and (max-width: 767px) {
  .footer_clinic p:nth-child(2) {
    font-size: 14px;
    line-height: 20px;
  }
}
.footer_clinic p:nth-child(3) {
  margin: 0;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
}

.access_route_note {
  margin: 16px 0 0;
  text-align: center;
  font-weight: 500;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .access_route_note {
    margin: 14px 0 20px;
    font-size: 12px;
    line-height: 1.5;
  }
}

.footer_sns {
  margin: 35px auto 30px;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 17px;
  align-items: center;
}
.footer_sns .instagram img {
  height: 36px;
}
.footer_sns .line img {
  height: 34px;
}

.facility_col {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.facility_col > div {
  width: calc((100% - 45px) / 4);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .facility_col > div {
    width: 100%;
  }
}
.facility_col > div img {
  display: block;
  border-radius: 10px;
}
.facility_col > div h4 {
  margin: 4px 0 0;
  font-weight: 700;
  font-size: 22px;
  line-height: 35px;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .facility_col > div h4 {
    margin: 8px 0 0;
    font-size: 18px;
    line-height: 1.5;
  }
}
.facility_col > div p {
  font-weight: 700;
  font-size: 18px;
  line-height: 30px;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .facility_col > div p {
    font-size: 15px;
    line-height: 1.5;
  }
}

.clinic_flow {
  display: flex;
  flex-wrap: wrap;
  gap: 37px;
}
.clinic_flow > div {
  width: calc((100% - 111px) / 4);
  padding: 15px 15px 0;
  border: 5px solid #008ad3;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .clinic_flow > div {
    width: 100%;
  }
}
.clinic_flow > div:not(:last-child)::after {
  content: "";
  display: block;
  aspect-ratio: 22/34;
  width: 22px;
  background: url("../img/clinic_flow_arrow.svg") no-repeat center/contain;
  position: absolute;
  right: -14px;
  top: 50%;
  transform: translate(100%, -50%);
}
@media screen and (max-width: 767px) {
  .clinic_flow > div:not(:last-child)::after {
    right: auto;
    left: 50%;
    top: auto;
    bottom: -8px;
    transform: translate(-50%, 100%) rotate(90deg);
  }
}
.clinic_flow > div img {
  display: block;
  width: 180px;
}
@media screen and (max-width: 767px) {
  .clinic_flow > div img {
    width: 120px;
  }
}
.clinic_flow > div h4 {
  margin: 4px 0 0;
  color: #008ad3;
  font-weight: 700;
  font-size: 21px;
  line-height: 35px;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .clinic_flow > div h4 {
    font-size: 18px;
    line-height: 1.5;
  }
}
.clinic_flow > div p {
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .clinic_flow > div p {
    font-size: 15px;
    line-height: 1.5;
  }
}

.coming_by_car_col {
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
  gap: 42px;
}
@media screen and (max-width: 767px) {
  .coming_by_car_col {
    margin-top: 40px;
    gap: 20px;
  }
}
.coming_by_car_col > div {
  width: calc((100% - 84px) / 3);
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .coming_by_car_col > div {
    width: 100%;
  }
}
.coming_by_car_col > div img {
  display: block;
}
.coming_by_car_col > div p {
  text-align: center;
  font-weight: 500;
  font-size: 15px;
  line-height: 21px;
  letter-spacing: 0;
}

section.beginner p strong {
  color: #008ad3;
  font-weight: 700;
  font-size: inherit;
}

.beginner_flow {
  display: grid;
  grid-template-columns: 26.25% 21.25% 5% 21.25% 26.25%;
  grid-template-rows: auto auto auto auto auto;
  margin: 50px 0 75px;
}
@media screen and (max-width: 767px) {
  .beginner_flow {
    margin: 30px 0 45px;
  }
}
.beginner_flow_item {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px 40px;
  border: 5px solid #008ad3;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .beginner_flow_item {
    border: 2px solid #008ad3;
    padding: 10px 20px;
  }
}
.beginner_flow_item h4 {
  margin: 0;
  text-align: center;
  color: #008ad3;
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .beginner_flow_item h4 {
    font-size: 18px;
  }
}
.beginner_flow_item.item1 {
  grid-column: 1/3;
  grid-row: 1/2;
}
.beginner_flow_item.item2 {
  grid-column: 4/6;
  grid-row: 1/2;
}
.beginner_flow_item.item3 {
  grid-column: 4/6;
  grid-row: 3/4;
}
.beginner_flow_item.item4 {
  grid-column: 2/5;
  grid-row: 5/6;
}
.beginner_flow_arrow1 {
  grid-column: 2/3;
  grid-row: 2/4;
  background: url("../img/beginner_flow_arrow3.webp") repeat-y 77.2% 0/14.117% auto;
}
.beginner_flow_arrow2 {
  grid-column: 3/4;
  grid-row: 2/3;
}
.beginner_flow_arrow2::before {
  content: "";
  display: block;
  aspect-ratio: 60/75;
  width: 100%;
  background: url("../img/beginner_flow_arrow2.webp") no-repeat top center/contain;
}
.beginner_flow_arrow3 {
  grid-column: 4/5;
  grid-row: 2/3;
  padding-left: 19.607%;
}
.beginner_flow_arrow3::before {
  content: "";
  display: block;
  aspect-ratio: 36/75;
  width: 17.56%;
  background: url("../img/beginner_flow_arrow1.webp") no-repeat top center/contain;
}
.beginner_flow_arrow4 {
  grid-column: 2/3;
  grid-row: 4/5;
  padding-right: 19.607%;
}
.beginner_flow_arrow4::before {
  content: "";
  display: block;
  margin: 0 0 0 auto;
  aspect-ratio: 36/75;
  width: 17.56%;
  background: url("../img/beginner_flow_arrow1.webp") no-repeat top center/contain;
}
.beginner_flow_arrow5 {
  grid-column: 4/5;
  grid-row: 4/5;
  padding-left: 19.607%;
}
.beginner_flow_arrow5::before {
  content: "";
  display: block;
  aspect-ratio: 36/75;
  width: 17.56%;
  background: url("../img/beginner_flow_arrow1.webp") no-repeat top center/contain;
}

.text-weight-medium {
  font-weight: 500;
}

.text-size-small {
  font-size: 15px;
}

.text-size-large {
  font-size: 22px;
  line-height: 35px;
}
@media screen and (max-width: 767px) {
  .text-size-large {
    font-size: 16px;
    line-height: 1.5;
  }
}

.btn_reserve {
  aspect-ratio: 287/113;
  width: 287px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border: 1px solid #aaaaaa;
  border-radius: 10px;
  background: #008ad3;
}
@media screen and (max-width: 767px) {
  .btn_reserve {
    aspect-ratio: auto;
    width: -moz-fit-content;
    width: fit-content;
    padding: 10px;
    border-radius: 5px;
  }
}
.btn_reserve::before {
  content: "";
  display: block;
  aspect-ratio: 80/86;
  width: 80px;
  background: url("../img/sp_touch.webp") no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .btn_reserve::before {
    width: 40px;
  }
}
.btn_reserve .text {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .btn_reserve .text {
    font-size: 14px;
    line-height: 20px;
  }
}
.btn_reserve .text .row1 {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .btn_reserve .text .row1 {
    font-size: 16px;
  }
}/*# sourceMappingURL=style.css.map */


.news_meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 15px;
}

.news_category {
  display: inline-block;
  padding: 3px 10px;
  border: 1px solid #000;
  color: #000;
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
}

.news_box #newsList li span.title,
.news_box #newsList li span.title a {
  font-size: 16px;
  display: block;
  padding-top: 0px;
  text-align: left;
  font-weight: 500;
}

.no2{
  margin-top:20px;
  font-size:18px!important;
}
.no3{
  margin-top:10px;
  font-size:14px!important;
  font-weight: 500;
}

.news_category {
  display: inline-block;
  padding: 3px 10px;
  color: #fff;
  border: none;
}

/* 診療に関して */
.news_category.cat-medical {
  background-color: #8A4482;
}

/* 求人情報 */
.news_category.cat-recruit {
  background-color: #008AD3;
}

/* 休診日等のお知らせ */
.news_category.cat-closed {
  background-color: #DB5D00;
}