@charset "UTF-8";
/*
Theme Name: miki-coral
Author: IWAMURA Miki
Description: This is IWAMURA Miki's original theme.
Version: 1.0
*/
/*変数初期化*/
/*グーテンベルク*/
.alignleft {
  float: left;
  margin-left: 0;
  margin-right: 1em; }

.alignright {
  float: right;
  margin-left: 1em;
  margin-right: 0; }

.aligncenter {
  margin-left: auto;
  margin-right: auto; }

.wp-block-categories.aligncenter,
.wp-block-latest-posts.aligncenter,
.wp-block-archives.aligncenter,
.wp-block-tag-cloud.aligncenter,
.wp-block-latest-comments.aligncenter,
.wp-block-rss.aligncenter {
  text-align: center; }

.wp-block-buttons .wp-block-button .wp-block-button__link {
  font-size: 16px;
  padding: 8px 16px;
  border-radius: 4px;
  background-color: #50C4B7;
  margin-top: 32px; }

.wp-block-table table {
  border-collapse: collapse;
  width: 100%; }
.wp-block-table table, .wp-block-table th, .wp-block-table td {
  border: solid 1px #ccc;
  padding: 8px; }
.wp-block-table th {
  padding: 0.25em; }
@media (min-width: 768px) {
  .wp-block-table td {
    padding: 1em; } }
