@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lexend+Exa:wght@500&family=Lobster&family=Noto+Sans+JP:wght@400;600;700;900&family=Noto+Serif+JP:wght@400;600;900&display=swap");
/***********************************************************************
media queries setting
**********************************************************************/
/***********************************************************************
variable
**********************************************************************/
/*font*/
/*color*/
/***********************************************************************
reset
**********************************************************************/
* {
  margin: 0;
  padding: 0; }

html, body {
  -webkit-text-size-adjust: 100%; }

body {
  color: #595757;
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
  font-weight: 600;
  font-size: 14px;
  overflow-x: hidden;
  position: relative;
  line-height: 1.7; }

/*
.pace-running .wrap{
    display: none;
}
*/
::selection {
  background: #CC9D6C;
  color: #fff; }

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, table, th, td, img,
article, footer, header, nav, section {
  margin: 0;
  padding: 0;
  border: none;
  font-feature-settings: "palt";
  list-style-type: none; }

h1, h2, h3, h4, h5, h6 {
  color: #5A5757;
  font-weight: 600; }

th {
  font-weight: normal;
  text-align: inherit; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 100%;
  /*font-family: "メイリオ", "Meiryo", sans-serif;*/ }

select {
  cursor: pointer; }

select::-ms-expand {
  display: none; }

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  outline: none;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges; }

*:focus {
  outline: none; }

img[src$=".svg"] {
  width: 100%; }

hr {
  display: none; }

a {
  color: inherit;
  text-decoration: none;
  outline: none; }
  a:hover {
    color: inherit;
    opacity: .7; }

/* set html5 elements to block */
article, footer, header, nav, section {
  display: block; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%; }

strong {
  color: inherit; }

.pc {
  display: block; }
  @media (max-width: 768px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media (max-width: 768px) {
    .sp {
      display: block; } }

.sp-nobr br {
  display: block; }
  @media (max-width: 768px) {
    .sp-nobr br {
      display: none; } }

ul {
  font-size: 0; }
  ul li {
    font-size: 16px; }
  @media (max-width: 768px) {
    ul li {
      font-size: 14px; } }

p {
  font-size: 16px;
  line-height: 1.8; }
  @media (max-width: 768px) {
    p {
      font-size: 12px;
      line-height: 1.8; } }

.columns.is-variable.is-10-tablet {
  --columnGap: 4.5%; }

/********************************************************************************
default
********************************************************************************/
.container {
  padding-left: 20px;
  padding-right: 20px; }
  @media (max-width: 768px) {
    .container {
      padding-left: 25px;
      padding-right: 25px; } }

section {
  margin-bottom: 0px; }

.columns.reverse-row-order {
  flex-direction: row-reverse; }

.inner {
  margin: 0 auto;
  /*max-width: 1200px;*/
  width: 90%; }

.message {
  background: none; }

.more-btn {
  text-align: center; }
  .more-btn a {
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    padding: 11px 25px 13px;
    position: relative;
    color: white;
    background-color: #5A5757;
    border-radius: 50px;
    transition: .5s;
    line-height: 1;
    box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.35);
    letter-spacing: 1px;
    opacity: 1;
    transition: .3s; }
    @media (max-width: 768px) {
      .more-btn a {
        font-size: 13px;
        padding: 8px 15px 10px; } }
    .more-btn a:hover {
      opacity: .7; }
    .more-btn a + a {
      margin-left: 20px; }
      @media (max-width: 768px) {
        .more-btn a + a {
          margin-left: 10px; } }
    .more-btn a.gray {
      background-color: #5A5757; }
    .more-btn a.blue {
      background-color: #59809e; }
    .more-btn a.orange {
      background-color: #CC9D6C; }
    .more-btn a.green {
      background-color: #779276; }
    .more-btn a.pink {
      background-color: #D0A7C4; }
  .more-btn.blocked a {
    display: block; }
  .more-btn.bordered a {
    color: #5A5757;
    border: 3px solid #5A5757;
    background-color: white; }
  .more-btn.square {
    padding: 20px 0; }
    .more-btn.square a {
      border-radius: 0;
      font-size: 20px;
      text-align: center;
      padding: 20px 30px 20px 30px;
      min-width: 25em;
      border: 1px solid #5A5757; }
      @media (max-width: 768px) {
        .more-btn.square a {
          font-size: 15px;
          padding: 15px 20px;
          min-width: 0;
          width: 100%; } }
      .more-btn.square a::after {
        content: '\f0a9'; }
        @media (max-width: 768px) {
          .more-btn.square a::after {
            top: 15px;
            right: 20px; } }

.scroll-box {
  overflow-x: scroll;
  margin-bottom: 0px;
  padding-bottom: 12px;
  /*&::-webkit-scrollbar-track{
  	background: rgba(255,255,255,0.4);
  }*/ }
  @media (max-width: 768px) {
    .scroll-box {
      margin-bottom: 0px; } }
  .scroll-box table {
    margin-bottom: 0 !important; }
  .scroll-box::-webkit-scrollbar {
    height: 12px; }
  .scroll-box::-webkit-scrollbar-thumb {
    background: #ccc; }

@media (max-width: 768px) {
  .page-title {
    font-size: 22px;
    margin-bottom: 0px;
    padding: 15px 5% 15px; } }

.breadcrumb {
  padding: 10px 0px 20px;
  margin-bottom: 0 !important; }
  @media (max-width: 768px) {
    .breadcrumb {
      display: none; } }
  .breadcrumb li {
    color: #5A5757;
    display: inline-block; }
    .breadcrumb li:before {
      content: "" !important; }
    .breadcrumb li a {
      color: #000;
      display: inline-block;
      padding-left: 0;
      padding-right: 42px;
      position: relative; }
      .breadcrumb li a::after {
        content: "＞";
        position: absolute;
        right: 9px;
        top: 0; }

.school-contact-box {
  background: #5A5757;
  padding: 35px 0; }
  @media (max-width: 768px) {
    .school-contact-box {
      padding: 20px 0; } }
  .school-contact-box .inner {
    display: flex;
    padding-top: 0 !important; }
    @media (max-width: 768px) {
      .school-contact-box .inner {
        display: block; } }
    .school-contact-box .inner div {
      width: 32%; }
      @media (max-width: 768px) {
        .school-contact-box .inner div {
          width: 100%; } }
      .school-contact-box .inner div a {
        background: linear-gradient(180deg, #fff 0%, #DEEBEF 90%, #F0F6F8 100%);
        border-radius: 45px;
        box-sizing: border-box;
        color: #000;
        display: inline-block;
        font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
        font-weight: 600;
        font-size: 21px;
        padding: 28px 10px;
        text-align: center;
        width: 100%; }
        @media (max-width: 768px) {
          .school-contact-box .inner div a {
            padding: 20px 10px; } }
        .school-contact-box .inner div a span {
          padding-left: 60px;
          position: relative; }
          @media (max-width: 768px) {
            .school-contact-box .inner div a span {
              padding-left: 45px; } }
          .school-contact-box .inner div a span::before {
            content: "";
            margin: auto;
            position: absolute;
            bottom: 0;
            left: 0;
            top: 0; }
      .school-contact-box .inner div:not(:last-child) {
        margin-right: 2%; }
        @media (max-width: 768px) {
          .school-contact-box .inner div:not(:last-child) {
            margin-bottom: 15px;
            margin-right: 0; } }
      .school-contact-box .inner div.admission-btn span::before {
        background: url("../images/common/admission-icon.svg") no-repeat center/contain;
        height: 47px;
        width: 47px; }
        @media (max-width: 768px) {
          .school-contact-box .inner div.admission-btn span::before {
            height: 35px;
            width: 35px; } }
      .school-contact-box .inner div.request-btn span::before {
        background: url("../images/common/request-icon.svg") no-repeat center/contain;
        height: 47px;
        width: 43px; }
        @media (max-width: 768px) {
          .school-contact-box .inner div.request-btn span::before {
            height: 35px;
            width: 32px; } }
      .school-contact-box .inner div.contact-btn span::before {
        background: url("../images/common/contact-icon.svg") no-repeat center/contain;
        height: 32px;
        width: 47px; }
        @media (max-width: 768px) {
          .school-contact-box .inner div.contact-btn span::before {
            height: 24px;
            width: 35px; } }

#page-content .mb-0 {
  margin-bottom: 0 !important; }
#page-content .lh-2 {
  line-height: 2 !important; }
#page-content .has-huge-font-size {
  font-size: 50px !important;
  line-height: 1.35; }
  @media (max-width: 768px) {
    #page-content .has-huge-font-size {
      font-size: 35px !important; } }
  #page-content .has-huge-font-size li {
    font-size: inherit !important; }
#page-content .has-large-font-size {
  font-size: 36px !important;
  line-height: 1.35; }
  @media (max-width: 768px) {
    #page-content .has-large-font-size {
      font-size: 25px !important; } }
  #page-content .has-large-font-size li {
    font-size: inherit !important; }
#page-content .has-medium-font-size {
  font-size: 20px !important;
  line-height: 1.35; }
  @media (max-width: 768px) {
    #page-content .has-medium-font-size {
      font-size: 18px !important; } }
  #page-content .has-medium-font-size li {
    font-size: inherit !important; }
#page-content .has-normal-font-size {
  font-size: 16px; }
  @media (max-width: 768px) {
    #page-content .has-normal-font-size {
      font-size: 13px; } }
#page-content .has-small-font-size {
  font-size: 13px; }
  @media (max-width: 768px) {
    #page-content .has-small-font-size {
      font-size: 11px; } }
#page-content .wp-block-quote {
  background: #E2E8FA;
  margin-bottom: 10px;
  padding: 30px 50px; }
  @media (max-width: 768px) {
    #page-content .wp-block-quote {
      padding: 20px; } }
  #page-content .wp-block-quote p {
    margin-bottom: 0 !important; }
  #page-content .wp-block-quote ul {
    border-top: 1px solid #5A5757;
    padding-top: 15px;
    margin-bottom: 0 !important; }
    #page-content .wp-block-quote ul li {
      font-size: 16px;
      padding-left: 20px;
      position: relative; }
      #page-content .wp-block-quote ul li::before {
        color: #5A5757;
        content: "■";
        position: absolute;
        left: 0;
        top: 0; }
#page-content hr {
  display: block;
  height: 1px;
  border-bottom: none !important; }
#page-content .wp-block {
  max-width: 1200px !important; }
#page-content .wp-block-group {
  padding: 30px; }
#page-content .wp-block-table {
  margin-bottom: 0 !important; }
@media (max-width: 768px) {
  #page-content .wp-block-columns {
    margin-bottom: 0; } }
@media (max-width: 768px) {
  #page-content .wp-block-column {
    margin-bottom: 0em; } }
#page-content .wp-block-button a {
  transition: all .3s; }
  #page-content .wp-block-button a:hover {
    opacity: .7; }
#page-content .wp-block-button.pdf a {
  padding-bottom: 1.2em !important; }
  #page-content .wp-block-button.pdf a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/ic-pdf.svg) no-repeat 0 0;
    display: inline-block;
    vertical-align: bottom;
    margin-right: 5px; }
