@charset "UTF-8";
/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/
/************************************
** 子テーマ用のスタイルを書く
************************************/
/* 必要ならばここにコードを書く */
/************************************
** ふわっと下から上へ出現
************************************/
.scroll_up {
  opacity: 0;
  transition: 0.8s ease-in-out;
  transform: translateY(3rem);
}
.scroll_up.on {
  opacity: 1;
  transform: translateY(0);
}

/************************************
** ふわっと左から出現
************************************/
.scroll_left {
  filter: alpha(opacity=0);
  opacity: 0;
  transition: 0.8s ease-in-out;
  transform: translateX(-30px);
}
@media screen and (max-width: 480px) {
  .scroll_left {
    transform: translateY(3rem);
  }
}

.scroll_left.on {
  filter: alpha(opacity=100);
  opacity: 1;
  transform: translateX(0) translateY(0);
}

/************************************
** ふわっと右から出現
************************************/
.scroll_right {
  filter: alpha(opacity=0);
  opacity: 0;
  transition: 0.8s ease-in-out;
  transform: translateX(3rem);
}
@media screen and (max-width: 480px) {
  .scroll_right {
    transform: translateY(3rem);
  }
}

.scroll_right.on {
  filter: alpha(opacity=100);
  opacity: 1;
  transform: translateX(0) translateY(0);
}

/************************************
** 拡大
************************************/
.zoom_in {
  filter: alpha(opacity=0);
  opacity: 0;
  transition: 0.8s ease-in-out;
  transform: scale(0.7);
}

.zoom_in.on {
  filter: alpha(opacity=100);
  opacity: 1;
  transform: scale(1);
}

/************************************
** トランジションのスタートを遅延させる
************************************/
.delay_time02 {
  transition-delay: 0.2s;
}
@media screen and (max-width: 834px) {
  .delay_time02 {
    transition-delay: 0;
  }
}

.delay_time04 {
  transition-delay: 0.4s;
}
@media screen and (max-width: 834px) {
  .delay_time04 {
    transition-delay: 0;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  scroll-padding-top: 5rem;
}

body {
  --wp--style--global--content-size: 90rem;
  margin-top: 0;
  overflow-x: hidden;
  font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
  line-height: 150%;
  color: #0C1D29;
  text-align: justify;
  letter-spacing: 0.04em;
}

.main {
  border: 0;
}

a,
div,
span,
p {
  font-weight: 700;
}

a {
  transition: all 0.3s;
}
a:hover {
  color: #6C006C;
}

.widget_recent_entries ul li a:hover,
.widget_categories ul li a:hover,
.widget_archive ul li a:hover,
.widget_pages ul li a:hover,
.widget_meta ul li a:hover,
.widget_rss ul li a:hover,
.widget_nav_menu ul li a:hover,
.navi-in a:hover,
.navi-footer-in a:hover,
.a-wrap:hover,
.comment-reply-link:hover,
.recent-comments .a-wrap:hover .recent-comment-content,
.pagination a:hover,
.pagination-next-link:hover,
.comment-btn:hover,
.pager-links a:hover span,
.pager-links a:hover span,
.menu-drawer a:hover,
.bp-login-widget-register-link a:hover,
.widget_block ul li a:hover {
  background-color: #FAFBFC;
  transition: all 0.5s;
}

.page .date-tags {
  display: none;
}

::-moz-selection {
  color: #FFFFFF;
  background: #1E90FF;
}

::selection {
  color: #FFFFFF;
  background: #1E90FF;
}

.wrap_shadow {
  box-shadow: 0 1rem 1rem 0 rgba(190, 190, 190, 0.4);
}

.decoration_none {
  text-decoration: none;
}

.align_right {
  text-align: right;
}

.align_left {
  text-align: justify;
}

.align_center {
  text-align: center;
}

.align_center_xl {
  text-align: center;
}
@media (width <= 1023px) {
  .align_center_xl {
    text-align: justify;
  }
}

.mb_0 {
  margin-bottom: 0 !important;
}

.mb_10 {
  margin-bottom: 1rem !important;
}

@media (width <= 1023px) {
  .sp_br_span {
    display: inline-block;
  }
}

.archive h1,
.article h1,
.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
  text-align: justify;
  background-color: transparent;
  border: 0;
}

p {
  font-size: 1.6rem;
  line-height: 190%;
  text-align: justify;
}