.wp-block-table th,
.wp-block-table td {
  border-color: #D5D0C5; }
.wp-block-table thead {
  border-bottom: 1px;
  border-color: #D5D0C5;
  /*background-color: $palewarmgray;*/
  background-color: #EEEBEB;
  color: #1C1C1C; }
.wp-block-table tbody {
  text-align: center; }
.wp-block-table figcaption {
  padding-top: 8px;
  font-size: 16px;
  text-align: left; }
@media (max-width: 320px) {
  .wp-block-table th {
    font-size: 14px;
    font-weight: normal; }
  .wp-block-table th,
  .wp-block-table td {
    padding: 0;
    font-size: .wp-block-table th, .wp-block-table td f-basis-s; } }

/*基本スタイル*/
figure {
  margin-left: 0;
  margin-right: 0; }

body {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: #1C1C1C;
  -webkit-text-size-adjust: 100%; }

body *,
body *::before,
body *::after {
  box-sizing: inherit; }

ul,
ol {
  padding-left: 1em; }

rticle:after,
article.post nav,
.clearfix {
  content: "";
  display: block;
  clear: both; }

a {
  color: #50C4B7;
  text-decoration: none; }

a:hover {
  opacity: 0.7; }

img {
  display: block; }

figure {
  margin: 0; }

time {
  padding: 4px 8px;
  background-color: #50C4B7;
  font-size: 13px;
  font-weight: bold;
  color: white; }

.my-sticky time {
  background-color: #F9B49E;
  position: relative; }
.my-sticky time::before {
  content: "\f08d";
  font-family: "Font Awesome 5 Free";
  color: red;
  position: absolute;
  top: -8px;
  left: 0; }

/*init:改行トグルスイッチ*/
br.no-br-mb,
.no-br-mb br {
  display: none; }

.a-color-contrast a {
  color: var(--wp--preset--color--contrast); }

@media (min-width: 756px) {
  /*PC*/
  br.no-br-mb,
  .no-br-mb br {
    display: inline; }

  br.no-br-pc,
  .no-br-pc br {
    display: none; } }
.obicolor {
  background-color: #FCFAF5; }

.eye-catch-img {
  border-radius: 8px;
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .eye-catch-img {
      margin-bottom: 48px; } }

.see-more {
  font-weight: bold;
  text-align: right;
  margin-bottom: 0; }

ul.asterisk-list li {
  list-style: none; }
ul.asterisk-list li:before {
  content: "※";
  margin-left: -1em; }

.strongred {
  font-weight: bold;
  color: #EC0000; }

.stronggray {
  font-weight: bold;
  color: #707070; }

.textred {
  color: #EC0000; }

li.without-liststyle {
  list-style: none; }

.ul-to-dlstyle ul {
  list-style: none; }
  .ul-to-dlstyle ul > li {
    font-weight: bold; }
    .ul-to-dlstyle ul > li li {
      font-weight: normal; }

.hcaption {
  font-size: 14px; }

/*フォント*/
body {
  font-family: sans-serif; }

p,
ul,
ol {
  line-height: 1.8;
  font-size: 16px; }

h1 {
  font-family: 'Kosugi Maru', sans-serif;
  line-height: 1.5;
  font-size: 24px;
  font-weight: normal;
  margin-top: 0;
  margin-bottom: clamp(24px, 6.4vw, 32px);
  color: #50C4B7;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16);
  border-bottom: solid 1px #D5D5D5; }
  @media (min-width: 768px) {
    h1 {
      font-size: 32px; } }

h2 {
  font-family: 'Kosugi Maru', sans-serif;
  line-height: 1.5;
  font-size: 18px;
  font-weight: normal;
  padding: 0 0 8px 0;
  margin: 0 0 24px 0;
  color: #50C4B7;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16);
  border-bottom: solid 1px #D5D5D5; }
  @media (min-width: 768px) {
    h2 {
      font-size: 24px;
      padding-bottom: 12px; } }

h3 {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 500;
  font-size: 18px; }

.name {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 500;
  font-size: 16px; }

@media (min-width: 768px) {
  .no-br br {
    display: none; } }

/*余白の設定*/
.w-container {
  width: min(92%, 1166px);
  margin: auto; }

.n-container {
  width: min(92%, 768px);
  margin: auto; }

.mysection {
  padding-top: 0;
  padding-bottom: clamp(24px, 6.4vw, 32px); }

.first-section {
  padding-top: 0; }

body:not(.home) .mysection {
  padding-top: clamp(24px, 6.4vw, 32px);
  padding-bottom: clamp(48px, 6.4vw, 72px); }

article:not(:last-child) {
  padding-bottom: clamp(48px, 6.25vw, 72px); }

/*ヘッダー*/
header {
  padding: clamp(10px, 2vw, 22px) 0; }
  @media (min-width: 768px) {
    header {
      padding-bottom: 8px; } }
  header img {
    width: clamp(150px, 30vw, 230px);
    height: auto; }

.header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%; }

.navbtn {
  padding: 0;
  outline: none;
  border: none;
  background: transparent;
  cursor: pointer;
  color: #50C4B7;
  font-size: 32px; }
  @media (min-width: 768px) {
    .navbtn {
      display: none; } }

/*ヒーローイメージ*/
.hero {
  position: relative;
  height: clamp(259px, 45vw, 443px);
  background-image: url(images/hero-dummy001.jpg);
  background-position: center;
  background-size: cover; }

.hero-hcopy {
  width: clamp(128px, 24vw, 244px);
  height: auto;
  padding-top: clamp(16px, 4vw, 32px);
  margin: 0 auto; }

.hero-frame {
  position: absolute;
  width: 100%;
  height: auto;
  bottom: 0; }
  .hero-frame img {
    display: block;
    width: 100%;
    height: auto; }

/*slickの調整*/
.heroslick {
  opacity: 0;
  transition: opacity .3s linear; }

.heroslick.slick-initialized {
  opacity: 1; }

/*ごあいさつ*/
.mih-message {
  margin-top: 0;
  padding-bottom: 0; }
  @media (min-width: 768px) {
    .mih-message {
      margin-top: clamp(0px, 3vw, 32px); } }
  .mih-message .n-container {
    display: grid;
    grid-template-columns: clamp(107px, 20vw, 181px) auto;
    column-gap: clamp(18px, 4.8vw, 52px); }
  .mih-message figure {
    margin: 0;
    grid-row-start: 1;
    grid-column-start: 1;
    grid-row-end: 2;
    grid-column-end: 2;
    align-self: center; }
    @media (min-width: 768px) {
      .mih-message figure {
        grid-row-start: 1;
        grid-column-start: 1;
        grid-row-end: 3;
        grid-column-end: 2; } }
    .mih-message figure img {
      margin: 0;
      width: 100%;
      height: auto; }
  .mih-message .mih-message-title {
    grid-row-start: 1;
    grid-column-start: 2;
    grid-row-end: 2;
    grid-column-end: 3;
    align-self: end; }
    @media (min-width: 768px) {
      .mih-message .mih-message-title {
        grid-row-start: 1;
        grid-column-start: 2;
        grid-row-end: 2;
        grid-column-end: 3; } }
    .mih-message .mih-message-title .name {
      margin-bottom: 0; }
    .mih-message .mih-message-title h3 {
      margin-bottom: clamp(18px, 4.8vw, 32px); }
    .mih-message .mih-message-title .name,
    .mih-message .mih-message-title h3 {
      transform: rotate(0.03deg); }
  .mih-message .n-container > p {
    grid-row-start: 2;
    grid-column-start: 1;
    grid-row-end: 3;
    grid-column-end: 3; }
    @media (min-width: 768px) {
      .mih-message .n-container > p {
        grid-row-start: 2;
        grid-column-start: 2;
        grid-row-end: 3;
        grid-column-end: 3; } }

/*記事*/
.nav-links {
  display: flex;
  margin-top: 30px;
  padding-top: 1em;
  column-gap: clamp(1.5em, 0.4vw, 4em);
  border-top: dashed 1px #D5D5D5;
  font-size: 14px; }
  .nav-links .nav-previous {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.5em; }
    .nav-links .nav-previous::before {
      content: "\f053"; }
  .nav-links .nav-next {
    flex: 1;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5em; }
    .nav-links .nav-next::after {
      content: "\f054"; }
  .nav-links .nav-previous::before,
  .nav-links .nav-next::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #F9B49E; }

/*フッター*/
.footer-sns {
  display: flex;
  justify-content: center;
  column-gap: 32px;
  margin-bottom: clamp(48px, 12.8vw, 73px); }
  .footer-sns img {
    width: 32px;
    height: auto; }

.footer-banners {
  margin-bottom: clamp(48px, 12.8vw, 73px); }
  @media (min-width: 768px) {
    .footer-banners {
      display: flex;
      justify-content: space-between; } }
  .footer-banners figure {
    display: block;
    margin-bottom: 32px;
    max-width: 345px;
    margin-left: auto;
    margin-right: auto; }
    @media (min-width: 768px) {
      .footer-banners figure {
        margin: 0; } }
    .footer-banners figure img {
      width: 100%;
      height: auto; }
  .footer-banners figcaption {
    margin-top: 16px; }

.footer-logo {
  display: flex;
  justify-content: center;
  column-gap: 32px;
  margin-bottom: 48px; }
  @media (min-width: 768px) {
    .footer-logo {
      margin-bottom: 64px; } }
  .footer-logo figure img {
    width: clamp(124px, 38.75vw, 230px);
    height: auto; }

.footer-img {
  width: 100%; }
  .footer-img img {
    display: block;
    width: 100%;
    height: auto; }

.footer-menu {
  color: white;
  background-color: #50C4B7; }
  .footer-menu .footer-nav {
    margin-bottom: 24px; }
    @media (min-width: 768px) {
      .footer-menu .footer-nav {
        margin-bottom: 0; } }
    .footer-menu .footer-nav .footer-nav-menu {
      margin-bottom: 24px; }
      @media (min-width: 768px) {
        .footer-menu .footer-nav .footer-nav-menu {
          margin-bottom: 32px; } }
      .footer-menu .footer-nav .footer-nav-menu li {
        font-weight: bold; }
    .footer-menu .footer-nav ul {
      padding-left: 0;
      margin: 0;
      display: flex;
      column-gap: 16px;
      grid-row-gap: 32px;
      flex-wrap: wrap;
      justify-content: space-between; }
    @media (min-width: 768px) {
      .footer-menu .footer-nav ul::after {
        content: "";
        display: block;
        width: 30%; } }
    .footer-menu .footer-nav li {
      list-style: none;
      width: 46%;
      border-left: solid 0.5px white;
      border-bottom: solid 0.5px white;
      padding-left: 0.5em;
      font-size: 14px; }
      .footer-menu .footer-nav li.list-break {
        display: none; }
      @media (min-width: 768px) {
        .footer-menu .footer-nav li {
          width: 30%; } }
      .footer-menu .footer-nav li a {
        color: white; }
    @media (min-width: 768px) {
      .footer-menu .footer-nav .footer-nav-options ul {
        grid-row-gap: 0; } }
    .footer-menu .footer-nav .footer-nav-options li {
      text-align: center;
      width: 100%;
      border: none; }
  .footer-menu .copyright {
    text-align: center;
    padding-bottom: 52px;
    padding-top: 24px; }
    @media (min-width: 768px) {
      .footer-menu .copyright {
        padding-top: 32px;
        padding-bottom: 64px; } }
    .footer-menu .copyright i.fa-envelope {
      font-size: 36px;
      margin-bottom: 18px; }
    .footer-menu .copyright p {
      margin: 0;
      font-size: 14px; }
      @media (max-width: 320px) {
        .footer-menu .copyright p {
          font-size: 12px; } }
    .footer-menu .copyright a {
      color: white; }
  .footer-menu .fixed-buttons {
    display: flex;
    flex-direction: row-reverse;
    column-gap: 16px;
    position: fixed;
    bottom: 0;
    right: 16px; }
    .footer-menu .fixed-buttons .fixed-appo-button a {
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 4px 4px 0 0;
      padding: 0.5em;
      background: white;
      color: #50C4B7;
      width: 83px;
      height: 57px;
      box-shadow: 0 0 4px rgba(0, 0, 0, 0.32); }
    .footer-menu .fixed-buttons .fixed-appo-button a:hover {
      opacity: 1; }
    .footer-menu .fixed-buttons .fixed-appo-button p {
      font-size: 14px;
      font-weight: bold;
      margin: 0;
      line-height: 1.25; }
    .footer-menu .fixed-buttons .fixed-up-button a {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 57px;
      height: 57px;
      border-radius: 2em 2em 0 0;
      background: white;
      color: #50C4B7;
      box-shadow: 0 0 4px rgba(0, 0, 0, 0.32); }
    .footer-menu .fixed-buttons .fixed-up-button a:hover {
      opacity: 1; }
    .footer-menu .fixed-buttons .fixed-up-button i {
      font-size: 32px; }

.footer-nav-white {
  background-color: inherit; }
  .footer-nav-white .footer-nav li {
    border-left: solid 1px #50C4B7;
    border-bottom: solid 1px #50C4B7; }
    .footer-nav-white .footer-nav li a {
      color: #50C4B7; }

/*ニュースセクション*/
.news article {
  padding-bottom: 0; }
  .news article a {
    display: block;
    color: inherit;
    border-bottom: solid 1px #D5D5D5;
    padding-bottom: 16px;
    background-color: white;
    position: relative; }
  .news article:not(:first-of-type) a {
    padding-top: 16px; }
  .news article p {
    margin: 0;
    margin-right: 1.5em;
    margin-top: 12px;
    line-height: 1.5; }
    @media (min-width: 768px) {
      .news article p {
        margin-top: 0; } }
  .news article i {
    font-size: 16px;
    color: #F9B49E;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%); }
  @media (min-width: 768px) {
    .news article .newstitle-wrap {
      display: flex;
      column-gap: 1em;
      align-items: flex-start; } }

/*ページネーション*/
.pagination .nav-links {
  justify-content: center;
  gap: 1em; }
.pagination .current {
  color: #1C1C1C; }

/*ご予約セクション*/
@media (min-width: 768px) {
  .mih-appointment .appointment-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 32px; } }
@media (min-width: 768px) {
  .mih-appointment .appointment-wrap:last-child {
    margin-bottom: 0; } }
.mih-appointment .appointment-cap {
  margin-top: 16px;
  margin-bottom: 0; }
.mih-appointment .appo-items {
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .mih-appointment .appo-items {
      margin-bottom: 0; } }
.mih-appointment .appointment-box {
  width: 230px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 768px) {
    .mih-appointment .appointment-box {
      margin: 0; } }
.mih-appointment .appo-button {
  color: white;
  background-color: #F9B49E;
  height: 75px;
  border-radius: 4px; }
  .mih-appointment .appo-button a {
    padding-left: 9px;
    display: block;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    color: white; }
  .mih-appointment .appo-button p {
    display: flex;
    align-items: center;
    column-gap: 8px;
    margin: 0;
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16);
    font-weight: bold; }
  .mih-appointment .appo-button i {
    display: inline-block;
    text-align: center;
    line-height: 54px;
    width: 54px;
    height: 54px;
    font-size: 32px;
    border-radius: 2em;
    background-color: white;
    color: #F9B49E;
    text-shadow: none; }
@media (min-width: 768px) {
  .mih-appointment .mih-linedoc {
    width: 500px; } }
.mih-appointment .mih-linedoc figure {
  width: 100%;
  border: solid 1px #D5D5D5; }
  .mih-appointment .mih-linedoc figure img {
    width: 100%;
    height: auto; }
  .mih-appointment .mih-linedoc figure a:hover img {
    opacity: 0.7; }
.mih-appointment .mih-mail {
  text-align: center; }
  .mih-appointment .mih-mail i {
    font-size: 52px;
    color: #50C4B7; }
  .mih-appointment .mih-mail a p {
    margin: 0; }
  .mih-appointment .mih-mail a:hover i {
    opacity: 0.7; }
  .mih-appointment .mih-mail.appo-items {
    margin-bottom: 0; }

/*診療時間・アクセス*/
.mih-timetable ul {
  margin-bottom: 0; }
.mih-timetable .map-nav p:last-of-type {
  margin-bottom: 0; }
@media (min-width: 768px) {
  .mih-timetable .map-nav p:first-of-type {
    margin-top: 0; } }
@media (min-width: 768px) {
  .mih-timetable .map-wrap {
    display: flex;
    column-gap: 32px; }
    .mih-timetable .map-wrap figure {
      width: 400px; }
      .mih-timetable .map-wrap figure img {
        width: 100%;
        height: auto; } }

/*診療科目*/
.mih-services .service-item {
  width: clamp(135px, 41.5vw, 193px); }
  @media (max-width: 320px) {
    .mih-services .service-item {
      width: 100%;
      margin-bottom: 32px; } }
.mih-services p {
  font-size: 14px;
  margin-bottom: 0; }
.mih-services h2 {
  border: none;
  margin: 0;
  padding: 0;
  text-align: center; }
.mih-services .service-h {
  border: solid 1px #50C4B7;
  height: clamp(135px, 41.5vw, 193px);
  border-radius: 50%;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16); }
  @media (max-width: 320px) {
    .mih-services .service-h {
      width: 135px;
      margin-left: auto;
      margin-right: auto; } }
.mih-services .service-items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: clamp(20px, 6.25vw, 32px);
  grid-row-gap: 32px;
  justify-items: center; }
  @media (min-width: 768px) {
    .mih-services .service-items {
      grid-template-columns: 1fr 1fr min-content;
      grid-row-gap: 48px;
      justify-items: normal; } }
  @media (max-width: 320px) {
    .mih-services .service-items {
      display: block; } }

/*セクションバナー*/
.section-banners {
  padding-top: 32px; }
  @media (min-width: 768px) {
    .section-banners {
      padding-top: 48px; } }
  .section-banners figure {
    max-width: 345px;
    margin-left: auto;
    margin-right: auto; }
    .section-banners figure img {
      width: 100%;
      height: auto; }

/*当院の特徴*/
.mih-features h2 {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 500;
  background-color: #F9B49E;
  color: white;
  text-shadow: none;
  padding: 0.5em 1em;
  border-radius: 2em;
  border: none;
  margin: 0; }
.mih-features p {
  margin-bottom: 0;
  font-size: 14px; }
.mih-features .feature-items {
  display: grid;
  grid-row-gap: 32px; }
  @media (min-width: 768px) {
    .mih-features .feature-items {
      grid-template-columns: 1fr 1fr;
      grid-row-gap: 48px;
      column-gap: 72px; } }

/*医師紹介*/
.mih-doctors .doctor-item a {
  display: block;
  border: solid 1px #D5D5D5;
  width: 150px;
  border-radius: 8px;
  overflow: hidden;
  background-color: white;
  color: inherit; }
  .mih-doctors .doctor-item a figcaption {
    font-size: 14px;
    font-weight: bold;
    color: #1C1C1C;
    text-align: left;
    background-color: #C2F0E4;
    margin-top: 0;
    padding: 10px 16px; }
  .mih-doctors .doctor-item a .doctor-name {
    font-weight: bold;
    padding-left: 16px;
    margin-top: 12px;
    margin-bottom: 24px; }
  .mih-doctors .doctor-item a .doctor-arrow {
    font-size: 14px;
    padding-left: 16px;
    margin-top: 0;
    margin-bottom: 16px; }
.mih-doctors .doctor-item img {
  width: 100%;
  height: auto; }

.mih-doctors .slick-slider:focus {
  outline: none; }
.mih-doctors .slick-slider {
  width: 92%;
  margin-left: auto;
  margin-right: auto; }
.mih-doctors .slick-prev, .mih-doctors .slick-next {
  width: 64px;
  height: 64px;
  z-index: 1; }
@media (min-width: 768px) {
  .mih-doctors .slick-prev {
    left: -48px; } }
.mih-doctors .slick-prev:before, .mih-doctors .slick-next:before {
  font-size: 64px;
  color: #F9B49E;
  opacity: 0.36; }
.mih-doctors .slick-prev:hover:before,
.mih-doctors .slick-prev:focus:before,
.mih-doctors .slick-next:hover:before,
.mih-doctors .slick-next:focus:before {
  opacity: 0.25; }

.hide-area {
  display: none; }

.modaal-container {
  max-width: 768px;
  border-radius: 8px; }

.modaal-close:after,
.modaal-close:before {
  background: #F9B49E; }

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
  background: white; }

.modaal-close:focus,
.modaal-close:hover {
  background: #F9B49E;
  opacity: 0.36; }

@media (max-width: 375px) {
  .modaal-close {
    top: 0;
    right: 0; } }

.modaal-content-container .two-columns {
  display: flex; }
  @media (max-width: 320px) {
    .modaal-content-container .two-columns {
      display: block; } }
  .modaal-content-container .two-columns figure {
    width: 100px;
    overflow: hidden;
    border-radius: 8px; }
    .modaal-content-container .two-columns figure img {
      width: 100%;
      height: auto; }
    @media (min-width: 768px) {
      .modaal-content-container .two-columns figure {
        width: 150px; } }
  .modaal-content-container .two-columns .right-column {
    padding-left: 16px; }
    @media (max-width: 320px) {
      .modaal-content-container .two-columns .right-column {
        padding-left: 0; } }
    .modaal-content-container .two-columns .right-column .position-name {
      display: inline-block;
      font-size: 14px;
      padding: 0px 16px;
      margin: 0;
      background-color: #C2F0E4;
      border-radius: 2em; }
      @media (max-width: 320px) {
        .modaal-content-container .two-columns .right-column .position-name {
          display: block; } }
    .modaal-content-container .two-columns .right-column .doctor-name {
      font-weight: bold; }
.modaal-content-container .option-wrap ul {
  margin: 32px 0 0 0;
  padding-left: 0;
  display: flex;
  column-gap: 24px; }
.modaal-content-container .option-wrap ul.with-banner {
  margin-bottom: 32px; }
.modaal-content-container .option-wrap li {
  list-style: none; }
  .modaal-content-container .option-wrap li img {
    width: 32px;
    height: auto; }
.modaal-content-container .option-wrap .profile-banner {
  max-width: 480px; }
  .modaal-content-container .option-wrap .profile-banner img {
    width: 100%;
    height: auto; }

/*よくある質問*/
.accordion-box {
  border-bottom: solid 1px #D5D5D5; }
  .accordion-box ul.accordion-box-lists {
    margin: 0; }
  .accordion-box ul {
    padding-left: 0; }
  .accordion-box li {
    list-style: none; }
    .accordion-box li p {
      margin: 0;
      max-width: 80%; }
      @media (min-width: 768px) {
        .accordion-box li p {
          max-width: 90%; } }
      @media (max-width: 320px) {
        .accordion-box li p {
          max-width: 78%; } }
    .accordion-box li span {
      width: 48px;
      font-weight: bold; }
    .accordion-box li i {
      margin-left: auto;
      color: #50C4B7;
      align-self: center; }
  .accordion-box .accordion-box-list-parent,
  .accordion-box .accordion-box-list-child {
    display: flex;
    padding: 24px 8px; }
  .accordion-box .accordion-box-list-parent {
    background-color: #EFF1F3;
    border-top: solid 1px #D5D5D5;
    cursor: pointer; }
    .accordion-box .accordion-box-list-parent span {
      color: #50C4B7; }
  .accordion-box .accordion-box-list-child {
    column-gap: 24px; }
    .accordion-box .accordion-box-list-child div p {
      max-width: 100% !important;
      margin-right: 0; }
    .accordion-box .accordion-box-list-child span {
      color: #EC0000;
      width: auto; }
    .accordion-box .accordion-box-list-child ul.list-in-answer li {
      list-style-type: disc;
      margin-left: 24px; }
  .accordion-box .open i {
    transform: rotate(180deg); }

/*ナビゲーションメニュー*/
#g-nav {
  position: fixed;
  z-index: 1;
  right: -100%;
  top: 0;
  width: 280px;
  background: #FCFAF5;
  transition: all 0.6s;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.32);
  border-radius: 16px 0 0 16px; }
  @media (min-width: 768px) {
    #g-nav {
      position: static;
      width: 100%;
      box-shadow: none;
      border-radius: 0;
      background-color: transparent;
      transition: unset; } }
  #g-nav .navbtn-close {
    padding: clamp(10px, 2vw, 22px) 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer; }
    @media (min-width: 768px) {
      #g-nav .navbtn-close {
        display: none; } }
    #g-nav .navbtn-close i {
      cursor: pointer;
      color: #50C4B7;
      font-size: 32px; }
    #g-nav .navbtn-close .navbtn-close-dummy {
      width: clamp(150px, 30vw, 230px);
      height: clamp(40.523px, 8.1vw, 62.141px); }

#g-nav.panelactive {
  right: 0; }

#g-nav-list ul {
  padding-left: 20px;
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    #g-nav-list ul {
      padding-left: 0;
      margin: 0;
      display: flex;
      column-gap: 12px;
      justify-content: flex-end; } }
#g-nav-list li {
  list-style: none;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 700;
  padding: 0.5em 0;
  font-size: 16px; }
  #g-nav-list li.list-break {
    color: #D5D0C5;
    display: none; }
    @media (min-width: 768px) {
      #g-nav-list li.list-break {
        display: inline; } }
  @media (min-width: 768px) {
    #g-nav-list li {
      padding: 0; } }
  #g-nav-list li a {
    color: #50C4B7; }