#page-content .wp-block-button.xlsx a {
  padding-bottom: 1.2em !important; }
  #page-content .wp-block-button.xlsx a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/ic-xlsx.svg) no-repeat 0 0;
    display: inline-block;
    vertical-align: bottom;
    margin-right: 5px; }
#page-content .wp-block-button.downarrow a:after {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../images/common/downarrow.svg) no-repeat 0 0;
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px; }
#page-content .wp-block-buttons a {
  text-decoration: none; }
#page-content li.blocks-gallery-item {
  padding: 0 !important;
  margin-bottom: 15px; }
  #page-content li.blocks-gallery-item:before {
    display: none; }
#page-content .mincho {
  font-family: "Noto Serif JP", serif;
  font-weight: 600; }
#page-content .has-text-align-center {
  text-align: center; }
#page-content .has-text-align-right {
  text-align: right; }
#page-content .has-text-nowrap {
  white-space: nowrap !important; }
#page-content .inner {
  max-width: 1200px;
  padding-top: 30px; }
#page-content h3.side-line {
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
  margin-bottom: 30px;
  position: relative;
  text-align: center;
  color: #5A5757;
  font-size: 25px;
  font-weight: 600;
  padding: 0 15px;
  display: flex;
  justify-content: space-between;
  white-space: nowrap !important; }
  @media (max-width: 768px) {
    #page-content h3.side-line {
      margin-bottom: 15px;
      font-size: 21px;
      padding: 0 5px;
      line-height: 1.35;
      white-space: normal !important; } }
  #page-content h3.side-line::before, #page-content h3.side-line::after {
    border-top: 1px solid #5A5757;
    content: "";
    height: 0;
    margin: auto;
    width: 100%;
    position: relative !important; }
    @media (max-width: 768px) {
      #page-content h3.side-line::before, #page-content h3.side-line::after {
        flex: 50px; } }
  #page-content h3.side-line::before {
    margin-right: 20px; }
    @media (max-width: 768px) {
      #page-content h3.side-line::before {
        margin-right: 10px; } }
  #page-content h3.side-line::after {
    margin-left: 20px; }
    @media (max-width: 768px) {
      #page-content h3.side-line::after {
        margin-left: 10px; } }
#page-content p {
  text-align: justify; }
  #page-content p.has-background {
    padding: 1em;
    font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
    font-weight: 600; }
#page-content table {
  border-collapse: collapse;
  margin-bottom: 0px;
  width: 100%;
  border: 1px solid #5A5757; }
  #page-content table th {
    font-weight: bold;
    white-space: nowrap;
    text-align: center; }
  #page-content table th, #page-content table td {
    border-bottom: 1px solid #5A5757;
    border-right: 1px solid #5A5757;
    font-size: 16px;
    padding: 10px;
    vertical-align: middle;
    line-height: 1.7; }
    @media (max-width: 768px) {
      #page-content table th, #page-content table td {
        font-size: 13px;
        padding: 5px; } }
    #page-content table th p:last-child, #page-content table td p:last-child {
      margin-bottom: 0; }
    #page-content table th.bg-red, #page-content table td.bg-red {
      background-color: #f19d9b; }
    #page-content table th.bg-green, #page-content table td.bg-green {
      background-color: #8dc21f; }
    #page-content table th.bg-blue, #page-content table td.bg-blue {
      background-color: #5dbecf; }
  #page-content table tr:first-child th,
  #page-content table tr:first-child td {
    border-top: 1px solid #5A5757; }
  #page-content table .border-bold th,
  #page-content table .border-bold td {
    border-bottom: 4px solid #5A5757; }
  #page-content table th {
    color: #5A5757; }
    @media (max-width: 768px) {
      #page-content table th {
        width: 145px; } }
    #page-content table th strong {
      color: #FF004A;
      font-weight: normal; }
  #page-content table td strong {
    font-weight: bold; }
  #page-content table td.has-text-align-center {
    text-align: center; }
  #page-content table td.has-text-align-right {
    text-align: right; }
  #page-content table + .head-border-left {
    margin-top: 30px; }
  #page-content table.is-centered td {
    text-align: center; }
  #page-content table.td-nowrap td {
    white-space: nowrap; }
  #page-content table.is-steps tr:nth-child(even) td {
    background-color: #FFF9DB; }
  #page-content table.is-fixed {
    table-layout: fixed; }
#page-content .is-steps table tr:nth-child(even) td {
  background-color: #FFF9DB; }
#page-content .contact-block .tel-btn a {
  align-items: center;
  background: linear-gradient(180deg, #fff 0%, #DEEBEF 90%, #F0F6F8 100%);
  border: 4px solid #5A5757;
  border-radius: 50px;
  box-sizing: border-box;
  color: #5A5757;
  display: flex;
  flex-wrap: wrap;
  font-size: 48px;
  font-weight: bold;
  justify-content: center;
  padding: 9px 15px;
  text-align: center;
  width: 100%;
  text-decoration: none; }
  @media (max-width: 768px) {
    #page-content .contact-block .tel-btn a {
      font-size: 24px; } }
  #page-content .contact-block .tel-btn a span.material-icons {
    font-size: 1em;
    margin-left: 10px;
    padding-bottom: 7px; }
  #page-content .contact-block .tel-btn a img {
    display: inline-block;
    max-width: 363px;
    padding: 0 25px;
    width: 80%; }
  #page-content .contact-block .tel-btn a small {
    font-size: 16px;
    padding-left: 15px; }
    @media (max-width: 768px) {
      #page-content .contact-block .tel-btn a small {
        font-size: 14px; } }
#page-content ul.arrow-inq {
  display: flex; }
  @media (max-width: 768px) {
    #page-content ul.arrow-inq {
      display: block; } }
  #page-content ul.arrow-inq li {
    display: flex;
    width: 49.5%;
    padding-left: 0; }
    #page-content ul.arrow-inq li:before {
      display: none; }
    @media (max-width: 768px) {
      #page-content ul.arrow-inq li {
        width: 100%; } }
    #page-content ul.arrow-inq li a {
      align-items: center;
      box-sizing: border-box;
      color: #fff;
      display: flex;
      font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
      font-weight: 600;
      font-size: 32px;
      justify-content: center;
      padding: 30px 10px;
      position: relative;
      text-align: center;
      text-decoration: none;
      width: calc(100% - 32px); }
      @media (max-width: 768px) {
        #page-content ul.arrow-inq li a {
          font-size: 21px;
          padding: 17px 10px;
          width: calc(100% - 20px); } }
      #page-content ul.arrow-inq li a:hover {
        opacity: 0.7; }
      #page-content ul.arrow-inq li a::before {
        content: "";
        height: 100%;
        position: absolute;
        top: 0;
        width: 32px; }
        @media (max-width: 768px) {
          #page-content ul.arrow-inq li a::before {
            width: 20px; } }
    #page-content ul.arrow-inq li.contact {
      margin-right: 1%; }
      @media (max-width: 768px) {
        #page-content ul.arrow-inq li.contact {
          margin-bottom: 10px;
          margin-right: 0; } }
      #page-content ul.arrow-inq li.contact a {
        background: #5A5757;
        margin-left: auto; }
        @media (max-width: 768px) {
          #page-content ul.arrow-inq li.contact a {
            margin-left: 0; } }
        #page-content ul.arrow-inq li.contact a::before {
          background: linear-gradient(to bottom right, transparent 50%, #163176 50%) top left/100% 50% no-repeat, linear-gradient(to top right, transparent 50%, #163176 50%) bottom left/100% 50% no-repeat;
          left: -32px; }
          @media (max-width: 768px) {
            #page-content ul.arrow-inq li.contact a::before {
              background: linear-gradient(to bottom left, transparent 50%, #163176 50%) top left/100% 50% no-repeat, linear-gradient(to top left, transparent 50%, #163176 50%) bottom left/100% 50% no-repeat;
              left: inherit;
              right: -20px; } }
    #page-content ul.arrow-inq li.aid a {
      background: #00A5A0; }
      #page-content ul.arrow-inq li.aid a::before {
        background: linear-gradient(to bottom left, transparent 50%, #00A5A0 50%) top left/100% 50% no-repeat, linear-gradient(to top left, transparent 50%, #00A5A0 50%) bottom left/100% 50% no-repeat;
        right: -32px; }
        @media (max-width: 768px) {
          #page-content ul.arrow-inq li.aid a::before {
            right: -20px; } }
#page-content .page-header {
  text-align: center;
  margin-bottom: 50px; }
  @media (max-width: 768px) {
    #page-content .page-header {
      margin-bottom: 0;
      padding: 10px 0; } }
  #page-content .page-header h1.headtitle {
    color: inherit;
    text-align: center;
    line-height: 1.5;
    padding: 30px 0 40px;
    position: relative;
    margin-bottom: 0px;
    display: inline-block;
    white-space: nowrap;
    font-weight: bold;
    font-size: 35px;
    letter-spacing: 7px; }
    @media (max-width: 768px) {
      #page-content .page-header h1.headtitle {
        margin: 0;
        font-size: 20px;
        letter-spacing: 4px;
        white-space: normal;
        padding: 10px 30px; }
        #page-content .page-header h1.headtitle br {
          display: none; } }
    #page-content .page-header h1.headtitle span {
      font-size: 0.5em;
      letter-spacing: 5px;
      display: block; }
      @media (max-width: 768px) {
        #page-content .page-header h1.headtitle span {
          letter-spacing: 2px; } }
#page-content .page-footer {
  padding-top: 50px;
  padding-bottom: 50px; }
  #page-content .page-footer .more-btn a {
    margin: 0 10px; }
    @media (max-width: 768px) {
      #page-content .page-footer .more-btn a {
        display: block;
        margin: 10px 0; } }
#page-content table.opentime-table {
  width: 100%;
  margin-bottom: 20px; }
  @media (max-width: 768px) {
    #page-content table.opentime-table {
      margin-bottom: 5px; } }
  #page-content table.opentime-table th {
    text-align: center; }
  #page-content table.opentime-table td {
    vertical-align: middle; }
    #page-content table.opentime-table td.lbl.am {
      background-color: #ddcbb1;
      white-space: nowrap; }
    #page-content table.opentime-table td.lbl.pm {
      background-color: #b0c3ad;
      white-space: nowrap; }
    #page-content table.opentime-table td p {
      margin-bottom: 0; }
    #page-content table.opentime-table td .is-flex .ampm {
      font-size: 27px;
      line-height: 1.2;
      padding-right: 10px; }
      @media (max-width: 768px) {
        #page-content table.opentime-table td .is-flex .ampm {
          font-size: 14px;
          padding: 3px 5px 0 0; } }
    #page-content table.opentime-table td .is-flex .times {
      line-height: 1.2;
      font-size: 13px; }
      @media (max-width: 768px) {
        #page-content table.opentime-table td .is-flex .times {
          font-size: 10px; } }
    #page-content table.opentime-table td.idc {
      font-size: 30px;
      text-align: center;
      line-height: 1;
      vertical-align: initial; }
      @media (max-width: 768px) {
        #page-content table.opentime-table td.idc {
          font-size: 15px;
          vertical-align: middle; } }
