@charset "UTF-8";
/* CSS Document */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/*html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}*/
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

html {
  font-size: 62.5%; }

body {
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  padding: 0;
  margin: 0;
  background-color: #fff;
  font-size: 1.6rem;
  line-height: 2.2;
  position: relative;
  -webkit-text-size-adjust: 100%;
  z-index: 0; }
  @media screen and (max-width: 1080px) {
    body {
      font-size: 1.5rem;
      line-height: 1.9; } }
  body img {
    display: block; }
  body a {
    text-decoration: none;
    word-break: break-word; }
    body a:hover {
      opacity: 1;
      transition: 0.3s ease-in-out; }
    body a img:hover {
      opacity: .8;
      transition: 0.3s ease-in-out; }
  @media (min-width: 767px) {
    body a[href*="tel:"] {
      pointer-events: none;
      cursor: default;
      text-decoration: none; } }
  body .fadein {
    opacity: 0;
    transform: translate(0, 0);
    transition: all 1.5s; }
    body .fadein.fadein-left {
      transform: translate(-30px, 0); }
    body .fadein.fadein-right {
      transform: translate(30px, 0); }
    body .fadein.fadein-up {
      transform: translate(0, -30px); }
    body .fadein.fadein-bottom {
      transform: translate(0, 30px); }
    body .fadein.scrollin {
      opacity: 1 !important;
      transform: translate(0, 0) !important; }
  body .feed-powered-by-es-feed-img {
    bottom: -10px !important; }
  body a.feed-powered-by-es.feed-powered-by-es-center {
    display: none !important; }
  body .es-page-list {
    margin: 0 !important; }

.pc {
  display: block; }
  @media screen and (max-width: 1080px) {
    .pc {
      display: none !important; } }

.sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    .sp {
      display: block !important; } }

.pc-s {
  display: block; }
  @media screen and (max-width: 460px) {
    .pc-s {
      display: none; } }

.tab {
  display: none; }
  @media screen and (max-width: 1350px) {
    .tab {
      display: block; } }

.sp-s {
  display: none; }
  @media screen and (max-width: 460px) {
    .sp-s {
      display: block; } }