/*個人情報保護に関する基本方針*/
.privacy-protection {
  font-family: serif; }
  .privacy-protection h1,
  .privacy-protection h2 {
    font-family: serif;
    text-shadow: none;
    color: #1C1C1C; }

/*シングルページ*/
.single .post h2 {
  margin-top: 32px; }
.single .post figure {
  margin-top: 32px;
  margin-bottom: 32px; }

/*動きに関するスタイリング*/
#g-nav {
  z-index: 200; }

@keyframes headerMove {
  from {
    top: -50px; }
  to {
    top: 0; } }
header.fixed {
  position: fixed;
  z-index: 95;
  background-color: white;
  width: 100%;
  animation-name: headerMove;
  animation-duration: 0.5s;
  animation-timing-function: ease;
  padding-top: 12px; }
  header.fixed nav .menu {
    margin-top: 0; }

@keyframes headerMoveUp {
  from {
    transform: translateY(-50px); }
  to {
    transform: translateY(0); } }
@media (min-width: 768px) {
  #g-nav-list.fixed {
    position: fixed;
    z-index: 95;
    top: 0;
    background-color: white;
    width: 100%;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
    animation-name: headerMoveUp;
    animation-duration: 0.5s;
    animation-timing-function: ease;
    padding-top: 12px; }
    #g-nav-list.fixed ul {
      width: min(92%, 1166px);
      margin: auto; } }