#page-content p.opentime-holiday {
  font-size: 18px;
  letter-spacing: 2px;
  padding-left: 30px;
  position: relative; }
  @media (max-width: 768px) {
    #page-content p.opentime-holiday {
      font-size: 12px;
      letter-spacing: 0px; } }
  #page-content p.opentime-holiday:before {
    content: '';
    display: inline-block;
    margin-right: 10px;
    width: 22px;
    height: 22px;
    background: url(../images/common/ic-holiday.svg) no-repeat center center/contain;
    position: absolute;
    top: 5px;
    left: 0; }
    @media (max-width: 768px) {
      #page-content p.opentime-holiday:before {
        width: 15px;
        height: 15px; } }
#page-content .deptlist {
  padding: 0; }
  #page-content .deptlist figure {
    margin: 0 0 10px 0; }
    @media (max-width: 768px) {
      #page-content .deptlist figure {
        display: inline-block;
        width: 49%; } }

.head-border-left {
  border-left: 5px solid #5A5757;
  color: #5A5757;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 13px;
  padding-left: 10px; }
  @media (max-width: 768px) {
    .head-border-left {
      font-size: 18px; } }

.head-back {
  color: #fff;
  font-size: 25px;
  font-weight: bold;
  margin-bottom: 25px;
  padding: 10px;
  position: relative;
  text-align: center; }
  @media (max-width: 768px) {
    .head-back {
      font-size: 21px; } }
  .head-back a {
    background: linear-gradient(180deg, #fff 0%, #DEEBEF 90%, #F0F6F8 100%);
    border-radius: 16px;
    color: #000;
    display: inline-block;
    font-size: 13px;
    padding: 6px 25px;
    position: absolute;
    right: 15px;
    top: 13px; }
    @media (max-width: 768px) {
      .head-back a {
        padding: 3px 20px;
        position: relative;
        right: inherit;
        top: inherit; } }
  .head-back::before {
    background: #5A5757;
    content: "";
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: -2; }
  .head-back::after {
    background: url("../images/curriculum/head-back.jpg") no-repeat top/cover;
    content: "";
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50%;
    z-index: -1; }

.head-border {
  margin-bottom: 30px;
  position: relative;
  text-align: center; }
  @media (max-width: 768px) {
    .head-border {
      margin-bottom: 15px; } }
  .head-border span {
    background: #fff;
    color: #5A5757;
    font-size: 25px;
    font-weight: bold;
    padding: 0 15px; }
    @media (max-width: 768px) {
      .head-border span {
        font-size: 21px;
        padding: 0 5px; } }
  .head-border::before {
    border-top: 1px solid #5A5757;
    content: "";
    height: 0;
    margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    width: 100%;
    z-index: -1; }

.back-blue-box {
  background: #E2E8FA;
  margin-bottom: 10px;
  padding: 30px 50px; }
  @media (max-width: 768px) {
    .back-blue-box {
      padding: 20px; } }
  .back-blue-box ul {
    border-top: 1px solid #5A5757;
    padding-top: 15px;
    margin-bottom: 0 !important; }
    .back-blue-box ul li {
      font-size: 16px;
      padding-left: 20px;
      position: relative; }
      .back-blue-box ul li::before {
        color: #5A5757;
        content: "■";
        position: absolute;
        left: 0;
        top: 0; }

/********************************************************************************
header
********************************************************************************/
header {
  margin-left: auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
  position: relative;
  z-index: 3; }
  header#header-pc {
    display: flex;
    justify-content: space-between;
    align-items: end; }
  header#header-sp {
    display: none; }
  @media (max-width: 1400px) {
    header#header-pc {
      display: none; }
    header#header-sp {
      display: block; } }
  header#header-sp .container {
    padding-left: 0;
    padding-right: 0; }
  header#header-sp .tel-wrapper {
    position: absolute;
    top: 5px;
    right: 60px; }
    @media screen and (max-width: 900px) {
      header#header-sp .tel-wrapper {
        display: none; } }
  header .site-title {
    padding: 30px 0 18px;
    text-align: center; }
    @media (max-width: 1400px) {
      header .site-title {
        padding: 22px 20px; } }
    header .site-title .site-logo {
      text-align: left;
      padding: 0 20px; }
      @media (max-width: 1400px) {
        header .site-title .site-logo {
          max-width: 220px;
          padding: 4px 0 1px 0; } }
  header .site-phrase {
    text-align: center;
    margin-bottom: 15px; }
    @media (min-width: 768px) and (max-width: 1179px) {
      header .site-phrase {
        padding: 0 55px; } }
    @media (max-width: 768px) {
      header .site-phrase {
        font-size: 12px;
        line-height: 1.5;
        text-align: left;
        padding: 10px 15px 15px;
        border-top: 1px solid #42210b;
        margin-bottom: 0; } }
  header .header-pc-main-nav {
    position: relative; }
    header .header-pc-main-nav #slide-line {
      position: absolute;
      bottom: 0;
      height: 5px;
      background-color: #5A5757;
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      pointer-events: none; }
  header .header-pc-main-nav-items {
    display: flex;
    justify-content: center; }
    header .header-pc-main-nav-items li {
      padding-bottom: 20px; }
      header .header-pc-main-nav-items li:first-child a {
        border-left: none; }
      header .header-pc-main-nav-items li a {
        display: block;
        padding: 0px 20px;
        line-height: 1.1;
        color: #5A5757;
        border-left: 3px solid #5A5757;
        text-align: center;
        font-weight: 700;
        font-size: 17px;
        letter-spacing: 1px;
        position: relative; }
        header .header-pc-main-nav-items li a:hover {
          color: #BDBCBC; }
      header .header-pc-main-nav-items li.is-disabled a {
        color: #BDBCBC;
        cursor: default; }
  header .header-pc-children-nav {
    width: 100%;
    position: relative;
    /* カリキュラムあり */ }
    header .header-pc-children-nav .container {
      max-width: 1000px; }
    header .header-pc-children-nav .nav-sub-panel {
      visibility: hidden;
      transition: .3s;
      transition-delay: .3s;
      overflow: hidden;
      margin: auto;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 10;
      width: 100%;
      box-shadow: 0 10px 5px rgba(0, 0, 0, 0.15); }
      header .header-pc-children-nav .nav-sub-panel__content {
        border-top: 5px solid #5A5757;
        border-bottom: 1px solid #5A5757; }
        header .header-pc-children-nav .nav-sub-panel__content h2 {
          display: none; }
        header .header-pc-children-nav .nav-sub-panel__content ul {
          display: flex;
          flex-wrap: wrap;
          padding: 15px 0; }
          header .header-pc-children-nav .nav-sub-panel__content ul li {
            flex-basis: auto;
            list-style: none;
            margin: 5px 5px;
            flex: calc( 50% - 10px );
            border: 1px solid #5A5757; }
            header .header-pc-children-nav .nav-sub-panel__content ul li a {
              padding: 20px;
              display: block;
              color: #5A5757;
              text-align: center;
              font-size: 18px;
              transition: .5s;
              position: relative; }
              header .header-pc-children-nav .nav-sub-panel__content ul li a:after {
                content: "";
                position: absolute;
                top: 5px;
                left: 5px;
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 20px 20px 0 0;
                border-color: #5A5757 transparent transparent transparent;
                transition: .3s; }
              header .header-pc-children-nav .nav-sub-panel__content ul li a:hover {
                background-color: #CC9D6C; }
                header .header-pc-children-nav .nav-sub-panel__content ul li a:hover:after {
                  top: 0;
                  left: 0; }
            header .header-pc-children-nav .nav-sub-panel__content ul li.is-ic a:before {
              content: "";
              width: 50px;
              height: 50px;
              background-position: center center;
              background-repeat: no-repeat;
              display: inline-block;
              margin-right: 10px;
              vertical-align: middle; }
    header .header-pc-children-nav #ssid-82__target ul,
    header .header-pc-children-nav #ssid-87__target ul,
    header .header-pc-children-nav #ssid-92__target ul {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr; }
      header .header-pc-children-nav #ssid-82__target ul li:nth-child(1),
      header .header-pc-children-nav #ssid-87__target ul li:nth-child(1),
      header .header-pc-children-nav #ssid-92__target ul li:nth-child(1) {
        grid-column: 1 / 2;
        grid-row: 1 / 3; }
        header .header-pc-children-nav #ssid-82__target ul li:nth-child(1) a,
        header .header-pc-children-nav #ssid-87__target ul li:nth-child(1) a,
        header .header-pc-children-nav #ssid-92__target ul li:nth-child(1) a {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 100%; }
      header .header-pc-children-nav #ssid-82__target ul li:nth-child(2),
      header .header-pc-children-nav #ssid-87__target ul li:nth-child(2),
      header .header-pc-children-nav #ssid-92__target ul li:nth-child(2) {
        grid-column: 2 / 3;
        grid-row: 1 / 2; }
      header .header-pc-children-nav #ssid-82__target ul li:nth-child(3),
      header .header-pc-children-nav #ssid-87__target ul li:nth-child(3),
      header .header-pc-children-nav #ssid-92__target ul li:nth-child(3) {
        grid-column: 3 / 4;
        grid-row: 1 / 2; }
      header .header-pc-children-nav #ssid-82__target ul li:nth-child(4),
      header .header-pc-children-nav #ssid-87__target ul li:nth-child(4),
      header .header-pc-children-nav #ssid-92__target ul li:nth-child(4) {
        grid-column: 2 / 3;
        grid-row: 2 / 3; }
      header .header-pc-children-nav #ssid-82__target ul li:nth-child(5),
      header .header-pc-children-nav #ssid-87__target ul li:nth-child(5),
      header .header-pc-children-nav #ssid-92__target ul li:nth-child(5) {
        grid-column: 3 / 4;
        grid-row: 2 / 3; }
    header .header-pc-children-nav #ssid-98__target ul {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr; }
      header .header-pc-children-nav #ssid-98__target ul li:nth-child(1) {
        grid-column: 1 / 2;
        grid-row: 1 / 3; }
        header .header-pc-children-nav #ssid-98__target ul li:nth-child(1) a {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 100%; }
      header .header-pc-children-nav #ssid-98__target ul li:nth-child(2) {
        grid-column: 2 / 3;
        grid-row: 1 / 3; }
        header .header-pc-children-nav #ssid-98__target ul li:nth-child(2) a {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 100%; }
      header .header-pc-children-nav #ssid-98__target ul li:nth-child(3) {
        grid-column: 3 / 4;
        grid-row: 1 / 2; }
      header .header-pc-children-nav #ssid-98__target ul li:nth-child(4) {
        grid-column: 3 / 4;
        grid-row: 2 / 3; }

.header-sp-main .nav-content {
  padding: 0px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; }