.article h2 {
  position: relative;
  font-size: 3.2rem;
  color: #003A64;
  text-align: center;
}
@media (width <= 1023px) {
  .article h2 {
    margin-bottom: 2em;
    font-size: 2.8rem;
  }
}
.article h2::before {
  position: absolute;
  bottom: 0.4rem;
  left: calc(50% - 3rem);
  display: inline-block;
  width: 6rem;
  height: 0.4rem;
  content: "";
  background-color: #E2E2E2;
}
@media (width <= 480px) {
  .article h2::before {
    bottom: -0.5rem;
  }
}
.article h2::after {
  position: absolute;
  bottom: 0.4rem;
  left: calc(50% - 3rem);
  display: inline-block;
  width: 3rem;
  height: 0.4rem;
  content: "";
  background-color: #003A64;
}
@media (width <= 480px) {
  .article h2::after {
    bottom: -0.5rem;
  }
}

.article h3 {
  padding-right: 0;
  padding-left: 0;
  font-size: 2.8rem;
  color: #003A64;
}
@media (width <= 1023px) {
  .article h3 {
    font-size: 2.4rem;
  }
}

.article h4 {
  font-size: 2.4rem;
  border-bottom: 0.2rem solid #E2E2E2;
}
@media (width <= 1023px) {
  .article h4 {
    font-size: 2rem;
  }
}

.article h5::before {
  color: #3475A3;
  content: "- ";
}

li::marker {
  color: #003A64;
}

.entry-content th {
  padding: 0.8rem;
  color: #0C1D29;
  background-color: #FFFFFF;
  border: 0.1rem solid #E2E2E2;
  border-right: 0;
  border-left: 0;
}

.entry-content td {
  padding: 0.8rem;
  background-color: #FFFFFF;
  border: 0.1rem solid #E2E2E2;
  border-right: 0;
  border-left: 0;
}

figure.wp-block-table table {
  width: 100%;
}

table th,
table td {
  font-size: 1.6rem;
}
@media (width <= 834px) {
  table th,
  table td {
    padding: 0.6rem;
    font-size: 1.4rem;
  }
}

.scrollable-table th,
.scrollable-table td {
  white-space: normal;
}
@media (width <= 619px) {
  .scrollable-table th,
  .scrollable-table td {
    white-space: nowrap;
  }
}

.price_table th:last-child {
  width: 12rem;
}

.column_container {
  display: flex;
  flex-wrap: wrap;
}

.column_align_right {
  justify-content: flex-end;
}

.column_two {
  width: 50%;
  padding: 0 1.6rem;
}
@media (width <= 834px) {
  .column_two {
    width: 100%;
    padding: 0;
  }
}

.column_three {
  width: 33.3%;
}
@media (width <= 834px) {
  .column_three {
    width: 100%;
  }
}

@media (width <= 834px) {
  .column_order_reverse {
    flex-direction: column-reverse !important;
  }
}

.layout-box {
  -moz-column-gap: 3.2rem;
       column-gap: 3.2rem;
}

.show_pc {
  display: block !important;
}
@media (width <= 1023px) {
  .show_pc {
    display: none !important;
  }
}

.show_sp {
  display: none !important;
}
@media (width <= 1023px) {
  .show_sp {
    display: block !important;
  }
}

.btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 5rem;
  padding: 0.3rem;
  margin: 0.5rem auto;
  font-size: 1.6rem;
  color: #3475A3;
  text-decoration: none;
  white-space: nowrap;
  touch-action: manipulation;
  cursor: pointer;
  background-image: linear-gradient(180deg, #C0E3FD 0%, #004C82 100%);
  border: 0;
  border-radius: 9999px;
  box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
  transition: all 0.3s;
}
.btn:active {
  color: #FFFFFF;
  outline: 0;
  box-shadow: 0 8px 8px 0 rgba(188, 225, 250, 0.4);
  opacity: 1;
  transform: scale(0.9);
}
@media (width <= 1023px) {
  .btn:active {
    color: #3475A3;
    box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
    transform: scale(1);
  }
}
.btn:hover {
  color: #FFFFFF;
  outline: 0;
  box-shadow: 0 8px 8px 0 rgba(188, 225, 250, 0.4);
  opacity: 1;
}
@media (width <= 1023px) {
  .btn:hover {
    color: #3475A3;
    box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
  }
}
.btn:hover span {
  background: none;
}
@media (width <= 1023px) {
  .btn:hover span {
    background-color: #FFFFFF;
  }
}
.btn span {
  width: 100%;
  height: 100%;
  padding: 1.4rem 3.2rem;
  background-color: #FFFFFF;
  border-radius: 9999px;
  transition: all 0.3s;
}
.btn .fas {
  display: none;
}