.heroslick {
  position: relative;
  z-index: 1;
  width: 100%; }

.heroslick-item01 {
  background-image: url(images/heroimage-001c.jpg); }

.heroslick-item02 {
  background-image: url(images/heroimage-002b.jpg); }

.heroslick-item03 {
  background-image: url(images/heroimage-003b.jpg); }

.heroslick-item {
  width: 100%;
  height: clamp(375px, 100vw, 480px);
  background-position: center;
  background-size: cover; }
  .heroslick-item a {
    display: block;
    width: 100%;
    height: 100%; }

#g-nav-list a:hover {
  opacity: 1; }
#g-nav-list li a {
  position: relative;
  display: inline-block; }
#g-nav-list li a::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background-color: #50C4B7;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s; }
#g-nav-list li a:hover::after {
  transform: scale(1, 1); }

.hero-container {
  position: relative; }

.headcopy {
  position: absolute;
  z-index: 90;
  background-color: rgba(80, 196, 183, 0.77);
  top: 16px;
  left: 0;
  border-radius: 0 18px 18px 0;
  color: white;
  padding: clamp(16px, 4.26vw, 48px); }
  @media (min-width: 768px) {
    .headcopy {
      top: 0;
      border-radius: 0 0 64px 0; } }
  .headcopy h3 {
    font-size: clamp(18px, 4.8vw, 32px);
    margin: 0 0 4px 0;
    opacity: 1; }
  .headcopy p {
    font-size: clamp(14px, 3.73vw, 18px);
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 400;
    margin: 0;
    opacity: 1; }