.header-sp-main .below-close {
  text-align: center;
  padding: 20px 0 40px; }
  .header-sp-main .below-close a img {
    width: 30px;
    height: 30px; }
.header-sp-main .primary-bts {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 100%;
  padding: 0 20px 15px;
  max-width: 400px;
  margin: auto; }
  .header-sp-main .primary-bts li {
    padding: 5px;
    flex: 33%; }
  .header-sp-main .primary-bts a {
    display: block;
    padding: 10px;
    border-radius: 5px;
    background-color: #CC9D6C; }
.header-sp-main form {
  padding: 0 25px 20px; }
  .header-sp-main form input::placeholder {
    color: rgba(255, 255, 255, 0.5); }
  .header-sp-main form input {
    width: 100%;
    padding: 10px 15px 10px 40px;
    background: #5A5757 url(../images/common/ic-search.png) no-repeat 10px 10px;
    color: white;
    border: none;
    border-radius: 5px; }
.header-sp-main .callinfo {
  padding-top: 20px;
  text-align: center; }
  .header-sp-main .callinfo .more-btn a {
    width: 200px;
    background-color: #59809e;
    margin-bottom: 10px; }
@media (max-width: 768px) {
  .header-sp-main .drawer-menu {
    width: 220px; } }
.header-sp-main .drawer-menu li {
  position: relative;
  /*&.is-disabled{
      opacity: 0.3;
  }*/ }
  .header-sp-main .drawer-menu li label {
    position: relative;
    z-index: 1; }
    .header-sp-main .drawer-menu li label:before {
      position: absolute;
      font-family: "Font Awesome 5 Free";
      content: '\f067';
      top: 10px;
      right: 25px;
      z-index: 10;
      transition: .5s; }
  .header-sp-main .drawer-menu li input.sub-nav-check {
    position: absolute;
    z-index: -1;
    top: 15px;
    right: 15px; }
    .header-sp-main .drawer-menu li input.sub-nav-check:checked ~ .sub-nav {
      max-height: 1000px;
      padding: 15px 0 15px 20px; }
    .header-sp-main .drawer-menu li input.sub-nav-check:checked + label:before {
      content: '\f068';
      transform: rotate(360deg); }
  .header-sp-main .drawer-menu li a, .header-sp-main .drawer-menu li label {
    display: flex;
    font-size: 32px;
    padding: 35px 5px 15px;
    border-bottom: 1px dashed #59809e;
    color: #59809e;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .header-sp-main .drawer-menu li a, .header-sp-main .drawer-menu li label {
        font-size: 22px;
        padding: 5px;
        margin-bottom: 65px; } }
    .header-sp-main .drawer-menu li a span.desc, .header-sp-main .drawer-menu li label span.desc {
      opacity: .6;
      font-size: 14px;
      width: 160px;
      padding-top: 6px; }
      @media (max-width: 768px) {
        .header-sp-main .drawer-menu li a span.desc, .header-sp-main .drawer-menu li label span.desc {
          font-size: 13px;
          padding-top: 0px;
          position: absolute;
          bottom: -55px;
          left: 7px;
          width: auto; } }
  .header-sp-main .drawer-menu li.no-desc a {
    margin-bottom: 0; }
.header-sp-main .drawer-menu .sub-nav {
  background-color: #5A5757;
  overflow: hidden;
  max-height: 0px;
  transition: .5s;
  column-count: 1;
  padding: 0 0 0 20px; }
  .header-sp-main .drawer-menu .sub-nav li {
    break-inside: avoid; }
    .header-sp-main .drawer-menu .sub-nav li a {
      padding: 5px 25px;
      border-bottom: none;
      font-size: 1em;
      color: white; }
.header-sp-main .sp-purpose {
  padding: 20px 25px 0px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  gap: 5px; }
  .header-sp-main .sp-purpose li {
    flex: calc( 50% - 5px ); }
    .header-sp-main .sp-purpose li.is-wide {
      flex: 100%; }
    .header-sp-main .sp-purpose li a {
      display: block;
      text-align: center;
      padding: 10px;
      background-color: white;
      border-radius: 5px; }

.header-sp-below {
  padding: 10px 20px 20px; }
  .header-sp-below ul {
    display: flex;
    flex-wrap: wrap; }
    .header-sp-below ul li {
      flex: 50%; }
      .header-sp-below ul li a {
        padding: 5px 10px;
        display: block;
        font-weight: 700;
        font-size: 16px; }
        .header-sp-below ul li a span {
          position: relative; }
          .header-sp-below ul li a span:after {
            content: "";
            position: absolute;
            bottom: 0px;
            left: 0;
            height: 8px;
            width: 100%;
            transition: .5s;
            background-color: #CC9D6C;
            mix-blend-mode: multiply; }

@media (max-width: 768px) {
  body:not(.home) #side-nav {
    display: none; } }
#below-fixed-nav {
  position: fixed;
  bottom: -150px;
  left: 0;
  padding: 10px;
  z-index: 11;
  width: 100%;
  transition: .5s; }
  #below-fixed-nav.is-active {
    bottom: 0; }
  #below-fixed-nav ul {
    display: flex;
    justify-content: center;
    margin: auto;
    max-width: 400px; }
    #below-fixed-nav ul li {
      flex: 33%;
      padding: 2px; }
      #below-fixed-nav ul li a {
        display: block;
        padding: 15px;
        border-radius: 8px;
        background-color: #CC9D6C; }

#side-nav {
  position: fixed;
  top: 30%;
  right: 0;
  width: 60px;
  z-index: 100; }
  @media (max-width: 768px) {
    #side-nav {
      position: relative;
      top: 0;
      text-align: center;
      width: auto;
      padding: 0 20px 20px; } }
  @media (max-width: 768px) {
    #side-nav ul {
      display: flex;
      justify-content: center; } }
  #side-nav ul li {
    margin-bottom: 5px; }
    @media (max-width: 768px) {
      #side-nav ul li {
        flex: 33%;
        padding: 5px; } }
    #side-nav ul li a {
      display: block;
      padding: 7px;
      border-radius: 5px 0 0 5px; }
      @media (max-width: 768px) {
        #side-nav ul li a {
          padding: 15px;
          border-radius: 8px; } }
    #side-nav ul li.orange a {
      background-color: #CC9D6C; }
    #side-nav ul li.sns {
      margin-bottom: 0; }
      #side-nav ul li.sns a {
        padding: 5px 10px; }
      @media (max-width: 768px) {
        #side-nav ul li.sns {
          display: none; } }