.sp-ss {
  display: none; }
  @media screen and (max-width: 380px) {
    .sp-ss {
      display: block; } }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: linear-gradient(90deg, #E1EDFA 0%, #FAFBE7 50%, #E5F6F1 100%);
  height: 100px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap;
  padding: 0 0 10px 30px;
  box-sizing: border-box;
  /* 背景スクロールを止めるクラス */ }
  @media screen and (max-width: 1080px) {
    header {
      background: #fff;
      flex-wrap: wrap;
      padding: 0 0 10px 10px; } }
  header .p-header__inner {
    max-width: 557px;
    padding: 10px 0 0; }
    header .p-header__inner .p-header__logo {
      font-size: 2.6rem;
      font-family: "Cormorant", serif;
      font-optical-sizing: auto;
      font-weight: 600;
      font-style: normal;
      line-height: 1.2;
      letter-spacing: 1.5px; }
      @media screen and (max-width: 1080px) {
        header .p-header__inner .p-header__logo {
          font-size: 2rem; } }
      header .p-header__inner .p-header__logo a {
        color: #333; }
      header .p-header__inner .p-header__logo span {
        font-size: 1.8rem; }
        @media screen and (max-width: 1080px) {
          header .p-header__inner .p-header__logo span {
            font-size: 1.6rem; } }
  header .gnavi-pc {
    width: 767px;
    height: auto;
    z-index: 100;
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    flex-wrap: wrap;
    box-sizing: border-box; }
    @media screen and (max-width: 1350px) {
      header .gnavi-pc {
        width: auto; } }
    @media screen and (max-width: 1080px) {
      header .gnavi-pc {
        display: none; } }
    header .gnavi-pc ul {
      padding: 15px 20px 0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: nowrap; }
      header .gnavi-pc ul li {
        font-size: 1.4rem;
        margin-right: 20px;
        letter-spacing: 1.3px; }
        @media screen and (max-width: 1350px) {
          header .gnavi-pc ul li {
            margin-right: 10px; } }
        @media screen and (max-width: 1112px) {
          header .gnavi-pc ul li {
            margin-right: 7px; } }
        header .gnavi-pc ul li a {
          color: #333;
          padding: 3px 6px; }
          header .gnavi-pc ul li a:hover {
            color: #00A87B;
            border-bottom: 3px #00A87B solid;
            padding-bottom: 5px; }
          header .gnavi-pc ul li a span {
            font-family: "Noto Sans JP", sans-serif;
            font-optical-sizing: auto;
            font-weight: 400;
            font-style: normal; }
        header .gnavi-pc ul li:last-of-type {
          margin-right: 0; }
          header .gnavi-pc ul li:last-of-type a {
            width: 105px;
            height: 33px;
            border: 1px solid #333;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.4rem;
            border-radius: 90px;
            line-height: 1;
            box-sizing: border-box; }
            header .gnavi-pc ul li:last-of-type a:hover {
              border: 1px solid #00A87B;
              color: #00A87B;
              opacity: 1; }
            header .gnavi-pc ul li:last-of-type a span {
              display: inline-block; }
        header .gnavi-pc ul li.active a {
          color: #00A87B;
          border-bottom: 3px solid #00A87B;
          padding-bottom: 5px; }
        header .gnavi-pc ul li:last-of-type.active a {
          border: 1px solid #00A87B;
          color: #00A87B; }
    header .gnavi-pc .small-link {
      width: 189px;
      height: 23px;
      border-left: 1px solid #E2E2E2;
      border-right: 1px solid #E2E2E2;
      margin: 10px 20px 0 0;
      padding: 0;
      justify-content: space-around;
      box-sizing: border-box;
      /*&.active a {
        color: $green;
        border-bottom: none;
        padding-bottom: 0;
        background-color: none;          
      }*/ }
      header .gnavi-pc .small-link li {
        font-size: 1.2rem;
        margin: 0; }
        header .gnavi-pc .small-link li a {
          color: #333; }
          header .gnavi-pc .small-link li a:hover {
            color: #00A87B;
            border-bottom: none;
            padding-bottom: 0; }
        header .gnavi-pc .small-link li:last-of-type {
          margin-right: 0; }
          header .gnavi-pc .small-link li:last-of-type a {
            width: auto;
            height: auto;
            line-height: 1;
            border: none;
            font-size: 1.2rem;
            display: inline;
            text-align: center;
            border-radius: 0;
            padding: 0; }
            header .gnavi-pc .small-link li:last-of-type a:hover {
              padding-bottom: 0;
              border: none;
              background-color: none;
              color: #00A87B;
              opacity: 1; }
        header .gnavi-pc .small-link li.active a {
          color: #00A87B;
          border-bottom: 3px solid #00A87B;
          padding-bottom: 5px; }
        header .gnavi-pc .small-link li:last-of-type.active a {
          color: #00A87B;
          border-top: none !important;
          border-left: none !important;
          border-right: none !important;
          border-bottom: 3px solid #00A87B !important;
          padding-bottom: 5px; }
  header .no-scroll {
    overflow: hidden;
    height: 100%; }
  header .gnavi-sp {
    display: none; }
  header .openbtn {
    display: none; }
  @media screen and (max-width: 1080px) {
    header {
      /*×に変化*/ }
      header .gnavi-sp {
        display: block;
        position: fixed;
        z-index: -1;
        opacity: 0;
        top: 100px;
        left: 0;
        width: 100%;
        background: linear-gradient(90deg, #E1EDFA 0%, #FAFBE7 50%, #E5F6F1 100%);
        transition: all 0.3s; }
        header .gnavi-sp ul {
          width: auto;
          margin: 40px 30px;
          padding-bottom: 200px;
          display: none;
          z-index: 999; }
          header .gnavi-sp ul li {
            list-style: none;
            text-align: left;
            font-family: "Cormorant", serif;
            font-optical-sizing: auto;
            font-weight: 300;
            font-style: normal; }
            header .gnavi-sp ul li a {
              color: #333;
              text-decoration: none;
              margin: 0 0 40px;
              display: block;
              letter-spacing: 1.2px;
              line-height: 1; }
              header .gnavi-sp ul li a span {
                font-size: 2.6rem;
                display: block;
                margin: 0 0 10px;
                /*&::after {
                  font-family: "Font Awesome 6 Free";
                  content: "\f35a";
                  color: $black;
                  padding-left: 10px;
                  font-size: 2rem;
                  display: inline-block;
                  font-weight: 400;
                }*/ }
              header .gnavi-sp ul li a b {
                letter-spacing: 1.3px;
                font-family: "Shippori Mincho", serif;
                font-weight: 600;
                font-style: normal;
                font-size: 1.3rem; }
            header .gnavi-sp ul li.active a span {
              color: #00A87B; }
            header .gnavi-sp ul li.active a b {
              color: #00A87B; }
            header .gnavi-sp ul li:last-of-type a {
              height: 99px;
              display: flex;
              justify-content: center;
              align-items: center;
              flex-wrap: nowrap;
              flex-direction: column;
              background-color: #4D5759; }
              header .gnavi-sp ul li:last-of-type a span {
                font-size: 2.6rem;
                color: #fff;
                margin: 0 0 14px; }
              header .gnavi-sp ul li:last-of-type a b {
                color: #fff;
                letter-spacing: 1.3px;
                font-family: "Shippori Mincho", serif;
                font-weight: 600;
                font-style: normal;
                font-size: 1.3rem;
                display: block; }
            header .gnavi-sp ul li.active:last-of-type a {
              background-color: #00A87B; }
            header .gnavi-sp ul li.active:last-of-type a span, header .gnavi-sp ul li.active:last-of-type a b {
              color: #fff; }
      header .gnavi-sp.panelactive {
        opacity: 1;
        position: fixed;
        z-index: 999;
        width: 100%;
        height: 100vh;
        overflow: auto;
        background-color: #333;
        -webkit-overflow-scrolling: touch; }
        header .gnavi-sp.panelactive ul {
          display: block !important; }
      header .openbtn {
        display: block;
        position: fixed;
        z-index: 9999;
        /*ボタンを最前面に*/
        top: 22px;
        right: 3%;
        cursor: pointer;
        width: 50px;
        height: 50px; } }
    @media screen and (max-width: 1080px) and (max-width: 1080px) {
      header .openbtn {
        top: 24px; } }
  @media screen and (max-width: 1080px) {
      header .openbtn span {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 14px;
        height: 3px;
        border-radius: 2px;
        background-color: #333;
        width: 48%; }
      header .openbtn span:nth-of-type(1) {
        top: 10px; }
      header .openbtn span:nth-of-type(2) {
        top: 22px; }
      header .openbtn span:nth-of-type(3) {
        top: 34px; }
      header .openbtn.active span:nth-of-type(1) {
        top: 10px;
        left: 13px;
        transform: translateY(6px) rotate(-45deg);
        width: 48%; }
      header .openbtn.active span:nth-of-type(2) {
        top: 22px;
        left: 13px;
        transform: translateY(-6px) rotate(45deg);
        width: 48%; }
      header .openbtn.active span:nth-of-type(3) {
        display: none; } }

.kv {
  position: relative;
  width: 100%;
  height: min(947px, calc(100vh - 100px));
  overflow: hidden;
  margin-top: 100px; }
  @media screen and (max-width: 1080px) {
    .kv {
      height: 500px;
      background: #F4F4F4; } }
  .kv .slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 2s ease; }
    .kv .slide.active {
      opacity: 1;
      z-index: 1; }
      .kv .slide.active img {
        animation: zoom 8s linear forwards; }
    .kv .slide .img-box {
      width: 100%;
      height: 100%;
      overflow: hidden; }
      @media screen and (max-width: 1080px) {
        .kv .slide .img-box {
          height: 306px; } }
      .kv .slide .img-box img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: scale(1); }
    .kv .slide .cap {
      position: absolute;
      left: 50px;
      bottom: 50px;
      z-index: 10; }
      @media screen and (max-width: 1080px) {
        .kv .slide .cap {
          position: static;
          margin: 20px 20px 0; } }
      .kv .slide .cap span {
        display: inline-block;
        margin-bottom: 8px;
        padding: 10px;
        line-height: 1;
        letter-spacing: 2.5px;
        font-family: "Shippori Mincho", serif;
        font-weight: 500;
        font-style: normal;
        font-size: 6.4rem;
        color: #000;
        background: linear-gradient(90deg, #E1EDFA 0%, #FAFBE7 50%, #E5F6F1 100%); }
        @media screen and (max-width: 1080px) {
          .kv .slide .cap span {
            font-size: 2.8rem; } }

@keyframes zoom {
  from {
    transform: scale(1); }
  to {
    transform: scale(1.15); } }
section {
  position: relative; }
  section .scroll-indicator {
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 10; }
    @media screen and (max-width: 1080px) {
      section .scroll-indicator {
        bottom: -100px; } }
    section .scroll-indicator span {
      font-size: 13px;
      letter-spacing: 0.2em;
      text-transform: none;
      writing-mode: horizontal-tb;
      color: #333;
      font-family: "Cormorant", serif;
      font-optical-sizing: auto;
      font-weight: 300;
      font-style: normal; }
    section .scroll-indicator::after {
      content: "";
      width: 1px;
      height: 50px;
      margin-top: 12px;
      background: #333;
      transform-origin: top center;
      animation: scrollLine 2.5s ease-in-out infinite; }
@keyframes scrollLine {
  0% {
    transform: scaleY(0.3);
    opacity: 0.4; }
  50% {
    transform: scaleY(1);
    opacity: 1; }
  100% {
    transform: scaleY(0.3);
    opacity: 0.4; } }
.h2-heading h2 {
  font-family: "Cormorant", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  letter-spacing: 1.4px;
  line-height: 1;
  margin: 0 0 60px; }
  @media screen and (max-width: 1080px) {
    .h2-heading h2 {
      margin: 0 0 30px; } }
  .h2-heading h2 span {
    display: block;
    line-height: 1;
    color: #4D5759;
    margin: 20px 0 0;
    letter-spacing: 2px;
    font-family: "Shippori Mincho", serif;
    font-weight: 600;
    font-style: normal; }

.l-about {
  background-color: #F4F4F4;
  overflow: hidden;
  padding: 110px 0; }
  @media screen and (max-width: 1080px) {
    .l-about {
      padding: 130px 0 60px; } }
  .l-about .p-about__inner {
    width: 1140px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: nowrap; }
    @media screen and (max-width: 1080px) {
      .l-about .p-about__inner {
        width: auto;
        margin: 0 20px;
        justify-content: center;
        flex-wrap: wrap; } }
    .l-about .p-about__inner .box-txt h2 {
      font-size: 5.4rem;
      color: #333; }
      @media screen and (max-width: 1080px) {
        .l-about .p-about__inner .box-txt h2 {
          font-size: 4rem; } }
      .l-about .p-about__inner .box-txt h2 span {
        font-size: 1.4rem; }
        @media screen and (max-width: 1080px) {
          .l-about .p-about__inner .box-txt h2 span {
            font-size: 1.5rem; } }
    .l-about .p-about__inner .box-txt p {
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      font-size: 1.2rem;
      line-height: 2.2;
      margin-bottom: 30px; }
      @media screen and (max-width: 1080px) {
        .l-about .p-about__inner .box-txt p {
          font-size: 1.5rem; } }
    .l-about .p-about__inner figure {
      width: 620px;
      height: auto;
      margin-left: 5vw; }
      @media screen and (max-width: 1080px) {
        .l-about .p-about__inner figure {
          width: 100%;
          margin: 0 0 20px; } }
      .l-about .p-about__inner figure img {
        width: 620px;
        height: auto; }
        @media screen and (max-width: 1080px) {
          .l-about .p-about__inner figure img {
            width: 100%; } }

.l-news {
  background-color: #fff;
  background-image: url(/univ/user/medicine/respir-thyroid-surg/assets/images/bg-about.jpg);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
  overflow: hidden;
  padding: 110px 0 120px; }
  @media screen and (max-width: 1080px) {
    .l-news {
      padding: 60px 0; } }
  .l-news .p-news__inner {
    width: 900px;
    margin: 0 auto; }
    @media screen and (max-width: 1080px) {
      .l-news .p-news__inner {
        width: auto;
        margin: 0 20px; } }
    .l-news .p-news__inner .box-h2 {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: nowrap;
      margin-bottom: 40px; }
      .l-news .p-news__inner .box-h2 h2 {
        font-size: 5.4rem;
        color: #333;
        margin: 0; }
        .l-news .p-news__inner .box-h2 h2 span {
          display: inline-block;
          font-size: 1.4rem;
          padding-left: 30px; }
          @media screen and (max-width: 1080px) {
            .l-news .p-news__inner .box-h2 h2 span {
              font-size: 1.3rem; } }
      .l-news .p-news__inner .box-h2 .btn a {
        margin: 0; }
    .l-news .p-news__inner .news dl {
      position: relative;
      border-bottom: 1px solid #D5DCDE;
      padding: 20px 0;
      display: flex;
      justify-content: flex-start;
      align-items: center;
      flex-wrap: nowrap; }
      .l-news .p-news__inner .news dl:first-child {
        border-top: 1px solid #D5DCDE; }
      .l-news .p-news__inner .news dl.is-link {
        cursor: pointer; }
        .l-news .p-news__inner .news dl.is-link:hover dd a {
          text-decoration: none;
          opacity: 1; }
      .l-news .p-news__inner .news dl::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 100%;
        height: 1px;
        background: #4D5759;
        transform: scaleX(0);
        transform-origin: right center;
        transition: transform .6s ease; }
      .l-news .p-news__inner .news dl:hover::after {
        transform: scaleX(1);
        transform-origin: left center; }
      @media screen and (max-width: 1080px) {
        .l-news .p-news__inner .news dl {
          flex-wrap: wrap; } }
      .l-news .p-news__inner .news dl dt {
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        width: 211px;
        font-size: 1.4rem;
        padding-right: 20px;
        flex-shrink: 0; }
        @media screen and (max-width: 1080px) {
          .l-news .p-news__inner .news dl dt {
            width: 100%;
            font-size: 1.5rem; } }
        .l-news .p-news__inner .news dl dt span {
          margin-left: 30px; }
      .l-news .p-news__inner .news dl dd {
        font-size: 1.5rem;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        line-height: 1.8; }
        @media screen and (max-width: 1080px) {
          .l-news .p-news__inner .news dl dd {
            width: 100%;
            font-size: 1.5rem; } }
        .l-news .p-news__inner .news dl dd a {
          font-family: "Noto Sans JP", sans-serif;
          font-optical-sizing: auto;
          font-weight: 400;
          font-style: normal;
          color: #333;
          text-decoration: none; }

.ico-info {
  width: 81px;
  height: 23px;
  line-height: 23px;
  background-color: #E5F6F1;
  border-radius: 90px;
  text-align: center;
  font-size: 1.2rem;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal; }

.top-info {
  height: 314px;
  background-color: #E5F6F1;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  @media screen and (max-width: 1080px) {
    .top-info {
      height: auto;
      justify-content: center;
      flex-wrap: wrap; } }
  .top-info dl {
    cursor: pointer;
    position: relative;
    overflow: hidden;
    width: calc(100% / 3);
    height: 314px;
    border-right: 1px solid #D5DCDE;
    padding: 30px 0 0 30px;
    box-sizing: border-box;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    transition: all .3s ease;
    /*&:hover {
      &::before {
        opacity: 1;
        transform: scale(1);
      }
      dt, dt span {
        color: $white;
      }
      // ボタンもhover状態にする
      .btn a {
        background: $gray-thin;
        color: $black;
        border-color: $gray-thin;
      }
    }*/ }
    @media screen and (max-width: 1080px) {
      .top-info dl {
        cursor: default;
        width: auto;
        height: auto;
        margin: 0;
        padding: 60px 20px;
        border-right: none;
        border-bottom: 1px solid #D5DCDE; } }
    .top-info dl::before {
      content: "";
      position: absolute;
      inset: 0;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      opacity: 0;
      transform: scale(1.05);
      transition: opacity .4s ease, transform .8s ease;
      z-index: 1; }
      @media screen and (max-width: 1080px) {
        .top-info dl::before {
          display: none; } }
    .top-info dl:nth-child(1)::before {
      background-image: url("/univ/user/medicine/respir-thyroid-surg/assets/images/img-info-01.jpg"); }
    .top-info dl:nth-child(2)::before {
      background-image: url("/univ/user/medicine/respir-thyroid-surg/assets/images/img-info-02.jpg"); }
    .top-info dl:nth-child(3)::before {
      background-image: url("/univ/user/medicine/respir-thyroid-surg/assets/images/img-info-03.jpg"); }
    .top-info dl dt, .top-info dl dd {
      position: relative;
      z-index: 2; }
    .top-info dl dt {
      color: #333;
      font-size: 5.4rem;
      font-family: "Cormorant", serif;
      font-weight: 300;
      letter-spacing: 1.4px;
      line-height: 1;
      transition: color .3s ease; }
      @media screen and (max-width: 1080px) {
        .top-info dl dt {
          font-size: 4rem; } }
      .top-info dl dt span {
        display: block;
        margin-top: 20px;
        font-family: "Shippori Mincho", serif;
        font-weight: 600;
        font-style: normal;
        font-size: 1.4rem;
        color: #333;
        transition: color .3s ease; }
        @media screen and (max-width: 1080px) {
          .top-info dl dt span {
            font-size: 1.5rem; } }
    .top-info dl dd {
      position: relative; }
      @media screen and (max-width: 1080px) {
        .top-info dl dd {
          margin: 0 auto; } }
      .top-info dl dd .btn {
        position: absolute;
        right: 20px;
        bottom: 30px;
        margin: 0; }
        @media screen and (max-width: 1080px) {
          .top-info dl dd .btn {
            position: static;
            margin: 0 auto; } }
        .top-info dl dd .btn a {
          background: none;
          color: #333;
          border: 1px solid #D5DCDE; }
        .top-info dl dd .btn a:hover {
          background: #D5DCDE;
          color: #333;
          border: 1px solid #D5DCDE; }
      @media screen and (max-width: 1080px) {
        .top-info dl dd figure {
          width: 100%;
          margin: 30px auto 0; } }
      @media screen and (max-width: 1080px) {
        .top-info dl dd figure img {
          width: 100%;
          height: auto; } }
    @media (hover: hover) and (pointer: fine) {
      .top-info dl:hover::before {
        opacity: 1;
        transform: scale(1); }
      .top-info dl:hover dt, .top-info dl:hover dt span {
        color: #fff; }
      .top-info dl:hover .btn a {
        background: #D5DCDE;
        color: #333;
        border-color: #D5DCDE; } }
    @media screen and (max-width: 1080px) {
      .top-info dl:hover::before {
        opacity: 0;
        transform: scale(1.05); }
      .top-info dl:hover dt, .top-info dl:hover dt span {
        color: #333; }
      .top-info dl:hover .btn a {
        background: none;
        color: #333;
        border-color: #D5DCDE; } }

.top-photos {
  background-color: #F4F4F4;
  overflow: hidden;
  padding: 138px 0 120px;
  /* ホバーで停止 */ }
  @media screen and (max-width: 1080px) {
    .top-photos {
      padding: 60px 0; } }
  .top-photos h2 {
    font-size: 6.4rem;
    line-height: 1.2;
    text-align: center;
    font-family: "Shippori Mincho", serif;
    font-weight: 500;
    font-style: normal;
    color: #4D5759; }
    @media screen and (max-width: 1080px) {
      .top-photos h2 {
        font-size: 3.8rem; } }
  .top-photos .marquee {
    width: 100%;
    overflow: hidden;
    position: relative; }
  .top-photos .marquee-track {
    display: flex;
    width: max-content;
    will-change: transform; }
    .top-photos .marquee-track img {
      width: 422px;
      height: 298px;
      object-fit: cover;
      margin-right: 20px;
      flex-shrink: 0; }
      @media screen and (max-width: 1080px) {
        .top-photos .marquee-track img {
          width: 335px;
          height: 236px;
          margin-right: 10px; } }

.h1-heading {
  margin: 100px 0 0;
  height: 296px;
  background: linear-gradient(90deg, #E1EDFA 0%, #FAFBE7 50%, #E5F6F1 100%);
  display: flex;
  align-items: center;
  justify-content: flex-start; }
  @media screen and (max-width: 1080px) {
    .h1-heading {
      height: 283px;
      align-items: flex-end; } }
  .h1-heading h1.wp-block-heading {
    width: 100%;
    max-width: 1082px;
    margin: 0 auto;
    font-size: 8rem;
    line-height: 1;
    font-family: "Cormorant", serif;
    font-weight: 300;
    letter-spacing: 1.5px; }
    @media screen and (max-width: 1080px) {
      .h1-heading h1.wp-block-heading {
        font-size: 5.2rem;
        margin: 0 0 40px 20px; } }
    .h1-heading h1.wp-block-heading span {
      display: block;
      font-family: "Shippori Mincho", serif;
      font-weight: 600;
      font-size: 3.2rem;
      color: #4D5759;
      margin-top: 20px; }
      @media screen and (max-width: 1080px) {
        .h1-heading h1.wp-block-heading span {
          margin-top: 15px; } }

.content {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
  padding: 100px 0;
  /*h2.wp-block-heading.heading-normal {
    font-size: 3rem;
    line-height: 1.6;
    margin: 0 0 45px;
    position: relative;
    //display: inline-block;
    padding: 60px 0 30px;
      &:first-of-type {
             padding: 0 0 30px; 
      }
    span {
      font-size: 2rem;
    }
    &::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background: linear-gradient(to right, $green 0 25%, $gray-thin 25% 100%);
    }
  }*/
  /*.u-blue {
    color: #0085C4;
}
.u-green {
    color: #45B034;
} */
  /* margin-top */
  /* margin-bottom */
  /* margin-right */
  /* margin-left */
  /* padding-top */
  /* padding-bottom */
  /* padding-right */
  /* padding-left */ }
  @media screen and (max-width: 940px) {
    .content {
      width: auto;
      margin: 0 20px;
      padding: 60px 0; } }
  .content .news dl {
    position: relative;
    border-bottom: 1px solid #D5DCDE;
    padding: 20px 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap; }
    .content .news dl:first-child {
      border-top: 1px solid #D5DCDE; }
    .content .news dl.is-link {
      cursor: pointer; }
      .content .news dl.is-link:hover dd a {
        text-decoration: none;
        opacity: 1; }
    .content .news dl::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -1px;
      width: 100%;
      height: 1px;
      background: #4D5759;
      transform: scaleX(0);
      transform-origin: right center;
      transition: transform .6s ease; }
    .content .news dl:hover::after {
      transform: scaleX(1);
      transform-origin: left center; }
    @media screen and (max-width: 1080px) {
      .content .news dl {
        flex-wrap: wrap; } }
    .content .news dl dt {
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      width: 211px;
      font-size: 1.4rem;
      padding-right: 20px;
      flex-shrink: 0; }
      @media screen and (max-width: 1080px) {
        .content .news dl dt {
          width: 100%;
          font-size: 1.5rem; } }
      .content .news dl dt span {
        margin-left: 30px; }
    .content .news dl dd {
      font-size: 1.5rem;
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      line-height: 1.8; }
      @media screen and (max-width: 1080px) {
        .content .news dl dd {
          width: 100%;
          font-size: 1.5rem; } }
      .content .news dl dd a {
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        color: #333;
        text-decoration: none; }
  .content .wp-block-heading {
    font-family: "Shippori Mincho", serif;
    font-style: normal;
    letter-spacing: 1.2px; }
  .content h2.wp-block-heading {
    font-weight: 600; }
  .content h2.wp-block-heading {
    font-size: 3rem;
    line-height: 1.6;
    margin: 0 0 45px;
    position: relative;
    padding: 60px 0 30px; }
    .content h2.wp-block-heading:first-of-type {
      padding: 0 0 30px; }
    .content h2.wp-block-heading span {
      font-size: 2rem; }
    .content h2.wp-block-heading::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background: linear-gradient(to right, #00A87B 0 25%, #D5DCDE 25% 100%); }
  .content h2.wp-block-heading.heading-featured {
    max-width: 723px;
    color: #00A87B;
    font-size: 3.2rem;
    line-height: 1.6;
    text-align: center;
    margin: 0 auto 60px;
    padding: 60px 0 0; }
    .content h2.wp-block-heading.heading-featured:first-of-type {
      padding: 0; }
    .content h2.wp-block-heading.heading-featured span {
      display: none; }
    .content h2.wp-block-heading.heading-featured::after {
      display: none; }
    @media screen and (max-width: 1080px) {
      .content h2.wp-block-heading.heading-featured {
        font-size: 3rem;
        text-align: left;
        margin: 0 auto 40px; } }
  .content h3.wp-block-heading {
    max-width: 723px;
    font-size: 2rem;
    line-height: 1.6;
    border-left: 2px solid #00A87B;
    padding-left: 15px;
    margin: 30px auto 20px;
    box-sizing: border-box;
    font-weight: 700; }
  .content h4.wp-block-heading {
    max-width: 723px;
    font-size: 1.6rem;
    line-height: 1.6;
    margin: 0 auto 10px;
    font-weight: 700; }
  .content h5.wp-block-heading {
    max-width: 723px;
    font-size: 1.6rem;
    line-height: 1.6;
    margin: 0 auto 10px;
    color: #9B9B9B;
    font-weight: 700; }
  .content p.wp-block-paragraph {
    width: 100%;
    max-width: 723px;
    font-size: 1.3rem;
    line-height: 2.2;
    margin: 0 auto 30px;
    letter-spacing: 1.2px; }
    @media screen and (max-width: 1080px) {
      .content p.wp-block-paragraph {
        font-size: 1.5rem; } }
    .content p.wp-block-paragraph a {
      color: #333;
      text-decoration: underline; }
      .content p.wp-block-paragraph a:hover {
        color: #00A87B; }
    .content p.wp-block-paragraph.note {
      width: 100%;
      max-width: 723px;
      margin: 0 auto;
      position: relative;
      padding-left: 1em;
      font-size: 1rem;
      line-height: 1.6;
      letter-spacing: 1.2px; }
      .content p.wp-block-paragraph.note::before {
        content: "※";
        position: absolute;
        left: 0;
        top: 0; }
  .content p.wp-block-paragraph + figure.wp-block-image {
    margin-top: 65px; }
  .content p.wp-block-paragraph + .wp-block-group {
    margin-top: 65px; }
  .content figure.wp-block-image {
    margin: 30px auto 65px; }
    .content figure.wp-block-image img {
      width: 100%;
      height: auto; }
  .content figure.wp-block-image.img-wide, .content .wp-block-image.img-wide {
    max-width: 900px;
    width: 100%;
    margin: 30px auto 65px; }
    @media screen and (max-width: 1080px) {
      .content figure.wp-block-image.img-wide, .content .wp-block-image.img-wide {
        max-width: 448px; } }
  .content figure.wp-block-image.img-480, .content .wp-block-image.img-480 {
    max-width: 480px;
    margin: 30px auto 65px; }
  .content .wp-block-group.img-2col {
    display: grid;
    grid-template-columns: repeat(2, 448px);
    gap: 5px;
    justify-content: center;
    max-width: 901px;
    margin: 30px auto 65px; }
    .content .wp-block-group.img-2col figure.wp-block-image {
      margin: 0; }
      .content .wp-block-group.img-2col figure.wp-block-image img {
        display: block;
        width: 100%;
        height: auto; }
    @media screen and (max-width: 1080px) {
      .content .wp-block-group.img-2col {
        grid-template-columns: 1fr;
        max-width: 448px; } }
  .content figcaption {
    font-size: 1.3rem;
    line-height: 2.2;
    letter-spacing: 1.2px;
    margin: 13px 0 0; }
    @media screen and (max-width: 1080px) {
      .content figcaption {
        font-size: 1.5rem; } }
  .content .profile-box {
    max-width: 723px;
    margin: 0 auto 65px;
    gap: 40px; }
    .content .profile-box .profile-image {
      flex-basis: 160px !important;
      flex-grow: 0; }
      .content .profile-box .profile-image .wp-block-image {
        margin: 0; }
        .content .profile-box .profile-image .wp-block-image img {
          display: block;
          width: 160px;
          height: 214px;
          object-fit: cover; }
        .content .profile-box .profile-image .wp-block-image figcaption {
          line-height: 1.5; }
    .content .profile-box .profile-text p {
      margin: 0; }
    @media screen and (max-width: 1080px) {
      .content .profile-box {
        flex-wrap: wrap !important; }
        .content .profile-box .profile-image, .content .profile-box .profile-text {
          flex-basis: 100% !important; }
        .content .profile-box .profile-image img {
          margin: 0 auto; } }
  .content .note {
    width: 100%;
    max-width: 723px;
    margin: 0 auto;
    position: relative;
    padding-left: 1em;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 1.2px; }
    .content .note::before {
      content: "※";
      position: absolute;
      left: 0;
      top: 0; }
  .content .wp-block-list {
    width: 100%;
    max-width: 723px;
    margin: 0 auto 60px;
    font-size: 1.3rem;
    line-height: 1.9;
    padding-left: 0;
    /*&.list-dot {
      padding-left: 0;
      li {
        position: relative;
        list-style: none;
        padding-left: 15px;
        margin-bottom: 10px;
        &::before {
          content: "・";
          position: absolute;
          left: 0;
          top: 4px;
          font-size: 0.8rem;
        }
      }
    }*/
    /*&.list-number {
      padding-left: 0;
      counter-reset: num;
      li {
        list-style: none;
        position: relative;
        padding-left: 20px;
        margin-bottom: 15px;
        counter-increment: num;
        &::before {
          content: counter(num) ".";
          position: absolute;
          left: 0;
          top: 0;
        }
      }
    }*/ }
    .content .wp-block-list li {
      position: relative;
      list-style: none;
      padding-left: 15px;
      margin-bottom: 10px;
      text-decoration: none !important; }
      .content .wp-block-list li a {
        color: #333;
        text-decoration: underline; }
        .content .wp-block-list li a:hover {
          color: #00A87B; }
      .content .wp-block-list li::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 4px;
        font-size: 0.8rem; }
    .content .wp-block-list.list-arrow-right {
      padding-left: 0; }
      .content .wp-block-list.list-arrow-right li {
        position: relative;
        list-style: none;
        padding-left: 20px;
        margin-bottom: 10px; }
        .content .wp-block-list.list-arrow-right li::before {
          position: absolute;
          left: 0;
          top: 0;
          font-family: "Font Awesome 6 Free";
          content: "\f105";
          color: #00A87B;
          font-size: 1.4rem;
          font-weight: 900; }
    .content .wp-block-list.list-arrow-2col {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 10px 30px;
      padding-left: 0;
      max-width: 723px; }
      @media screen and (max-width: 1080px) {
        .content .wp-block-list.list-arrow-2col {
          grid-template-columns: 1fr; } }
      .content .wp-block-list.list-arrow-2col li {
        position: relative;
        list-style: none;
        padding-left: 20px;
        margin: 0; }
        .content .wp-block-list.list-arrow-2col li::before {
          position: absolute;
          left: 0;
          top: 0;
          font-family: "Font Awesome 6 Free";
          content: "\f105";
          color: #00A87B;
          font-size: 1.4rem;
          font-weight: 900; }
    .content .wp-block-list.list-arrow-down {
      padding-left: 0; }
      .content .wp-block-list.list-arrow-down li {
        position: relative;
        list-style: none;
        padding-left: 20px;
        margin-bottom: 10px; }
        .content .wp-block-list.list-arrow-down li::before {
          position: absolute;
          left: 0;
          top: 0;
          font-family: "Font Awesome 6 Free";
          content: "\f107";
          color: #00A87B;
          font-size: 1.4rem;
          font-weight: 900; }
    .content .wp-block-list.note-list {
      padding: 0;
      list-style: none; }
      .content .wp-block-list.note-list li {
        position: relative;
        padding-left: 1em;
        font-size: 1rem;
        line-height: 1.6;
        letter-spacing: 1.2px; }
        .content .wp-block-list.note-list li::before {
          content: "※";
          position: absolute;
          left: 0;
          top: 0; }
        .content .wp-block-list.note-list li + li {
          margin-top: 0.5em; }
  .content ol.wp-block-list {
    position: relative;
    padding-left: 0;
    counter-reset: num; }
    .content ol.wp-block-list li {
      list-style: none;
      position: relative;
      padding-left: 20px;
      margin-bottom: 15px;
      counter-increment: num; }
      .content ol.wp-block-list li::before {
        content: counter(num) ".";
        position: absolute;
        left: 0;
        top: 0;
        font-size: 1.3rem; }
  .content .list-arrow-right-single {
    position: relative;
    padding-left: 20px; }
    .content .list-arrow-right-single::before {
      position: absolute;
      left: 0;
      top: -2px;
      font-family: "Font Awesome 6 Free";
      content: "\f105";
      color: #00A87B;
      font-size: 1.4rem;
      font-weight: 900; }
  .content .u-important {
    font-weight: bold; }
  .content .u-notice {
    color: #EC1111; }
  .content .box-important {
    max-width: 723px;
    border: 3px solid #00A87B;
    padding: 30px;
    border-radius: 5px;
    box-sizing: border-box; }
  .content .box-notice {
    max-width: 723px;
    border: 6px solid #ccc;
    padding: 30px;
    box-sizing: border-box; }
  .content .wp-block-columns {
    width: 100%;
    max-width: 723px;
    margin: 0 auto; }
    .content .wp-block-columns .wp-block-image {
      margin: 0 0 30px; }
      .content .wp-block-columns .wp-block-image img {
        width: 100%;
        height: auto; }
  .content .wp-block-image {
    margin: 40px 0; }
  .content .wp-block-paragraph.u-text-left {
    text-align: left; }
  .content .wp-block-paragraph.u-text-center {
    text-align: center; }
  .content .wp-block-paragraph.u-text-right {
    text-align: right; }
  .content .wp-block-paragraph.u-fs-12 {
    font-size: 1.2rem; }
  .content .wp-block-paragraph.u-fs-13 {
    font-size: 1.3rem; }
  .content .wp-block-paragraph.u-fs-14 {
    font-size: 1.4rem; }
  .content .wp-block-paragraph.u-fs-15 {
    font-size: 1.5rem; }
  .content .wp-block-paragraph.u-fs-16 {
    font-size: 1.6rem; }
  .content .wp-block-paragraph.u-fs-17 {
    font-size: 1.7rem; }
  .content .wp-block-paragraph.u-fs-18 {
    font-size: 1.8rem; }
  .content .wp-block-paragraph.u-fs-19 {
    font-size: 1.9rem; }
  .content .wp-block-paragraph.u-fs-20 {
    font-size: 2.0rem; }
  .content .wp-block-paragraph.u-fs-21 {
    font-size: 2.1rem; }
  .content .wp-block-paragraph.u-fs-22 {
    font-size: 2.2rem; }
  .content .wp-block-paragraph.u-fs-23 {
    font-size: 2.3rem; }
  .content .wp-block-paragraph.u-fs-24 {
    font-size: 2.4rem; }
  .content .wp-block-paragraph.u-fs-25 {
    font-size: 2.5rem; }
  .content .wp-block-paragraph.u-fs-26 {
    font-size: 2.6rem; }
  .content .wp-block-paragraph.u-fs-27 {
    font-size: 2.7rem; }
  .content .wp-block-paragraph.u-fs-28 {
    font-size: 2.8rem; }
  .content .wp-block-paragraph.u-fs-29 {
    font-size: 2.9rem; }
  .content .wp-block-paragraph.u-fs-30 {
    font-size: 3.0rem; }
  .content .wp-block-paragraph.u-lh-10 {
    line-height: 1.0; }
  .content .wp-block-paragraph.u-lh-11 {
    line-height: 1.1; }
  .content .wp-block-paragraph.u-lh-12 {
    line-height: 1.2; }
  .content .wp-block-paragraph.u-lh-13 {
    line-height: 1.3; }
  .content .wp-block-paragraph.u-lh-14 {
    line-height: 1.4; }
  .content .wp-block-paragraph.u-lh-15 {
    line-height: 1.5; }
  .content .wp-block-paragraph.u-lh-16 {
    line-height: 1.6; }
  .content .wp-block-paragraph.u-lh-17 {
    line-height: 1.7; }
  .content .wp-block-paragraph.u-lh-18 {
    line-height: 1.8; }
  .content .wp-block-paragraph.u-lh-19 {
    line-height: 1.9; }
  .content .wp-block-paragraph.u-lh-20 {
    line-height: 2.0; }
  .content .wp-block-paragraph.u-lh-21 {
    line-height: 2.1; }
  .content .wp-block-paragraph.u-lh-22 {
    line-height: 2.2; }
  .content .wp-block-paragraph.u-lh-23 {
    line-height: 2.3; }
  .content .wp-block-paragraph.u-lh-24 {
    line-height: 2.4; }
  .content .wp-block-paragraph.u-lh-25 {
    line-height: 2.5; }
  .content .wp-block-paragraph.u-lh-26 {
    line-height: 2.6; }
  .content .wp-block-paragraph.u-lh-27 {
    line-height: 2.7; }
  .content .wp-block-paragraph.u-lh-28 {
    line-height: 2.8; }
  .content .wp-block-paragraph.u-lh-29 {
    line-height: 2.9; }
  .content .wp-block-paragraph.u-lh-30 {
    line-height: 3.0; }
  .content .wp-block-paragraph.u-mt-0 {
    margin-top: 0; }
  .content .wp-block-paragraph.u-mt-5 {
    margin-top: 5px; }
  .content .wp-block-paragraph.u-mt-10 {
    margin-top: 10px; }
  .content .wp-block-paragraph.u-mt-15 {
    margin-top: 15px; }
  .content .wp-block-paragraph.u-mt-20 {
    margin-top: 20px; }
  .content .wp-block-paragraph.u-mt-30 {
    margin-top: 30px; }
  .content .wp-block-paragraph.u-mt-40 {
    margin-top: 40px; }
  .content .wp-block-paragraph.u-mt-50 {
    margin-top: 50px; }
  .content .wp-block-paragraph.u-mb-0 {
    margin-bottom: 0; }
  .content .wp-block-paragraph.u-mb-5 {
    margin-bottom: 5px; }
  .content .wp-block-paragraph.u-mb-10 {
    margin-bottom: 10px; }
  .content .wp-block-paragraph.u-mb-15 {
    margin-bottom: 15px; }
  .content .wp-block-paragraph.u-mb-20 {
    margin-bottom: 20px; }
  .content .wp-block-paragraph.u-mb-30 {
    margin-bottom: 30px; }
  .content .wp-block-paragraph.u-mb-40 {
    margin-bottom: 40px; }
  .content .wp-block-paragraph.u-mb-50 {
    margin-bottom: 50px; }
  .content .wp-block-paragraph.u-mr-0 {
    margin-right: 0; }
  .content .wp-block-paragraph.u-mr-5 {
    margin-right: 5px; }
  .content .wp-block-paragraph.u-mr-10 {
    margin-right: 10px; }
  .content .wp-block-paragraph.u-mr-15 {
    margin-right: 15px; }
  .content .wp-block-paragraph.u-mr-20 {
    margin-right: 20px; }
  .content .wp-block-paragraph.u-mr-30 {
    margin-right: 30px; }
  .content .wp-block-paragraph.u-mr-40 {
    margin-right: 40px; }
  .content .wp-block-paragraph.u-mr-50 {
    margin-right: 50px; }
  .content .wp-block-paragraph.u-ml-0 {
    margin-left: 0; }
  .content .wp-block-paragraph.u-ml-5 {
    margin-left: 5px; }
  .content .wp-block-paragraph.u-ml-10 {
    margin-left: 10px; }
  .content .wp-block-paragraph.u-ml-15 {
    margin-left: 15px; }
  .content .wp-block-paragraph.u-ml-20 {
    margin-left: 20px; }
  .content .wp-block-paragraph.u-ml-30 {
    margin-left: 30px; }
  .content .wp-block-paragraph.u-ml-40 {
    margin-left: 40px; }
  .content .wp-block-paragraph.u-ml-50 {
    margin-left: 50px; }
  .content .wp-block-paragraph.u-pt-0 {
    padding-top: 0; }
  .content .wp-block-paragraph.u-pt-5 {
    padding-top: 5px; }
  .content .wp-block-paragraph.u-pt-10 {
    padding-top: 10px; }
  .content .wp-block-paragraph.u-pt-15 {
    padding-top: 15px; }
  .content .wp-block-paragraph.u-pt-20 {
    padding-top: 20px; }
  .content .wp-block-paragraph.u-pt-30 {
    padding-top: 30px; }
  .content .wp-block-paragraph.u-pt-40 {
    padding-top: 40px; }
  .content .wp-block-paragraph.u-pt-50 {
    padding-top: 50px; }
  .content .wp-block-paragraph.u-pb-0 {
    padding-bottom: 0; }
  .content .wp-block-paragraph.u-pb-5 {
    padding-bottom: 5px; }
  .content .wp-block-paragraph.u-pb-10 {
    padding-bottom: 10px; }
  .content .wp-block-paragraph.u-pb-15 {
    padding-bottom: 15px; }
  .content .wp-block-paragraph.u-pb-20 {
    padding-bottom: 20px; }
  .content .wp-block-paragraph.u-pb-30 {
    padding-bottom: 30px; }
  .content .wp-block-paragraph.u-pb-40 {
    padding-bottom: 40px; }
  .content .wp-block-paragraph.u-pb-50 {
    padding-bottom: 50px; }
  .content .wp-block-paragraph.u-pr-0 {
    padding-right: 0; }
  .content .wp-block-paragraph.u-pr-5 {
    padding-right: 5px; }
  .content .wp-block-paragraph.u-pr-10 {
    padding-right: 10px; }
  .content .wp-block-paragraph.u-pr-15 {
    padding-right: 15px; }
  .content .wp-block-paragraph.u-pr-20 {
    padding-right: 20px; }
  .content .wp-block-paragraph.u-pr-30 {
    padding-right: 30px; }
  .content .wp-block-paragraph.u-pr-40 {
    padding-right: 40px; }
  .content .wp-block-paragraph.u-pr-50 {
    padding-right: 50px; }
  .content .wp-block-paragraph.u-pl-0 {
    padding-left: 0; }
  .content .wp-block-paragraph.u-pl-5 {
    padding-left: 5px; }
  .content .wp-block-paragraph.u-pl-10 {
    padding-left: 10px; }
  .content .wp-block-paragraph.u-pl-15 {
    padding-left: 15px; }
  .content .wp-block-paragraph.u-pl-20 {
    padding-left: 20px; }
  .content .wp-block-paragraph.u-pl-30 {
    padding-left: 30px; }
  .content .wp-block-paragraph.u-pl-40 {
    padding-left: 40px; }
  .content .wp-block-paragraph.u-pl-50 {
    padding-left: 50px; }
  .content .wp-block-table {
    font-size: 1.3rem; }
    .content .wp-block-table .wp-block-paragraph {
      margin: 0; }
    .content .wp-block-table a {
      text-decoration: none; }
      .content .wp-block-table a:hover {
        color: #00A87B; }
  .content .wp-block-table.table-scroll {
    max-width: 723px;
    overflow-x: auto;
    margin: 30px auto 65px; }
    .content .wp-block-table.table-scroll table {
      width: 100%;
      border-collapse: collapse;
      border-top: 3px solid #D5DCDE; }
    .content .wp-block-table.table-scroll th, .content .wp-block-table.table-scroll td {
      padding: 20px;
      border: 1px solid #D5DCDE;
      vertical-align: middle; }
    .content .wp-block-table.table-scroll th {
      background: #F1FBF8; }
    @media screen and (max-width: 1080px) {
      .content .wp-block-table.table-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch; }
        .content .wp-block-table.table-scroll table {
          min-width: 600px; } }
  .content .wp-block-table.table-basic {
    max-width: 723px;
    margin: 30px auto 65px; }
    .content .wp-block-table.table-basic table {
      width: 100%;
      border-collapse: collapse;
      border-top: 3px solid #D5DCDE;
      border-bottom: 3px solid #D5DCDE; }
    .content .wp-block-table.table-basic th, .content .wp-block-table.table-basic td {
      padding: 20px;
      border: none; }
      .content .wp-block-table.table-basic th:not(:last-child), .content .wp-block-table.table-basic td:not(:last-child) {
        border-right: 1px solid #D5DCDE; }
    .content .wp-block-table.table-basic tbody tr:first-child {
      border-bottom: 3px solid #D5DCDE; }
      .content .wp-block-table.table-basic tbody tr:first-child th {
        background: #D7EFE8; }
    .content .wp-block-table.table-basic tbody tr:not(:first-child) th {
      background: #F1FBF8; }
    .content .wp-block-table.table-basic tbody tr:not(:first-child):not(:last-child) {
      border-bottom: 1px solid #D5DCDE; }
  .content strong {
    font-weight: 700; }

.c-breadcrumb {
  width: 1082px;
  margin: 0 auto 20px; }
  @media screen and (max-width: 1080px) {
    .c-breadcrumb {
      width: auto; } }
  .c-breadcrumb ol {
    width: 1082px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap; }
    @media screen and (max-width: 1080px) {
      .c-breadcrumb ol {
        width: auto;
        margin: 0 20px;
        white-space: nowrap; } }
    .c-breadcrumb ol li {
      font-size: 1.2rem;
      position: relative;
      margin: 0 21px 0 23px; }
      .c-breadcrumb ol li::after {
        content: ">";
        position: absolute;
        top: -3px;
        left: -23px;
        font-size: 15px; }
      .c-breadcrumb ol li:first-child {
        margin-left: 0; }
        .c-breadcrumb ol li:first-child::after {
          left: unset;
          right: calc(-21px - 0.5rem); }
      .c-breadcrumb ol li:nth-child(2)::after {
        content: none; }
      .c-breadcrumb ol li:last-child {
        margin-right: 0; }
      .c-breadcrumb ol li a {
        color: #9B9B9B; }

.btn a {
  font-family: "Noto Sans JP", sans-serif;
  border: 1px solid #D5DCDE;
  border-radius: 90px;
  width: 150px;
  height: 33px;
  font-size: 1.2rem;
  letter-spacing: 1.1px;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  box-sizing: border-box;
  margin: 40px 0 0;
  line-height: 1; }
  .btn a::before {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-family: "Font Awesome 6 Free";
    content: "\f105";
    color: #00A87B;
    font-size: 1.2rem;
    font-weight: 900; }
  .btn a:hover {
    background-color: #D5DCDE;
    opacity: 1; }
  .btn a span {
    display: block; }

.contact {
  background-color: #4D5759;
  height: 304px;
  padding: 80px 0 69px;
  box-sizing: border-box; }
  @media screen and (max-width: 1080px) {
    .contact {
      height: auto;
      padding: 90px 0; } }
  .contact h2 {
    text-align: center;
    font-size: 6.6rem;
    color: #fff;
    margin: 0 auto 25px; }
    @media screen and (max-width: 1080px) {
      .contact h2 {
        font-size: 4rem; } }
    .contact h2 span {
      color: #fff;
      font-size: 1.4rem; }
      @media screen and (max-width: 1080px) {
        .contact h2 span {
          font-size: 1.5rem; } }
  .contact .btn a {
    margin: 0 auto;
    color: #D5DCDE; }
    .contact .btn a:hover {
      color: #333; }

footer {
  background: linear-gradient(90deg, #E1EDFA 0%, #FAFBE7 50%, #E5F6F1 100%); }
  footer .p-footer__inner {
    width: 1082px;
    height: 160px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    box-sizing: border-box; }
    @media screen and (max-width: 1080px) {
      footer .p-footer__inner {
        width: auto;
        height: auto;
        justify-content: center;
        flex-wrap: wrap;
        padding: 66px 20px; } }
    footer .p-footer__inner .p-footer__logo span {
      font-size: 2.1rem;
      line-height: 1.5;
      font-family: "Shippori Mincho", serif;
      font-weight: 500;
      font-style: normal;
      display: inline-block;
      margin: 0 0 10px;
      letter-spacing: 1.3px; }
      @media screen and (max-width: 1080px) {
        footer .p-footer__inner .p-footer__logo span {
          margin: 0 0 20px;
          text-align: center; } }
    footer .p-footer__inner .p-footer__logo address {
      font-size: 1.2rem;
      line-height: 1;
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal; }
      @media screen and (max-width: 1080px) {
        footer .p-footer__inner .p-footer__logo address {
          font-size: 1.5rem;
          text-align: center; } }
    footer .p-footer__inner .link ul {
      width: 406px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap; }
      @media screen and (max-width: 1080px) {
        footer .p-footer__inner .link ul {
          width: auto;
          justify-content: center;
          margin: 40px auto;
          border-top: 1px solid #D5DCDE; } }
      footer .p-footer__inner .link ul li {
        font-size: 1.4rem;
        letter-spacing: 1.3px; }
        @media screen and (max-width: 1080px) {
          footer .p-footer__inner .link ul li {
            font-size: 1.5rem;
            margin: 30px 10px 0; } }
        footer .p-footer__inner .link ul li a {
          color: #333; }
          footer .p-footer__inner .link ul li a span {
            font-family: "Noto Sans JP", sans-serif;
            font-optical-sizing: auto;
            font-weight: 400;
            font-style: normal; }
          footer .p-footer__inner .link ul li a:hover {
            color: #9B9B9B;
            border-bottom: 1px solid #9B9B9B;
            padding-bottom: 5px; }
    footer .p-footer__inner .link p {
      font-size: 1.2rem;
      line-height: 1;
      text-align: right;
      margin-top: 20px;
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal; }
      @media screen and (max-width: 1080px) {
        footer .p-footer__inner .link p {
          text-align: center;
          line-height: 2.2; } }

.pagetop {
  position: fixed;
  right: 2%;
  bottom: 6%;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  z-index: 10000; }
  @media screen and (max-width: 1080px) {
    .pagetop {
      bottom: 2%; } }
  .pagetop a {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid #D5DCDE;
    background-color: #E5F6F1;
    border-radius: 50%; }
    .pagetop a:hover {
      background-color: #D5DCDE;
      opacity: 1; }
    .pagetop a span {
      text-align: center;
      display: block;
      font-family: "Cormorant", serif;
      font-weight: 300;
      color: #333;
      font-size: 1.3rem;
      line-height: 1.2; }
    .pagetop a::before {
      font-family: "Font Awesome 6 Free";
      content: "\f077";
      color: #00A87B;
      font-size: 1.5rem;
      font-weight: 900;
      line-height: 1;
      display: block; }

/* 全体中央寄せ */
.pagination {
  text-align: center;
  margin: 60px 0 0; }

/* ナビ全体 */
.pagination .nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1px; }

/* 共通ページ番号 */
.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 5px;
  border-radius: 50%;
  text-decoration: none;
  color: #333;
  transition: 0.2s; }

/* 現在ページ */
.page-numbers.current {
  color: #00A87B;
  text-decoration: none; }

/* ホバー */
/* 次へ・前へ（丸ボタン化） */
.page-numbers.next, .page-numbers.prev {
  width: 24px;
  height: 24px;
  padding: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  /* テキスト非表示 */
  position: relative;
  background: #00A87B;
  color: #fff;
  text-decoration: none;
  margin: 0 10px; }

/* Font Awesome 矢印 */
.page-numbers.next::after, .page-numbers.prev::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  /* solid style */
  font-size: 13px; }

/* 次へ（→） */
.page-numbers.next::after {
  content: "\f105";
  /* chevron-right */ }

/* 前へ（←） */
.page-numbers.prev::after {
  content: "\f104";
  /* chevron-left */ }

.google-map {
  position: relative;
  width: 100%;
  padding-top: 66.67%;
  /* 600 ÷ 900 = 0.6667（3:2比率） */
  overflow: hidden;
  max-width: 723px;
  max-height: 550px;
  margin: 0 auto; }

.google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0; }

/* 外部リンク */
a[target="_blank"]:not([href$=".pdf" i]):not([href$=".doc" i]):not([href$=".docx" i]):not([href$=".xls" i]):not([href$=".xlsx" i]):not([href$=".ppt" i]):not([href$=".pptx" i])::after {
  /*font-family: "Font Awesome 6 Free";
  content: "\f08e";
  font-weight: 900;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #9B9B9B;
  display: inline-block;*/
  content: "";
  padding-left: 10px;
  width: 16px;
  height: 14px;
  background-image: url(/univ/user/medicine/respir-thyroid-surg/assets/images/ico-ex.svg);
  background-repeat: no-repeat;
  background-size: 16px 14px;
  background-position: center center;
  display: inline-block; }

/* PDF */
a[href$=".pdf" i]::after {
  font-family: "Font Awesome 6 Free";
  content: "\f1c1";
  font-weight: 500;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #EC1111;
  display: inline-block; }

/* .doc と .docx */
a[href$=".doc" i]::after, a[href$=".docx" i]::after {
  font-family: "Font Awesome 6 Free";
  content: "\f1c2";
  font-weight: 500;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #0085C4;
  display: inline-block; }

/* Excel */
a[href$=".xls" i]::after, a[href$=".xlsx" i]::after {
  font-family: "Font Awesome 6 Free";
  content: "\f1c3";
  font-weight: 500;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #45B034;
  display: inline-block; }

/* PowerPoint */
a[href$=".ppt" i]::after, a[href$=".pptx" i]::after {
  font-family: "Font Awesome 6 Free";
  content: "\f1c4";
  font-weight: 500;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #F29C48;
  display: inline-block; }

/*# sourceMappingURL=style.css.map */