.dir-speech-link {
  position: absolute;
  z-index: 85;
  background-color: rgba(194, 240, 228, 0.77);
  bottom: 16px;
  right: 0;
  border-radius: 16px 0 0 16px; }
  @media (min-width: 768px) {
    .dir-speech-link {
      bottom: 0;
      border-radius: 64px 0 0 0; } }
  .dir-speech-link figure {
    margin: 0; }
  .dir-speech-link img {
    width: 59px;
    height: auto; }
  .dir-speech-link p {
    margin: 4px 0 4px 0;
    font-size: 14px; }
  .dir-speech-link a {
    color: inherit;
    display: flex;
    align-items: center;
    column-gap: 16px;
    padding: 16px 16px 0 16px; }
    @media (min-width: 768px) {
      .dir-speech-link a {
        padding: clamp(16px, 4.26vw, 28px); } }
  .dir-speech-link i {
    margin-left: 8px; }

.top-banner {
  background-color: #EAE7E2;
  background-image: url(images/top-banner-img.svg);
  background-size: 101%;
  background-position: bottom;
  background-repeat: no-repeat;
  padding-top: clamp(24px, 6.4vw, 32px);
  padding-bottom: 22px;
  margin-bottom: clamp(20px, 5.33vw, 32px); }
  @media (min-width: 768px) {
    .top-banner {
      padding-bottom: 0; } }

.top-banner-wrap figure {
  width: 100%;
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 16px;
  border-radius: 4px; }
  .top-banner-wrap figure img {
    width: 100%;
    height: auto;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16); }
@media (min-width: 768px) {
  .top-banner-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .top-banner-wrap figure {
      width: 49%;
      margin-left: 0;
      margin-right: 0; }
    .top-banner-wrap figure:last-child:nth-child(odd) {
      margin-left: auto;
      margin-right: auto; } }

.official-account h3 {
  text-align: center;
  font-weight: normal;
  color: #707070;
  display: flex;
  justify-content: center;
  align-items: center; }
  .official-account h3::before, .official-account h3::after {
    content: '';
    width: clamp(50px, 13.33vw, 70px);
    height: 1px;
    background-color: #D5D5D5; }
  .official-account h3::before {
    margin-right: 0.5em; }
  .official-account h3::after {
    margin-left: 0.5em; }

.sns-icons {
  display: flex;
  justify-content: center;
  column-gap: clamp(64px, 17.06vw, 90px); }
  .sns-icons img {
    width: 48px;
    height: auto; }

.navbtn-wrap-top {
  display: flex;
  align-items: center;
  column-gap: 8px;
  padding: 8px 8px 0 8px; }
  @media (min-width: 768px) {
    .navbtn-wrap-top {
      display: none; } }

.navbtn {
  width: 46px;
  height: auto;
  text-align: center; }

.reserve-item {
  background-color: #F9B49E; }
  .reserve-item a {
    color: white; }
  .reserve-item span {
    font-weight: bold; }

.reserve-items {
  display: flex;
  justify-content: space-between;
  column-gap: 6px;
  flex: 1; }
  .reserve-items .key-item {
    display: none; }
  .reserve-items .reserve-item {
    text-align: center;
    flex: 1;
    border-radius: 6px; }
    .reserve-items .reserve-item .text-pc {
      display: none; }
    .reserve-items .reserve-item a {
      display: block;
      padding: 8px 0 4px 0;
      opacity: 1; }
    .reserve-items .reserve-item span {
      font-size: 12px;
      margin-top: 4px; }
      @media (max-width: 320px) {
        .reserve-items .reserve-item span {
          font-size: 10px; } }
    .reserve-items .reserve-item i {
      font-size: 18px; }
    .reserve-items .reserve-item span,
    .reserve-items .reserve-item i {
      display: block; }
  @media (min-width: 768px) {
    .reserve-items {
      display: none; } }

.navbtn-wrap-bottom {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 100; }
  @media (min-width: 768px) {
    .navbtn-wrap-bottom {
      bottom: -16px; } }

.navbtn-back {
  display: flex;
  justify-content: flex-end; }
  @media (min-width: 768px) {
    .navbtn-back {
      width: min(92%, 1166px);
      margin: auto; } }
  .navbtn-back a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 44px;
    height: 44px;
    margin: 8px;
    background-color: #D5D5D5;
    color: white;
    border-radius: 6px;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15); }
    .navbtn-back a i {
      font-size: 32px; }
    @media (min-width: 768px) {
      .navbtn-back a {
        width: 58px;
        height: 58px;
        margin-right: 0; } }
  .navbtn-back a:hover {
    opacity: 1; }

.reserve-items-sp .reserve-item {
  text-align: center;
  display: none; }
  .reserve-items-sp .reserve-item a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 10px 0;
    background-color: #F9B49E;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15); }
  .reserve-items-sp .reserve-item a:hover {
    opacity: 1; }
.reserve-items-sp .key-item {
  display: block; }
.reserve-items-sp i {
  font-size: 18px; }
.reserve-items-sp span {
  font-size: 14px; }
@media (min-width: 768px) {
  .reserve-items-sp {
    display: none; } }

.reserve-items-pc {
  display: none; }
  @media (min-width: 768px) {
    .reserve-items-pc {
      display: flex;
      column-gap: 10px;
      justify-content: flex-end;
      width: min(92%, 1166px);
      margin: auto; }
      .reserve-items-pc .text-sp {
        display: none; }
      .reserve-items-pc .text-pc-small {
        font-size: 12px; }
      .reserve-items-pc i {
        font-size: 23px;
        display: inline-block;
        text-align: center;
        line-height: 38.5px;
        width: 38.5px;
        height: 38.5px;
        border-radius: 2em;
        background-color: white;
        color: #F9B49E; }
      .reserve-items-pc .reserve-item {
        border-radius: 8px 8px 0 0;
        box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
        position: relative;
        top: 0;
        transition: all 0.3s; }
        .reserve-items-pc .reserve-item a {
          opacity: 1;
          display: flex;
          align-items: center;
          column-gap: 4px;
          padding: 10px;
          padding-bottom: 26px; }
          .reserve-items-pc .reserve-item a span {
            text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16); }
          .reserve-items-pc .reserve-item a div {
            line-height: 1.2; }
        .reserve-items-pc .reserve-item:hover {
          top: -16px; } }