.purpose-nav {
  background-color: #5A5757; }
  @media (max-width: 768px) {
    .purpose-nav .container {
      padding-left: 0;
      padding-right: 0; } }
  .purpose-nav ul {
    padding: 0px;
    margin: 0;
    justify-content: center; }
    @media (max-width: 768px) {
      .purpose-nav ul {
        padding: 0 5px;
        justify-content: flex-start;
        overflow-x: scroll; } }
    .purpose-nav ul li {
      padding: 0px;
      margin: 0;
      position: relative; }
      .purpose-nav ul li:not(:last-child):after {
        content: "";
        position: absolute;
        height: 50%;
        width: 1px;
        background-color: #fff;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%); }
      .purpose-nav ul li a {
        color: white;
        padding: 10px 1vw;
        display: block;
        transition: .5s;
        font-size: 13px; }
        @media (max-width: 768px) {
          .purpose-nav ul li a {
            padding: 10px;
            white-space: nowrap;
            font-size: 10px; } }

@media (max-width: 768px) {
  body.home .tel-wrapper.sp {
    display: block; } }

.tel-wrapper {
  padding-right: 20px;
  padding-bottom: 6px; }
  .tel-wrapper.sp {
    padding: 20px 20px 25px;
    text-align: center;
    display: none; }
    .tel-wrapper.sp .tel {
      margin-bottom: 5px; }
      .tel-wrapper.sp .tel span {
        display: block;
        text-align: center;
        margin: auto auto 15px;
        width: 100px; }
    .tel-wrapper.sp .opentime {
      line-height: 1.35; }
  .tel-wrapper .tel {
    color: #80a1b3; }
    .tel-wrapper .tel span {
      border: 1px solid #80a1b3;
      border-radius: 50px;
      padding: 5px 10px 5px 15px;
      letter-spacing: 3px;
      margin-right: 5px;
      vertical-align: middle;
      line-height: 1;
      position: relative;
      top: 5px; }
    .tel-wrapper .tel a {
      color: #80a1b3;
      font-size: 40px;
      letter-spacing: 1px;
      vertical-align: middle;
      line-height: 1;
      position: relative; }
      .tel-wrapper .tel a:before {
        content: '';
        display: inline-block;
        margin-right: 5px;
        width: 28px;
        height: 28px;
        background: url(../images/common/ic-tel.svg) no-repeat center center; }
  .tel-wrapper .opentime {
    font-size: 15px; }

/********************************************************************************
footer
********************************************************************************/
.page-link-box {
  background: #5A5757;
  padding: 35px 0; }
  @media (max-width: 768px) {
    .page-link-box {
      padding: 20px 0; } }
  @media (max-width: 768px) {
    .page-link-box .course-banner li {
      padding-bottom: 0; } }
  .page-link-box .page-banner {
    display: flex; }
    @media (max-width: 768px) {
      .page-link-box .page-banner {
        flex-wrap: wrap; } }
    .page-link-box .page-banner li {
      display: flex;
      width: 23.5%; }
      .page-link-box .page-banner li:not(:last-child) {
        margin-right: 2%; }
      @media (max-width: 768px) {
        .page-link-box .page-banner li {
          margin-bottom: 2%;
          width: 49%; }
          .page-link-box .page-banner li:nth-child(even) {
            margin-right: 0; } }
    .page-link-box .page-banner a {
      align-items: center;
      background: #fff;
      display: flex;
      padding: 0 5px 0 0;
      width: 100%; }
    .page-link-box .page-banner span.thumb {
      margin-right: 20px;
      display: block;
      min-width: 100px;
      width: 100px;
      height: 100px;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover; }
      @media (max-width: 768px) {
        .page-link-box .page-banner span.thumb {
          margin-right: 5px;
          min-width: 50px;
          width: 50px;
          height: 50px; } }
    .page-link-box .page-banner p {
      color: #5A5757;
      font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
      font-weight: 600;
      font-size: 17px; }
      @media (max-width: 768px) {
        .page-link-box .page-banner p {
          font-size: 11px;
          line-height: 1.35; } }

.hybrid-menu {
  text-align: center;
  padding: 25px 0; }
  .hybrid-menu a {
    display: inline-block;
    padding: 0px 10px;
    border-right: 1px solid #5A5757; }
    .hybrid-menu a:last-child {
      border-right: none; }

.footer-contact-box {
  background: #5A5757;
  padding: 30px 0; }
  .footer-contact-box .title {
    border-bottom: 1px solid #fff;
    color: #fff;
    font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
    font-weight: 600;
    font-size: 23px;
    margin-bottom: 30px;
    padding-bottom: 25px;
    text-align: center; }
    @media (max-width: 768px) {
      .footer-contact-box .title {
        font-size: 18px;
        margin-bottom: 20px;
        padding-bottom: 15px;
        line-height: 1.5; } }
  .footer-contact-box .tel-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center; }
    .footer-contact-box .tel-list li {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex; }
      @media (max-width: 768px) {
        .footer-contact-box .tel-list li {
          flex: 40%;
          text-align: center;
          display: block; } }
      .footer-contact-box .tel-list li p {
        display: inline-block;
        font-weight: 600;
        line-height: 1; }
      .footer-contact-box .tel-list li .name {
        background: #fff;
        border-radius: 3px;
        color: #5A5757;
        font-size: 15px;
        margin-right: 10px;
        padding: 6px 6px 4px;
        text-align: center;
        min-width: 4em;
        line-height: 3; }
        @media (max-width: 768px) {
          .footer-contact-box .tel-list li .name {
            font-size: 14px;
            display: block;
            margin: 0;
            line-height: inherit; } }
      .footer-contact-box .tel-list li .tel {
        color: #fff;
        font-size: 22px;
        text-align: center;
        line-height: 1.2; }
        @media (max-width: 768px) {
          .footer-contact-box .tel-list li .tel {
            display: block;
            font-size: 17px;
            margin-top: 6px; } }
        .footer-contact-box .tel-list li .tel img {
          margin-right: 6px;
          width: 16px;
          vertical-align: sub; }
          @media (max-width: 768px) {
            .footer-contact-box .tel-list li .tel img {
              margin-right: 4px;
              width: 13px; } }
      .footer-contact-box .tel-list li .tel-link,
      .footer-contact-box .tel-list li .tel-link a {
        color: #fff; }
      .footer-contact-box .tel-list li .fax-link {
        font-size: 0.8em; }
        .footer-contact-box .tel-list li .fax-link a {
          color: #fff; }
  .footer-contact-box .avail-areas {
    padding-top: 40px; }
  .footer-contact-box .areas {
    color: white;
    font-size: 1.2em;
    font-weight: 600;
    text-align: center; }

footer {
  margin: 0 auto;
  padding: 0; }
  footer .footer-nav {
    column-count: 5;
    padding: 50px 0px;
    max-width: 1400px;
    margin: auto; }
    @media (max-width: 1400px) {
      footer .footer-nav {
        padding: 50px 0px;
        column-count: 4; }
        footer .footer-nav > li {
          break-before: avoid-column !important;
          break-after: avoid-column !important; }
        footer .footer-nav a {
          font-size: 12px !important; } }
    @media (max-width: 768px) {
      footer .footer-nav {
        display: none; } }
    footer .footer-nav li {
      break-inside: avoid-column;
      font-size: 1rem; }
      @media (max-width: 768px) {
        footer .footer-nav li {
          break-inside: avoid; } }
      footer .footer-nav li#ssid-125 {
        break-after: column; }
        @media (max-width: 768px) {
          footer .footer-nav li#ssid-125 {
            break-after: avoid; } }
      footer .footer-nav li#ssid-120, footer .footer-nav li#ssid-130 {
        break-before: column; }
        @media (max-width: 768px) {
          footer .footer-nav li#ssid-120, footer .footer-nav li#ssid-130 {
            break-before: avoid; } }
      footer .footer-nav li a {
        color: #5A5757;
        font-size: 14px; }
        footer .footer-nav li a:hover {
          text-decoration: underline; }
      footer .footer-nav li ul {
        margin-bottom: 0px; }
        footer .footer-nav li ul li:before {
          content: "─";
          position: relative;
          padding-right: 5px; }
  footer .footer-info {
    text-align: center; }
    footer .footer-info .footer-logo-nav {
      display: flex;
      justify-content: center;
      align-items: flex-end;
      margin-bottom: 20px; }
      @media (max-width: 768px) {
        footer .footer-info .footer-logo-nav {
          display: none; } }
      @media (min-width: 768px) and (max-width: 1179px) {
        footer .footer-info .footer-logo-nav {
          flex-wrap: wrap; } }
      footer .footer-info .footer-logo-nav a {
        transition: .5s; }
        footer .footer-info .footer-logo-nav a:hover {
          opacity: 0.5; }
      footer .footer-info .footer-logo-nav p.footer-logo {
        margin-right: 5%;
        padding: 0; }
        @media (max-width: 768px) {
          footer .footer-info .footer-logo-nav p.footer-logo {
            margin: 0 auto 10px;
            max-width: 465px;
            text-align: center;
            width: 90%; } }
        @media (min-width: 768px) and (max-width: 1179px) {
          footer .footer-info .footer-logo-nav p.footer-logo {
            flex: 100%;
            margin-right: 0; }
            footer .footer-info .footer-logo-nav p.footer-logo img {
              width: 350px;
              margin-bottom: 20px; } }
      footer .footer-info .footer-logo-nav p {
        padding: 0 20px; }
        footer .footer-info .footer-logo-nav p a {
          color: #5A5757; }
        footer .footer-info .footer-logo-nav p.tel a, footer .footer-info .footer-logo-nav p.email a, footer .footer-info .footer-logo-nav p.map a {
          font-weight: 900;
          font-size: 20px;
          padding-bottom: 1px;
          border-bottom: 3px solid #f1c01d; }
        footer .footer-info .footer-logo-nav p.tel:before, footer .footer-info .footer-logo-nav p.email:before, footer .footer-info .footer-logo-nav p.map:before {
          content: "";
          width: 32px;
          height: 32px;
          margin-right: 5px;
          background-image: url(../images/common/ic-tel.svg);
          background-position: 0 0;
          background-repeat: no-repeat;
          display: inline-block;
          vertical-align: middle; }
        @media (max-width: 768px) {
          footer .footer-info .footer-logo-nav p.tel, footer .footer-info .footer-logo-nav p.email, footer .footer-info .footer-logo-nav p.map {
            padding: 0 10px 0 0;
            display: inline-block; }
            footer .footer-info .footer-logo-nav p.tel a, footer .footer-info .footer-logo-nav p.email a, footer .footer-info .footer-logo-nav p.map a {
              font-size: 11px; }
            footer .footer-info .footer-logo-nav p.tel:before, footer .footer-info .footer-logo-nav p.email:before, footer .footer-info .footer-logo-nav p.map:before {
              width: 15px;
              height: 15px; } }
        footer .footer-info .footer-logo-nav p.email:before {
          background-image: url(../images/common/ic-mail.svg); }
        footer .footer-info .footer-logo-nav p.map:before {
          background-image: url(../images/common/ic-map.svg); }
    footer .footer-info .footer-logo-nav-sp {
      display: none; }
      @media (max-width: 768px) {
        footer .footer-info .footer-logo-nav-sp {
          display: block; } }
      footer .footer-info .footer-logo-nav-sp p.footer-logo {
        margin: 0 auto 10px;
        max-width: 465px;
        text-align: center;
        width: 90%; }
      footer .footer-info .footer-logo-nav-sp .iclist {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 10px;
        padding: 0px; }
        footer .footer-info .footer-logo-nav-sp .iclist p {
          padding: 10px; }
          footer .footer-info .footer-logo-nav-sp .iclist p img {
            width: 40px; }
          footer .footer-info .footer-logo-nav-sp .iclist p.sns img {
            width: 40px; }
    footer .footer-info address {
      font-size: 14px;
      color: #5A5757;
      font-style: normal;
      margin-bottom: 20px; }
      footer .footer-info address span.fax,
      footer .footer-info address span.time {
        padding-left: 1em; }
      @media (max-width: 768px) {
        footer .footer-info address {
          font-size: 11px;
          padding: 0 20px;
          margin-bottom: 10px; }
          footer .footer-info address span {
            display: block;
            text-align: center; } }
  footer .copyright {
    font-size: 13px;
    margin-bottom: 30px;
    text-align: center;
    color: white;
    background-color: #779276;
    padding: 5px;
    margin: 0; }
    @media (max-width: 768px) {
      footer .copyright {
        font-size: 10px; } }

.page-top-btn {
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 50px;
  z-index: 100;
  display: none; }
  @media (max-width: 768px) {
    .page-top-btn {
      bottom: 28px; } }

/********************************************************************************
Default
********************************************************************************/
section {
  padding: 50px 0;
  position: relative; }
  @media (max-width: 768px) {
    section {
      padding: 25px 0; } }

section.white-top:before {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  display: block;
  height: 41px;
  width: 100%;
  z-index: 2;
  background: url(../images/common/bg-white-nami-top.png) repeat-x top left; }

section.white-bottom:after {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 0;
  z-index: 2;
  display: block;
  height: 41px;
  width: 100%;
  background: url(../images/common/bg-white-nami-bottom.png) repeat-x top left; }

section.blue {
  background-color: #e9f0f4;
  padding: 70px 0; }
  @media (max-width: 768px) {
    section.blue {
      padding: 55px 0; } }

h2 {
  padding-top: 50px;
  font-size: 32px;
  letter-spacing: 8px;
  margin-bottom: 0.5em; }
  @media (max-width: 768px) {
    h2 {
      font-size: 22px;
      letter-spacing: 5px;
      padding-top: 25px; } }
  h2:first-child {
    padding-top: 0; }
  h2.lined {
    border-bottom: 1px solid #5A5757;
    text-align: center;
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 30px; }
    h2.lined:after {
      content: '';
      width: 100%;
      height: 1px;
      border-bottom: 1px dashed #5A5757;
      position: absolute;
      bottom: 8px;
      left: 0; }
      @media (max-width: 768px) {
        h2.lined:after {
          bottom: 4px; } }
    h2.lined + p {
      text-align: center;
      font-size: 18px;
      margin-bottom: 30px; }
      @media (max-width: 768px) {
        h2.lined + p {
          font-size: 12px; } }

table {
  border-collapse: collapse;
  background: white;
  width: 100%;
  margin-bottom: 5px; }
  table td, table th {
    padding: 10px 15px;
    border: 1px solid #5A5757; }
    @media (max-width: 768px) {
      table td, table th {
        padding: 4px 6px; } }
  table th {
    text-align: center;
    background-color: #b0c8d6; }

#main {
  margin-bottom: 0;
  padding: 0; }
  #main .container {
    padding-left: 0;
    padding-right: 0; }
  #main .header-main .main-image {
    position: relative;
    overflow: hidden;
    transition: .5s; }
    #main .header-main .main-image a {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 100; }
    #main .header-main .main-image .main-slider img {
      width: 100%; }
  #main .header-main .copybox,
  #main .sp-header-main .copybox {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s; }
    #main .header-main .copybox a,
    #main .sp-header-main .copybox a {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: none; }
    #main .header-main .copybox.current,
    #main .sp-header-main .copybox.current {
      opacity: 1; }
      #main .header-main .copybox.current a,
      #main .sp-header-main .copybox.current a {
        display: block; }
    #main .header-main .copybox .copy-textbox,
    #main .sp-header-main .copybox .copy-textbox {
      display: block;
      position: absolute;
      z-index: 1;
      top: 30px;
      left: 70px;
      font-family: "Noto Serif JP", serif;
      font-weight: 300; }
      @media (min-width: 768px) and (max-width: 1179px) {
        #main .header-main .copybox .copy-textbox,
        #main .sp-header-main .copybox .copy-textbox {
          top: 20px;
          left: 50px; } }
      @media (max-width: 768px) {
        #main .header-main .copybox .copy-textbox,
        #main .sp-header-main .copybox .copy-textbox {
          top: 15px;
          left: 20px; } }
      #main .header-main .copybox .copy-textbox .maincopy,
      #main .sp-header-main .copybox .copy-textbox .maincopy {
        font-size: 45px; }
        @media (max-width: 768px) {
          #main .header-main .copybox .copy-textbox .maincopy,
          #main .sp-header-main .copybox .copy-textbox .maincopy {
            font-size: 25px; } }
      #main .header-main .copybox .copy-textbox .subcopy,
      #main .sp-header-main .copybox .copy-textbox .subcopy {
        font-size: 18px; }
        @media (max-width: 768px) {
          #main .header-main .copybox .copy-textbox .subcopy,
          #main .sp-header-main .copybox .copy-textbox .subcopy {
            font-size: 10px; } }
  #main .header-main .slick-slide .copybox,
  #main .sp-header-main .slick-slide .copybox {
    display: block; }