.btn_fill {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 5rem;
  padding: 0.3rem;
  margin: 0.5rem auto;
  font-size: 1.6rem;
  color: #FFFFFF;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  touch-action: manipulation;
  cursor: pointer;
  background-image: linear-gradient(180deg, #C0E3FD 0%, #004C82 100%);
  border: 0;
  border-radius: 9999px;
  box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
  transition: all 0.3s;
}
.btn_fill:active {
  color: #3475A3;
  outline: 0;
  box-shadow: 0 8px 8px 0 rgba(188, 225, 250, 0.4);
  opacity: 1;
  transform: scale(0.9);
}
@media (width <= 1023px) {
  .btn_fill:active {
    color: #FFFFFF;
    box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
    transform: scale(1);
  }
}
.btn_fill:hover {
  color: #3475A3;
  outline: 0;
  box-shadow: 0 8px 8px 0 rgba(188, 225, 250, 0.4);
  opacity: 1;
}
@media (width <= 1023px) {
  .btn_fill:hover {
    color: #FFFFFF;
    box-shadow: 0 4px 4px 0 rgba(188, 225, 250, 0.4);
  }
}
.btn_fill:hover span {
  background-color: #FFFFFF;
}
@media (width <= 1023px) {
  .btn_fill:hover span {
    background: linear-gradient(180deg, #C0E3FD 0%, #004C82 100%);
  }
}
.btn_fill span {
  width: 100%;
  height: 100%;
  padding: 1.3rem 3.2rem;
  background: none;
  border-radius: 9999px;
  transition: all 0.3s;
}
.btn_fill .fas {
  display: none;
}

.btn_long {
  width: 100%;
  max-width: 60rem !important;
}

.btn_pointer_none {
  pointer-events: none;
  opacity: 0.5;
}

.fa-external-link-alt {
  position: relative;
}
.fa-external-link-alt::before {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: middle;
  content: "";
  background-image: url("/wp-content/uploads/2023/01/open_in_new.svg");
  background-size: contain;
}

.breadcrumb,
.breadcrumb a {
  color: #003A64;
}

.go-to-top span::before {
  width: 3rem;
  height: 3rem;
  color: #003A64;
}

.go-to-top-button {
  width: 5rem;
  height: 5rem;
  background-color: #FFFFFF;
  border: 0.2rem solid #003A64;
  border-radius: 50%;
}
.go-to-top-button:hover {
  background-color: #003A64;
  opacity: 1;
}
.go-to-top-button:hover span::before {
  color: #EEEEEE;
}

.pagination-next {
  display: none;
}

.pagination .page-numbers {
  border: 0;
  border-radius: 9999px;
}
.pagination .page-numbers .fa-angle-left {
  position: relative;
}
.pagination .page-numbers .fa-angle-left::before {
  color: #005B95;
}
.pagination .page-numbers .fa-angle-right {
  position: relative;
}
.pagination .page-numbers .fa-angle-right::before {
  color: #005B95;
}
.pagination .current {
  color: #FFFFFF;
  background-color: #003A64;
}

@media (width <= 480px) {
  .timeline li.timeline-item {
    border-left: 0.3rem solid #D4D4D4;
  }
}
.timeline .timeline-item-content {
  border-left: 0.3rem solid #D4D4D4;
}
@media (width <= 480px) {
  .timeline .timeline-item-content {
    border-left: 0;
  }
}
.timeline .timeline-item-label {
  color: #003A64;
}

.toc {
  background-color: #FFFFFF;
  border: 0.3rem solid #3475A3;
  border-radius: 0.4rem;
}

/************************************
** ヘッダー・ナビ
************************************/
.header-in {
  width: auto;
}

.tagline {
  padding-left: 1rem;
  margin: 0;
  font-size: 1.2rem;
  color: #FFFFFF;
  text-align: justify;
  letter-spacing: 0.04%;
  background: #003A64;
}
@media (width <= 1023px) {
  .tagline {
    display: none;
  }
}

.header_info {
  position: absolute;
  top: 4rem;
  right: 0;
  display: flex;
}

.reserve_section .btn_fill {
  display: flex;
  font-size: 2rem;
}
.reserve_section .btn_fill span {
  padding: 1.8rem 3.2rem;
}

.tel_section {
  font-family: Roboto, "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
}
.tel_section .btn {
  display: flex;
  font-size: 3.2rem;
}
.tel_section .btn span::before {
  position: relative;
  top: 0.3rem;
  display: inline-block;
  width: 3rem;
  height: 3rem;
  padding-top: 1rem;
  margin-right: 0.6rem;
  content: "";
  background-image: url("/wp-content/uploads/2023/11/phone.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: all 1s;
}
.tel_section .btn:hover span::before {
  background-image: url("/wp-content/uploads/2023/11/phone_w.svg");
}
@media (width <= 1023px) {
  .tel_section .btn:hover span::before {
    background-image: url("/wp-content/uploads/2023/11/phone.svg");
  }
}

.fixed-header {
  background-color: #FFFFFF;
}

.navi {
  box-sizing: border-box;
  background-color: #FFFFFF;
  border-bottom: 0.3rem solid #EEEEEE;
}
.navi .navi-in > ul > li {
  width: auto;
  height: 6rem;
  padding: 0 1rem;
  margin-bottom: -0.3rem;
}
.navi .navi-in > ul > li .item-label {
  margin-top: 3rem;
  margin-bottom: 0.5rem;
}
.navi .navi-in > ul > li .item-description {
  margin-bottom: 0.5rem;
  font-family: Roboto, "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
  font-size: 1.1rem;
  font-weight: 500;
  color: #3475A3;
  opacity: 1;
}
.navi .navi-in > ul > li::after {
  position: absolute;
  top: 5.7rem;
  left: 0;
  width: 100%;
  height: 0.3rem;
  content: "";
  background: #76BBEC;
  transition: transform 0.3s;
  transform: scale(0, 1);
  transform-origin: center top;
}
.navi .navi-in > ul > li:hover::after {
  transform: scale(1, 1);
}
.navi .navi-in > ul .sub-menu {
  top: 6rem;
  left: 0;
  background-color: #FFFFFF;
  width: 280px;
}
.navi .navi-in > ul .sub-menu .item-label {
  margin-top: 1rem;
}
.navi .navi-in a {
  color: #0C1D29;
}
.navi .navi-in .fa-angle-down::before {
  position: relative;
  top: 0.6rem;
  left: 3rem;
  box-sizing: border-box;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  content: "";
  background-image: url("/wp-content/uploads/2023/05/arrow_right.svg");
  background-size: contain;
  rotate: 90deg;
}

.logo-header {
  width: auto;
  height: 11rem;
  text-align: left;
}
.logo-header .site-logo-image {
  height: 8rem;
}
@media (width <= 1100px) {
  .logo-header .site-logo-image {
    height: 6rem;
  }
}

@media (width <= 1023px) {
  .header_info {
    display: none;
  }
  .mobile-header-menu-buttons_scroll {
    top: 0;
  }
  .logo-menu-button img {
    width: 20rem;
    margin: 1rem;
    margin-left: 2rem;
  }
  .has-logo-button .navi-menu-button {
    width: 5.5rem;
    height: 5.5rem;
    margin: 1rem;
    background: linear-gradient(180deg, #C0E3FD 0%, #004C82 100%);
  }
  .fa-bars::before {
    display: inline-block;
    width: 3rem;
    height: 3rem;
    margin-top: 0.2rem;
    vertical-align: middle;
    content: "";
    background-image: url("/wp-content/uploads/2023/11/menu.svg");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .mobile-menu-buttons .navi-menu-caption {
    color: #FFFFFF;
    opacity: 1;
  }
  .navi-menu-content {
    right: 0;
    left: auto;
    background-color: #003A64;
    transition: all 0.3s;
    transform: translateX(101%);
  }
  .menu-drawer a {
    font-size: 1.6rem;
    color: #FFFFFF;
  }
  .menu-close-button {
    padding-top: 1rem;
    padding-right: 1rem;
    text-align: right;
  }
  .menu-close-button .fa-times::before {
    display: inline-block;
    width: 5rem;
    height: 5rem;
    vertical-align: middle;
    content: "";
    background-image: url("/wp-content/uploads/2023/11/x.svg");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
/************************************
** モバイルフッターボタン
************************************/
.mobile-footer-menu-buttons li {
  border-right: 0.1rem solid #3475A3;
}
.mobile-footer-menu-buttons li .custom-menu-icon span::before,
.mobile-footer-menu-buttons li .top-menu-icon span::before {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-size: contain;
}
.mobile-footer-menu-buttons li:first-child .custom-menu-icon span::before {
  content: "";
  background-image: url("/wp-content/uploads/2023/11/phone.svg");
}
.mobile-footer-menu-buttons li:nth-child(2) .custom-menu-icon span::before {
  content: "";
  background-image: url("/wp-content/uploads/2023/11/network.svg");
}
.mobile-footer-menu-buttons li:nth-child(3) .custom-menu-icon span::before {
  content: "";
  background-image: url("/wp-content/uploads/2024/03/assignment.svg");
}
.mobile-footer-menu-buttons li:last-child {
  border-right: 0;
}
.mobile-footer-menu-buttons li:last-child .top-menu-icon span::before {
  color: #3475A3;
}
.mobile-footer-menu-buttons li .custom-menu-caption,
.mobile-footer-menu-buttons li .top-menu-caption {
  color: #3475A3;
}

/************************************
** フッター
************************************/
.widget-content-bottom,
.content-bottom {
  margin-top: 0;
  margin-bottom: 0 !important;
}

.footer {
  padding-top: 10rem;
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  margin: 0;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background: linear-gradient(#FFFFFF 0%, #EBEBEB 100%);
}
.footer p {
  margin-bottom: 2rem;
}
.footer .footer-in {
  width: 90rem;
}
@media (width <= 1023px) {
  .footer .footer-in {
    width: auto;
    padding: 0 5vw;
  }
}
.footer .column_container {
  margin-bottom: 5rem;
}
.footer .footer_logo {
  max-height: 10rem;
  margin-bottom: 2rem;
}
.footer .footer-bottom {
  margin-bottom: 6.4rem;
  font-size: 1.2rem;
}
.footer .footer_section_menu {
  padding-top: 6.4rem;
  font-size: 1.6rem;
}
@media (width <= 834px) {
  .footer .footer_section_menu {
    font-size: 1.4rem;
  }
  .footer .footer_section_menu li {
    padding-top: 2rem;
  }
}
.footer .footer_section_menu ul {
  padding-left: 0;
}
.footer .footer_section_menu ul li {
  display: inline-block;
  padding: 0.3rem;
}
@media (width <= 834px) {
  .footer .footer_section_menu ul li {
    display: block;
    padding-top: 1rem;
  }
}
.footer .footer_section_menu a {
  color: #0C1D29;
  text-decoration: none;
}

.info_hours_section {
  margin-bottom: 5rem;
}
.info_hours_section .recess {
  padding: 0.2rem 0.5rem;
  margin-right: 1rem;
  color: #FFFFFF;
  background-color: #003A64;
}

.info_hours {
  max-width: 60rem;
  margin: 0 auto 2rem;
  overflow: hidden;
  text-align: center;
}
.info_hours table {
  margin-bottom: 0;
}
.info_hours tbody {
  border: 0.1rem solid #E2E2E2;
}
.info_hours tbody tr th,
.info_hours tbody tr td {
  padding: 1rem 0;
  background-color: #FFFFFF;
  border: 0;
  border-bottom: 0.1rem solid #E2E2E2;
}
.info_hours tbody tr:first-child th,
.info_hours tbody tr:first-child td {
  color: #FFFFFF;
  background-color: #003A64;
}
.info_hours tbody tr:first-child th {
  width: 40%;
}
.info_hours tbody tr:last-child th,
.info_hours tbody tr:last-child td {
  border: 0;
}

/************************************
** トップ
************************************/
.front-top-page .content {
  margin-top: 0;
}
.front-top-page #main .entry-title {
  display: none;
}
.front-top-page .main {
  padding-top: 0;
  padding-bottom: 0;
  border-top: 0;
}
.front-top-page .article {
  margin-bottom: 0;
}
.front-top-page .entry-content {
  margin-top: 0;
  margin-bottom: 0;
}
.front-top-page section {
  margin-bottom: 0 !important;
}

/************************************
** トップ ヒーロー
************************************/
.front-top-page .n2_clear {
  margin-bottom: 0;
}
@media (width <= 1023px) {
  .front-top-page .n2_clear {
    margin-top: 7.5rem;
    margin-bottom: -7.5rem;
  }
}

/************************************
** トップ 診療時間・アクセス
************************************/
.front-top-page .info_section {
  padding: 4rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-color: #FAFBFC;
}
.front-top-page .info_section .info_hours_section {
  margin-bottom: 3rem;
}
@media (width <= 834px) {
  .front-top-page .info_section .info_hours_section {
    margin-bottom: 3rem;
  }
}

/************************************
** トップ お知らせ
************************************/
.front-top-page .news_section {
  padding: 2rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-color: #003A64;
}
.front-top-page .news_section .info-list {
  padding: 1rem 2rem;
  background-color: #FFFFFF;
  border: 0;
  border-radius: 0;
}
.front-top-page .news_section .info-list .info-list-caption {
  display: none;
}
.front-top-page .news_section .info-list .info-list-item-meta {
  opacity: 1;
}
.front-top-page .news_section .info-list .entry-category {
  font-size: 1.2rem;
  color: #3475A3;
  border: 0.1rem solid #3475A3;
  border-radius: 9999px;
}
.front-top-page .news_section .info-list .info-list-item {
  border-bottom: 0.1rem solid #E2E2E2;
}
.front-top-page .news_section .info-list .info-list-item:last-child {
  border-bottom: 0;
}

/************************************
** トップ 採用
************************************/
/************************************
** トップ クリニックの特徴
************************************/
.front-top-page .feature_section {
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-image: url("/wp-content/uploads/2023/11/bg1.webp");
  background-position: right;
}
.front-top-page .feature_section > div h3 {
  position: relative;
  top: -9.8rem;
  left: 1rem;
  width: calc(100% - 1rem);
  height: 5rem;
  margin-bottom: 0;
}
.front-top-page .feature_section > div h3::before {
  font-family: Roboto, "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
  font-size: 72px;
  font-weight: 700;
  white-space: pre;
  content: "";
  background: linear-gradient(180deg, rgba(192, 227, 253, 0.7) 0%, rgba(0, 76, 130, 0.7) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.front-top-page .feature_section > div p {
  padding: 1rem;
}
.front-top-page .feature_section > div:nth-of-type(1) > div:nth-of-type(1) h3::before {
  content: "01\a";
}
.front-top-page .feature_section > div:nth-of-type(1) > div:nth-of-type(2) h3::before {
  content: "02\a";
}
.front-top-page .feature_section > div:nth-of-type(2) > div:nth-of-type(1) h3::before {
  content: "03\a";
}
.front-top-page .feature_section > div:nth-of-type(2) > div:nth-of-type(2) h3::before {
  content: "04\a";
}

/************************************
** トップ 診療案内
************************************/
.front-top-page .treatment_section {
  position: relative;
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-color: #FFFFFF;
}
.front-top-page .treatment_section::before {
  position: absolute;
  top: 50rem;
  right: 0;
  z-index: 0;
  width: 90vw;
  height: 155rem;
  content: "";
  background: #F3F4F6;
}
@media (width <= 1023px) {
  .front-top-page .treatment_section::before {
    content: none;
  }
}
.front-top-page .treatment_section > p:first-of-type {
  max-width: 67rem;
  line-height: 300%;
}
.front-top-page .treatment_section .treatment_wrap {
  position: relative;
  height: 170rem;
}
@media (width <= 1023px) {
  .front-top-page .treatment_section .treatment_wrap {
    height: auto;
  }
}
.front-top-page .treatment_section .treatment_wrap figure {
  position: absolute;
  z-index: 1;
}
@media (width <= 1023px) {
  .front-top-page .treatment_section .treatment_wrap figure {
    position: static;
  }
}
.front-top-page .treatment_section .treatment_wrap figure img {
  width: 70vw;
  height: 40vw;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 70rem;
}
@media (width <= 1023px) {
  .front-top-page .treatment_section .treatment_wrap figure img {
    width: 100%;
    height: auto;
    min-height: none;
    text-align: center;
  }
}
.front-top-page .treatment_section .treatment_wrap figure:nth-of-type(1) {
  top: 15rem;
  left: calc(-50vw + 45rem);
}
.front-top-page .treatment_section .treatment_wrap figure:nth-of-type(2) {
  top: 88rem;
  right: calc(-50vw + 45rem);
}
.front-top-page .treatment_section .treatment_wrap .treatment_card {
  position: relative;
  z-index: 1;
  max-width: 50rem;
  padding: 3rem 4rem;
  background-color: #FFFFFF;
  border: 0.1rem solid #C0E3FD;
  outline: 2.6rem solid #003A64;
}
@media (width <= 1023px) {
  .front-top-page .treatment_section .treatment_wrap .treatment_card {
    position: static;
    padding: 0 1rem;
    margin-bottom: 6rem;
    background-color: transparent;
    border: 0;
    outline: 0;
  }
}
.front-top-page .treatment_section .treatment_wrap .treatment_card h3 {
  margin-bottom: 2rem;
}
.front-top-page .treatment_section .treatment_wrap .treatment_card:nth-of-type(1) {
  top: min(10vw + 18rem, 44rem);
  left: 15vw;
}
.front-top-page .treatment_section .treatment_wrap .treatment_card:nth-of-type(2) {
  top: min(10vw + 54rem, 80rem);
  right: 15vw;
}

/************************************
** トップ 診療方針
************************************/
.front-top-page .policy_section {
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  color: #FFFFFF;
  background-color: #003A64;
}
.front-top-page .policy_section h2 {
  color: #FFFFFF;
}
.front-top-page .policy_section h2::after {
  background-color: #3475A3;
}
.front-top-page .policy_section > p:first-of-type {
  margin-bottom: 7rem;
  font-size: 2.4rem;
}
@media (width <= 1023px) {
  .front-top-page .policy_section > p:first-of-type {
    font-size: 2rem;
  }
}
.front-top-page .policy_section h3 {
  padding-top: 0;
  margin-bottom: 2rem;
  color: #FFFFFF;
}
.front-top-page .policy_section .wp-block-cocoon-blocks-column-2 {
  align-items: center !important;
  margin-bottom: 4rem;
}
@media (width <= 834px) {
  .front-top-page .policy_section .wp-block-cocoon-blocks-column-2:nth-of-type(2) .column-left {
    margin-bottom: 1rem;
  }
}
.front-top-page .policy_section .wp-block-cocoon-blocks-column-2 .column-right {
  padding-right: 0.2rem;
  padding-left: 2.8rem;
  border-left: 0.4rem solid #3475A3;
}
@media (width <= 834px) {
  .front-top-page .policy_section .wp-block-cocoon-blocks-column-2 .column-right {
    padding-left: 0;
    border: 0;
  }
  .front-top-page .policy_section .wp-block-cocoon-blocks-column-2 .column-right::before {
    position: relative;
    top: -3rem;
    left: calc(50vw - 8.6rem);
    display: inline-block;
    width: 14rem;
    height: 0.4rem;
    content: "";
    background-color: #3475A3;
  }
}

/************************************
** トップ ご挨拶
************************************/
.front-top-page .greeting_section {
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-image: url("/wp-content/uploads/2023/11/bg1.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.front-top-page .greeting_section .greeting_wrap {
  background-color: rgba(255, 255, 255, 0.7);
}
.front-top-page .greeting_section .greeting_wrap .column-right {
  padding: 4.5%;
}
@media (width <= 1023px) {
  .front-top-page .greeting_section .greeting_wrap .column-right {
    padding-bottom: calc(4.5% + 4rem);
  }
}
.front-top-page .greeting_section .greeting_wrap img {
  aspect-ratio: 2/3;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (width <= 1023px) {
  .front-top-page .greeting_section .greeting_wrap img {
    aspect-ratio: 5/9;
  }
}
@media (width <= 834px) {
  .front-top-page .greeting_section .greeting_wrap img {
    aspect-ratio: 3/4;
  }
}

/************************************
** 下層固定ページ
************************************/
body:not(.page.home, .single-post, .single-blog, .archive) .content {
  margin-top: 0;
  background-color: #FAFBFC;
}
body:not(.page.home, .single-post, .single-blog, .archive) .content .main {
  padding-top: 0;
  background-color: transparent;
}
body:not(.page.home, .single-post, .single-blog, .archive) .content .wrap {
  max-width: 90rem;
}
body:not(.page.home, .single-post, .single-blog, .archive) .content h2 {
  padding-top: 5rem;
}
body:not(.page.home, .single-post, .single-blog, .archive) .content h2:first-child {
  padding-top: 10rem;
}
body:not(.page.home, .single-post, .single-blog, .archive) .entry-header {
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-image: url("/wp-content/uploads/2023/11/bg1.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: lighten;
}
@media (width <= 1023px) {
  body:not(.page.home, .single-post, .single-blog, .archive) .entry-header {
    padding: 14rem calc(50vw - 50%) 5rem;
  }
}
body:not(.page.home, .single-post, .single-blog, .archive) .entry-header .entry-title {
  font-size: 3.6rem;
  text-align: center;
}
@media (width <= 1023px) {
  body:not(.page.home, .single-post, .single-blog, .archive) .entry-header .entry-title {
    font-size: 3.2rem;
  }
}
body:not(.page.home, .single-post, .single-blog, .archive) .cover_bg2 {
  padding: 10rem calc(50vw - 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background: #EEEEEE;
}
body:not(.page.home, .single-post, .single-blog, .archive) .blank-box {
  border-radius: 0;
}

/************************************
** お知らせ
************************************/
.single-post .content,
.single-blog .content,
.archive .content {
  padding: 10rem 2rem;
  margin-top: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='40' height='40' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(135)'%3E%3Crect width='100%25' height='100%25' fill='rgba(255, 255, 255,1)'/%3E%3Cpath d='M0 18h40v4h-40z' fill='rgba(235, 248, 255,0.49)' filter='url(%23filter-doodad-1)'/%3E%3Cpath d='M-40 18h20l3 2l-3 2h-20l3-2zM0 18h20l3 2l-3 2h-20l3-2z' fill='rgba(237, 242, 247,0.49)' filter='url(%23filter-doodad-2)'/%3E%3C/pattern%3E%3Cfilter id='filter-doodad-1'%3E%3CfeTurbulence baseFrequency='0.2' numOctaves='2' type='fractalNoise' result='result1'/%3E%3CfeDisplacementMap in2='result1' scale='0' result='result2' xChannelSelector='R' in='SourceGraphic'/%3E%3CfeComposite in2='result2' in='SourceGraphic' operator='atop' result='fbSourceGraphic'/%3E%3C/filter%3E%3Cfilter id='filter-doodad-2'%3E%3CfeTurbulence baseFrequency='0' numOctaves='2' type='fractalNoise' result='result1'/%3E%3CfeDisplacementMap in2='result1' scale='0' result='result2' xChannelSelector='R' in='SourceGraphic'/%3E%3CfeComposite in2='result2' in='SourceGraphic' operator='atop' result='fbSourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E ");
  background-repeat: repeat;
}
.single-post .content .main,
.single-blog .content .main,
.archive .content .main {
  padding: 2rem min(10rem, 5vw);
  background-color: #FFFFFF;
  border-radius: 0;
  box-shadow: 0 0.5rem 0.5rem 0 rgba(204, 209, 212, 0.4);
}
@media (width <= 1023px) {
  .single-post .content .main,
  .single-blog .content .main,
  .archive .content .main {
    padding: 2rem 3vw;
  }
}
.single-post .content h1,
.single-blog .content h1,
.archive .content h1 {
  color: #003A64;
}
.single-post .entry-card-title,
.single-blog .entry-card-title,
.archive .entry-card-title {
  color: #0C1D29;
}
.single-post .archive-title span,
.single-blog .archive-title span,
.archive .archive-title span {
  margin: 0;
}
.single-post .archive-title span::before,
.single-blog .archive-title span::before,
.archive .archive-title span::before {
  content: "";
}
.single-post .sidebar,
.single-blog .sidebar,
.archive .sidebar {
  background-color: transparent;
}
.single-post .sidebar h2,
.single-post .sidebar h3,
.single-blog .sidebar h2,
.single-blog .sidebar h3,
.archive .sidebar h2,
.archive .sidebar h3 {
  color: #FFFFFF;
  background-color: #003A64;
  border-radius: 0;
}
.single-post .sidebar h2::before,
.single-post .sidebar h3::before,
.single-blog .sidebar h2::before,
.single-blog .sidebar h3::before,
.archive .sidebar h2::before,
.archive .sidebar h3::before {
  content: none;
}
.single-post .sidebar ul li a,
.single-blog .sidebar ul li a,
.archive .sidebar ul li a {
  font-size: 1.6rem;
  color: #0C1D29;
}
.single-post .post-date,
.single-blog .post-date,
.archive .post-date {
  color: #003A64;
}
.single-post .entry-card-thumb,
.single-blog .entry-card-thumb,
.archive .entry-card-thumb {
  display: none;
}
.single-post .entry-card-content,
.single-blog .entry-card-content,
.archive .entry-card-content {
  margin-left: 0;
}
@media (width <= 834px) {
  .single-post .entry-card-content,
  .single-blog .entry-card-content,
  .archive .entry-card-content {
    padding-top: 1.2rem;
  }
}

.single-post .card-thumb,
.single-blog .card-thumb {
  display: none;
}
.single-post .fa-chevron-left::before,
.single-post .fa-chevron-right::before,
.single-blog .fa-chevron-left::before,
.single-blog .fa-chevron-right::before {
  color: #003A64;
}
.single-post .prev-post-title,
.single-post .next-post-title,
.single-blog .prev-post-title,
.single-blog .next-post-title {
  color: #0C1D29;
}
.single-post .cat-link,
.single-blog .cat-link {
  background-color: #3475A3;
}

/************************************
** TOP公開時削除項目
************************************//*# sourceMappingURL=style.css.map */