.header-container {
  display: block;
  width: 100%;
  margin: 0; }
  @media (min-width: 768px) {
    .header-container {
      width: min(92%, 1166px);
      margin: auto; } }

.site {
  width: clamp(120px, 32vw, 230px);
  margin-left: auto;
  margin-right: auto; }
  .site img {
    width: 100%;
    height: auto; }
  @media (min-width: 768px) {
    .site {
      margin: 0; } }

.navbtn-wrap-top.fixed {
  position: fixed;
  background-color: white;
  width: 100%;
  z-index: 105;
  top: 0;
  left: 0;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
  padding-bottom: 8px;
  animation-name: moveDown;
  animation-duration: 0.5s;
  animation-timing-function: ease; }

@keyframes moveDown {
  from {
    transform: translateY(-100%); }
  to {
    transform: translateY(0); } }
/*見出しスタイリング*/
.coral-header {
  border: none;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 400;
  font-size: 24px;
  text-shadow: none;
  padding: 16px;
  display: flex;
  flex-flow: column;
  align-items: center;
  position: relative; }
  @media (min-width: 768px) {
    .coral-header {
      font-size: 28px;
      padding-bottom: 10px; } }
  .coral-header span.centerline {
    display: block;
    width: 120px;
    height: 6px;
    background-color: #F9B49E;
    border-radius: 3px;
    margin-top: 4px; }
    @media (min-width: 768px) {
      .coral-header span.centerline {
        margin-top: 10px; } }
  .coral-header::before, .coral-header::after {
    content: '';
    width: 94px;
    height: 36px;
    position: absolute; }
  .coral-header::before {
    border-left: solid 2px #F9B49E;
    border-top: solid 2px #F9B49E;
    top: 0;
    left: 0; }
  .coral-header::after {
    border-right: solid 2px #F9B49E;
    border-bottom: solid 2px #F9B49E;
    bottom: 0;
    right: 0; }

/*ギャラリー*/
.galleryslick {
  width: 94%;
  margin: 0 auto;
  /*.slick-prev:before,
  .slick-next:before {
    display: none;
  }
  .slick-prev,
  .slick-next {
    position: absolute;
    cursor: pointer;
    outline: none;
    border-top: solid 2px #666;
    border-right: solid 2px #666;
    height: 16px;
    width: 16px;
  }
  .slick-prev {
    left: -3%;
    transform: rotate(-135deg);
  }
  .slick-next {
    right: -3%;
    transform: rotate(45deg);
  }*/ }
  .galleryslick img {
    width: clamp(210px, 56vw, 468px);
    height: auto; }
  .galleryslick .slick-slide {
    transform: scale(0.8);
    transition: all 0.5s;
    opacity: 0.5; }
    .galleryslick .slick-slide.slick-center {
      transform: scale(1);
      opacity: 1; }
  .galleryslick .slick-prev, .galleryslick .slick-next {
    width: 64px;
    height: 64px;
    z-index: 1; }
  @media (min-width: 768px) {
    .galleryslick .slick-prev {
      left: -48px; } }
  .galleryslick .slick-prev:before, .galleryslick .slick-next:before {
    font-size: 64px;
    color: #F9B49E;
    opacity: 0.36; }
  .galleryslick .slick-prev:hover:before,
  .galleryslick .slick-prev:focus:before,
  .galleryslick .slick-next:hover:before,
  .galleryslick .slick-next:focus:before {
    opacity: 0.25; }

/*フレームを持ったセクション*/
.withframe {
  background-color: #EAE7E2;
  padding: clamp(24px, 6.4vw, 32px) 0;
  margin-bottom: clamp(24px, 6.4vw, 32px); }

.withframe-wrap {
  background-color: white;
  margin: 0;
  width: 100%;
  padding: clamp(24px, 6.4vw, 32px) 0;
  border-radius: 16px; }
  .withframe-wrap p {
    margin: 0; }
  @media (min-width: 768px) {
    .withframe-wrap {
      width: min(92%, 1166px);
      margin: auto; } }

/*診療科目ボタン*/
.square-buttons {
  padding-left: clamp(15px, 4vw, 32px);
  padding-right: clamp(15px, 4vw, 32px); }
  .square-buttons ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 33px 24px;
    max-width: 972px;
    margin: 0;
    padding: 0;
    margin-left: auto;
    margin-right: auto; }
    @media (max-width: 320px) {
      .square-buttons ul {
        gap: 24px 24px; } }
  .square-buttons li {
    list-style: none;
    color: white;
    text-align: center; }
    .square-buttons li i {
      font-size: clamp(32px, 8.53vw, 40px); }
    .square-buttons li span {
      font-family: 'M PLUS Rounded 1c', sans-serif;
      font-weight: 500;
      font-size: clamp(16px, 4.26vw, 18px);
      display: block;
      line-height: 1.2; }
    .square-buttons li .subj-smalltxt {
      font-size: 11px;
      font-family: sans-serif; }
  .square-buttons a {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    gap: 6px 0;
    width: clamp(126px, 33.6vw, 160px);
    height: clamp(126px, 33.6vw, 160px);
    background-color: #50C4B7;
    color: inherit;
    border-radius: 8px; }
    @media (max-width: 320px) {
      .square-buttons a {
        width: 120px;
        height: 120px; } }

/*当院でできる検査*/
.check-mark-list ul {
  margin: 0;
  padding: 0; }
.check-mark-list li {
  display: flex;
  column-gap: 8px;
  list-style: none;
  background-color: #F8F8F4; }
  .check-mark-list li:not(:last-child) {
    margin-bottom: 8px; }
.check-mark-list span {
  display: block;
  line-height: 1.2;
  padding: 16px 8px; }
.check-mark-list .wf-wrap {
  display: flex;
  align-items: center;
  background-color: #F9B49E;
  padding-left: 16px;
  padding-right: 16px; }
.check-mark-list i {
  display: block;
  color: white; }

/*Googleマップ*/
.mih-googlemap {
  width: 100%;
  height: 320px; }
  .mih-googlemap iframe {
    width: 100%;
    height: 100%; }

/*連携施設*/
.borderleft-list ul {
  margin: 0;
  padding: 0; }
  @media (min-width: 768px) {
    .borderleft-list ul {
      display: flex;
      flex-wrap: wrap;
      column-gap: 16px;
      grid-row-gap: 16px; } }
.borderleft-list li {
  list-style: none;
  background-color: #F0FAF9;
  border-left: solid 8px #50C4B7;
  padding: 8px; }
  .borderleft-list li:not(:last-child) {
    margin-bottom: 8px; }
    @media (min-width: 768px) {
      .borderleft-list li:not(:last-child) {
        margin-bottom: 0; } }
  @media (min-width: 768px) {
    .borderleft-list li {
      width: calc(50% - 8px); } }
@media (min-width: 768px) {
  .borderleft-list {
    /*display: flex;
    column-gap: 32px;
    p {
      flex: 1;
    }
    ul {
      flex: 1;
    }*/ } }

/*企業系バナー*/
.corporate-banner .n-container {
  border-bottom: solid 1px #D5D5D5;
  padding-bottom: 24px; }
  @media (min-width: 768px) {
    .corporate-banner .n-container {
      padding-bottom: 32px; } }

@media (min-width: 768px) {
  .corpbanner-wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 32px;
    row-gap: 24px; } }