/********************************************************************************
TOP
********************************************************************************/
.pace-done .main-text {
  opacity: 1 !important; }

body.home h3 {
  height: 120px;
  text-align: center;
  margin-bottom: 30px; }
  @media (max-width: 768px) {
    body.home h3 {
      height: 80px; } }
  body.home h3 img {
    height: 100%;
    width: auto; }
body.home section#top {
  position: relative;
  margin-bottom: 0;
  padding: 0 !important; }
  body.home section#top .bg-holder {
    position: absolute;
    width: 100%;
    min-height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    will-change: transform, opacity, filter;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-repeat: no-repeat; }
  body.home section#top .bg-slider {
    width: 100%;
    /*height: 100vh;*/
    background-position: center center;
    background-size: cover;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    height: 0;
    padding-top: 51.3%; }
    @media (max-width: 768px) {
      body.home section#top .bg-slider {
        padding-top: 153%; } }
  body.home section#top .bg-control {
    position: absolute;
    width: 100%;
    text-align: center;
    bottom: 15px;
    left: 0; }
    @media (max-width: 768px) {
      body.home section#top .bg-control {
        bottom: 5px; } }
    body.home section#top .bg-control a {
      display: inline-block;
      width: 21px;
      height: 23px;
      margin: 3px;
      top: -1px;
      position: relative;
      background: url(../images/top/ic-slidebt.png) no-repeat center center/contain; }
      body.home section#top .bg-control a.current {
        background: url(../images/top/ic-slidebt-current.png) no-repeat center center/contain; }
    body.home section#top .bg-control span {
      display: inline-block;
      width: 12px;
      height: 12px;
      margin: 10px; }
      body.home section#top .bg-control span.prev {
        border-top: 3px solid white;
        border-left: 3px solid white;
        transform: rotate(-45deg);
        cursor: pointer; }
      body.home section#top .bg-control span.next {
        border-top: 3px solid white;
        border-right: 3px solid white;
        transform: rotate(45deg);
        cursor: pointer; }
  body.home section#top .fv-overlay {
    height: 0;
    padding-top: 51.3%;
    position: relative; }
    @media (max-width: 768px) {
      body.home section#top .fv-overlay {
        padding-top: 153%; } }
    body.home section#top .fv-overlay:after {
      content: '';
      position: absolute;
      top: 156px;
      left: 0;
      width: 100%;
      height: 10px;
      z-index: 1; }
body.home #important-info {
  background: #f00; }
  body.home #important-info .inner {
    max-width: inherit; }
    body.home #important-info .inner li {
      padding: 10px 0;
      text-align: center; }
      @media (max-width: 768px) {
        body.home #important-info .inner li {
          padding: 5px 0; } }
    body.home #important-info .inner a {
      color: white;
      font-size: 14px; }
      @media (max-width: 768px) {
        body.home #important-info .inner a {
          font-size: 12px; } }
body.home #facilities h2 {
  color: #CC9D6C;
  border-color: #CC9D6C; }
  body.home #facilities h2:after {
    border-color: #CC9D6C; }
body.home #facilities .more-btn a {
  background-color: #CC9D6C; }
@media (max-width: 768px) {
  body.home #facilities {
    padding-bottom: 100px; } }
body.home #history h2 {
  color: #59809e;
  border-color: #59809e; }
  body.home #history h2:after {
    border-color: #59809e; }
body.home #history .more-btn a {
  background-color: #59809e; }
body.home #history .phs {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  max-width: 1200px;
  margin: 0 auto 50px; }
  @media (max-width: 768px) {
    body.home #history .phs {
      display: none; } }
  body.home #history .phs li {
    margin: 0 10px; }
body.home #history .phs-sp {
  display: none;
  max-width: 1200px;
  margin: 0 auto 50px; }
  @media (max-width: 768px) {
    body.home #history .phs-sp {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-wrap: wrap; } }
  body.home #history .phs-sp li {
    padding: 5px;
    flex: 50%; }
body.home #history .illust {
  position: absolute;
  top: -75px;
  right: calc( 50% - 630px );
  z-index: 2;
  width: 233px; }
  @media (max-width: 768px) {
    body.home #history .illust {
      top: -45px;
      right: calc( 50% - 160px );
      width: 160px; } }
body.home #profile h2 {
  color: #779276;
  border-color: #779276; }
  body.home #profile h2:after {
    border-color: #779276; }
body.home #profile .more-btn a {
  background-color: #779276; }

/***********************************************************************
information
**********************************************************************/
@media (max-width: 768px) {
  body.home section#information {
    padding-top: 30px; } }

section#information {
  background: url(../images/common/bg-information.gif);
  padding: 50px 0 100px; }
  @media (max-width: 768px) {
    section#information {
      padding: 50px 0 60px; } }
  section#information .columns {
    flex-direction: row-reverse; }
  section#information .columns.is-variable.is-8 {
    --columnGap: 3rem; }
  section#information table th {
    text-align: center; }
  section#information table td {
    vertical-align: middle; }
    section#information table td.lbl.am {
      background-color: #ddcbb1; }
    section#information table td.lbl.pm {
      background-color: #b0c3ad; }
    section#information table td .is-flex .ampm {
      font-size: 27px;
      line-height: 1.2;
      padding-right: 10px; }
      @media (max-width: 768px) {
        section#information table td .is-flex .ampm {
          font-size: 14px;
          padding: 3px 5px 0 0; } }
    section#information table td .is-flex .times {
      line-height: 1.2;
      font-size: 13px; }
      @media (max-width: 768px) {
        section#information table td .is-flex .times {
          font-size: 10px; } }
    section#information table td.idc {
      font-size: 30px;
      text-align: center;
      line-height: 1; }
      @media (max-width: 768px) {
        section#information table td.idc {
          font-size: 15px; } }
  section#information .map-container {
    border: 1px solid #5A5757;
    margin-bottom: 5px;
    line-height: 0; }
    section#information .map-container iframe {
      width: 100%;
      height: 350px;
      margin: 0;
      vertical-align: bottom; }
      @media (max-width: 768px) {
        section#information .map-container iframe {
          height: 200px; } }
  section#information p.holiday {
    font-size: 20px;
    letter-spacing: 2px; }
    @media (max-width: 768px) {
      section#information p.holiday {
        font-size: 14px;
        letter-spacing: 1px; } }
    section#information p.holiday:before {
      content: '';
      display: inline-block;
      margin-right: 10px;
      width: 22px;
      height: 22px;
      background: url(../images/common/ic-holiday.svg) no-repeat center center/contain;
      position: relative;
      top: 2px; }
      @media (max-width: 768px) {
        section#information p.holiday:before {
          width: 15px;
          height: 15px; } }
  section#information p.address {
    font-size: 20px;
    letter-spacing: 2px; }
    @media (max-width: 768px) {
      section#information p.address {
        font-size: 11px;
        letter-spacing: 1px; } }
  section#information .news-list .more-btn {
    text-align: right; }
    section#information .news-list .more-btn a {
      background-color: #59809e; }
  section#information .news-list ul {
    margin-bottom: 30px; }
    @media (max-width: 768px) {
      section#information .news-list ul {
        margin-bottom: 15px; } }
  section#information .news-list li {
    margin-bottom: 0;
    padding: 15px 20px 20px 100px;
    position: relative;
    border-bottom: 1px dashed #5A5757; }
    section#information .news-list li:first-child {
      border-top: 1px dashed #5A5757; }
    @media (max-width: 768px) {
      section#information .news-list li {
        padding: 3px 0px;
        display: flex;
        align-items: center; } }
  section#information .news-list p {
    display: inline-block; }
    section#information .news-list p.area {
      border-radius: 5px;
      color: #fff;
      font-size: 18px;
      font-weight: 600;
      padding: 5px 0 2px;
      text-align: center;
      width: 100px; }
      @media (max-width: 768px) {
        section#information .news-list p.area {
          font-size: 12px;
          padding: 3px 0 1px;
          width: 60px; } }
    section#information .news-list p.date {
      color: #5A5757;
      padding: 20px;
      font-size: 15px;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 10; }
      @media (max-width: 768px) {
        section#information .news-list p.date {
          left: 0px;
          padding: 3px 10px 0 0;
          position: relative;
          font-size: 12px; } }
    @media (max-width: 768px) {
      section#information .news-list p.postlabel {
        display: block;
        padding: 5px 0px;
        line-height: 1.3; } }
    section#information .news-list p.postlabel a {
      color: #5A5757;
      font-weight: 600;
      font-size: 20px; }
      @media (max-width: 768px) {
        section#information .news-list p.postlabel a {
          font-size: 14px; } }
      section#information .news-list p.postlabel a:hover {
        text-decoration: underline; }
  section#information .news-list .excerpt p {
    font-size: 15px; }
  @media (max-width: 768px) {
    section#information .news-list .excerpt {
      display: none; } }

/***********************************************************************
lower
**********************************************************************/
.page-header {
  background-color: #BDBCBC;
  position: relative; }
  .page-header .illust {
    position: absolute;
    bottom: -20px; }
    @media (max-width: 768px) {
      .page-header .illust {
        display: none !important; } }

section.lower .container {
  /*max-width: 1040px!important;*/
  max-width: 1180px !important; }

#page-content.information .page-header {
  color: #D0A7C4;
  background-color: #efe5ed; }
  #page-content.information .page-header .illust {
    width: 150px;
    left: calc( 50% - 400px ); }