@media (min-width: 768px) {
  .corpbanner-wrap figure {
    margin: 0; } }
.corpbanner-wrap figure:last-child {
  margin-bottom: 0; }
.corpbanner-wrap img {
  display: block;
  width: 100%;
  max-width: 345px;
  height: auto;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 768px) {
    .corpbanner-wrap img {
      width: 345px;
      margin: 0; } }

/*ネガティブマージン*/
#news::before,
#min-subjects::before,
#timetable::before,
#questions::before {
  display: block;
  height: 80px;
  margin-top: -80px;
  content: ""; }

/*固定ページなど追加スタイリング*/
@media (min-width: 768px) {
  .midimg-and-text > .wp-block-group__inner-container {
    display: flex;
    column-gap: 32px; } }
.midimg-and-text figure {
  width: 256px;
  height: auto; }
  .midimg-and-text figure img {
    width: 100%;
    height: auto; }
.midimg-and-text h4 {
  margin-top: 0; }
@media (min-width: 768px) {
  .midimg-and-text .text-wrap {
    flex: 1; } }

/*固定ページ用追加スタイリング*/
.mihsubjects h2 {
  border-left: solid 8px #50C4B7;
  border-bottom: none;
  padding: 0 0 0 8px;
  font-size: 18px;
  margin-top: 24px; }
.mihsubjects h3 {
  font-size: 16px;
  border-left: solid 20px #50C4B7;
  padding-left: 8px; }
.mihsubjects .hbigger {
  font-size: 18px; }
.mihsubjects li {
  margin: 0 0 12px 0; }
.mihsubjects table.mytable-redgray th {
  background-color: #E8E7E7;
  color: #09A47E;
  text-align: left; }
  @media (min-width: 768px) {
    .mihsubjects table.mytable-redgray th {
      text-align: center; } }
.mihsubjects table.mytable-twocol td:first-child {
  width: 33.33%; }
.mihsubjects table.mytable-twocol td:not(:first-child) {
  text-align: left; }
.mihsubjects table.mytable-darkgray th {
  background-color: #595959;
  color: white; }
.mihsubjects table.mytable-darkgray td:first-child {
  min-width: 7em; }
.mihsubjects table.mytable-darkgray td:not(:first-child) {
  text-align: left; }
.mihsubjects tr.mytable-textcenter td:not(:first-child) {
  text-align: center; }

ul.strong-bullet {
  padding-left: 0; }
  ul.strong-bullet li {
    list-style: none;
    padding-left: 1.5em;
    position: relative; }
    ul.strong-bullet li::before {
      content: '\f111';
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      position: absolute;
      left: 0;
      color: #50C4B7; }

.sub-h1 {
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 16px;
  color: #50C4B7;
  margin-top: -24px; }

.add-number1::before {
  content: '1'; }

.add-number2::before {
  content: '2'; }

.add-number3::before {
  content: '3'; }

.add-number4::before {
  content: '4'; }

h3.ordered-h3 {
  border-left: none;
  padding: 0; }
  h3.ordered-h3::before {
    display: inline-block;
    text-align: center;
    line-height: 32px;
    width: 32px;
    height: 32px;
    border-radius: 2em;
    color: white;
    background-color: #50C4B7;
    margin-right: 8px; }

/*記述リスト*/
h3.description-header {
  display: block;
  border: none;
  margin: 24px auto 18px auto;
  padding: 6px 0;
  text-align: center;
  background-color: #F9B49E;
  color: white;
  width: 100%;
  max-width: 400px;
  border-radius: 2em; }

dl.dlboxes-items {
  font-size: 14px;
  line-height: 1.8;
  margin: 0; }
  @media (min-width: 768px) {
    dl.dlboxes-items {
      display: flex;
      flex-wrap: wrap;
      column-gap: 14px;
      grid-row-gap: 14px; } }

.dlboxes-item {
  background-color: #EAE7E2;
  padding: 14px;
  border-left: solid 8px #F9B49E; }
  @media (min-width: 768px) {
    .dlboxes-item {
      width: calc(50% - 7px); } }
  .dlboxes-item dt {
    font-weight: bold; }
  .dlboxes-item dd {
    margin-left: 0; }
  .dlboxes-item:not(:last-child) {
    margin-bottom: 14px; }
    @media (min-width: 768px) {
      .dlboxes-item:not(:last-child) {
        margin-bottom: 0; } }

/*企業アイコン*/
.logoicon-items {
  margin-bottom: clamp(24px, 6.4vw, 32px);
  max-width: 494px;
  margin-left: auto;
  margin-right: auto; }
  .logoicon-items .wp-block-group__inner-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 22px;
    grid-row-gap: 24px; }
    .logoicon-items .wp-block-group__inner-container figure {
      width: calc(50% - 11px);
      max-width: 150px;
      margin: 0;
      /*@media (min-width: 558px) and (max-width: 767px) {
        width: calc(25% - 16.5px);
      }*/ }
      @media (min-width: 558px) {
        .logoicon-items .wp-block-group__inner-container figure {
          width: calc(33.33% - 14.66px); } }
      .logoicon-items .wp-block-group__inner-container figure img {
        display: block;
        width: 100%;
        height: auto;
        border: solid 1px #D5D5D5; }

/*クリニックへ相談*/
.logo-call {
  width: 256px;
  text-align: center;
  margin: clamp(24px, 6.4vw, 32px) auto clamp(24px, 6.4vw, 32px) auto; }
  .logo-call figure {
    margin: 0; }
  .logo-call img {
    width: 100%;
    height: auto; }
  .logo-call p {
    font-size: 23px;
    font-weight: bold;
    margin: 0; }
    .logo-call p a {
      color: inherit; }

ul.link-list {
  text-align: center;
  margin: 0;
  padding: 0; }
  ul.link-list li {
    list-style: none;
    font-weight: bold;
    margin-bottom: 4px; }

/*代々木駅からのルート*/
.mih-route h3 i {
  color: #50C4B7; }
.mih-route .route-items {
  display: flex;
  column-gap: 16px;
  flex-wrap: wrap; }
.mih-route .route-item {
  position: relative;
  width: calc(50% - 8px); }
  @media (min-width: 768px) {
    .mih-route .route-item {
      width: calc(33.33% - 10.66px); } }
  .mih-route .route-item a:hover {
    opacity: 1; }
.mih-route figcaption {
  font-size: 16px;
  text-align: left;
  color: #1C1C1C; }
.mih-route p {
  width: 24px;
  height: 24px;
  line-height: 24px;
  margin: 0;
  background-color: #50C4B7;
  color: white;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: -4px;
  left: -4px; }

/*在宅医療*/
.zaitaku-flow {
  display: flex;
  justify-content: center; }
  .zaitaku-flow ol,
  .zaitaku-flow ul {
    list-style: none;
    padding: 0; }
  @media (min-width: 816px) {
    .zaitaku-flow ol {
      display: flex;
      column-gap: 24px; } }
  @media (min-width: 816px) {
    .zaitaku-flow ol > li {
      position: relative; } }
  .zaitaku-flow li {
    margin: 0; }
  .zaitaku-flow .diamond {
    width: 80px;
    height: 80px;
    background-color: #ffb37a;
    transform: rotate(45deg);
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    margin-right: auto; }
    .zaitaku-flow .diamond div {
      transform: rotate(-45deg);
      text-align: center;
      top: 50%;
      left: 50%;
      color: white;
      font-weight: bold;
      font-size: 20px; }
  .zaitaku-flow ul {
    background-color: #ffb37a;
    margin: 32px 0 8px 0;
    position: relative; }
    @media (min-width: 816px) {
      .zaitaku-flow ul br {
        display: none; } }
    .zaitaku-flow ul li {
      padding: 0.5em;
      font-size: 14px;
      font-weight: bold;
      color: white;
      line-height: 1.1;
      height: 48px; }
    .zaitaku-flow ul li::after {
      content: '';
      width: 0;
      height: 0;
      border-left: 1em solid #ffb37a;
      border-top: 24px solid transparent;
      border-bottom: 24px solid transparent;
      position: absolute;
      right: -14px;
      top: 0; }
    .zaitaku-flow ul li::before {
      content: '';
      width: 0;
      height: 0;
      border-left: 1em solid transparent;
      border-top: 24px solid #ffb37a;
      border-bottom: 24px solid #ffb37a;
      position: absolute;
      left: -14px;
      top: 0; }
  .zaitaku-flow li:nth-child(2) .diamond,
  .zaitaku-flow li:nth-child(2) ul {
    background-color: #fe94a6; }
  .zaitaku-flow li:nth-child(2) li::after {
    border-left-color: #fe94a6; }
  .zaitaku-flow li:nth-child(2) li::before {
    border-top-color: #fe94a6;
    border-bottom-color: #fe94a6; }
  .zaitaku-flow li:nth-child(3) .diamond,
  .zaitaku-flow li:nth-child(3) ul {
    background-color: #f78d7c; }
  .zaitaku-flow li:nth-child(3) li::after {
    border-left-color: #f78d7c; }
  .zaitaku-flow li:nth-child(3) li::before {
    border-top-color: #f78d7c;
    border-bottom-color: #f78d7c; }
  .zaitaku-flow li:nth-child(4) .diamond,
  .zaitaku-flow li:nth-child(4) ul {
    background-color: #5dceaf; }
  .zaitaku-flow li:nth-child(4) li::after {
    border-left-color: #5dceaf; }
  .zaitaku-flow li:nth-child(4) li::before {
    border-top-color: #5dceaf;
    border-bottom-color: #5dceaf; }
  .zaitaku-flow .zaitaku-arrow {
    display: flex;
    justify-content: center; }
    @media (min-width: 816px) {
      .zaitaku-flow .zaitaku-arrow {
        transform: rotate(-90deg);
        position: absolute;
        top: 0;
        left: 95%; } }
    .zaitaku-flow .zaitaku-arrow i {
      color: #7f7f7f;
      font-size: 48px;
      margin-bottom: 32px; }
  @media (min-width: 816px) {
    .zaitaku-flow li:nth-child(2) .zaitaku-arrow {
      left: 100%; } }

/*写真3枚*/
.mygallery-3photos .wp-block-group__inner-container {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 16px; }
.mygallery-3photos figure {
  max-width: 300px; }
  .mygallery-3photos figure img {
    width: 100%;
    height: auto; }

/*産業医フォト*/
.mygallery-4photos .wp-block-group__inner-container {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 16px; }
.mygallery-4photos figure {
  max-width: 300px; }
  .mygallery-4photos figure img {
    width: 100%;
    height: auto; }

/*オンライン診療*/
.mih-online figure {
  width: 300px; }
  .mih-online figure img {
    width: 100%;
    height: auto; }
.mih-online figure.qrcode-line {
  width: 212px; }

/*English*/
.page-kakomi {
  border: solid 1px #50C4B7;
  border-radius: 16px;
  padding-left: 16px;
  padding-right: 16px; }

/*フッターバナー追加スタイリング*/
.footerbanner-wrap {
  margin-bottom: clamp(48px, 12.8vw, 73px); }
  @media (min-width: 768px) {
    .footerbanner-wrap {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      column-gap: 32px;
      row-gap: 24px; } }
  .footerbanner-wrap figure {
    max-width: 345px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 16px; }
    @media (min-width: 768px) {
      .footerbanner-wrap figure {
        width: 345px;
        margin: 0; } }
  .footerbanner-wrap img {
    width: 100%;
    height: auto; }
    @media (min-width: 768px) {
      .footerbanner-wrap img {
        margin: 0; } }

/*URL改行*/
body.single-post article {
  word-break: break-all; }

/*固定ページ：テーブル追加スタイリング*/
td.my-table-left {
  text-align: left; }

.mih-jihi h3 {
  margin-top: 2em; }
.mih-jihi h2 {
  margin-top: 2em; }
@media (min-width: 756px) {
  .mih-jihi h3 {
    font-size: 17px; } }

.my-p-to-buttons {
  margin-bottom: 2em; }
  .my-p-to-buttons p {
    display: block;
    margin: 0;
    background-color: #50C4B7;
    color: white;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-weight: bold; }
    .my-p-to-buttons p a {
      color: white; }

.my-anchor-offset {
  margin: 0;
  font-size: 0;
  display: block;
  height: 2rem;
  margin-top: -2rem; }

figure.mytable-jihi-wrap {
  margin-top: 1.5em; }

table.mytable-jihi tr,
table.mytable-jihi th {
  text-align: left !important; }
table.mytable-jihi th {
  padding: 0.5em;
  text-shadow: unset;
  color: white !important;
  background-color: #50C4B7 !important; }
table.mytable-jihi .mytable-jihi-price {
  text-align: center !important;
  background-color: #f5f5dc; }
  table.mytable-jihi .mytable-jihi-price td {
    padding: 0.5em; }
@media (min-width: 756px) {
  table.mytable-jihi .mytable-jihi-price span,
  table.mytable-jihi th span {
    margin-right: 0.5em;
    font-size: 17px; } }

/*追加スタイリング*/
.my--side-effect-box {
  background-color: #DBE7F1;
  padding: 1em;
  margin-top: 1em; }
  .my--side-effect-box h4, .my--side-effect-box p {
    margin: 0; }
  .my--side-effect-box h4,
  .my--side-effect-box p,
  .my--side-effect-box ul {
    font-size: 12px; }
  .my--side-effect-box ul li {
    margin: 0; }

.mytable-jihi-wrap {
  margin-bottom: 32px; }

#selfpaid-index {
  padding-top: 72px;
  margin-top: -72px; }

.mih-jihi h2 {
  font-size: 24px; }

.my--back-to-index {
  text-align: right; }
  .my--back-to-index a {
    display: inline-block;
    color: #1C1C1C;
    border: solid 1px gray;
    padding: 8px 16px;
    font-size: 14px; }

/*.mytable-jihi {
  tr:nth-child(2) {
    td {
      width: 100%!important;
      display: grid;
      grid-template-columns: 1fr 1fr;
      column-gap: 16px;
    }
  }
}*/