#page-content.information .single-content {
  border-top: 1px dashed #5A5757;
  border-bottom: 1px dashed #5A5757; }
  #page-content.information .single-content .post-header {
    padding: 20px 30px;
    background-color: #e9f0f4; }
    @media (max-width: 768px) {
      #page-content.information .single-content .post-header {
        padding: 10px 20px; } }
    #page-content.information .single-content .post-header h2 {
      font-size: 30px;
      color: #59809e;
      padding: 0;
      margin: 0;
      letter-spacing: 3px;
      line-height: 1.3; }
      @media (max-width: 768px) {
        #page-content.information .single-content .post-header h2 {
          font-size: 25px; } }
      #page-content.information .single-content .post-header h2 a {
        color: #59809e; }
  #page-content.information .single-content .post-content {
    padding: 30px 0; }
    #page-content.information .single-content .post-content p {
      margin-bottom: 1em;
      font-size: 15px; }
@media (max-width: 768px) {
  #page-content.information .archive-list {
    display: none; } }
#page-content.information .archive-list li {
  margin-bottom: 10px; }
  #page-content.information .archive-list li a {
    font-size: 20px;
    letter-spacing: 2px;
    color: #5A5757; }
#page-content.information .pagenavi-wrapper {
  text-align: center; }
  #page-content.information .pagenavi-wrapper:not(:empty) {
    padding: 50px 0; }
#page-content.information .wp-pagenavi a, #page-content.information .wp-pagenavi span {
  font-size: 18px;
  border: none;
  color: #aaa; }
  #page-content.information .wp-pagenavi a.current, #page-content.information .wp-pagenavi span.current {
    color: #5A5757; }
  #page-content.information .wp-pagenavi a:hover, #page-content.information .wp-pagenavi span:hover {
    border: none; }
  #page-content.information .wp-pagenavi a.pages, #page-content.information .wp-pagenavi a.nextpostslink, #page-content.information .wp-pagenavi a.previouspostslink, #page-content.information .wp-pagenavi span.pages, #page-content.information .wp-pagenavi span.nextpostslink, #page-content.information .wp-pagenavi span.previouspostslink {
    display: none; }

body.archive.date .archive-list li a {
  color: #aaa !important; }
  body.archive.date .archive-list li a[aria-current="page"] {
    color: #5A5757 !important; }

.below-page-nav {
  padding: 30px; }
  @media (max-width: 768px) {
    .below-page-nav {
      padding: 30px 0; } }
  .below-page-nav .more-btn a {
    display: block;
    letter-spacing: 0;
    padding-left: 10px;
    padding-right: 10px; }

#page-content.dentists .page-header {
  color: #779276;
  background-color: #e9efe8; }
  #page-content.dentists .page-header .illust {
    width: 150px;
    left: calc( 50% + 300px ); }
#page-content.dentists #dentists-header {
  width: 50%;
  margin: auto; }
  #page-content.dentists #dentists-header .sp-order-1 {
    position: relative;
    z-index: 5; }
  #page-content.dentists #dentists-header h2.has-text-align-right {
    margin-left: -130px; }
    @media (max-width: 768px) {
      #page-content.dentists #dentists-header h2.has-text-align-right {
        margin: 0; } }
  #page-content.dentists #dentists-header h2.has-text-align-left {
    margin-right: -130px; }
    @media (max-width: 768px) {
      #page-content.dentists #dentists-header h2.has-text-align-left {
        margin: 0; } }
  @media (max-width: 768px) {
    #page-content.dentists #dentists-header {
      width: 100%; }
      #page-content.dentists #dentists-header .sp-order-1 {
        order: 1;
        z-index: 1; }
        #page-content.dentists #dentists-header .sp-order-1 .wp-block-image {
          margin-bottom: -20px; }
        #page-content.dentists #dentists-header .sp-order-1 img {
          max-height: 300px;
          width: auto; }
      #page-content.dentists #dentists-header .sp-order-2 {
        order: 2;
        flex-basis: 50% !important; }
      #page-content.dentists #dentists-header .sp-order-3 {
        order: 3;
        flex-basis: 50% !important; }
      #page-content.dentists #dentists-header .wp-block-column {
        text-align: center; } }
#page-content.dentists #dentist1, #page-content.dentists #dentist2 {
  margin-top: -57px; }
#page-content.dentists h2.headbt a {
  font-size: 25px; }
@media (max-width: 768px) {
  #page-content.dentists h2.headbt {
    display: inline-block;
    border-bottom: none; }
    #page-content.dentists h2.headbt:after {
      display: none; }
    #page-content.dentists h2.headbt a {
      font-size: 13px;
      padding: 8px 25px 10px;
      display: inline-block;
      font-weight: 600;
      position: relative;
      color: white;
      background-color: #5A5757;
      border-radius: 50px;
      transition: .5s;
      line-height: 1;
      box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.35);
      opacity: 1;
      transition: .3s;
      margin-right: 5px;
      margin-left: 5px; }
    #page-content.dentists h2.headbt.blue a {
      background-color: #59809e; }
    #page-content.dentists h2.headbt.green a {
      background-color: #779276; } }

#page-content.facilities .page-header {
  color: #CC9D6C;
  background-color: #f7f1e9; }
  #page-content.facilities .page-header .illust {
    width: 150px;
    left: calc( 50% + 300px ); }

#page-content.about .page-header {
  color: #59809e;
  background-color: #e9f0f4; }
  #page-content.about .page-header .illust {
    width: 150px;
    left: calc( 50% - 400px );
    bottom: 0; }
  #page-content.about .page-header .illust-history {
    width: 150px;
    left: calc( 50% + 300px );
    bottom: 0; }
#page-content.about .container {
  max-width: 900px !important; }
#page-content.about .history-timeline {
  position: relative; }
  @media (max-width: 768px) {
    #page-content.about .history-timeline .sp-ph1 {
      position: relative;
      left: -25px;
      z-index: 5;
      top: 0;
      width: 250px; }
    #page-content.about .history-timeline .sp-ph2 {
      position: absolute;
      right: -25px;
      width: 100px;
      top: 0px; }
      #page-content.about .history-timeline .sp-ph2 img {
        margin-bottom: 5px; } }
  #page-content.about .history-timeline ul {
    margin: 0;
    width: 100%;
    position: relative; }
    #page-content.about .history-timeline ul:before {
      content: '';
      height: 100%;
      width: 1px;
      background-color: #59809e;
      position: absolute;
      left: calc( 50% - 5px );
      top: 0; }
      @media (max-width: 768px) {
        #page-content.about .history-timeline ul:before {
          left: 30px; } }
    #page-content.about .history-timeline ul li {
      margin: 0;
      padding: 0;
      list-style: none;
      color: #59809e;
      position: relative;
      height: 100px; }
      #page-content.about .history-timeline ul li:before {
        content: '';
        width: 10px;
        height: 10px;
        border-radius: 20px;
        background-color: #59809e;
        position: absolute;
        top: 8px;
        left: calc( 50% - 9px ); }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li:before {
            left: 25px; } }
      #page-content.about .history-timeline ul li .info {
        position: absolute;
        left: calc( 50% + 20px );
        top: 7px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li .info {
            left: 100px; } }
      #page-content.about .history-timeline ul li .ph {
        position: absolute;
        left: calc( 50% + 250px );
        top: 7px;
        min-width: 300px; }
        #page-content.about .history-timeline ul li .ph img {
          margin-bottom: 5px; }
      #page-content.about .history-timeline ul li p.year {
        font-size: 13px;
        position: absolute;
        top: 0px;
        right: calc( 50% + 20px );
        text-align: right;
        letter-spacing: 3px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li p.year {
            top: 3px;
            left: 45px;
            text-align: left;
            letter-spacing: 1px; } }
      #page-content.about .history-timeline ul li p.label {
        font-size: 25px;
        color: #59809e;
        line-height: 1.3;
        margin-bottom: 5px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li p.label {
            font-size: 18px; } }
      #page-content.about .history-timeline ul li p.desc {
        color: #5A5757;
        font-size: 14px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li p.desc {
            font-size: 11px; } }
      #page-content.about .history-timeline ul li.important:before {
        width: 20px;
        height: 20px;
        border-radius: 40px;
        top: 15px;
        left: calc( 50% - 14px ); }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.important:before {
            left: 21px;
            top: 9px; } }
      #page-content.about .history-timeline ul li.important p.year {
        font-size: 25px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.important p.year {
            font-size: 18px;
            top: 3px; } }
      #page-content.about .history-timeline ul li.right .info {
        left: auto;
        right: calc( 50% + 30px ); }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.right .info {
            right: auto;
            left: 100px; } }
        #page-content.about .history-timeline ul li.right .info p {
          text-align: right !important; }
          @media (max-width: 768px) {
            #page-content.about .history-timeline ul li.right .info p {
              text-align: left !important; } }
      #page-content.about .history-timeline ul li.right p.year {
        top: 0px;
        left: calc( 50% + 15px );
        right: auto;
        text-align: left; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.right p.year {
            left: 45px;
            top: 3px; } }
      #page-content.about .history-timeline ul li.right .ph {
        left: auto;
        right: calc( 50% + 200px );
        top: 7px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.right .ph.sp-ph3 {
            left: -25px;
            z-index: 5;
            top: 160px;
            width: 250px; } }
      #page-content.about .history-timeline ul li.current {
        height: 250px; }
        @media (max-width: 768px) {
          #page-content.about .history-timeline ul li.current {
            height: 300px; } }
        #page-content.about .history-timeline ul li.current p.year {
          top: 0px;
          left: calc( 50% + 15px );
          right: auto;
          text-align: left; }
          @media (max-width: 768px) {
            #page-content.about .history-timeline ul li.current p.year {
              top: 3px;
              left: 45px;
              letter-spacing: 1px; } }
        #page-content.about .history-timeline ul li.current .info {
          top: 50px;
          left: 45px; }
        #page-content.about .history-timeline ul li.current .ph {
          left: auto;
          right: calc( 50% + 50px );
          top: -110px;
          width: 500px; }
          @media (max-width: 768px) {
            #page-content.about .history-timeline ul li.current .ph.sp-ph4 {
              position: relative;
              left: 0;
              width: 100%;
              margin: 0 -25px 0 -25px !important;
              min-width: fit-content;
              top: 20px; } }

/***********************************************************************
search result
**********************************************************************/
@media (max-width: 768px) {
  #page-content.search-result .article-list article {
    margin-bottom: 5px !important; }
    #page-content.search-result .article-list article .container {
      margin-top: 0 !important; }
      #page-content.search-result .article-list article .container h3 {
        padding-top: 0;
        font-size: 13px;
        margin-bottom: 5px; }
      #page-content.search-result .article-list article .container .date,
      #page-content.search-result .article-list article .container .excerpt,
      #page-content.search-result .article-list article .container .excerpt p {
        font-size: 11px; } }

/***********************************************************************
form
**********************************************************************/
#form-section .inq-flow {
  max-width: 650px;
  margin: 30px auto; }
#form-section dl {
  border-top: 1px solid #ccc;
  padding: 20px 0; }
  #form-section dl:after {
    content: '';
    display: block;
    clear: both; }
  #form-section dl dt {
    width: 200px;
    float: left;
    padding-left: 25px;
    position: relative;
    font-size: 16px; }
    @media (max-width: 768px) {
      #form-section dl dt {
        float: none;
        width: 100%;
        margin-bottom: 10px; } }
    #form-section dl dt span.req-label {
      position: absolute;
      top: 5px;
      left: 0;
      color: #ccc;
      font-size: 1.2em;
      width: 18px;
      height: 18px;
      background: url(../images/common/req.svg) no-repeat center center/contain; }
      #form-section dl dt span.req-label.req-label-fix {
        background-image: url(../images/common/req-fix.svg); }
    #form-section dl dt span.req-text {
      display: block;
      color: #B70000;
      font-size: 0.8em; }
      @media (max-width: 768px) {
        #form-section dl dt span.req-text {
          display: inline-block; } }
  #form-section dl dd {
    float: left;
    margin-left: 30px;
    width: calc( 100% - 230px );
    font-size: 16px; }
    @media (max-width: 768px) {
      #form-section dl dd {
        float: none;
        margin-left: 0;
        width: 100%;
        font-size: 13px;
        padding-left: 30px;
        padding-right: 10px; } }
    #form-section dl dd input, #form-section dl dd select, #form-section dl dd textarea {
      font-size: 16px;
      padding: 5px 10px;
      border: 1px solid #5A5757; }
    #form-section dl dd input[type="text"],
    #form-section dl dd input[type="email"],
    #form-section dl dd input[type="tel"],
    #form-section dl dd textarea {
      width: 100%; }
    #form-section dl dd input[type="radio"],
    #form-section dl dd input[type="checkbox"] {
      transform: scale(1.5);
      transform-origin: center center; }
    #form-section dl dd select {
      -moz-appearance: menulist;
      -webkit-appearance: menulist; }
    #form-section dl dd select::-ms-expand {
      display: block; }
    #form-section dl dd input.is-middle {
      width: 30%; }
    #form-section dl dd input.is-small {
      width: 100px; }
    #form-section dl dd label.side {
      width: 2em;
      display: inline-block;
      margin-right: 5px; }
    #form-section dl dd a.zipinfo {
      text-decoration: underline;
      font-size: 0.9em;
      margin-left: 10px; }
    #form-section dl dd p.example {
      font-size: 0.9em;
      color: #888;
      padding-top: 10px; }
    #form-section dl dd p.note {
      font-size: 0.9em;
      color: #5A5757;
      padding-top: 10px; }
      #form-section dl dd p.note.red {
        color: #B70000; }
    #form-section dl dd .m5 {
      margin-bottom: 5px; }
    #form-section dl dd span.error {
      font-size: 93%;
      color: #B70000;
      display: inline-block;
      font-weight: 700; }
#form-section .submit-box {
  text-align: center;
  padding: 50px 0; }
  #form-section .submit-box input, #form-section .submit-box button {
    border: 3px solid #5A5757;
    color: #5A5757;
    border-radius: 30px;
    background: #CC9D6C;
    padding: 10px 50px 12px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    font-size: 18px;
    cursor: pointer;
    margin: 0 20px; }
    @media (max-width: 768px) {
      #form-section .submit-box input, #form-section .submit-box button {
        display: block;
        width: 90%;
        margin-bottom: 10px; } }
#form-section .mw_wp_form_confirm p.example,
#form-section .mw_wp_form_confirm p.note,
#form-section .mw_wp_form_confirm a.zipinfo {
  display: none; }
#form-section .mw_wp_form_confirm label.side {
  display: none; }
#form-section .mw_wp_form_confirm span.req-text {
  display: none; }
#form-section .mw_wp_form_confirm #FData_contents,
#form-section .mw_wp_form_confirm #FData_contents2 {
  display: block !important; }

.wp-block-image {
  /*margin-bottom: 0;*/ }

.wp-block-gallery ul {
  flex-flow: row wrap-reverse;
  margin-left: 0 !important; }

.wp-block-gallery .blocks-gallery-item figcaption {
  padding: 0 10px; }

.editor-styles-wrapper {
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
  font-weight: 600; }
  .editor-styles-wrapper .mb-0 {
    margin-bottom: 0 !important; }
  .editor-styles-wrapper .p-0 {
    padding: 0 !important; }
  .editor-styles-wrapper .lh-2 {
    line-height: 2 !important; }
  .editor-styles-wrapper .has-huge-font-size {
    font-size: 50px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .has-huge-font-size {
        font-size: 35px; } }
  .editor-styles-wrapper .has-large-font-size {
    font-size: 36px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .has-large-font-size {
        font-size: 16px; } }
  .editor-styles-wrapper .has-medium-font-size {
    font-size: 20px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .has-medium-font-size {
        font-size: 14px; } }
  .editor-styles-wrapper .has-normal-font-size {
    font-size: 16px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .has-normal-font-size {
        font-size: 13px; } }
  .editor-styles-wrapper .has-small-font-size {
    font-size: 13px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .has-small-font-size {
        font-size: 11px; } }
  .editor-styles-wrapper .wp-block {
    max-width: 1200px !important;
    margin: 0 auto; }
  .editor-styles-wrapper .wp-block-group {
    padding: 30px; }
  .editor-styles-wrapper .wp-block-table {
    margin-bottom: 0 !important; }
  .editor-styles-wrapper .wp-block-gallery ul {
    flex-flow: row wrap-reverse;
    margin-left: 0 !important; }
  .editor-styles-wrapper .wp-block-button a {
    transition: all .3s; }
    .editor-styles-wrapper .wp-block-button a:hover {
      opacity: .7; }
  .editor-styles-wrapper .wp-block-button.pdf a {
    padding-bottom: 1.2em !important; }
    .editor-styles-wrapper .wp-block-button.pdf a:before {
      content: "";
      width: 32px;
      height: 32px;
      background: url(../images/common/pdf.svg) no-repeat 0 0;
      display: inline-block;
      vertical-align: bottom;
      margin-right: 5px; }
  .editor-styles-wrapper .wp-block-buttons a {
    text-decoration: none; }
  .editor-styles-wrapper .wp-block-quote {
    background: #E2E8FA;
    margin-bottom: 10px;
    padding: 30px 50px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .wp-block-quote {
        padding: 20px; } }
    .editor-styles-wrapper .wp-block-quote p {
      margin-bottom: 0 !important; }
    .editor-styles-wrapper .wp-block-quote ul {
      border-top: 1px solid #5A5757;
      padding-top: 15px;
      margin-bottom: 0 !important; }
      .editor-styles-wrapper .wp-block-quote ul li {
        font-size: 16px;
        padding-left: 20px;
        position: relative; }
        .editor-styles-wrapper .wp-block-quote ul li::before {
          color: #BDBCBC;
          content: "■";
          position: absolute;
          left: 0;
          top: 0; }
  .editor-styles-wrapper .has-text-align-center {
    text-align: center; }
  .editor-styles-wrapper .has-text-align-right {
    text-align: right; }
  .editor-styles-wrapper .has-text-nowrap {
    white-space: nowrap !important; }
  .editor-styles-wrapper.error404 {
    text-align: center;
    padding-bottom: 100px; }
    .editor-styles-wrapper.error404 h2 {
      background: none;
      font-size: 150px;
      color: #5A5757;
      margin-bottom: 0; }
      @media (max-width: 768px) {
        .editor-styles-wrapper.error404 h2 {
          font-size: 100px; } }
      .editor-styles-wrapper.error404 h2:before, .editor-styles-wrapper.error404 h2:after {
        display: none; }
    .editor-styles-wrapper.error404 p {
      font-size: 20px;
      margin-bottom: 2em; }
      @media (max-width: 768px) {
        .editor-styles-wrapper.error404 p {
          font-size: 15px; } }
  .editor-styles-wrapper .inner {
    max-width: 1200px;
    padding-top: 30px; }
  .editor-styles-wrapper h2 {
    border-bottom: 2px solid #5A5757;
    font-size: 30px;
    padding-bottom: 5px;
    padding-top: 0em;
    position: relative;
    margin-bottom: 10px;
    text-align: center; }
    .editor-styles-wrapper h2.has-text-align-left {
      text-align: left; }
    .editor-styles-wrapper h2.has-text-align-right {
      text-align: right; }
    .editor-styles-wrapper h2.blue {
      color: #59809e;
      border-bottom-color: #59809e; }
      .editor-styles-wrapper h2.blue:after {
        border-bottom-color: #59809e; }
    .editor-styles-wrapper h2.green {
      color: #779276;
      border-bottom-color: #779276; }
      .editor-styles-wrapper h2.green:after {
        border-bottom-color: #779276; }
    .editor-styles-wrapper h2:after {
      content: '';
      height: 1px;
      border-bottom: 1px dashed #5A5757;
      bottom: 5px !important;
      left: 0;
      width: 100%;
      top: auto !important;
      position: absolute; }
  .editor-styles-wrapper h4 {
    margin-bottom: 20px !important;
    font-size: 16px; }
    .editor-styles-wrapper h4.has-background {
      padding: 5px 10px; }
  .editor-styles-wrapper h5 {
    font-size: 1.2em; }
  .editor-styles-wrapper p {
    margin-bottom: 1em; }
  .editor-styles-wrapper .no-border table {
    margin-bottom: 30px !important;
    border: none !important; }
    .editor-styles-wrapper .no-border table td, .editor-styles-wrapper .no-border table th {
      padding: 2px 5px !important;
      border: none !important;
      background-color: transparent !important;
      font-weight: normal; }
    .editor-styles-wrapper .no-border table th {
      white-space: nowrap !important;
      text-align: left; }
    .editor-styles-wrapper .no-border table td {
      width: 90%; }
  .editor-styles-wrapper .wp-block-image figcaption {
    font-size: 16px; }
    @media (max-width: 768px) {
      .editor-styles-wrapper .wp-block-image figcaption {
        font-size: 12px; } }
  .editor-styles-wrapper .wp-block-group h5 {
    margin: 0 0 10px 0;
    padding-top: 0;
    border-bottom: 2px solid #000; }
  .editor-styles-wrapper .wp-block-group.blue h5 {
    color: #59809e;
    border-bottom-color: #59809e; }
    .editor-styles-wrapper .wp-block-group.blue h5:after {
      border-bottom-color: #59809e; }
  .editor-styles-wrapper .wp-block-group.blue ul li:before {
    color: #59809e;
    opacity: 0.5; }
  .editor-styles-wrapper .wp-block-group.green h5 {
    color: #779276;
    border-bottom-color: #779276; }
    .editor-styles-wrapper .wp-block-group.green h5:after {
      border-bottom-color: #779276; }
  .editor-styles-wrapper .wp-block-group.green ul li:before {
    color: #779276;
    opacity: 0.5; }
  .editor-styles-wrapper .wp-block-group ul {
    font-size: 16px !important;
    margin-left: 25px !important;
    margin-top: 0 !important; }
    .editor-styles-wrapper .wp-block-group ul li {
      list-style: none;
      text-indent: -10px; }
      .editor-styles-wrapper .wp-block-group ul li:before {
        content: '●';
        display: inline-block;
        margin-right: 3px; }
