@charset "UTF-8";
/*----------------------------
Foundation
------------------------------*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

figure {
  margin: 0 !important;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*----------------------------
■■　サイトの基本設定　base.scss ■■
------------------------------*/
/* ブレークポイント
pc：$layout-width-innerまで
tab：$layout-width-inner　-　1px ~ 768px
sp767未満
*/
/*-----------------------------------------
メディアクエリテンプレ https://haniwaman.com/breakpoint/
使い方：
@include mq('sp') { スマホレイアウト }
@include mq('tab') { タブレットレイアウト }
------------------------------------------*/
/* コンテナ幅 */
.container {
  width: 1308px;
  margin: 0 auto;
  padding: 0 6.4rem;
}
@media screen and (max-width: 1307px) {
  .container {
    width: 100%;
    padding: 0 2.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .container {
    width: 100%;
    padding: 0 20px;
  }
}

.container--l {
  width: 1344px;
  margin: 0 auto;
  padding: 0 3.2rem;
}
@media screen and (max-width: 1350px) {
  .container--l {
    width: 100%;
    padding: 0 2.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .container--l {
    width: 100%;
    padding: 0 10px;
  }
}

/*----------------------------------------
フォント関係の設定
------------------------------------------*/
/*〇パソコン～768pxまでのフォントサイズ*/
/*----------------------------
基準フォント指定
使い方：
font-family: $font-base、$font-minchoなど
------------------------------*/
/*------------------------------------------
■各フォントサイズ自由設定

使用例：
CSSにて、fzでショートコード利用可能

左から、PC,SPのフォントサイズ指定
@include font--l(rem,rem);

左から、PC、TAB、SPのフォントサイズ指定
@include font--l3(rem,rem,rem);
--------------------------------------------*/
/*----------------------------------------
色関係の設定
------------------------------------------*/
/*----------------------------
■　sectionのpadding設定
sectionによく使われる余白の設定
使い方：section class="sect-pad"
------------------------------*/
/*
・基準paddingの設定　基本PC 9.6rem SP4.8rem
------------------------------*/
.sect-pad {
  padding: 0 0 16rem;
}
@media screen and (max-width: 1307px) {
  .sect-pad {
    padding: 0 0 9.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .sect-pad {
    padding: 0 0 8rem;
  }
}

.sect-pad--y {
  padding: 16rem 0 16rem;
}
@media screen and (max-width: 1307px) {
  .sect-pad--y {
    padding: 9.6rem 0 9.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .sect-pad--y {
    padding: 8rem 0 8rem;
  }
}

/*----------------------------------------
全体構造：Structure
------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none !important;
}

html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
}
@media screen and (min-width: 1280px) {
  html {
    font-size: 62.5%;
  }
}
@media screen and (max-width: 1279px) {
  html {
    font-size: clamp(10px, 0.78125vw, 10px);
    font-size: clamp(5px, 10px + -5 * (100vw - 1280px) / -512, 10px);
  }
}
@media (max-width: 1152px) {
  html {
    font-size: clamp(0.546875rem, 36.25%, 0.625rem);
  }
}
@media screen and (max-width: 1024px) {
  html {
    font-size: 62.5%;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 62.5%;
  }
}

img {
  width: 100%;
  height: auto;
  line-height: 1;
  vertical-align: top;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  -webkit-transition: all 250ms;
  transition: all 250ms;
  color: #333;
}
a:hover {
  opacity: 0.7;
}
a.u-pointer-events--pc {
  pointer-events: none;
}
@media screen and (max-width: 1024px) {
  a.u-pointer-events--pc {
    pointer-events: auto;
  }
}
a.u-blue--link {
  text-decoration: underline;
  color: #0000ee;
}

address {
  font-style: normal;
}

ul {
  list-style: none;
}

body {
  height: auto;
  width: 100%;
  font-size: 1.6rem;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  line-height: 2.5;
  -webkit-text-size-adjust: 100%;
  color: #333;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
  scroll-padding-top: 20rem;
}
@media screen and (max-width: 1024px) {
  body {
    font-size: 1.4rem;
  }
}

button {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}

button,
button:focus,
button:active {
  color: inherit; /* 親の文字色を継承 */
  -webkit-appearance: none; /* iOS Safari のデフォルトボタン装飾を無効化 */
  -moz-appearance: none;
       appearance: none;
}

input, select, textarea {
  -webkit-appearance: none;
}

/* ユーザーエージェントスタイル（ブラウザ初期値）の上書き */
textarea {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}

/*----------------------------------------
〇ヘッダー固定の調整
概要：ヘッダーfixedの場合、メイン画像がヘッダーに隠れる為、その分の余白設定することで、下に隠れないようになる。
※ヘッダー固定の場合のみ調整
------------------------------------------*/
.main-body {
  padding-top: 9.6rem;
  padding-top: 15rem;
}
@media screen and (max-width: 1024px) {
  .main-body {
    padding-top: 6.4rem;
    padding-top: 4.8rem;
  }
}

/*
WordPress管理バーの位置調整
使い方：
WordPress管理バーのずらしたい方向に、位置指定
*/
/*----------------------------
■　Chorome relタグ　自動赤点線の除去
------------------------------*/
body a[rel~=nofollow], body a[rel~=sponsored], body a[rel~=ugc] {
  outline: none !important;
}

/*----------------------------
■ base.scssここまで
------------------------------*/
/*----------------------------
Layout
------------------------------*/
/*----------------------------
■■ フッター　■■
------------------------------*/
/*----------------------------
フッター　テキストカラー初期設定
使い方：colorに、$footer-txt-colorを入力。
color: $footer-txt-color;
------------------------------*/
.l-footer {
  background: url(../images/common/footer_bg.jpg) no-repeat center/cover;
  color: #333;
  padding: 7.8rem 0 0;
}
@media screen and (max-width: 1024px) {
  .l-footer {
    padding: 4rem 0 0;
  }
}
.l-footer a {
  color: #333;
}
.l-footer__cta {
  padding-bottom: 5rem;
  border-bottom: 1px solid #D3D3D3;
}
.l-footer__cta-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
  padding-left: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .l-footer__cta-ttl {
    font-size: 2rem;
    line-height: 1.7;
    padding-left: 4.3rem;
    letter-spacing: 0.1em;
  }
}
.l-footer__cta-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 4rem;
  height: 4rem;
  background: url(../images/common/footer-ttl.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .l-footer__cta-ttl::before {
    top: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    width: 3.2rem;
    height: 3.2rem;
  }
}
.l-footer__cta-items {
  margin-top: 3.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.8rem 1fr 2.8rem 1fr 2.8rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.8rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__cta-items {
    margin-top: 1.6rem;
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .l-footer__cta-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.l-footer__cta-item a {
  max-width: 26.5rem;
  color: #fff;
  font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__cta-item a {
    max-width: 100%;
  }
}
.l-footer__main {
  padding-top: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .l-footer__main {
    padding-top: 4rem;
  }
}
.l-footer__logo img {
  width: 27.6rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__logo img {
    width: 22rem;
  }
}
.l-footer__address {
  margin-top: 3rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .l-footer__address {
    margin-top: 1.6rem;
    font-size: 1.4rem;
    line-height: 1.5714285714;
  }
}
.l-footer__tel {
  margin-top: 2.7rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .l-footer__tel {
    margin-top: 1.8rem;
  }
}
.l-footer__tel a {
  color: #0F7ECF;
  font-size: 2.6rem;
  line-height: 1.3076923077;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .l-footer__tel a {
    font-size: 2.4rem;
    line-height: 1.3333333333;
  }
}
.l-footer__tel span {
  display: inline-block;
  font-size: 1.8rem;
  margin-right: 1rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__tel span {
    font-size: 1.6rem;
    line-height: 1.3125;
    margin-right: 1rem;
  }
}
.l-footer__fax {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  color: #0F7ECF;
  font-size: 2.6rem;
  line-height: 1.3076923077;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .l-footer__fax {
    margin-top: 0.4rem;
    font-size: 2.4rem;
    line-height: 1.3333333333;
  }
}
.l-footer__fax span {
  display: inline-block;
  font-size: 1.8rem;
  margin-right: 1rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__fax span {
    font-size: 1.6rem;
    line-height: 1.3125;
    margin-right: 1rem;
  }
}
.l-footer__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-footer__nav {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .l-footer__nav {
    display: none;
  }
}
.l-footer__item {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.4;
}
.l-footer__item:nth-child(n+2) {
  margin-top: 3rem;
}
.l-footer__item a.disabled {
  opacity: 1;
  cursor: default;
}
.l-footer__sub-item {
  margin-top: 1.1rem;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.4285714286;
}
.l-footer__copyright {
  margin-top: 3.5rem;
  background: #333;
  color: #fff;
  text-align: center;
  line-height: 1.1666666667;
  padding: 1.2rem;
  font-size: 1.2rem;
}

/*----------------------------
header.php
------------------------------*/
.l-header {
  background: #fff;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
          box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
  position: fixed;
  top: 0;
  width: 100%;
  height: 15.1rem;
  z-index: 1000;
  /*----------------------------
  PCヘッダー
  ------------------------------*/
  /*----------------------------
  ロゴ設定
  ------------------------------*/
  /*----------------------------
  ナビラップ
  ------------------------------*/
  /*----------------------------
  ナビリスト
  ------------------------------*/
  /*----------------------------
  〇ナビ設定
  ------------------------------*/
  /*----------------------------
  ■ハンバーガーメニュー■
  ------------------------------*/
  /*----------------------------
  ■バーガーメニュー表示設定
  ------------------------------*/
  /*----------------------------
  ■バーガーメニュー　線
  ------------------------------*/
  /*----------------------------
  MENU/CLOSE文字の設定
  ------------------------------*/
  /*----------------------------
  ■ ctaボタン
  ------------------------------*/
  /*----------------------------
  ■バーガーメニュ左に配置
  使い方：l-header__drawerに、leftクラスを付与すると、左側のメニューに変更可能
  ------------------------------*/
}
@media screen and (max-width: 1024px) {
  .l-header {
    height: 4.8rem;
  }
}
.l-header .container {
  width: unset;
}
@media screen and (max-width: 1279px) {
  .l-header .container {
    width: 128rem;
  }
}
.l-header__wrap {
  height: 9.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 2rem 0 3rem;
}
@media screen and (max-width: 1300px) {
  .l-header__wrap {
    padding: 0 1rem 0 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .l-header__wrap {
    height: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 0 0 1rem;
  }
}
.l-header__logo-wrap {
  max-width: 20rem;
}
@media screen and (max-width: 1024px) {
  .l-header__logo-wrap {
    max-width: 11.4rem;
    z-index: 1001;
    position: relative;
  }
}
.l-header__logo-wrap a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-header__logo-wrap p {
  line-height: 1.9090909091;
  letter-spacing: 0;
  white-space: nowrap;
  font-size: 1.1rem;
  padding-bottom: 1rem;
}
@media (max-width: 1152px) {
  .l-header__logo-wrap p {
    font-size: 1rem;
    letter-spacing: -0.08em;
  }
}
@media screen and (max-width: 1024px) {
  .l-header__logo-wrap p {
    display: none;
  }
}
.l-header__wrap-sp {
  display: none;
}
@media screen and (max-width: 1024px) {
  .l-header__wrap-sp {
    position: fixed;
    top: 0;
    right: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 4px 0;
  }
}
@media screen and (max-width: 1024px) {
  .l-header__wrap-sp {
    right: 5rem;
    padding: 0.4rem 0;
  }
}
.l-header__wrap-sp .l-header__btn {
  background: none;
  color: #333;
  width: unset;
  height: 40px;
  padding: 0 7px;
  text-align: center;
  border-left: 1px dashed #9D9D9D;
  border-radius: 0;
}
.l-header__wrap-sp .l-header__btn.l-header__btn--access {
  background: none;
  color: #333;
}
.l-header__wrap-sp .l-header__btn .l-header__btn-txt {
  font-size: 8px;
  font-weight: 700;
  line-height: 1.375;
  padding-top: 27px;
}
.l-header__wrap-sp .l-header__btn .l-header__btn-txt::before {
  top: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 19px;
  height: 18px;
  background: url(../images/common/tel.svg) no-repeat center center/contain;
}
.l-header__wrap-sp .l-header__btn .l-header__btn-txt--injection::before {
  top: 5px;
  width: 20px;
  height: 22px;
  background: url(../images/common/injection-icon-blue.svg) no-repeat center center/contain;
}
.l-header__wrap-sp .l-header__btn .l-header__btn-txt--access::before {
  top: 5px;
  width: 15px;
  height: 21px;
  background: #0F7ECF;
}
.l-header__nav-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-wrap {
    display: block;
    background: #fff;
    color: #333;
    width: 100%;
    padding-top: 8.8rem;
    padding-bottom: 10rem;
    -webkit-transform: translate(200%);
            transform: translate(200%);
    overflow-y: auto;
    height: 100%;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
  }
  .l-header__nav-wrap.open {
    -webkit-transform: translate(0);
            transform: translate(0);
    height: 100%;
    padding: 8rem 0 10rem;
  }
  .l-header__nav-wrap.open .l-header__nav-item {
    display: block;
  }
  .l-header__nav-wrap.open .l-header__bottom.sp {
    display: block;
  }
}
.l-header__nav-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-top: 1rem;
}
@media (max-width: 1152px) {
  .l-header__nav-top {
    gap: 0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .l-header__nav-top {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-top: 0;
    margin-bottom: 2rem;
    padding: 0 2rem;
  }
}
.l-header__nav-tel {
  font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-tel {
    display: none;
  }
}
.l-header__nav-tel a {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  color: #0F7ECF;
  padding-left: 2.5rem;
  position: relative;
}
.l-header__nav-tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.3rem;
  height: 2.2rem;
  background: url(../images/common/tel.svg) no-repeat center/contain;
}
.l-header__nav-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-lists {
    margin-top: 2.5rem;
    padding: 0 2rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 0.5rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem 0.5rem;
  }
}
.l-header__nav-item {
  font-weight: 500;
  letter-spacing: 0;
  font-size: 1.5rem;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-item {
    display: none;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 2em;
    font-size: 1.4rem;
  }
}
.l-header__nav-item a {
  position: relative;
  padding: 0 0 0 2.5rem;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-item a {
    padding: 1em 1em 1em 3rem;
  }
}
.l-header__nav-item a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.7rem;
  height: 1.8rem;
  background: url(../images/common/home-icon.svg) no-repeat center center/contain;
}
.l-header__nav-item--news a::before {
  width: 2.1rem;
  height: 1.9rem;
  background: url(../images/common/news-icon.svg) no-repeat center center/contain;
}
.l-header__nav-item--faq a::before {
  width: 2rem;
  height: 2rem;
  background: url(../images/common/faq-icon.svg) no-repeat center center/contain;
}
.l-header__nav-item--medical a::before {
  width: 2.1rem;
  height: 2.1rem;
  background: url(../images/common/medical-icon.svg) no-repeat center center/contain;
}
.l-header__nav-item--recruit a::before {
  width: 1.9rem;
  height: 2rem;
  background: url(../images/common/recruit-icon.svg) no-repeat center center/contain;
}
.l-header__nav-item--privacy a::before {
  width: 1.7rem;
  height: 2rem;
  background: url(../images/common/privacy-icon.svg) no-repeat center center/contain;
}
.l-header__bottom {
  padding: 0.7rem 0;
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom {
    display: none;
    padding: 0;
  }
}
.l-header__bottom.sp-only {
  display: none;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom.sp-only {
    display: block;
  }
}
.l-header__bottom-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
  max-height: 4rem;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    max-height: unset;
  }
}
.l-header__bottom-item {
  text-align: center;
  position: relative;
  border-left: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom-item {
    text-align: left;
    border-left: none;
    border-bottom: 1px solid #D3D3D3;
  }
}
.l-header__bottom-item:first-child {
  border-left: none;
}
.l-header__bottom-item a.disabled {
  opacity: 1;
}
.l-header__bottom-item a {
  display: inline-block;
  padding: 0.5rem 2.4rem 1.1rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom-item a {
    position: relative;
    display: block;
    padding: 1.5rem 2.4rem 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .l-header__bottom-item a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.7rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 0.7rem;
    height: 1.2rem;
    background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
  }
}
.l-header__bottom-item:has(.l-header__dropdown) a {
  position: relative;
}
.l-header__bottom-item:has(.l-header__dropdown) a::after {
  content: "";
  position: absolute;
  top: 45%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.4rem;
  height: 1.4rem;
  background: url(../images/common/arrow-circle.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .l-header__bottom-item:has(.l-header__dropdown) a::after {
    right: 2rem;
    top: 50%;
    width: 2rem;
    height: 2rem;
  }
}
.l-header__dropdown {
  display: none;
  background: #F8F7F1;
  border-radius: 0 0 10px 10px;
  min-width: 100%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  content: "";
  position: absolute;
  top: 4.2rem;
  left: 0;
  border-top: 5px solid #0F7ECF;
  padding: 2.2rem 6.5rem 2.2rem 3.6rem;
}
@media screen and (max-width: 1024px) {
  .l-header__dropdown {
    display: block;
    position: unset;
    padding: 1rem 2rem;
    border-top: none;
    border-radius: 0;
  }
}
.l-header__bottom-item:hover .l-header__dropdown {
  display: block !important;
}
.l-header__dropdown.is-hidden {
  display: none !important;
}
.l-header__dropdown-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.4rem 4rem;
}
@media screen and (max-width: 1024px) {
  .l-header__dropdown-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.4rem 2rem;
  }
}
.l-header__dropdown-item {
  text-align: left;
  white-space: nowrap;
  position: relative;
}
.l-header__dropdown-item a {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4285714286;
}
@media screen and (max-width: 1024px) {
  .l-header__dropdown-item a {
    padding-left: 0;
    padding: 0.8rem 0;
  }
}
.l-header__dropdown-item a::after {
  display: none;
}
.l-header__dropdown-item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.7rem;
  height: 1.2rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .l-header__dropdown-item::after {
    right: 1rem;
  }
}
.l-header__drawer {
  display: none;
}
@media screen and (max-width: 1024px) {
  .l-header__drawer {
    display: block;
  }
}
.l-header__drawer-bar {
  background-color: #fff;
  width: 24px;
  height: 2px;
  display: block;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
}
.l-header__drawer-bar.bar--1 {
  top: 25%;
}
.l-header__drawer-bar.bar--2 {
  top: 40%;
}
.l-header__drawer-bar.bar--3 {
  top: 55%;
}
.l-header__drawer-menu-txt {
  bottom: 3px;
  font-size: 10px;
  font-weight: bold;
  width: 100%;
  position: absolute;
  left: 0;
  text-align: center;
}
.l-header__drawer-menu-txt.u-disable--hidetxt {
  display: none;
}
.l-header__drawer-btn {
  width: 48px;
  height: 48px;
  background: #0F7ECF;
  border-radius: 0 0 0 5px;
  top: 0;
  right: 0;
  z-index: 1001;
  position: fixed;
  padding: 0;
  color: #fff;
  letter-spacing: 0.1em;
  cursor: pointer;
  outline: none;
  /*----------------------------
  ■ボタンアクティブ時の制御
  ------------------------------*/
}
.l-header__drawer-btn p {
  font-size: 8px;
  font-weight: 700;
  line-height: 1.375;
  letter-spacing: 0;
  position: absolute;
  bottom: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
}
.l-header__drawer-btn.active {
  /*----------------------------
  ■メニュタップ時アニメーション　×に変更
  ------------------------------*/
}
.l-header__drawer-btn.active .l-header__wrap-sp {
  display: none;
}
.l-header__drawer-btn.active .l-header__drawer-bar {
  width: 2.5rem;
  left: 8px;
  background: #fff;
}
.l-header__drawer-btn.active .u-active--hidetxt {
  display: none;
}
.l-header__drawer-btn.active .u-disable--hidetxt {
  display: block;
  letter-spacing: 0.08em;
}
.l-header__drawer-btn.active .bar--1 {
  -webkit-transform: rotate(0.7853981634rad) translate(-50%, -50%);
          transform: rotate(0.7853981634rad) translate(-50%, -50%);
  top: 35%;
  left: 50%;
}
.l-header__drawer-btn.active .bar--2 {
  opacity: 0;
}
.l-header__drawer-btn.active .bar--3 {
  -webkit-transform: rotate(-0.7853981634rad) translate(-50%, -50%);
          transform: rotate(-0.7853981634rad) translate(-50%, -50%);
  top: 35%;
  left: 50%;
}
.l-header__drawer-bg {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 999;
  background: rgba(51, 51, 51, 0.5);
  display: none;
  top: 6.4rem;
  left: 0;
}
.l-header__btn-wrap {
  margin-left: 5vw;
}
@media screen and (max-width: 1279px) {
  .l-header__btn-wrap {
    margin-left: 2.5vw;
  }
}
.l-header__btn {
  background: #0F7ECF;
  border-radius: 3.2rem;
  color: #fff;
  display: -ms-grid;
  display: grid;
  place-items: center;
  width: 13.8rem;
  height: 4rem;
}
@media screen and (max-width: 1024px) {
  .l-header__btn {
    width: 100%;
    height: 6rem;
    border-radius: 5px;
    text-align: center;
  }
}
.l-header__btn.l-header__btn--access {
  background: #004F89;
}
.l-header__btn-txt {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4285714286;
  padding-left: 2.2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .l-header__btn-txt {
    padding-left: 0;
    padding-top: 2.7rem;
  }
}
.l-header__btn-txt::before {
  content: "";
  position: absolute;
  width: 2.1rem;
  height: 2rem;
  background: url("../images/common/mail.svg") no-repeat center center/contain;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
  .l-header__btn-txt::before {
    top: 10%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background: url("../images/common/tel-white.svg") no-repeat center center/contain;
  }
}
.l-header__btn-txt.l-header__btn-txt--injection::before {
  width: 1.7rem;
  height: 1.8rem;
  background: url("../images/common/injection-icon.svg") no-repeat center center/contain;
}
.l-header__btn-txt.l-header__btn-txt--access::before {
  width: 1.2rem;
  height: 1.8rem;
  left: 0.2rem;
  -webkit-mask-image: url("../images/common/map.svg");
          mask-image: url("../images/common/map.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .l-header__btn-txt.l-header__btn-txt--access::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.l-header__btn-txt span.pc {
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  .l-header__btn-txt span.pc {
    display: none;
  }
}
.l-header .l-header__drawer.left .l-header__nav-wrap {
  -webkit-transform: translate(-100%);
          transform: translate(-100%);
  right: auto;
  left: 0;
}
.l-header .l-header__drawer.left .l-header__nav-wrap.open {
  -webkit-transform: translate(0);
          transform: translate(0);
}
.l-header .l-header__drawer.left .l-header__drawer-btn {
  right: auto;
  left: 32px;
}

/*----------------------------
Object
------------------------------*/
.back-to-top-wrapper {
  position: fixed;
  z-index: 100;
  width: 8rem;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 1024px) {
  .back-to-top-wrapper {
    width: 4rem;
    right: 0;
    bottom: 0;
  }
}

/*----------------------------
■■ ボタンコンポーネント　■■
使い方
<div class="c-btn__m-size">
  <a href="#" class="c-btn">
    <span class="c-btn__txt">テキスト</span>
  </a>
</div><!-- .c-btn__wrap -->

c-btn__m-sizeのクラス変更で、サイズ調整可能
------------------------------*/
/*----------------------------
■ ボタン基本設定
------------------------------*/
.c-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  border: solid 1px #333;
  background: #fff;
  color: #333;
  border-radius: 32px;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.25s;
  transition: 0.25s;
  /*----------------------------
    ■ ボタンサイズ
    使い方：クラスを変えると、ボタンのサイズが変わる
    ------------------------------*/
  /*
      ・Sサイズ
      ------------------------------*/
  /*
      ・通常サイズ（Mサイズ）
      ------------------------------*/
  /*
    ・（Lサイズ）
    ------------------------------*/
  /*----------------------------
  ■ボタンカラーパターン
  使い方：c-btnにマルチクラスでカラー変更可能
  例）c-btn c-btn--2
  ------------------------------*/
  /*----------------------------
  ■ ボタン位置調整
  使い方：サイズがついているクラスに、マルチクラスをする。
  c-btn__left（左寄せ）
  c-btn__center（中央寄せ）
  c-btn__right（右寄せ）
  例：
  <div class="c-btn__m-size c-btn__center">
  ------------------------------*/
  /*----------------------------
    ■　フォント設定
    ------------------------------*/
  /*----------------------------
      ■ボタンアイコン設定
      使い方：c-btn__txt に、マルチクラスで付与すると、アイコン追加。
      <span class="c-btn__txt c-btn__left-icon">テキスト</span>

      fontawesomeアイコンは、以下より探す
      https://fontawesome.com/search?s=solid%2Cbrands
      ------------------------------*/
  /*
  ・ボタンアイコン左
  ------------------------------*/
  /*
        ・ボタンアイコン右
        ------------------------------*/
}
.c-btn:focus, .c-btn:hover {
  opacity: 1;
  background: #333;
  color: #fff;
}
.c-btn__s-size {
  width: 20rem;
  height: 5rem;
}
@media screen and (max-width: 1024px) {
  .c-btn__s-size {
    width: 20rem;
    height: 5rem;
  }
}
.c-btn__m-size {
  width: 32rem;
  height: 6.4rem;
}
@media screen and (max-width: 1024px) {
  .c-btn__m-size {
    width: 32rem;
    height: 6.4rem;
  }
}
.c-btn__l-size {
  width: 30rem;
  height: 8rem;
}
@media screen and (max-width: 1024px) {
  .c-btn__l-size {
    width: 30rem;
    height: 8rem;
  }
}
.c-btn.c-btn--2 {
  background: #000;
  color: #fff;
}
.c-btn.c-btn--2:hover {
  background: #fff;
  color: #000;
}
.c-btn__left {
  margin: 0 auto 0 0;
}
.c-btn__center {
  margin: 0 auto;
}
.c-btn__right {
  margin: 0 0 0 auto;
}
.c-btn__left-pc {
  margin: 0 auto 0 0;
}
@media screen and (max-width: 1024px) {
  .c-btn__left-pc {
    margin: 0;
  }
}
.c-btn__center-pc {
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .c-btn__center-pc {
    margin: 0;
  }
}
.c-btn__right-pc {
  margin: 0 0 0 auto;
}
@media screen and (max-width: 1024px) {
  .c-btn__right-pc {
    margin: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-btn__left-sp {
    margin: 0 auto 0 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-btn__center-sp {
    margin: 0 auto;
  }
}
@media screen and (max-width: 1024px) {
  .c-btn__right-sp {
    margin: 0 0 0 auto;
  }
}
.c-btn__margin--x {
  margin: 0 4rem;
}
@media screen and (max-width: 1024px) {
  .c-btn__margin--x {
    margin: 0;
  }
}
.c-btn__txt {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-btn__txt {
    font-size: 1.6rem;
  }
}
.c-btn__left-icon {
  padding-left: 2rem;
  position: relative;
}
.c-btn__left-icon::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 6px;
  height: 15px;
  background: url("../images/common/arrow.svg") no-repeat center center/contain;
}
.c-btn:hover .c-btn__left-icon::before {
  background: url("../images/common/arrow_hover.svg") no-repeat center center/contain;
}
.c-btn__right-icon {
  padding-right: 3.1rem;
  position: relative;
}
.c-btn__right-icon::before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 7px;
  height: 6px;
  background: url("../images/common/.svg") no-repeat center center/contain;
}
.c-btn:hover .c-btn__right-icon::before {
  background: url("../images/common/.svg") no-repeat center center/contain;
}

.c-btn-white {
  display: inline-block;
  padding: 1.2rem 4.1rem 1.2rem 3rem;
  border: 1px solid #0F7ECF;
  border-radius: 100px;
  color: #0F7ECF;
  background: #fff;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
}
.c-btn-white::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.9rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: 1.4rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}

.c-btn-blue {
  width: 100%;
  display: inline-block;
  background: #004F89;
  padding: 1.7rem 3rem 1.7rem 3rem;
  border-radius: 30px;
  color: #fff;
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-btn-blue {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.3rem 2rem 1.3rem 3rem;
  }
}
.c-btn-blue::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1.6rem;
  background: url(../images/common/arrow-white.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .c-btn-blue::after {
    width: 0.7rem;
    height: 1.2rem;
    right: 2rem;
  }
}

.c-btn-lightblue {
  width: 100%;
  display: inline-block;
  background: #0F7ECF;
  padding: 1.7rem 8rem 1.7rem 3rem;
  border-radius: 30px;
  color: #fff;
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-btn-lightblue {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.3rem 2rem 1.3rem 3rem;
  }
}
.c-btn-lightblue::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1.6rem;
  background: url(../images/common/arrow-white.svg) no-repeat center/contain;
}

.c-btn-pdf {
  background: #0F7ECF;
  padding: 1.3rem 1.8rem 1.3rem 5.8rem;
  border-radius: 30px;
  color: #fff;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .c-btn-pdf {
    padding: 1.2rem 1.6rem 1.2rem 5.8rem;
  }
}
.c-btn-pdf::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 2.4rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.1rem;
  height: 2.7rem;
  background: url(../images/common/pdf.svg) no-repeat center/contain;
}

.pager .wp-pagenavi {
  text-align: center;
  margin: 7.5rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .pager .wp-pagenavi {
    margin: 2.7rem 0 0;
  }
}
.pager .wp-pagenavi span.current {
  width: 4.4rem;
  height: 4.4rem;
  margin: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #0F7ECF;
  color: #fff;
  border-radius: 50%;
  font-weight: bold;
  border: 1px solid #0F7ECF;
  -webkit-transition: 250ms all;
  transition: 250ms all;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}
@media screen and (max-width: 1024px) {
  .pager .wp-pagenavi span.current {
    width: 3.8rem;
    height: 3.8rem;
  }
}
.pager .wp-pagenavi span.current:hover {
  background: #0F7ECF;
  color: #fff;
}
.pager .wp-pagenavi .page {
  width: 4.4rem;
  height: 4.4rem;
  margin: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #0F7ECF;
  font-weight: bold;
  border: 1px solid #0F7ECF;
  -webkit-transition: 250ms all;
  transition: 250ms all;
  border-radius: 50%;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}
@media screen and (max-width: 1024px) {
  .pager .wp-pagenavi .page {
    width: 3.8rem;
    height: 3.8rem;
  }
}
.pager .wp-pagenavi .page:hover {
  background: #0F7ECF;
  color: #fff;
  opacity: 1;
}
.pager .wp-pagenavi .nextpostslink, .pager .wp-pagenavi .previouspostslink {
  width: 0.9rem;
  height: 1.8rem;
  margin: 0 2.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: transparent;
  font-size: 0;
  font-weight: bold;
  border: none;
  -webkit-transition: 250ms all;
  transition: 250ms all;
  border-radius: 50%;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 1024px) {
  .pager .wp-pagenavi .nextpostslink, .pager .wp-pagenavi .previouspostslink {
    margin: 0 1.9rem;
  }
}
.pager .wp-pagenavi .nextpostslink:hover, .pager .wp-pagenavi .previouspostslink:hover {
  opacity: 0.7;
}
.pager .wp-pagenavi .nextpostslink {
  background-image: url("../images/common/next.svg");
}
.pager .wp-pagenavi .previouspostslink {
  background-image: url("../images/common/prev.svg");
}
.pager .wp-pagenavi .pages {
  display: none;
}
.pager .wp-pagenavi .first, .pager .wp-pagenavi .last {
  border: none;
}
.pager .wp-pagenavi .first:hover, .pager .wp-pagenavi .last:hover {
  opacity: 0.7;
}
.pager .wp-pagenavi .extend {
  border: none;
}
.pager .wp-pagenavi .extend:hover {
  opacity: 0.7;
}

.faq {
  padding: 4.3rem 0 10rem;
}
@media screen and (max-width: 1024px) {
  .faq {
    padding: 2.2rem 0 6.3rem;
  }
}
.faq__lists {
  width: 100%;
  margin-top: 0.6rem;
}
@media screen and (max-width: 1024px) {
  .faq__lists {
    margin-top: 0;
  }
}
.faq__list-item {
  background: #fff;
  padding: 1.7rem 0;
  margin-bottom: 1rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .faq__list-item {
    padding: 1.3rem 0;
  }
}
.faq__question {
  position: relative;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1.28;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .faq__question {
    font-size: 1.8rem;
    line-height: 1.7777777778;
    padding: 0 4rem 0 0;
    gap: 0.7rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.faq__question span {
  font-size: 4.3rem;
  font-weight: 500;
  color: #0F7ECF;
  line-height: 1.511627907;
  white-space: nowrap;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}
@media screen and (max-width: 1024px) {
  .faq__question span {
    font-size: 2.8rem;
    line-height: 1.4285714286;
  }
}
.faq__question span.faq__question-icon {
  content: "";
  position: absolute;
  right: 0;
  border: 1px solid #0F7ECF;
  border-radius: 50%;
  width: 3.8rem;
  height: 3.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1024px) {
  .faq__question span.faq__question-icon {
    top: 1rem;
    width: 2.7rem;
    height: 2.7rem;
  }
}
.faq__question span.faq__question-icon::before {
  content: "";
  position: absolute;
  width: 2.1rem;
  height: 2px;
  background: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .faq__question span.faq__question-icon::before {
    width: 1.5rem;
  }
}
.faq__question span.faq__question-icon::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 2.1rem;
  background: #0F7ECF;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1024px) {
  .faq__question span.faq__question-icon::after {
    height: 1.5rem;
  }
}
.faq__question.active span.faq__question-icon::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.faq__question::before {
  content: "";
  background: url("../images/icon-q.svg") no-repeat center center/contain;
  width: 4.6rem;
  height: 4.6rem;
  position: absolute;
  left: 0;
  top: -0.2rem;
}
@media screen and (max-width: 1024px) {
  .faq__question::before {
    top: 0.9rem;
    width: 2.3rem;
    height: 2.3rem;
  }
}
.faq__question::after {
  content: "";
  position: absolute;
  width: 3rem;
  height: 3rem;
  background: url("../images/faq_open_icon.svg") no-repeat center center/contain;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
  .faq__question::after {
    right: 0;
    width: 1.5rem;
    height: 1.5rem;
  }
}
.faq__question.active::after {
  content: "";
  background: url("../images/faq_close_icon.svg") no-repeat center center/contain;
}
.faq__answer {
  display: none;
  position: relative;
  font-weight: 400;
  letter-spacing: 0;
  padding-left: 6rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .faq__answer {
    padding: 1rem 0 1rem 3.5rem;
    line-height: 2;
  }
}
.faq__answer::before {
  content: "";
  background: url("../images/icon-a.svg") no-repeat center center/contain;
  position: absolute;
  left: 0;
  width: 4.6rem;
  height: 4.6rem;
  top: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .faq__answer::before {
    width: 2.3rem;
    height: 2.3rem;
    top: 1.1rem;
  }
}
.faq__answer a {
  font-weight: 700;
  text-decoration: underline;
  color: #0F7ECF;
}
.faq__ttl {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .faq__ttl {
    margin-top: 6rem;
  }
}
.faq__btn {
  margin-top: 5.2rem;
  max-width: 35.3rem;
}
@media screen and (max-width: 1024px) {
  .faq__btn {
    margin-top: 4rem;
  }
}

/*----------------------------
■■　カードコンポーネント　■■
概要：一覧(archive)などで、カード一覧
を使用する際に、使う事が多いコンポーネント
------------------------------*/
/*----------------------------
■　カード基準設定
------------------------------*/
.c-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
  padding: 0.5rem 2rem;
  /*----------------------------
  ■カードグループ設定
  ------------------------------*/
  /*----------------------------
  ■カード画像設定
  ------------------------------*/
  /*----------------------------
  ■カードタイトル設定
  ------------------------------*/
  /*----------------------------
  ■カードinner設定
  概要：slickを使用する際に、c-cardを直接
  触ると、エラーが起こる。その為、内側のクラスとしてinnerを設けている。
  ------------------------------*/
  /*----------------------------
  ■カードラベル設定
  ------------------------------*/
  /*----------------------------
  ■カードボディ設定
  ------------------------------*/
  /*----------------------------
  ■カード日付設定
  ------------------------------*/
}
@media screen and (max-width: 1024px) {
  .c-card {
    -webkit-box-align: left;
        -ms-flex-align: left;
            align-items: left;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    gap: 0.5rem;
    padding: 0.5rem;
  }
}
.c-card__groups {
  display: -ms-grid;
  display: grid;
  padding: 6.4rem 0 0;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
  row-gap: 4.8rem;
  -ms-grid-columns: 1fr 4rem 1fr 4rem 1fr;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1279px) {
  .c-card__groups {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 1024px) {
  .c-card__groups {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-card__img-wrap {
  margin-bottom: 1.6rem;
  width: 100%;
  position: relative;
  border: 1px solid transparent;
  /*
  ・画像のレスポンシブ設定
  ------------------------------*/
}
.c-card__img-wrap.c-card__img-wrap1x1::before {
  display: block;
  content: "";
  padding-top: 56.25%;
}
.c-card__img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-card__ttl {
  font-weight: normal;
  line-height: 1.43;
}
@media screen and (max-width: 1024px) {
  .c-card__ttl {
    font-size: 1.5rem;
  }
}
.c-card__inner {
  -webkit-transition: 250ms all;
  transition: 250ms all;
  position: relative;
}
.c-card__label {
  color: #fff;
  background: #3B454D;
  height: 3.2rem;
  min-width: 16rem;
  padding: 0 1em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 1279px) {
  .c-card__label {
    height: 2.5rem;
  }
}
.c-card__body {
  padding: 0;
}
.c-card__date {
  font-size: 1.2rem;
  font-weight: bold;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .c-card__date {
    font-size: 1.2rem;
  }
}

/*----------------------------
■■ mediaテンプレート　■■
------------------------------*/
.c-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 6.4rem;
}
@media screen and (max-width: 1279px) {
  .c-media {
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}
@media screen and (max-width: 1024px) {
  .c-media {
    display: -ms-grid;
    display: grid;
    justify-items: center;
    max-width: 48rem;
    margin: 0 auto;
    row-gap: 3.2rem;
    padding-bottom: 3.2rem;
  }
}
.c-media.u-pb--0 {
  padding-bottom: 0;
}
.c-media__img-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 40.25%;
          flex: 0 1 40.25%;
}
@media screen and (max-width: 1024px) {
  .c-media__img-wrap {
    max-width: 32rem;
  }
}
.c-media__img-wrap.u-img--l {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 55.55%;
          flex: 0 1 55.55%;
}
.c-media__body {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48.6%;
          flex: 0 1 48.6%;
}
@media screen and (max-width: 1279px) {
  .c-media__body {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 52.5%;
            flex: 0 1 52.5%;
  }
}
.c-media__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
  padding-bottom: 1em;
}
@media screen and (max-width: 1279px) {
  .c-media__ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .c-media__ttl {
    font-size: 2rem;
  }
}
.c-media__btn {
  margin-top: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .c-media__btn {
    margin-top: 1.6rem;
  }
}

/*----------------------------
■■ パンくずコンポーネント　■■
------------------------------*/
.bread-nav {
  width: 100%;
  border-top: 1px solid #D3D3D3;
}
.bread-nav__wrapper {
  padding: 1.6rem 4.5rem;
  line-height: 1;
  font-size: 1.2rem;
}
@media screen and (max-width: 1024px) {
  .bread-nav__wrapper {
    padding: 1.6rem 0;
  }
}

/*1.フェードインアニメーションの指定*/
.scroll-fade {
  opacity: 0;
}
@media all and (-ms-high-contrast: none) {
  .scroll-fade {
    opacity: 1;
  }
}

/*一瞬表示されるのを防ぐ*/
.scroll-load {
  opacity: 0;
}
@media all and (-ms-high-contrast: none) {
  .scroll-load {
    opacity: 1;
  }
}

/*2.上下の動きを指定*/
.updown {
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
}

.downup {
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}

.fadeInDown {
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.sidebar {
  background: #F8F7F1;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .sidebar {
    display: none;
  }
}
.sidebar-wrap {
  position: sticky;
  top: 14rem;
  padding: 5rem 2rem 1rem 3rem;
}
@media screen and (max-width: 1000px) {
  .sidebar-wrap {
    top: 7rem;
  }
}
.sidebar-ttl {
  font-size: 1.9rem;
  line-height: 1.4210526316;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 1rem;
}
.sidebar-items {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sidebar-item {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  padding-left: 3.7rem;
}
.sidebar-item.current::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.3rem;
  height: 1.4rem;
  background: url(../images/common/arrow-sidebar.svg) no-repeat center/contain;
}
.sidebar-item.current a {
  color: #0F7ECF;
}
.sidebar-item a {
  display: block;
  text-decoration: none;
  color: #333;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 2.5625;
  letter-spacing: 0;
}
.sidebar-item a:hover {
  color: #0F7ECF;
}
.sidebar__ttl {
  color: #0F7ECF;
  font-weight: bold;
  font-family: "bilo", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #707070;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .sidebar__ttl {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .sidebar__ttl {
    margin-bottom: 1.5rem;
  }
}
.sidebar__cat-txt {
  font-size: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .sidebar__cat-txt {
    font-size: 1.4rem;
  }
}
.sidebar__archive-txt {
  font-size: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .sidebar__archive-txt {
    font-size: 1.4rem;
  }
}
.sidebar__flex-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.sidebar__inner-pc {
  width: 26rem;
}
@media screen and (max-width: 1024px) {
  .sidebar__inner-sp {
    width: 100%;
    position: static;
  }
}
.sidebar-items {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sidebar-item {
  margin-bottom: 0.8rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  padding-left: 3rem;
}
.sidebar-item.current::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.3rem;
  height: 1.4rem;
  background: url(../images/common/arrow-sidebar.svg) no-repeat center/contain;
}
.sidebar-item.current a {
  color: #0F7ECF;
  font-weight: 700;
}
.sidebar-item a {
  display: block;
  text-decoration: none;
  color: #333;
  font-size: 1.4rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.sidebar-item a:hover {
  color: #0F7ECF;
}

.archive__wrapper select[name=archive-dropdown] {
  border: 1px solid #c9c6c6;
  padding: 1.2rem 0.5em;
  background: #fff;
}
.archive__conts-wrapper {
  border-bottom: 1px solid #707070;
  width: 65rem;
  margin: 0 auto;
  padding-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .archive__conts-wrapper {
    width: 100%;
  }
}

/*----------------------------
■■ 見出しコンポネント　■■
------------------------------*/
.c-heading {
  font-size: 3.4rem;
  font-weight: 500;
  line-height: 1.4411764706;
  letter-spacing: 0.15em;
  padding-top: 1rem;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .c-heading {
    font-size: 2.5rem;
    line-height: 1.44;
  }
}
.c-heading span {
  display: block;
  text-transform: uppercase;
  color: #0F7ECF;
  padding-left: 2.2rem;
  padding-bottom: 1rem;
  position: relative;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4166666667;
  letter-spacing: 0.1em;
}
.c-heading span::before {
  content: "";
  position: absolute;
  top: 31%;
  left: 0.4rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: 0.8rem;
  background: #0F7ECF;
  border-radius: 50%;
}

.page-nav {
  margin-top: 6.4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .page-nav {
    margin-top: 4rem;
    -ms-grid-columns: 1fr 1rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
.page-nav a {
  display: inline-block;
  background: #CDE2F2;
  border-radius: 10px;
  padding: 2.1rem 2.4rem 2.1rem 2.4rem;
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .page-nav a {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.3rem 2rem 1.3rem 2.2rem;
  }
}
.page-nav a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.7rem;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav a::after {
    width: 0.7rem;
    height: 1.2rem;
    right: 1.2rem;
  }
}

.page-nav-department {
  margin-top: 6.3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.5rem 1fr 1.5rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .page-nav-department {
    margin-top: 4rem;
    -ms-grid-columns: 1fr 1rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem 1rem;
  }
}
.page-nav-department__item {
  display: inline-block;
  background: #CDE2F2;
  border-radius: 5px;
  padding: 2.1rem 2rem 2.1rem 6.8rem;
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.1rem 3rem 1.1rem 4.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.page-nav-department__item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 3.1rem;
  background: url(../images/department/department-icon1.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item::before {
    width: 2.4rem;
    height: 2.6rem;
    left: 1rem;
  }
}
.page-nav-department__item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item::after {
    width: 0.7rem;
    height: 1.2rem;
    right: 1.2rem;
  }
}
.page-nav-department__item:nth-child(2)::before {
  background: url(../images/department/department-icon2.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(2)::before {
    left: 2rem;
    width: 1.4rem;
    height: 3rem;
  }
}
.page-nav-department__item:nth-child(3)::before {
  background: url(../images/department/department-icon3.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(3)::before {
    width: 2.7rem;
    height: 2.2rem;
  }
}
.page-nav-department__item:nth-child(4)::before {
  background: url(../images/department/department-icon4.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(4)::before {
    left: 1.5rem;
    width: 2rem;
    height: 2.6rem;
  }
}
.page-nav-department__item:nth-child(5)::before {
  background: url(../images/department/department-icon5.svg) no-repeat center/contain;
}
.page-nav-department__item:nth-child(6)::before {
  background: url(../images/department/department-icon6.svg) no-repeat center/contain;
}
.page-nav-department__item:nth-child(7)::before {
  background: url(../images/department/department-icon7.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(7)::before {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.page-nav-department__item:nth-child(8)::before {
  background: url(../images/department/department-icon8.svg) no-repeat center/contain;
}
.page-nav-department__item:nth-child(9)::before {
  background: url(../images/department/department-icon9.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(9)::before {
    width: 2.6rem;
    height: 2.5rem;
  }
}
.page-nav-department__item:nth-child(10)::before {
  background: url(../images/department/department-icon10.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-department__item:nth-child(10)::before {
    width: 2.6rem;
    height: 3.2rem;
  }
}

.page-nav-subject {
  margin-top: 6.1rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .page-nav-subject {
    margin-top: 4rem;
    -ms-grid-columns: 1fr 1rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
.page-nav-subject__item {
  display: inline-block;
  background: #CDE2F2;
  border-radius: 5px;
  padding: 2.1rem 2rem 2.1rem 6.8rem;
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .page-nav-subject__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.3rem 2rem 1.3rem 5rem;
  }
}
.page-nav-subject__item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 3.1rem;
  background: url(../images/common/subject-icon1.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-subject__item::before {
    left: 1rem;
  }
}
.page-nav-subject__item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-subject__item::after {
    width: 0.7rem;
    height: 1.2rem;
    right: 1rem;
  }
}
.page-nav-subject__item:nth-child(2)::before {
  background: url(../images/common/subject-icon2.svg) no-repeat center/contain;
}
.page-nav-subject__item:nth-child(3)::before {
  background: url(../images/common/subject-icon3.svg) no-repeat center/contain;
}
.page-nav-subject__item:nth-child(4)::before {
  background: url(../images/common/subject-icon4.svg) no-repeat center/contain;
}
.page-nav-subject__item:nth-child(5)::before {
  background: url(../images/common/subject-icon5.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .page-nav-subject__item:nth-child(5)::before {
    width: 2.4rem;
    height: 2.5rem;
  }
}
.page-nav-subject__item:nth-child(6)::before {
  background: url(../images/common/subject-icon6.svg) no-repeat center/contain;
}
.page-nav-subject__item:nth-child(7)::before {
  background: url(../images/common/subject-icon7.svg) no-repeat center/contain;
}

.page-nav--medical {
  margin-top: 4.5rem;
}
@media screen and (max-width: 1024px) {
  .page-nav--medical {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 1024px) {
  .page-nav--medical .page-nav__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.3rem 3rem 1.3rem 1.2rem;
  }
}
.page-nav--medical .page-nav__item:last-child {
  -ms-grid-column-span: 2;
  grid-column: span 2;
}

.c-section-title {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  padding-left: 1.9rem;
  position: relative;
}
.c-section-title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.5rem;
  height: 4rem;
  background: #0F7ECF;
  border-radius: 100px;
}
@media screen and (max-width: 1024px) {
  .c-section-title::before {
    top: 1.6rem;
    height: 2.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .c-section-title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.6;
    padding-left: 2rem;
    letter-spacing: 0.1em;
  }
}
.c-section-title span {
  margin-left: 0.7rem;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-section-title span {
    font-size: 1.4rem;
    line-height: 2;
  }
}

.c-section-title2 {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.4666666667;
  letter-spacing: 0;
  padding: 1.2rem 2rem;
  border-top: 2px solid #0F7ECF;
  border-bottom: 2px solid #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .c-section-title2 {
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.45;
    padding: 1.2rem 1rem;
  }
}
.c-section-title2 span {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1024px) {
  .c-section-title2 span {
    font-size: 1.3rem;
    line-height: 2.1538461538;
  }
}
.c-section-title2:has(span) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .c-section-title2:has(span) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
    padding-bottom: 0.6rem;
  }
}

.c-section-title3 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  padding-left: 2rem;
  position: relative;
}
.c-section-title3::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.7rem;
  height: 0.7rem;
  background: #0F7ECF;
  border-radius: 50%;
}

.c-tel-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #F2F8FD;
  padding: 2.4rem 3rem 2.2rem 3.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5.2rem;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap {
    display: block;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.7rem;
    padding: 2.2rem 3rem 2.2rem 3.2rem;
  }
}

.c-tel-wrap__tel {
  font-size: 4.3rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__tel {
    font-size: 3.5rem;
    text-align: center;
  }
}
.c-tel-wrap__tel a {
  color: #0F7ECF;
  position: relative;
  padding-left: 4rem;
  font-size: 4.3rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.08em;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__tel a {
    padding-left: 3rem;
    font-size: 3.5rem;
    letter-spacing: 0;
  }
}
.c-tel-wrap__tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.1rem;
  height: 3rem;
  background: url(../images/common/tel.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__tel a::before {
    width: 2.8rem;
    height: 2.8rem;
  }
}

@media screen and (max-width: 1024px) {
  .c-tel-wrap__right {
    margin-top: 0.5rem;
    text-align: center;
  }
}

.c-tel-wrap__right-ttl {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__right-ttl {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }
}
.c-tel-wrap__right-ttl .sp-only {
  display: none;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__right-ttl .sp-only {
    display: inline-block;
  }
}

.c-tel-wrap__time {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__time {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }
}
.c-tel-wrap__time .pc-only {
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap__time .pc-only {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .c-tel-wrap--emergency {
    margin-top: 1.8rem;
    padding: 2rem 4.1rem 1.4rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border: 1px solid #707070;
    border-radius: 16px;
    text-align: center;
  }
}
.c-tel-wrap--emergency .c-tel-wrap__ttl {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0;
}
.c-tel-wrap--emergency .c-tel-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 16px;
  padding: 2.2rem 3rem 2.2rem 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4.3rem;
}
@media screen and (max-width: 1024px) {
  .c-tel-wrap--emergency .c-tel-wrap {
    margin-top: 0.7rem;
    background: none;
    padding: 0;
    gap: 0.2rem;
    margin-inline: auto;
  }
}

.c-news__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 11rem 2.4rem 1fr;
  grid-template-columns: 11rem 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
  padding: 1.4rem 2rem;
  border-bottom: 1px dashed #D3D3D3;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .c-news__item {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 1.1rem 0;
    gap: 0.1rem;
  }
}
.c-news__item::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .c-news__item::before {
    right: 0.5rem;
  }
}
.c-news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.7rem;
}
@media screen and (max-width: 1024px) {
  .c-news__meta {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    gap: 1rem;
  }
}
.c-news__date {
  color: #0F7ECF;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .c-news__date {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.c-news__cat {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  background: #004F89;
  color: #fff;
  padding: 0.2rem 0;
  text-align: center;
  width: 14.5rem;
}
@media screen and (max-width: 1024px) {
  .c-news__cat {
    font-size: 1.2rem;
    width: 12.5rem;
  }
}
.c-news__title {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .c-news__title {
    font-size: 1.4rem;
    line-height: 1.2142857143;
  }
}

.c-flow__items {
  margin-top: 2.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.8rem;
}
@media screen and (max-width: 1024px) {
  .c-flow__items {
    margin-top: 2rem;
    gap: 4rem;
  }
}
.c-flow__item {
  padding: 3.3rem 4rem 3.2rem;
  background: #F2F8FD;
  position: relative;
}
.c-flow__item::before {
  content: "";
  position: absolute;
  bottom: -5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1.9rem;
  height: 4.9rem;
  background: url(../images/common/flow-arrow.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .c-flow__item::before {
    bottom: -3rem;
    width: 1.1rem;
    height: 2.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .c-flow__item {
    padding: 2rem 2rem 2rem 2rem;
  }
}
.c-flow__item:last-child::before {
  display: none;
}
.c-flow__item-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-ttl {
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
}
.c-flow__item-ttl span {
  display: inline-block;
  margin-right: 0.5rem;
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 1;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-ttl span {
    margin-right: 1rem;
    font-size: 2.4rem;
    line-height: 1.1666666667;
  }
}
.c-flow__item-txt {
  margin-top: 0.5rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.c-flow__item-txt span {
  font-weight: 700;
}
.c-flow__item-txt span.mt {
  display: inline-block;
  font-weight: 400;
  margin-top: 1.3rem;
}
.c-flow__grid {
  margin-top: 1rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}
@media screen and (max-width: 1024px) {
  .c-flow__grid {
    margin-top: 0.5rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
}
.c-flow__grid-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.c-flow__grid-item:nth-child(2) {
  padding-left: 3.8rem;
  border-left: 1px solid #DDDDDD;
}
@media screen and (max-width: 1024px) {
  .c-flow__grid-item:nth-child(2) {
    padding-left: 0;
    padding-top: 1.8rem;
    border-left: none;
    border-top: 1px solid #DDDDDD;
  }
}
.c-flow__grid-item-ttl {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5555555556;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .c-flow__grid-item-ttl {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.c-flow__grid-item-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
  padding-left: 1em;
}
@media screen and (max-width: 1024px) {
  .c-flow__grid-item-txt {
    margin-top: 0.5rem;
    font-size: 1.4rem;
    line-height: 2;
    padding-left: 0;
  }
}
.c-flow__read {
  margin-top: 3rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5555555556;
}
@media screen and (max-width: 1024px) {
  .c-flow__read {
    margin-top: 2.3rem;
  }
}
.c-flow__item-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 3.6rem;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-flex {
    padding-right: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2rem;
  }
}
.c-flow__item-btn {
  margin-top: -3.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-btn {
    margin-top: 1.2rem;
  }
}
.c-flow__item-btn a {
  min-width: 35.3rem;
}
@media screen and (max-width: 1024px) {
  .c-flow__item-btn a {
    display: block;
    min-width: 100%;
    padding: 1.3rem 13rem 1.3rem 3.1rem;
  }
}

.p-single {
  position: relative;
}
.p-single::before {
  content: "";
  position: absolute;
  bottom: 10%;
  right: 0;
  width: 34.7rem;
  height: 61rem;
  z-index: -1;
  background: url(../images/common/bg2.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-single::before {
    display: none;
  }
}
.p-single__sect.news {
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.news {
    padding-bottom: 5.8rem;
  }
}
.p-single__conts-wrapper {
  width: 100%;
  padding-top: 5.5rem;
  padding-bottom: 8rem;
  border-bottom: 1px dashed #D3D3D3;
  /*----------------------------
  ■画像設定
  ------------------------------*/
  /*----------------------------
  ■見出しレイアウト
  ------------------------------*/
  /*----------------------------
  ■テーブルレイアウト
  ------------------------------*/
  /*----------------------------
  ■　文字装飾レイアウト
  ------------------------------*/
  /*
  ・太文字
  ------------------------------*/
  /*
  ・リスト
  ------------------------------*/
  /*
  ・引用ボックス
  ------------------------------*/
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper {
    padding-top: 4.5rem;
    padding-bottom: 2.8rem;
  }
}
.p-single__conts-wrapper img {
  width: auto;
  height: auto;
  max-width: 100%;
}
.p-single__conts-wrapper a {
  text-decoration: underline;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-single__conts-wrapper a:has(.aligncenter) {
  margin: 0 auto;
}
.p-single__conts-wrapper a:has(.alignright) {
  margin-left: auto;
}
.p-single__conts-wrapper a:has(.alignleft) {
  margin-right: auto;
}
.p-single__conts-wrapper .aligncenter {
  display: block;
  margin: 0 auto;
}
.p-single__conts-wrapper .alignright {
  margin-left: auto;
  display: block;
}
.p-single__conts-wrapper .alignleft {
  margin-right: auto;
  display: block;
}
.p-single__conts-wrapper h1 {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4333333333;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper h1 {
    font-size: 2.2rem;
    line-height: 1.3181818182;
  }
}
.p-single__conts-wrapper h2 {
  margin: 3rem 0 2rem;
  font-size: 3.2rem;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper h2 {
    font-size: 1.8rem;
  }
}
.p-single__conts-wrapper h3 {
  padding-left: 3rem;
  border-left: 3px solid #1E202B;
  margin: 3rem 0 2rem;
  font-size: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper h3 {
    font-size: 1.8rem;
  }
}
.p-single__conts-wrapper h4 {
  padding: 0.5rem 2rem;
  border-left: 3px solid #1E202B;
  margin: 3rem 0 2rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper h4 {
    font-size: 1.8rem;
  }
}
.p-single__conts-wrapper p {
  margin-top: 3rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper p {
    margin-top: 1.8rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-single__conts-wrapper a {
  color: #000AFF;
  text-decoration: underline;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Noto Sans JP", sans-serif;
}
.p-single__conts-wrapper table {
  width: 100%;
  border: 1px solid #acacac;
  margin-bottom: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper table {
    margin-bottom: 2.4rem;
  }
}
.p-single__conts-wrapper td {
  border-bottom: 1px solid #acacac;
  border-right: 1px solid #acacac;
  height: 7rem;
  vertical-align: middle;
  padding: 0 3rem;
}
@media screen and (max-width: 1024px) {
  .p-single__conts-wrapper td {
    padding: 0 1.5rem;
  }
}
.p-single__conts-wrapper tr:nth-child(1) {
  background: #1E202B;
  color: #fff;
  font-weight: bold;
  border-right: 1px solid #acacac;
  text-align: center;
}
.p-single__conts-wrapper strong,
.p-single__conts-wrapper b {
  font-weight: bold;
}
.p-single__conts-wrapper ul, .p-single__conts-wrapper ol {
  margin-left: 2em;
}
.p-single__conts-wrapper ul {
  list-style: disc;
}
.p-single__conts-wrapper blockquote {
  position: relative;
  padding: 5px 12px 5px 56px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-style: italic;
  color: #333;
  background: #f4f4f4;
  margin: 3rem 0;
}
.p-single__conts-wrapper blockquote::after {
  content: "";
  position: absolute;
  width: 36px;
  height: 36px;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 36px;
  background: url("../images/quote-left-solid.svg") no-repeat center center/contain;
}
.p-single__conts-wrapper blockquote p {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7;
}
.p-single__conts-wrapper blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}
.p-single__ttl-wrap {
  padding-bottom: 4rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-single__ttl-wrap {
    padding-bottom: 1.8rem;
  }
}
.p-single__date {
  line-height: 1;
}
.p-single .news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-single .news__meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0.6rem;
  }
}
.p-single .news__date {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  white-space: nowrap;
  color: #0F7ECF;
}
.p-single .news__meta-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
.p-single .news__tag {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #C91C23;
}
.p-single .news__label {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #004F89;
}
@media screen and (max-width: 1024px) {
  .p-single .news__label {
    padding: 0.2rem 1.2rem;
    white-space: nowrap;
  }
}
.p-single .news__btn {
  text-align: center;
  margin-top: 4rem;
}
.p-single .news__btn a {
  display: inline-block;
  padding: 1.2rem 6.4rem;
  color: #0F7ECF;
  border: 1px solid #0F7ECF;
  border-radius: 100px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
  text-align: center;
  text-decoration: none;
  position: relative;
}
.p-single .news__btn a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.9rem;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  width: 0.8rem;
  height: 1.4rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/contain;
}
.p-single .wp-block-gallery img {
  margin-top: 2rem;
  width: 59rem !important;
  aspect-ratio: 590/332;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-single .wp-block-gallery img {
    width: 100% !important;
    aspect-ratio: 335/189;
  }
}
.p-single .wp-block-embed__wrapper iframe {
  margin-top: 2rem;
  width: 100%;
  max-width: 59rem;
  height: auto;
  aspect-ratio: 590/332;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-single .wp-block-embed__wrapper iframe {
    aspect-ratio: 335/189;
  }
}
.p-single__sect.library .p-single__conts-wrapper {
  padding-top: 6.4rem;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .p-single__conts-wrapper {
    padding-top: 4rem;
  }
}
.p-single__sect.library .p-single__ttl-wrap {
  display: -ms-grid;
  display: grid;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .p-single__ttl-wrap {
    padding-bottom: 2rem;
  }
}
.p-single__sect.library .news__label {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-single__sect.library .news__date {
  margin-top: 1.8rem;
  padding-left: 3rem;
  position: relative;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  color: #333;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .news__date {
    padding-left: 2.2rem;
    -webkit-box-ordinal-group: unset;
        -ms-flex-order: unset;
            order: unset;
    margin-top: 0;
    font-size: 1.4rem;
  }
}
.p-single__sect.library .news__date::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background: url(../images/common/time.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .news__date::before {
    width: 1.6rem;
    height: 1.6rem;
  }
}
.p-single__sect.library .news__date .library__date-day {
  display: inline-block;
  margin-right: 1rem;
}
.p-single__sect.library .news__meta {
  display: contents;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .news__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.9rem;
    margin-bottom: 1.5rem;
  }
}
.p-single__sect.library .p-single__ttl {
  margin-top: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .p-single__sect.library .p-single__ttl {
    margin-top: 0;
  }
}

.privacy {
  padding: 6rem 0 12.8rem;
}
@media screen and (max-width: 1024px) {
  .privacy {
    padding: 3.4rem 0 6rem;
  }
}
.privacy__read {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .privacy__read {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.privacy__lists {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .privacy__lists {
    margin-top: 1.5rem;
  }
}
.privacy__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 7rem 1rem 1fr;
  grid-template-columns: 7rem 1fr;
  gap: 1rem;
  padding: 3.9rem 0 2.3rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .privacy__item {
    -ms-grid-columns: 3rem 1fr;
    grid-template-columns: 3rem 1fr;
    padding: 2rem 0;
  }
}
.privacy__num {
  margin-top: -0.5rem;
  font-size: 4.3rem;
  font-weight: 500;
  color: #0F7ECF;
  line-height: 1;
  padding-left: 2rem;
}
@media screen and (max-width: 1024px) {
  .privacy__num {
    margin-top: -0.3rem;
    font-size: 2.8rem;
    padding-left: 0;
  }
}
.privacy__item-body-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .privacy__item-body-ttl {
    font-size: 1.7rem;
    line-height: 1.5294117647;
    letter-spacing: 0.05em;
  }
}
.privacy__item-body-txt {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .privacy__item-body-txt {
    margin-top: 1rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}

.privacy-contact__conts-wrap {
  padding: 0 3rem 3rem 3rem;
  background: #fff;
  border: 1px solid #282828;
  height: 22rem;
  overflow-y: scroll;
  max-width: 90rem;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .privacy-contact__conts-wrap {
    padding: 0 1rem 1rem 1rem;
    height: 15rem;
  }
}
@media screen and (max-width: 1024px) {
  .privacy-contact__lists .privacy-contact__num:nth-child(1) {
    padding-top: 1.5rem;
  }
}
.privacy-contact__txt-wrap {
  line-height: 1.33;
  font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .privacy-contact__txt-wrap {
    font-size: 1.2rem;
  }
}
.privacy-contact__num {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  padding: 1.5em 0 1em;
}
@media screen and (max-width: 1024px) {
  .privacy-contact__num {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .privacy-contact__num {
    padding: 1em 0 0.5em;
  }
}

.sub-view__wrap {
  padding: 4.2rem 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1400/174;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap {
    padding: 3.4rem 0 5.2rem;
    padding-left: 1rem;
  }
}
.sub-view__wrap.about-kv {
  background: url("../images/kv/about_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.about-kv {
    background: url("../images/kv/about_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.greeting-kv {
  background: url("../images/kv/greeting_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.greeting-kv {
    background: url("../images/kv/greeting_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.history-kv {
  background: url("../images/kv/history_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.history-kv {
    background: url("../images/kv/history_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.overview-kv {
  background: url("../images/kv/overview_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.overview-kv {
    background: url("../images/kv/overview_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.floorguide-kv {
  background: url("../images/kv/floorguide_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.floorguide-kv {
    background: url("../images/kv/floorguide_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.staff-kv {
  background: url("../images/kv/staff_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.staff-kv {
    background: url("../images/kv/staff_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.survey-kv {
  background: url("../images/kv/survey_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.survey-kv {
    background: url("../images/kv/survey_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.medical-kv {
  background: url("../images/kv/medical_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.medical-kv {
    background: url("../images/kv/medical_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.data-kv {
  background: url("../images/kv/data_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.data-kv {
    background: url("../images/kv/data_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.department-kv {
  background: url("../images/kv/department_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.department-kv {
    background: url("../images/kv/department_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.subject-kv {
  background: url("../images/kv/subject_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.subject-kv {
    background: url("../images/kv/subject_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.hospitalization-kv {
  background: url("../images/kv/hospitalization_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.hospitalization-kv {
    background: url("../images/kv/hospitalization_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.outpatient-kv {
  background: url("../images/kv/outpatient_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.outpatient-kv {
    background: url("../images/kv/outpatient_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.faq-kv {
  background: url("../images/kv/faq_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.faq-kv {
    background: url("../images/kv/faq_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.healthcheck-kv {
  background: url("../images/kv/healthcheck_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.healthcheck-kv {
    background: url("../images/kv/healthcheck_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.endoscopy-kv {
  background: url("../images/kv/endoscopy_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.endoscopy-kv {
    background: url("../images/kv/endoscopy_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.privacypolicy-kv {
  background: url("../images/kv/privacypolicy_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.privacypolicy-kv {
    background: url("../images/kv/privacypolicy_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.contact-kv {
  background: url("../images/kv/contact_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.contact-kv {
    background: url("../images/kv/contact_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.emergency-kv {
  background: url("../images/kv/emergency_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.emergency-kv {
    background: url("../images/kv/emergency_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.access-kv {
  background: url("../images/kv/access_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.access-kv {
    background: url("../images/kv/access_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.medicalpersonnel-kv {
  background: url("../images/kv/medicalpersonnel_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.medicalpersonnel-kv {
    background: url("../images/kv/medicalpersonnel_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.news-kv {
  background: url("../images/kv/news_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.news-kv {
    background: url("../images/kv/news_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__wrap.library-kv {
  background: url("../images/kv/library_kv.jpg") no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .sub-view__wrap.library-kv {
    background: url("../images/kv/library_kv-sp.jpg") no-repeat center center/cover;
  }
}
.sub-view__heading-wrap {
  text-align: left;
}
.sub-view__heading-en {
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 1.4166666667;
  text-shadow: 0 0 10px rgb(0, 0, 0);
  padding-left: 1.8rem;
  position: relative;
}
.sub-view__heading-en::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: 0.8rem;
  background: #fff;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 10px rgb(0, 0, 0);
          box-shadow: 0 0 10px rgb(0, 0, 0);
}
@media screen and (max-width: 1024px) {
  .sub-view__heading-en {
    font-size: 1.2rem;
    line-height: 1.4166666667;
    padding-left: 1.2rem;
  }
}
.sub-view__heading-ttl {
  display: block;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.15em;
  color: #fff;
  text-shadow: 0 0 10px rgb(0, 0, 0);
}
@media screen and (max-width: 1024px) {
  .sub-view__heading-ttl {
    font-size: 2.4rem;
    white-space: nowrap;
  }
}

.p-category .cat__sect {
  padding-bottom: 10rem;
}
@media screen and (max-width: 1024px) {
  .p-category .cat__sect {
    padding-bottom: 8rem;
  }
}
.p-category .cat__link-groups {
  max-width: 52rem;
  width: 100%;
  margin: 0 auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  padding-bottom: 4.2rem;
}
@media screen and (max-width: 1024px) {
  .p-category .cat__link-groups {
    max-width: 33.5rem;
    -webkit-column-gap: 0.8rem;
       -moz-column-gap: 0.8rem;
            column-gap: 0.8rem;
    -ms-grid-columns: 11.7rem 0.8rem 8.6rem 0.8rem 11.7rem;
    grid-template-columns: 11.7rem 8.6rem 11.7rem;
  }
}
.p-category .cat__link {
  background: #a7a5a5;
  color: #fff;
  text-align: center;
  width: 16rem;
  height: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-category .cat__link {
    width: auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-left: 1rem;
  }
}
.p-category .cat__link::before {
  content: "";
  position: absolute;
  width: 1rem;
  height: 0.7rem;
  background: url("../images/price/btn-arrow.svg") no-repeat center center/contain;
  right: 1.3rem;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}
@media screen and (max-width: 1024px) {
  .p-category .cat__link::before {
    right: 0.8rem;
  }
}
.p-category .cat__link.active {
  background: #000;
}
.p-category .cat__head-heading {
  font-size: 1.8rem;
  border-left: 4px solid #000;
  letter-spacing: 0;
  line-height: 1.6;
  font-weight: bold;
  padding-left: 1rem;
  margin-bottom: 1.5rem;
}
.p-category .news {
  padding: 6.4rem 0 8rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .news {
    padding: 4.2rem 0 5.5rem;
  }
}
.p-category .news::before {
  content: "";
  position: absolute;
  bottom: 10%;
  right: 0;
  width: 34.7rem;
  height: 61rem;
  z-index: -1;
  background: url(../images/common/bg2.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-category .news::before {
    display: none;
  }
}
.p-category .news__container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 680fr 4rem 240fr;
  grid-template-columns: 680fr 240fr;
  gap: 4rem;
}
@media screen and (max-width: 1024px) {
  .p-category .news__container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    margin-top: 0;
    gap: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.p-category .news__body-ttl {
  position: relative;
  padding-left: 1.9rem;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .p-category .news__body-ttl {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.p-category .news__body-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.5rem;
  height: 100%;
  border-radius: 5px;
  background: #0F7ECF;
}
.p-category .news__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 1024px) {
  .p-category .news__body {
    margin-top: 0;
  }
}
.p-category .news__item {
  position: relative;
  padding: 2.6rem 10rem 2.4rem 0;
  border-bottom: 1px dashed #D3D3D3;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .news__item {
    padding: 2.3rem 3rem 1.2rem 0;
  }
}
.p-category .news__item::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 6rem;
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .p-category .news__item::after {
    top: 70%;
    right: 0;
    width: 0.8rem;
    height: 1.4rem;
  }
}
.p-category .news__body {
  color: #333;
}
.p-category .news__item-img img {
  border-radius: 20px;
  width: 100%;
  height: auto;
  aspect-ratio: 176/113;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-category .news__item-img img {
    border-radius: 10px;
  }
}
.p-category .news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-category .news__meta {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem;
  }
}
.p-category .news__date {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0;
  white-space: nowrap;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .p-category .news__date {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.p-category .news__meta-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-category .news__meta-wrap {
    gap: 1rem;
  }
}
.p-category .news__tags {
  line-height: 1;
}
.p-category .news__tag {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #C91C23;
}
.p-category .news__label {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #004F89;
}
@media screen and (max-width: 1024px) {
  .p-category .news__label {
    padding: 0.2rem 1.2rem;
    white-space: nowrap;
  }
}
.p-category .news__ttl {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .p-category .news__ttl {
    margin-top: 1.2rem;
    font-size: 1.4rem;
  }
}
.p-category .news__none {
  white-space: nowrap;
}
.p-category .news__btn {
  text-align: right;
}
.p-category .news__category-wrap {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  top: 9rem;
}
@media screen and (max-width: 1000px) {
  .p-category .news__category-wrap {
    background: none;
    padding: 0 0 3rem;
  }
}
.p-category .news__category-wrap::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 24rem;
  height: 10.3rem;
  background: url(../images/office/sidebar.png) no-repeat center/contain;
}
@media screen and (max-width: 1000px) {
  .p-category .news__category-wrap::before {
    display: none;
  }
}
.p-category .news__category-wrap-ttl {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
  padding-left: 2.1rem;
  position: relative;
}
.p-category .news__category-wrap-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 0.5rem;
  height: 100%;
  background-color: #0F7ECF;
}
.p-category .news__tag-lists {
  margin-top: 4rem;
}
@media screen and (max-width: 1000px) {
  .p-category .news__tag-lists {
    margin-top: 1rem;
    display: contents;
  }
}
.p-category .news__tag-ttl {
  width: 100%;
  margin-top: 1.6rem;
  border: 1px solid #CDE2F2;
  border-radius: 23px;
  background: #CDE2F2;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1000px) {
  .p-category .news__tag-ttl {
    display: inline-block;
    width: unset;
    margin-top: 2.4rem;
  }
}
.p-category .news__tag-ttl a {
  display: inline-block;
  font-weight: 500;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 0.4rem 1.4rem;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .p-category .news__tag-ttl a {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    padding: 0.2rem 1.4rem;
  }
}
.p-category .news__cat-lists {
  margin-top: 1.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.9rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem 0.9rem;
}
@media screen and (max-width: 1000px) {
  .p-category .news__cat-lists {
    gap: 1rem 0.6rem;
    margin-top: 1rem;
    display: contents;
  }
}
.p-category .news__cat-ttl {
  border: 1px solid #CDE2F2;
  border-radius: 23px;
  background: #CDE2F2;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1000px) {
  .p-category .news__cat-ttl {
    display: inline-block;
    margin-top: 1.6rem;
  }
}
.p-category .news__cat-ttl a {
  display: inline-block;
  font-weight: 500;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 0.4rem 1.4rem;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .p-category .news__cat-ttl a {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    padding: 0.2rem 1.4rem;
  }
}
.p-category .news__cat-ttl:first-child {
  -ms-grid-column-span: 2;
  grid-column: span 2;
}
.p-category .news__cat-ttl.all {
  display: block;
  margin-top: 4rem;
  width: 100%;
  color: #0F7ECF;
  background: none;
  border: none;
  border-bottom: 1px solid #0F7ECF;
  border-radius: 0;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .news__cat-ttl.all {
    margin-top: 2.5rem;
    font-size: 1.6rem;
  }
}
.p-category .news__cat-ttl.all a {
  display: block;
  padding-bottom: 0.8rem;
  color: #0F7ECF;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .p-category .news__cat-ttl.all a {
    padding: 1rem;
    font-size: 1.6rem;
  }
}
.p-category .news__cat-ttl.all::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: 1.4rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center center/contain;
}
.p-category .news__no-posts {
  margin-top: 2rem;
  text-align: left;
}
.p-category .library {
  padding-top: 6.4rem;
  padding-bottom: 7.3rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .library {
    padding-top: 4.2rem;
    padding-bottom: 6rem;
  }
}
.p-category .library::before {
  content: "";
  position: absolute;
  bottom: 10%;
  right: 0;
  width: 34.7rem;
  height: 61rem;
  z-index: -1;
  background: url(../images/common/bg2.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-category .library::before {
    display: none;
  }
}
.p-category .library__container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 680fr 8rem 240fr;
  grid-template-columns: 680fr 240fr;
  gap: 8rem;
}
@media screen and (max-width: 1000px) {
  .p-category .library__container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 4rem;
  }
}
.p-category .library__body-ttl {
  position: relative;
  padding-left: 1.9rem;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .p-category .library__body-ttl {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.p-category .library__body-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.5rem;
  height: 100%;
  border-radius: 5px;
  background: #0F7ECF;
}
.p-category .library__body {
  margin-top: 4rem;
}
@media screen and (max-width: 1024px) {
  .p-category .library__body {
    margin-top: 2rem;
  }
}
.p-category .library__lists {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr 4rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 6rem 4rem;
}
@media screen and (max-width: 1024px) {
  .p-category .library__lists {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.1rem 2rem;
  }
}
.p-category .library__no-posts {
  margin-top: 2rem;
  text-align: left;
}
.p-category .library__item {
  position: relative;
}
.p-category .library__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .p-category .library__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1rem;
    height: unset;
  }
}
.p-category .library__new {
  content: "";
  position: absolute;
  top: -2rem;
  left: 0;
  z-index: 1;
  text-align: center;
  font-size: 1.6rem;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  line-height: 0.875;
  letter-spacing: 0;
}
@media screen and (max-width: 1279px) {
  .p-category .library__new {
    top: -1.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-category .library__new {
    width: 5.6rem;
    height: 2.9rem;
    font-size: 1.4rem;
  }
}
.p-category .library__body-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .p-category .library__body-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    margin-top: 0;
  }
}
.p-category .library__item-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 241/160;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-category .library__item-img img {
    min-width: 15rem;
    max-width: 15rem;
    aspect-ratio: 150/90;
  }
}
.p-category .library__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-category .library__meta {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-category .library__date {
  margin-top: 2rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  white-space: nowrap;
  padding-left: 3rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .library__date {
    padding-left: 2.2rem;
    margin-top: 0.5rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.p-category .library__date::before {
  content: "";
  position: absolute;
  top: 1.4rem;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background: url(../images/common/time.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .p-category .library__date::before {
    top: 1.1rem;
    width: 1.6rem;
    height: 1.6rem;
  }
}
.p-category .library__date-day {
  display: block;
}
.p-category .library__label {
  margin-top: 1.5rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  background: #004F89;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1024px) {
  .p-category .library__label {
    margin-top: 0.2rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    white-space: nowrap;
  }
}
.p-category .library__ttl {
  font-size: 1.8rem;
  margin-top: 1.5rem;
  font-weight: 400;
  line-height: 1.4444444444;
  letter-spacing: 0.05em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media screen and (max-width: 1024px) {
  .p-category .library__ttl {
    margin-top: 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis; /* 省略記号 (…) */
    word-break: break-word;
  }
}
.p-category .library__none {
  white-space: nowrap;
}
.p-category .library__btn {
  text-align: right;
}
.p-category .library__category-wrap {
  border-radius: 10px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 1000px) {
  .p-category .library__category-wrap {
    background: none;
  }
}
.p-category .library__category-wrap::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 24rem;
  height: 10.3rem;
  background: url(../images/office/sidebar.png) no-repeat center/contain;
}
@media screen and (max-width: 1000px) {
  .p-category .library__category-wrap::before {
    display: none;
  }
}
.p-category .library__category-wrap-ttl {
  font-weight: bold;
  font-weight: 700;
  font-size: 1.4rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #0F7ECF;
  margin-bottom: 3rem;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .p-category .library__category-wrap-ttl {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-category .library__category-wrap-ttl {
    text-align: left;
    margin-bottom: 1.5rem;
    position: relative;
  }
  .p-category .library__category-wrap-ttl::before, .p-category .library__category-wrap-ttl::after {
    content: "";
    left: unset;
    position: absolute;
    top: 50%;
    right: 0;
    width: 1.2rem;
    height: 2px;
    background-color: #414141;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  .p-category .library__category-wrap-ttl::before {
    -webkit-transform: translateY(-50%) rotate(0deg);
            transform: translateY(-50%) rotate(0deg);
  }
  .p-category .library__category-wrap-ttl::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
  .p-category .library__category-wrap-ttl.open::after {
    -webkit-transform: translateY(-50%) rotate(0deg);
            transform: translateY(-50%) rotate(0deg);
  }
}
.p-category .library__cat-lists {
  margin-top: 4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.6rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem;
}
@media screen and (max-width: 1000px) {
  .p-category .library__cat-lists {
    margin-top: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.2rem 0.9rem;
  }
}
.p-category .library__cat-ttl {
  border: 1px solid #CDE2F2;
  border-radius: 23px;
  background: #CDE2F2;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1000px) {
  .p-category .library__cat-ttl {
    display: inline-block;
  }
}
.p-category .library__cat-ttl a {
  display: inline-block;
  color: #333;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 0.4rem 1.4rem;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .p-category .library__cat-ttl a {
    padding: 0.6rem 1.4rem;
  }
}
.p-category .library__cat-ttl.all {
  display: block;
  margin-top: 4rem;
  width: 100%;
  color: #0F7ECF;
  background: none;
  border: none;
  border-bottom: 1px solid #0F7ECF;
  border-radius: 0;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-category .library__cat-ttl.all {
    margin-top: 2rem;
    font-size: 1.6rem;
    padding: 0;
  }
}
.p-category .library__cat-ttl.all a {
  display: block;
  padding-bottom: 0.8rem;
  color: #0F7ECF;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .p-category .library__cat-ttl.all a {
    padding: 1rem;
    font-size: 1.6rem;
  }
}
.p-category .library__cat-ttl.all::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: 1.4rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center center/contain;
}

/*----------------------------
■■　トップページ　■■
------------------------------*/
.p-top {
  background: #F8F7F1;
  overflow-x: hidden;
}
.p-top .sec-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .sec-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-top .container-flex .container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 1024px) {
  .p-top .container-flex .container {
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .p-top .container-flex .container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.p-top .kv__sect {
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .kv__sect {
    padding-bottom: 16rem;
  }
}
@media (max-width: 767px) {
  .p-top .kv__sect {
    padding-bottom: 13rem;
  }
}
.p-top .kv__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: calc(100vh - 9.6rem);
  min-height: 56rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
@media screen and (max-width: 1279px) {
  .p-top .kv__wrap {
    height: 100%;
    min-height: 48rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .kv__wrap {
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    row-gap: 3.2rem;
    height: auto;
    min-height: initial;
    max-width: 48rem;
    margin: 0 auto;
  }
}
.p-top .kv__video video {
  width: 100%;
  height: 100%;
  aspect-ratio: 1400/560;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-top .kv__video video {
    aspect-ratio: 375/200;
  }
}
.p-top .kv__img-wrap img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1400/560;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-top .kv__img-wrap img {
    aspect-ratio: 375/200;
  }
}
.p-top .kv__txt {
  content: "";
  position: absolute;
  bottom: 16%;
  left: 8%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: bold;
  letter-spacing: 0.3em;
  line-height: 1.4;
  font-size: 5rem;
  color: #fff;
  text-shadow: 0 0 10px rgb(0, 0, 0);
}
@media screen and (max-width: 1024px) {
  .p-top .kv__txt {
    text-align: center;
    font-size: 2.4rem;
    letter-spacing: 0.3em;
    color: #0F7ECF;
    bottom: 6%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    text-shadow: none;
    white-space: nowrap;
  }
}
.p-top .cta {
  padding: 0 0 6.2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta {
    padding: 0 0 3.5rem;
  }
}
.p-top .cta__container {
  position: relative;
  margin-top: -13rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 2fr 2rem 1fr;
  grid-template-columns: 2fr 1fr;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__container {
    margin-top: -3rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.6rem;
  }
}
.p-top .cta__btn {
  position: absolute;
  top: -9rem;
  right: 6.4rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 13rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__btn {
    top: -14rem;
    right: 2rem;
    max-width: 8rem;
  }
}
.p-top .cta__btn a {
  display: block;
}
.p-top .cta__wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__wrap {
    gap: 0.9rem;
  }
}
.p-top .cta__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-shadow: 0 3px 8px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 8px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
}
.p-top .cta__item-ttl {
  background: #0F7ECF;
  color: #fff;
  width: 100%;
  display: block;
  border-radius: 10px 10px 0 0;
  font-size: 2.3rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.4782608696;
  padding: 1rem 2rem 1rem 6.5rem;
  position: relative;
}
.p-top .cta__item-ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.8rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.2rem;
  height: 2.2rem;
  background: url(../images/common/arrow-circle-white.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item-ttl::after {
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
  }
}
.p-top .cta__item-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 2.8rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2rem;
  height: 3rem;
  background: url(../images/common/cta-icon1.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item-ttl::before {
    left: 0.9rem;
    width: 1.1rem;
    height: 1.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item-ttl {
    font-size: 1.4rem;
    line-height: 1.2142857143;
    padding: 0 1rem 0 2.5rem;
    min-height: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-top .cta__item:nth-child(2) .cta__item-ttl {
  padding-left: 7.9rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item:nth-child(2) .cta__item-ttl {
    padding-left: 4rem;
  }
}
.p-top .cta__item:nth-child(2) .cta__item-ttl::before {
  left: 2.3rem;
  width: 4rem;
  height: 2.3rem;
  background: url(../images/common/cta-icon2.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item:nth-child(2) .cta__item-ttl::before {
    left: 1.1rem;
    width: 2.3rem;
    height: 1.3rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item:nth-child(3) .cta__item-ttl {
    padding-left: 3.5rem;
  }
}
.p-top .cta__item:nth-child(3) .cta__item-ttl::before {
  left: 2.9rem;
  width: 2.7rem;
  height: 3.7rem;
  background: url(../images/common/cta-icon3.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__item:nth-child(3) .cta__item-ttl::before {
    left: 0.9rem;
    width: 1.8rem;
    height: 2.4rem;
  }
}
.p-top .cta__body {
  background: #fff;
  border-radius: 0 0 10px 10px;
  padding: 0.9rem 2.5rem 2.3rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 1152px) {
  .p-top .cta__body {
    padding: 0.9rem 2rem 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body {
    padding: 1rem 0.2rem 1rem 0.8rem;
  }
}
.p-top .cta__body-read {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-read {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.p-top .cta__body-txt {
  margin-top: 0.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-txt {
    margin-top: 0.5rem;
    font-size: 1.2rem;
    line-height: 1.25;
  }
}
.p-top .cta__body-txt span {
  display: inline-block;
  margin-right: 1rem;
  background: #0F7ECF;
  color: #fff;
  padding: 0 1.1rem;
  width: 8.3rem;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-txt span {
    font-size: 1.3rem;
    line-height: 1.1538461538;
    width: 6rem;
    padding: 0.4rem 0.2rem;
    margin-right: 0.5rem;
    white-space: nowrap;
  }
}
.p-top .cta__body-txt .body {
  display: contents;
  color: #333;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-txt .body {
    display: inline-block;
    background: none;
    margin-right: 0;
    font-size: 1.2rem;
    width: unset;
    white-space: normal;
    text-align: left;
    padding: 0;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-txt:has(.body) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-top .cta__body-tel {
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-tel {
    margin-top: 0.5rem;
  }
}
.p-top .cta__body-tel a {
  display: inline-block;
  color: #0F7ECF;
  font-size: 3.3rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1.3333333333;
  letter-spacing: 0;
  position: relative;
  padding-left: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-tel a {
    padding-left: 2.6rem;
    font-size: 2.8rem;
    line-height: 1.3214285714;
  }
}
.p-top .cta__body-tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  background: url(../images/common/tel.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .cta__body-tel a::before {
    left: 0;
    width: 2.5rem;
    height: 2.5rem;
  }
}
.p-top .cta__body-tel span {
  font-size: 1.5rem;
  line-height: 1.2;
}
.p-top .pickup {
  position: relative;
  padding-bottom: 0;
}
.p-top .pickup::after {
  content: "";
  position: absolute;
  bottom: -13rem;
  left: -15.8rem;
  width: 55.3rem;
  height: 55.3rem;
  background: url(../images/common/bg.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup::after {
    display: none;
  }
}
.p-top .pickup__content:nth-child(2) {
  margin-top: 2.5rem;
}
.p-top .pickup__ttl {
  background: #C91C23;
  color: #fff;
  padding: 1rem;
  border-radius: 10px 10px 0 0;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.1em;
  padding: 1.4rem 2rem 1.4rem 8.5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__ttl {
    font-size: 2rem;
    line-height: 0.7;
    padding: 1.6rem 2rem 1.6rem 4rem;
  }
}
.p-top .pickup__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 3rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.2rem;
  height: 3.9rem;
  background: url(../images/common/pickup-icon.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__ttl::before {
    width: 2.4rem;
    height: 2.4rem;
    left: 1rem;
  }
}
.p-top .pickup__container {
  background: #fff;
  border-radius: 0 0 10px 10px;
  padding: 4rem 6rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__container {
    padding: 1.5rem 2rem 3rem;
  }
}
.p-top .pickup__content-ttl {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__content-ttl {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.p-top .pickup__content-items {
  margin-top: 1.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 5rem;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__content-items {
    margin-top: 1rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-top .pickup__content-item:nth-child(1) {
  border-top: 1px dashed #D3D3D3;
}
.p-top .pickup__content-item:nth-child(1).no-posts-message {
  border-top: none;
}
.p-top .pickup__content-item:nth-child(2) {
  border-top: 1px dashed #D3D3D3;
}
.p-top .pickup__btn {
  margin-top: 1.4rem;
  text-align: right;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup__btn {
    margin-top: 2rem;
    text-align: center;
  }
}
.p-top .pickup .c-news__item {
  padding: 0.6rem 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .pickup .c-news__item {
    padding: 1.1rem 0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .pickup .c-news__ttl {
    line-height: 1.2;
  }
}
.p-top .outpatient {
  padding: 0 0 11rem;
  padding-top: 4.6rem;
  margin-top: 0;
  padding-top: 18rem;
  margin-top: -13.4rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient {
    margin-top: 0;
    padding: 0 0 5rem;
    padding-top: 4.6rem;
  }
}
.p-top .outpatient__flex {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 5rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.p-top .outpatient__left {
  width: 58.4745762712%;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__left {
    width: 100%;
  }
}
.p-top .outpatient__subttl {
  margin-top: 4rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0.1em;
  padding-left: 6.7rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__subttl {
    margin-top: 2.5rem;
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0;
    padding-left: 5rem;
  }
}
.p-top .outpatient__subttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5.7rem;
  height: 5.8rem;
  background: url(../images/common/outpatient-icon.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__subttl::before {
    width: 3.6rem;
    height: 3.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient .page-nav-subject__item {
    padding: 1.3rem 2rem 1.3rem 4.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient .page-nav-subject__item::after {
    right: 1.7rem;
    -webkit-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
}
.p-top .outpatient__lists .page-nav-subject {
  margin-top: 3.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.8rem 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__lists .page-nav-subject {
    margin-top: 2rem;
    gap: 0.8rem 1rem;
  }
}
.p-top .outpatient__right {
  background: #0F7ECF;
  color: #fff;
  padding: 3rem 2.9rem 3rem;
  border-radius: 10px;
  width: 36.4406779661%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media (max-width: 1152px) {
  .p-top .outpatient__right {
    padding: 3rem 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right {
    padding: 2rem 2.5rem;
    width: 100%;
  }
}
.p-top .outpatient__right-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0.1em;
  padding-bottom: 1.2rem;
  border-bottom: 1px dashed #fff;
  padding-left: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-ttl {
    font-size: 2rem;
    line-height: 1.45;
    padding-bottom: 1rem;
    padding-left: 4rem;
  }
}
.p-top .outpatient__right-ttl.schedule::before {
  content: "";
  position: absolute;
  top: 40%;
  left: 0.9rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.2rem;
  height: 3rem;
  background: url(../images/common/schedule.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-ttl.schedule::before {
    left: 0.5rem;
    width: 2.7rem;
    height: 2.5rem;
  }
}
.p-top .outpatient__right-ttl.close {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-ttl.close {
    padding-bottom: 0.7rem;
  }
}
.p-top .outpatient__right-ttl.close::before {
  content: "";
  position: absolute;
  top: 40%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.6rem;
  height: 3.4rem;
  background: url(../images/common/close.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-ttl.close::before {
    top: 30%;
    width: 3.8rem;
    height: 2.8rem;
  }
}
.p-top .outpatient__right-read {
  margin-top: 0.5rem;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-read {
    margin-top: 1rem;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.p-top .outpatient__right-read span {
  font-size: 2.4rem;
  line-height: 1.4583333333;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-read span {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.p-top .outpatient__right-lists {
  margin-top: 1.3rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-lists {
    margin-top: 1rem;
  }
}
.p-top .outpatient__right-list-item {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4444444444;
  padding-left: 2.7rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-list-item {
    font-size: 1.6rem;
    line-height: 1.5;
    padding-left: 2rem;
  }
}
.p-top .outpatient__right-list-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-list-item::before {
    left: 0.8rem;
    width: 0.8rem;
    height: 0.8rem;
  }
}
.p-top .outpatient__right-txt {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8571428571;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__right-txt {
    margin-top: 1rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}
.p-top .outpatient__right-tel a {
  display: inline-block;
  font-size: 2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
  padding-left: 2.6rem;
  position: relative;
}
.p-top .outpatient__right-tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.7rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-image: url(../images/common/tel.svg);
          mask-image: url(../images/common/tel.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background: #fff;
}
.p-top .outpatient__btn {
  margin-top: 6rem;
}
.p-top .outpatient__btn a {
  display: block;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;
  background: #fff;
  padding: 3.5rem;
  border: 4px solid #0F7ECF;
  text-align: center;
  position: relative;
  border-radius: 10px;
}
.p-top .outpatient__btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 6rem;
  width: 1.3rem;
  height: 2.2rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__btn a::after {
    right: 2rem;
    width: 1rem;
    height: 1.6rem;
  }
}
.p-top .outpatient__btn a span {
  display: inline-block;
  margin-right: 1.4rem;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0;
  color: #0F7ECF;
  position: relative;
  padding-left: 6rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__btn a span {
    font-size: 2rem;
    line-height: 1.45;
    padding-left: 4rem;
  }
}
.p-top .outpatient__btn a span::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 3.2rem;
  height: 4.9rem;
  background: url(../images/top/cta-icon1.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__btn a span::before {
    width: 2.4rem;
    height: 3.6rem;
  }
}
.p-top .outpatient__cta {
  margin-top: 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 6rem 1fr 6rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 6rem;
}
@media screen and (max-width: 1024px) {
  .p-top .outpatient__cta {
    margin-top: 3.3rem;
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .p-top .outpatient__cta {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-top .immunization {
  padding-bottom: 8rem;
  width: 59.8305084746%;
}
@media screen and (max-width: 1024px) {
  .p-top .immunization {
    width: 100%;
    padding-bottom: 4.7rem;
  }
}
.p-top .immunization__lists {
  margin-top: 1.7rem;
}
@media screen and (max-width: 1024px) {
  .p-top .immunization__lists {
    margin-top: 0.5rem;
  }
}
.p-top .immunization__list-item {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.6111111111;
  padding-left: 2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .immunization__list-item {
    font-size: 1.6rem;
    line-height: 1.8125;
  }
}
.p-top .immunization__list-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #004F89;
}
.p-top .immunization .sec-txt {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .p-top .immunization .sec-txt {
    margin-top: 1rem;
  }
}
.p-top .immunization .c-btn-blue {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-top .immunization .c-btn-blue {
    margin-top: 4rem;
  }
}
@media (max-width: 767px) {
  .p-top .immunization .c-btn-blue {
    margin-top: 2rem;
  }
}
.p-top .healthcheck {
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .p-top .healthcheck {
    padding-bottom: 4.7rem;
  }
}
.p-top .healthcheck .sec-txt {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .p-top .healthcheck .sec-txt {
    margin-top: 1rem;
  }
}
.p-top .healthcheck .c-btn-blue {
  max-width: 35.3rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .p-top .healthcheck .c-btn-blue {
    max-width: 100%;
    margin-top: 2rem;
  }
}
.p-top .news {
  padding-top: 8.7rem;
  padding-bottom: 4.6rem;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .p-top .news {
    padding-top: 2.6rem;
  }
}
.p-top .news .news-tabs {
  margin-top: 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.2rem 1fr 0.2rem 1fr 0.2rem 1fr 0.2rem 1fr;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .news .news-tabs {
    margin-top: 2rem;
  }
}
.p-top .news .news-tab {
  padding: 1.5rem 2rem;
  border: none;
  background: #CDE2F2;
  cursor: pointer;
  border-radius: 10px 10px 0 0;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .news .news-tab {
    font-size: 1.2rem;
    line-height: 1.25;
    padding: 0.8rem;
  }
}
.p-top .news .news-tab.active {
  background: #fff;
  border-top: 1px solid #D3D3D3;
  border-left: 1px solid #D3D3D3;
  border-right: 1px solid #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-top .news .news-tab.active {
    padding: 0.8rem 0.6rem;
  }
}
.p-top .news .news-list {
  border: 1px solid #D3D3D3;
  border-radius: 0 0 10px 10px;
  background: #fff;
  padding: 3rem 6rem;
}
@media screen and (max-width: 1024px) {
  .p-top .news .news-list {
    padding: 1rem 2rem 3rem;
  }
}
.p-top .news .news__btn {
  margin-top: 1.7rem;
  text-align: right;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .p-top .news .news__btn {
    margin-top: 2rem;
    text-align: center;
  }
}
.p-top .news .news__btn a {
  display: inline-block;
  color: #007acc;
  padding: 1.2rem 8rem 1.2rem 3rem;
  background: #fff;
}
.p-top .news .c-news__item {
  -ms-grid-columns: 25rem 1fr;
  grid-template-columns: 25rem 1fr;
  padding: 2.2rem 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .news .c-news__item {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 1.1rem 2rem 1.6rem 0.5rem;
    gap: 0.5rem;
  }
}
.p-top .library {
  background: #fff;
  padding-bottom: 12rem;
  position: relative;
}
.p-top .library::after {
  content: "";
  position: absolute;
  top: -13rem;
  right: -9.1rem;
  width: 55.3rem;
  height: 55.3rem;
  background: url(../images/common/bg.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library::after {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .library {
    padding-bottom: 6rem;
  }
}
.p-top .library__subttl {
  margin-top: 3rem;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.44;
  padding-left: 5.5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .library__subttl {
    margin-top: 2rem;
    font-size: 2rem;
    line-height: 1.45;
    padding-left: 4.3rem;
  }
}
.p-top .library__subttl.library1::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.5rem;
  height: 3.1rem;
  background: url(../images/top/library1-icon.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library__subttl.library1::before {
    width: 3.6rem;
    height: 2.4rem;
  }
}
.p-top .library__subttl.library2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.5rem;
  height: 4.2rem;
  background: url(../images/top/library2-icon.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library__subttl.library2::before {
    width: 3rem;
    height: 3.6rem;
  }
}
.p-top .library__subttl.library3::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.3rem;
  height: 3.2rem;
  background: url(../images/top/library3-icon.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library__subttl.library3::before {
    width: 3.2rem;
    height: 2.4rem;
  }
}
.p-top .library__txt {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .library__txt {
    margin-top: 0.5rem;
  }
}
.p-top .library__items {
  margin-top: 2.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 6rem 1fr 6rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 6rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .p-top .library__items {
    margin-top: 1.5rem;
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .p-top .library__items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.7rem;
  }
}
.p-top .library__item-youtube iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 353/198;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top .library__item-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .library__item-ttl {
    font-size: 1.8rem;
    line-height: 1.6111111111;
  }
}
.p-top .library__item-txt {
  margin-top: 0.7rem;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .library__item-txt {
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}
.p-top .library__btn {
  margin-top: 1.8rem;
  text-align: right;
}
@media screen and (max-width: 1024px) {
  .p-top .library__btn {
    margin-top: 1.4rem;
    text-align: center;
  }
}
.p-top .library__btn a {
  padding: 1.2rem 8rem 1.2rem 3rem;
}
.p-top .library__container {
  margin-top: 2.3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 6rem 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
}
@media screen and (max-width: 1024px) {
  .p-top .library__container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.p-top .library__news-items {
  margin-top: 1.2rem;
}
.p-top .library .c-news__item {
  padding: 1.1rem 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .library .c-news__item {
    padding: 1.5rem 0;
    gap: 0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .library .c-news__ttl {
    line-height: 1.2;
  }
}
.p-top .library__other-ttl {
  margin-top: 9rem;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.44;
  padding-left: 4rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-ttl {
    margin-top: 4.6rem;
    font-size: 2rem;
    line-height: 1.45;
    padding-left: 3rem;
  }
}
.p-top .library__other-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.7rem;
  height: 4.6rem;
  background: url(../images/top/library-other-icon.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-ttl::before {
    width: 2rem;
    height: 3.4rem;
  }
}
.p-top .library__other-news-tabs {
  margin-top: 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.2rem 1fr 0.2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-tabs {
    margin-top: 2rem;
  }
}
.p-top .library__other-news-tabs .news-tabs {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.2rem 1fr 0.2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.2rem;
}
.p-top .library__other-news-tabs .library-tab {
  padding: 1.5rem 2rem;
  border: none;
  background: #CDE2F2;
  cursor: pointer;
  border-radius: 10px 10px 0 0;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-tabs .library-tab {
    font-size: 1.2rem;
    line-height: 1.25;
    padding: 1rem 0.8rem;
  }
}
.p-top .library__other-news-tabs .library-tab.active {
  background: #fff;
  border-top: 1px solid #D3D3D3;
  border-left: 1px solid #D3D3D3;
  border-right: 1px solid #D3D3D3;
}
.p-top .library__other-news-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr 3rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem;
  padding: 3.5rem 4rem 5.5rem;
  border: 1px solid #D3D3D3;
  border-radius: 0 0 10px 10px;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 2.6rem 2rem;
    gap: 2.5rem;
  }
}
.p-top .library__other-news-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1rem;
  }
}
.p-top .library__other-news-item:not(.library4) {
  display: none;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-img {
    min-width: 13rem;
    max-width: 13rem;
  }
}
.p-top .library__other-news-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 250/150;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-img img {
    aspect-ratio: 130/78;
  }
}
.p-top .library__other-news-date {
  color: #0F7ECF;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-top .library__other-news-title {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-top .library__other-news-title {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.p-top .about {
  padding: 8rem 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .about {
    padding: 3rem 0 4rem;
  }
}
.p-top .about::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48.8rem;
  height: 39.5rem;
  background: url(../images/top/about_bg.png) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .about::before {
    display: none;
  }
}
.p-top .about__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5rem;
  max-width: 114rem;
}
@media screen and (max-width: 1024px) {
  .p-top .about__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.p-top .about .about__body {
  width: 30%;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  padding-right: 1.8rem;
  padding-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body {
    width: 100%;
    -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
            writing-mode: unset;
    padding-top: 0;
    padding-right: 0;
  }
}
.p-top .about .about__body .c-heading {
  font-size: 3rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body .c-heading {
    font-size: 2.5rem;
    letter-spacing: 0.1em;
  }
}
.p-top .about .about__body .c-heading span {
  padding-left: 0;
  padding-top: 2rem;
  margin-left: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body .c-heading span {
    padding-top: 0;
    margin-left: 0;
    padding-left: 2rem;
    padding-bottom: 0.4rem;
  }
}
.p-top .about .about__body .c-heading span::before {
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body .c-heading span::before {
    left: 1rem;
    top: 0.5rem;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.p-top .about .about__body-read {
  margin-top: 4rem;
  margin-right: 6rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.125;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body-read {
    margin-top: 2rem;
    margin-right: 0;
    letter-spacing: 0;
  }
}
.p-top .about .about__body-read span {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  display: inline-block;
  margin-right: 3.3rem;
  padding: 2rem 0;
  color: #0F7ECF;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body-read span {
    margin-left: 1.3rem;
    padding: 2.6rem 0;
  }
}
.p-top .about .about__body-read span::before {
  content: "";
  position: absolute;
  top: 1rem;
  right: -1rem;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  width: 1.45rem;
  height: 1.4rem;
  background: url(../images/common/kagi.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body-read span::before {
    top: 2.4rem;
    left: -1.5rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.p-top .about .about__body-read span::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -1rem;
  -webkit-transform: translateY(-50%) rotate(-90deg);
          transform: translateY(-50%) rotate(-90deg);
  width: 1.45rem;
  height: 1.4rem;
  background: url(../images/common/kagi.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__body-read span::after {
    bottom: 0.8rem;
    left: unset;
    right: -2.2rem;
    -webkit-transform: translateY(-50%) rotate(180deg);
            transform: translateY(-50%) rotate(180deg);
  }
}
.p-top .about .about__links {
  width: 70%;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__links {
    width: 100%;
  }
}
.p-top .about .about__cta-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 2rem auto 2rem auto 2rem auto;
      grid-template-areas: "a b c" "a d e" "f g h" "btn btn btn";
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__cta-items {
    -ms-grid-rows: auto 1.2rem auto 1.2rem auto 1.2rem auto 1.2rem auto;
        grid-template-areas: "a b" "a c" "d e" "f g" "h btn";
    -ms-grid-columns: 1fr 1.2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem;
  }
}
.p-top .about .about__cta-item:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: a;
}
.p-top .about .about__cta-item:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: b;
}
.p-top .about .about__cta-item:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: c;
}
.p-top .about .about__cta-item:nth-child(4) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: d;
}
.p-top .about .about__cta-item:nth-child(5) {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
  grid-area: e;
}
.p-top .about .about__cta-item:nth-child(6) {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: f;
}
.p-top .about .about__cta-item:nth-child(7) {
  -ms-grid-row: 5;
  -ms-grid-column: 3;
  grid-area: g;
}
.p-top .about .about__cta-item:nth-child(8) {
  -ms-grid-row: 5;
  -ms-grid-column: 5;
  grid-area: h;
}
.p-top .about .about__cta-item {
  position: relative;
}
.p-top .about .about__cta-item::before {
  content: "";
  position: absolute;
  bottom: 1.5rem;
  right: 2rem;
  width: 0.8rem;
  height: 1.4rem;
  z-index: 1;
  background: url(../images/common/arrow-white.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__cta-item::before {
    bottom: 1.5rem;
    right: 1rem;
    width: 0.7rem;
    height: 1.2rem;
  }
}
.p-top .about .about__cta-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 79, 137, 0.3);
  border-radius: 10px;
}
.p-top .about .about__cta-item img {
  border-radius: 10px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top .about .about__cta-item span {
  content: "";
  position: absolute;
  bottom: 0.7rem;
  left: 2rem;
  z-index: 1;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__cta-item span {
    bottom: 1rem;
    left: 1.4rem;
    line-height: 1.4375;
  }
}
.p-top .about .about__btn {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  -ms-grid-column-span: 5;
  grid-area: btn;
  margin-top: -0.7rem;
}
@media screen and (max-width: 1024px){
  .p-top .about .about__cta-item:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-top .about .about__cta-item:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-top .about .about__cta-item:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .p-top .about .about__cta-item:nth-child(4) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-top .about .about__cta-item:nth-child(5) {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
  .p-top .about .about__cta-item:nth-child(6) {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
  }
  .p-top .about .about__cta-item:nth-child(7) {
    -ms-grid-row: 7;
    -ms-grid-column: 3;
  }
  .p-top .about .about__cta-item:nth-child(8) {
    -ms-grid-row: 9;
    -ms-grid-column: 1;
  }
  .p-top .about .about__btn {
    -ms-grid-row: 9;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__btn {
    margin-top: 0;
  }
}
.p-top .about .about__btn a.c-btn-white {
  width: 100%;
  text-align: center;
  padding: 1.7rem;
  border-radius: 10px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  border: 2px solid #0F7ECF;
}
.p-top .about .about__btn a.c-btn-white::after {
  display: none;
}
@media screen and (max-width: 1024px) {
  .p-top .about .about__btn a.c-btn-white {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.p-top .about .about__btn a.c-btn-white span {
  position: relative;
  padding-right: 2.1rem;
}
.p-top .about .about__btn a.c-btn-white span::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/cover;
}
.p-top .other {
  padding-top: 12rem;
  padding-bottom: 7.2rem;
  background: #fff;
  position: relative;
}
.p-top .other::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: -12.7rem;
  width: 40rem;
  height: 40rem;
  background: url(../images/common/bg.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .other::after {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .p-top .other {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.p-top .other__link {
  border: 3px solid #0F7ECF;
  border-radius: 12px;
  position: relative;
  background: url(../images/common/shimizukai.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-top .other__link {
    background: url(../images/common/shimizukai-sp.png) no-repeat center center/cover;
  }
}
.p-top .other__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 79, 137, 0.3);
  border-radius: 10px;
}
.p-top .other__link a {
  position: relative;
  display: block;
  text-align: center;
  padding: 5rem;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4666666667;
  letter-spacing: 0.1em;
  color: #fff;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1024px) {
  .p-top .other__link a {
    font-size: 2.4rem;
    line-height: 1.4583333333;
    padding: 3.2rem;
  }
}
.p-top .other__link a::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 6rem;
  width: 1.8rem;
  height: 3rem;
  background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .p-top .other__link a::after {
    right: 2rem;
    width: 1.3rem;
    height: 2rem;
  }
}
.p-top .other__ttl {
  margin-top: 5rem;
  margin-bottom: 2rem;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4545454545;
  padding-left: 2rem;
  white-space: nowrap;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .p-top .other__ttl {
    white-space: normal;
    margin-top: 4rem;
    font-size: 2rem;
    padding-left: 1rem;
  }
}
.p-top .other__ttl.c-section-title::before {
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .p-top .other__ttl.c-section-title::before {
    top: 50%;
  }
}
.p-top .other__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr 4rem 1fr 4rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 4rem;
}
@media screen and (max-width: 1024px) {
  .p-top .other__items {
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 2rem;
  }
}
.p-top .other__items2 {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .other__items2 {
    margin-top: 0;
  }
}
.p-top .other__item-ttl {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4444444444;
  padding-right: 2.4rem;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  .p-top .other__item-ttl {
    font-size: 1.6rem;
    line-height: 1.5;
    padding-right: 2.2rem;
  }
}
.p-top .other__item-ttl::before {
  content: "";
  position: absolute;
  width: 1.4rem;
  height: 1.4rem;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("../images/common/link.svg") no-repeat center center/contain;
}
.p-top .other .card__ttl-wrap {
  padding-bottom: 3rem;
  position: relative;
}
.p-top .other .card__ttl-wrap::before {
  content: "";
  position: absolute;
  width: 38.3rem;
  height: 1.4rem;
  background: url("../images/top/fukidashi.svg") no-repeat center center/contain;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.p-top .other .no-posts-message {
  text-align: center;
  color: #666;
  font-size: 1.4rem;
  padding: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-top .other .no-posts-message {
    font-size: 1.2rem;
    padding: 1.5rem;
  }
}

/*----------------------------
■■　概要ページ page-about.php　■■
------------------------------*/
.p-about__container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10rem 24rem;
  grid-template-columns: 1fr 24rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 10rem;
}
@media (max-width: 1152px) {
  .p-about__container {
    gap: 6rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about__container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 4rem;
  }
}
.p-about__container .p-about__sidebar {
  background: #F8F7F1;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .p-about__container .p-about__sidebar {
    display: none;
  }
}
.p-about__container .p-about__sidebar-wrap {
  position: sticky;
  top: 14rem;
  padding: 5rem 2rem 1rem 3rem;
}
@media screen and (max-width: 1000px) {
  .p-about__container .p-about__sidebar-wrap {
    top: 7rem;
  }
}
.p-about__container .p-about__sidebar-ttl {
  font-size: 1.9rem;
  line-height: 1.4210526316;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 1rem;
}
.p-about__container .p-about__sidebar-items {
  list-style: none;
  padding: 0;
  margin: 0;
}
.p-about__container .p-about__sidebar-item {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  padding-left: 3.7rem;
}
.p-about__container .p-about__sidebar-item.current::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.3rem;
  height: 1.4rem;
  background: url(../images/common/arrow-sidebar.svg) no-repeat center/contain;
}
.p-about__container .p-about__sidebar-item.current a {
  color: #0F7ECF;
}
.p-about__container .p-about__sidebar-item a {
  display: block;
  text-decoration: none;
  color: #333;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 2.5625;
  letter-spacing: 0;
}
.p-about__container .p-about__sidebar-item a:hover {
  color: #0F7ECF;
}
.p-about__container .container {
  width: unset;
  padding: 0 0 0 11rem;
}
@media (max-width: 1152px) {
  .p-about__container .container {
    padding: 0 5rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about__container .container {
    padding: 0 2rem;
  }
}
.p-about .about {
  position: relative;
  overflow: hidden;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about {
    padding-bottom: 4rem;
  }
}
.p-about .about::before {
  content: "";
  position: absolute;
  top: unset;
  left: unset;
  bottom: 10%;
  right: 0;
  width: 34.7rem;
  height: 61rem;
  z-index: -1;
  background: url(../images/common/bg2.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-about .about::before {
    display: none;
  }
}
.p-about .about::after {
  content: "";
  position: absolute;
  top: -8rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 140rem;
  height: 78rem;
  z-index: -1;
  background: url(../images/common/bg1.png) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .p-about .about::after {
    top: -17rem;
    width: 61rem;
    height: 61rem;
  }
}
.p-about .about__read {
  padding: 10rem 0 0;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4583333333;
}
@media screen and (max-width: 1024px) {
  .p-about .about__read {
    padding: 5rem 0 0;
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.p-about .about__read::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 37rem;
  height: 29.9rem;
  background: url(../images/top/about_bg.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-about .about__read::before {
    display: none;
  }
}
.p-about .about__read::after {
  content: "";
  position: absolute;
  top: -5%;
  right: -5.5%;
  width: 31.1rem;
  height: 25.2rem;
  background: url(../images/top/about_bg2.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-about .about__read::after {
    top: -2%;
    right: -17%;
    width: 16rem;
    height: 13rem;
    background: url(../images/about/about_bg2-sp.png) no-repeat center/cover;
  }
}
.p-about .about__read span {
  color: #0F7ECF;
  display: inline-block;
  margin-top: 1rem;
  padding: 0 2.5rem 0 2rem;
  font-size: 3.2rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4375;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-about .about__read span {
    margin-top: 0.5rem;
    font-size: 2.3rem;
    line-height: 1.8695652174;
    padding: 0 1.5rem 0 1rem;
  }
}
.p-about .about__read span::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.45rem;
  height: 1.4rem;
  background: url(../images/common/kagi.svg) no-repeat center/contain;
}
.p-about .about__read span::after {
  content: "";
  position: absolute;
  bottom: -1rem;
  right: 1rem;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  width: 1.45rem;
  height: 1.4rem;
  background: url(../images/common/kagi.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-about .about__read span::after {
    right: 0;
  }
}
.p-about .about__items {
  margin-top: 9.8rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5.6rem 1fr 5.6rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 7.2rem 5.6rem;
  padding: 0 5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about__items {
    margin-top: 3.8rem;
    -ms-grid-columns: 1fr 4rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    padding: 0;
    gap: 4rem;
  }
}
@media (max-width: 767px) {
  .p-about .about__items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 4rem;
  }
}
.p-about .about__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  -ms-grid-row-span: 4;
  grid-row: span 4;
  gap: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .about__item {
    display: block;
  }
}
.p-about .about__item-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px;
}
.p-about .about__item-ttl {
  margin-top: 2.2rem;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.25;
}
@media screen and (max-width: 1024px) {
  .p-about .about__item-ttl {
    margin-top: 1.2rem;
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.p-about .about__item-txt {
  margin-top: -1rem;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2;
}
@media screen and (max-width: 1024px) {
  .p-about .about__item-txt {
    margin-top: 1rem;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .about__item-btn {
    margin-top: 1.2rem;
  }
}
.p-about .about__item-btn span {
  width: 100%;
}
.p-about .about__cta {
  padding: 6.3rem 0 8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta {
    padding: 4rem 0 6rem;
  }
}
.p-about .about__cta-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-about .about__cta-head-ttl {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4666666667;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-head-ttl {
    font-size: 2.5rem;
    line-height: 1.44;
    letter-spacing: 0.15em;
  }
}
.p-about .about__cta-head-read {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2;
}
.p-about .about__cta-items {
  margin-top: 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-items {
    margin-top: 1.8rem;
    -ms-grid-columns: 1fr 1.2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem;
  }
}
.p-about .about__cta-item {
  position: relative;
}
.p-about .about__cta-item::before {
  content: "";
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  width: 0.8rem;
  height: 1.4rem;
  z-index: 1;
  background: url(../images/common/arrow-white.svg) no-repeat center/cover;
}
@media (max-width: 1152px) {
  .p-about .about__cta-item::before {
    right: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-item::before {
    bottom: 1.5rem;
    right: 1rem;
    width: 0.7rem;
    height: 1.2rem;
  }
}
.p-about .about__cta-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 79, 137, 0.3);
  border-radius: 10px;
}
.p-about .about__cta-item img {
  border-radius: 10px;
}
.p-about .about__cta-item span {
  content: "";
  position: absolute;
  bottom: 1rem;
  left: 2rem;
  z-index: 1;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
@media (max-width: 1152px) {
  .p-about .about__cta-item span {
    left: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-item span {
    bottom: 1rem;
    left: 1.5rem;
    line-height: 1.4375;
  }
}
.p-about .about__cta-btn {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-btn {
    margin-top: 2rem;
  }
}
.p-about .about__cta-btn a {
  display: block;
  border: 2px solid #0F7ECF;
  text-align: center;
  border-radius: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  color: #0F7ECF;
  padding: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-btn a {
    padding: 1.2rem;
  }
}
.p-about .about__cta-btn a span {
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-btn a span {
    display: block;
  }
}
.p-about .about__cta-btn a span::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -2.7rem;
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .p-about .about__cta-btn a span::before {
    right: 1.5rem;
  }
}
.p-about .greeting {
  margin-right: -10rem;
  position: relative;
}
.p-about .greeting::before {
  content: "";
  position: absolute;
  top: 36rem;
  left: -17.7rem;
  width: 35.4rem;
  height: 35.4rem;
  background: url(../images/common/bg.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting::before {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .greeting {
    margin-right: 0;
  }
}
.p-about .greeting__items {
  margin-top: 9rem;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__items {
    margin-top: 1.2rem;
  }
}
.p-about .greeting__item {
  padding: 5rem 10rem 6.2rem 0;
}
@media (max-width: 1152px) {
  .p-about .greeting__item {
    padding: 5rem 5rem 6.2rem 0;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__item {
    padding: 5rem 0 4.2rem;
  }
}
.p-about .greeting__item:nth-child(2) {
  background: #F8F7F1;
  padding: 7.3rem 10rem 6.2rem 0;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__item:nth-child(2) {
    padding: 3.8rem 0 4rem;
  }
}
.p-about .greeting__head {
  margin-top: 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head {
    margin-top: 2.6rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.p-about .greeting__head-youtube {
  width: 52.6315789474%;
}
@media (max-width: 1152px) {
  .p-about .greeting__head-youtube {
    width: 80%;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head-youtube {
    width: 100%;
  }
}
.p-about .greeting__head-youtube iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 500/280;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-about .greeting__head-body {
  width: 41.0526315789%;
}
@media (max-width: 1152px) {
  .p-about .greeting__head-body {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head-body {
    width: 100%;
  }
}
.p-about .greeting__head-body-ttl {
  color: #0F7ECF;
  font-size: 3rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head-body-ttl {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.p-about .greeting__head-body-name {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.4666666667;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head-body-name {
    margin-top: 2rem;
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
    gap: 1rem;
  }
}
.p-about .greeting__head-body-name span {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__head-body-name span {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.p-about .greeting__item-txt {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__item-txt {
    margin-top: 1.7rem;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
  }
}
.p-about .greeting__item-btn {
  margin-top: 4.3rem;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting__item-btn {
    margin-top: 2.7rem;
  }
}
.p-about .greeting .about__cta {
  padding-right: 10rem;
}
@media screen and (max-width: 1024px) {
  .p-about .greeting .about__cta {
    padding-right: 0;
  }
}
.p-about .history .container {
  margin-bottom: 5.7rem;
}
@media screen and (max-width: 1024px) {
  .p-about .history .container {
    margin-bottom: 2rem;
  }
}
.p-about .history__table {
  margin-top: 6.4rem;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .p-about .history__table {
    margin-top: 5rem;
  }
}
.p-about .history__table tr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16.8rem 0.8rem 1fr;
  grid-template-columns: 16.8rem 1fr;
  padding: 1rem 2rem;
  gap: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  padding: 2.1rem 0;
}
@media screen and (max-width: 1024px) {
  .p-about .history__table tr {
    font-size: 1.4rem;
    line-height: 2;
    -ms-grid-columns: 10.5rem 3rem 1fr;
    grid-template-columns: 10.5rem 1fr;
    gap: 3rem;
    padding: 0.9rem 1rem 0.9rem 0;
  }
}
.p-about .history__table tr:nth-child(odd) {
  background: #F2F8FD;
}
.p-about .history__table th {
  font-weight: 700;
}
.p-about .overview {
  position: relative;
}
.p-about .overview::before {
  content: "";
  position: absolute;
  top: 19.5rem;
  left: -24.4rem;
  width: 35.4rem;
  height: 35.4rem;
  background: url(../images/common/bg.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-about .overview::before {
    display: none;
  }
}
.p-about .overview .c-section-title {
  padding-left: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .page-nav {
    margin-top: 6rem;
  }
}
.p-about .overview .overview1 {
  margin-top: 5.5rem;
}
.p-about .overview .overview1__read {
  margin-top: 4.5rem;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.44;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview1__read {
    margin-top: 3.2rem;
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.p-about .overview .overview2 {
  margin-top: 9rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2 {
    margin-top: 6.3rem;
  }
}
.p-about .overview .overview2__items {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__items {
    margin-top: 0.8rem;
  }
}
.p-about .overview .overview2__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.2rem;
  padding: 2.6rem 2rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__item {
    gap: 2rem;
    padding: 1.2rem 0 2rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-about .overview .overview2__item:first-child {
  padding: 2.5rem 2rem 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__item:first-child {
    padding: 2rem 0 2.5rem;
  }
}
.p-about .overview .overview2__item:last-child {
  padding: 4rem 2rem 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__item:last-child {
    padding: 1.1rem 0 2.6rem;
  }
}
.p-about .overview .overview2__item-num {
  font-size: 4.3rem;
  font-weight: 500;
  line-height: 1.511627907;
  color: #0F7ECF;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__item-num {
    font-size: 2.8rem;
    line-height: 1;
  }
}
.p-about .overview .overview2__item-txt {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview2__item-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .overview .overview3 {
  margin-top: 8.6rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3 {
    margin-top: 6.1rem;
  }
}
.p-about .overview .overview3__items {
  margin-top: 2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3__items {
    margin-top: 0.8rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.p-about .overview .overview3__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 11.4rem 1fr;
  grid-template-columns: 11.4rem 1fr;
  border-bottom: 1px dashed #D3D3D3;
  padding: 3rem 2rem;
  font-size: 1.6rem;
  line-height: 2.5;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3__item {
    font-size: 1.4rem;
    line-height: 2;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 1.7rem 0 1rem;
    gap: 0.7rem;
  }
}
.p-about .overview .overview3__item-ttl {
  font-weight: 700;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3__item-ttl {
    line-height: 1.4285714286;
  }
}
.p-about .overview .overview3__item-txt {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3__item-txt {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.p-about .overview .overview3__btn {
  margin-top: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview3__btn {
    margin-top: 3rem;
  }
}
.p-about .overview .overview3__btn a {
  display: inline-block;
  background: #0F7ECF;
  color: #fff;
  padding: 1.2rem 8.6rem 1.2rem 5rem;
  border-radius: 100px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
}
.p-about .overview .overview4 {
  margin-top: 12.3rem;
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4 {
    margin-top: 6.2rem;
    margin-bottom: 0.8rem;
  }
}
.p-about .overview .overview4__subttl {
  margin-top: 4.6rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.3333333333;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__subttl {
    margin-top: 3.2rem;
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.p-about .overview .overview4__subttl2 {
  margin-top: 5.4rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__subttl2 {
    margin-top: 1.4rem;
  }
}
.p-about .overview .overview4__items {
  margin-top: 3.2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 4.1rem 5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__items {
    margin-top: 1rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.p-about .overview .overview4__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.3rem 20.4rem;
  grid-template-columns: 1fr 20.4rem;
  gap: 2.3rem;
  border-top: 1px dashed gray;
  padding: 2.4rem 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 1152px) {
  .p-about .overview .overview4__item {
    -ms-grid-columns: 1fr 15rem;
    grid-template-columns: 1fr 15rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item {
    padding: 1.4rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 1rem;
  }
}
.p-about .overview .overview4__item-address {
  margin-top: 0.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item-address {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .overview .overview4__item-address span {
  white-space: nowrap;
}
.p-about .overview .overview4__item-ttl {
  display: inline;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  position: relative;
  padding-right: 2.2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item-ttl {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.p-about .overview .overview4__item-ttl::after {
  content: "";
  position: absolute;
  bottom: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 1.4rem;
  height: 1.4rem;
  background: url(../images/common/link.svg) no-repeat center/contain;
}
.p-about .overview .overview4__item-img {
  margin-top: 0.6rem;
}
.p-about .overview .overview4__item-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 204/123;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item-img img {
    aspect-ratio: 335/223;
  }
}
.p-about .overview .overview4__item-tel {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item-tel {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .overview .overview4__item-fax {
  margin-top: 0.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .overview .overview4__item-fax {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .overview__link {
  margin-top: 11.7rem;
}
@media screen and (max-width: 1024px) {
  .p-about .overview__link {
    margin-top: 6.5rem;
  }
}
.p-about .overview__link.other__link {
  border: 3px solid #0F7ECF;
  border-radius: 10px;
  position: relative;
  background: url(../images/common/shimizukai.png) no-repeat center center/cover;
}
.p-about .overview__link.other__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 79, 137, 0.3);
  border-radius: 10px;
}
.p-about .overview__link.other__link a {
  position: relative;
  display: block;
  text-align: center;
  padding: 5.3rem;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4666666667;
  letter-spacing: 0.1em;
  color: #fff;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1024px) {
  .p-about .overview__link.other__link a {
    font-size: 2rem;
    line-height: 1.2083333333;
    padding: 3rem;
  }
}
.p-about .overview__link.other__link a::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 6rem;
  width: 1.8rem;
  height: 3rem;
  background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .p-about .overview__link.other__link a::after {
    right: 2rem;
    width: 0.8rem;
    height: 1.2rem;
  }
}
.p-about .survey {
  padding: 6.4rem 0;
}
@media screen and (max-width: 1024px) {
  .p-about .survey {
    padding: 4rem 0;
    overflow-x: hidden;
  }
}
.p-about .survey .sec-txt {
  font-family: "Noto Sans JP", sans-serif;
}
.p-about .survey__tab {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.3rem 1fr 1.3rem 1fr 1.3rem 1fr 1.3rem 1fr;
  grid-template-columns: repeat(5, 1fr);
  margin-bottom: 2.4rem;
  gap: 1.3rem;
  max-width: 81.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__tab {
    -ms-grid-columns: 1fr 0.5rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem 0.5rem;
  }
}
.p-about .survey__tab-item {
  padding: 1.5rem 3rem;
  background: #fff;
  text-decoration: none;
  color: #004F89;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  border: 1px solid #004F89;
  border-radius: 4px;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__tab-item {
    padding: 1.2rem 1.5rem;
    font-size: 1.5rem;
    line-height: 1.4;
  }
}
.p-about .survey__tab-item:hover {
  color: #333;
}
.p-about .survey__tab-item.active {
  background: #004F89;
  color: #fff;
  border-color: #004F89;
  position: relative;
}
.p-about .survey__tab-item.active::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 16px solid #004F89;
  position: absolute;
  bottom: -1.4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1024px) {
  .p-about .survey__tab-item.active::after {
    display: none;
  }
}
.p-about .survey__bottom-ttl {
  margin-top: 7.6rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__bottom-ttl {
    margin-top: 3.6rem;
    font-size: 2rem;
    line-height: 1.45;
  }
}
.p-about .survey__tab--bottom {
  margin-top: 1.4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.3rem 1fr 1.3rem 1fr 1.3rem 1fr 1.3rem 1fr;
  grid-template-columns: repeat(5, 1fr);
  margin-bottom: 6rem;
  gap: 1.3rem;
  max-width: 81.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__tab--bottom {
    margin-top: 1.1rem;
    -ms-grid-columns: 1fr 0.5rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.3rem 0.5rem;
    margin-bottom: 2.2rem;
  }
}
.p-about .survey__tab--bottom .survey__tab-item.active::after {
  display: none;
}
.p-about .survey__content {
  position: relative;
}
.p-about .survey__content-item {
  display: none;
  background: #fff;
  padding: 0;
  border: none;
}
.p-about .survey__content-item.active {
  display: block;
}
.p-about .survey__content-item-top {
  margin-top: 4.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 7.3rem;
  background: #F2F8FD;
  padding: 1.1rem 2.4rem 1.7rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-item-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.p-about .survey__content-item-top-wrap-ttl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-item-top-wrap-ttl {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .survey__content-item-top-wrap-txt {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-item-top-wrap-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body {
    display: -ms-grid;
    display: grid;
  }
}
.p-about .survey__content-body-title {
  margin-top: 8rem;
}
.p-about .survey__content-body-title2 {
  margin-top: 9rem;
}
.p-about .survey__content-body-items {
  margin-top: 2.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.3rem 2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-items {
    margin-top: 3rem;
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-about .survey__content-body-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-about .survey__content-body-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  -ms-grid-row-span: 2;
  grid-row: span 2;
  gap: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-item {
    gap: 0.5rem;
  }
}
.p-about .survey__content-body-item--mt {
  margin-top: 4.3rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-item--mt {
    margin-top: 2rem;
  }
}
.p-about .survey__content-body-item-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.56;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-item-ttl {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.p-about .survey__content-body-item-img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 80rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-item-img.scroll {
    overflow-x: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: auto;
    -webkit-overflow-scrolling: touch;
  }
  .p-about .survey__content-body-item-img.scroll img {
    height: 100%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    min-width: 50rem;
  }
}
.p-about .survey__content-body-top {
  margin-top: 3.7rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-top {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-about .survey__content-body-top {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-about .survey__content-body-txt {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .survey__content-body-txt {
    font-size: 1.4rem;
    line-height: 1.5714285714;
    margin-top: 1rem;
  }
}
.p-about .medical .container {
  margin-bottom: 5.6rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical .container {
    margin-bottom: 2rem;
  }
}
.p-about .medical__top {
  margin-top: 6.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top {
    margin-top: 3.8rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 1.6rem;
  }
}
.p-about .medical__top-img {
  min-width: 53.3rem;
}
@media (max-width: 1152px) {
  .p-about .medical__top-img {
    min-width: 33rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top-img {
    min-width: unset;
  }
}
.p-about .medical__top-img img {
  border-radius: 16px;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top-img img {
    aspect-ratio: 335/223;
  }
}
.p-about .medical__top-ttl {
  font-size: 3rem;
  font-weight: 500;
  line-height: 2.1666666667;
  color: #0F7ECF;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top-ttl {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.p-about .medical__top-read {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.4705882353;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top-read {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.p-about .medical__top-txt {
  margin-top: 1.8rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__top-txt {
    margin-top: 1.1rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .medical__content {
  margin-top: 7.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content {
    margin-top: 3rem;
  }
}
.p-about .medical__content2 {
  margin-top: 6rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content2 {
    margin-top: 3.8rem;
  }
}
.p-about .medical__content3 {
  margin-top: 8.2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content3 {
    margin-top: 3.5rem;
  }
}
.p-about .medical__content-read {
  margin-top: 2.8rem;
  padding: 0 2rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content-read {
    padding: 0;
    font-size: 1.4rem;
    line-height: 2;
    margin-top: 2.5rem;
  }
}
.p-about .medical__lists {
  margin-top: 0.4rem;
}
.p-about .medical__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 8rem 1fr;
  grid-template-columns: 8rem 1fr;
  padding: 3.5rem 0 2.7rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__item {
    -ms-grid-columns: 4rem 1fr;
    grid-template-columns: 4rem 1fr;
    padding: 2.5rem 0 1.2rem;
  }
}
.p-about .medical__num {
  font-size: 4.3rem;
  font-weight: 500;
  color: #0F7ECF;
  line-height: 1;
  padding-left: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__num {
    font-size: 2.8rem;
    padding-left: 0;
  }
}
.p-about .medical__item-body-ttl {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__item-body-ttl {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.4444444444;
  }
}
.p-about .medical__item-body-txt {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__item-body-txt {
    margin-top: 0.7rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .medical__item-body-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__item-body-lists {
    margin-top: 0.6rem;
    gap: 2rem;
  }
}
.p-about .medical__item-body-list {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  padding-left: 1.5em;
  text-indent: -1.5em;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__item-body-list {
    font-size: 1.4rem;
    line-height: 2;
    padding-left: 1em;
    text-indent: -1em;
  }
}
.p-about .medical__grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4.7rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem 4.7rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__grid {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.p-about .medical__grid .medical__content {
  margin-top: 5.8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__grid .medical__content {
    margin-top: 3.5rem;
  }
}
.p-about .medical__content-flex {
  margin-top: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content-flex {
    margin-top: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.p-about .medical__content-flex-img {
  min-width: 19.7rem;
  max-width: 19.7rem;
}
@media (max-width: 1152px) {
  .p-about .medical__content-flex-img {
    min-width: 15rem;
    max-width: unset;
  }
}
.p-about .medical__content-flex-img img {
  border-radius: 8px;
}
.p-about .medical__content-txt {
  margin-top: -1rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content-txt {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .medical__content-txt2 {
  margin-top: 1rem;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__content-txt2 {
    margin-top: 0;
  }
}
.p-about .medical__btn {
  margin-top: 3.7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__btn {
    margin-top: 2rem;
    gap: 1.7rem;
  }
}
.p-about .medical__btn a {
  min-width: 24rem;
}
.p-about .medical__btn a:last-child {
  min-width: 51.2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .medical__btn a:last-child {
    min-width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .medical__btn .c-btn-pdf {
    padding: 1.2rem 1.6rem 1.2rem 8rem;
  }
  .p-about .medical__btn .c-btn-pdf::before {
    left: 4.8rem;
  }
}
.p-about .floorguide {
  overflow-x: hidden;
}
.p-about .floorguide .page-nav {
  -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr 2rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .page-nav {
    -ms-grid-columns: 1fr 1.2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 1.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__ttl-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-about .floorguide__scroll {
  display: none;
}
@media screen and (max-width: 725px) {
  .p-about .floorguide__scroll {
    display: block;
    font-size: 1.2rem;
    line-height: 1.4166666667;
    letter-spacing: 0;
    padding-right: 1.8rem;
    position: relative;
  }
  .p-about .floorguide__scroll::before {
    content: "";
    position: absolute;
    bottom: -0.5rem;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 7.9rem;
    height: 0.6rem;
    background: url("../images/common/scroll-arrow.svg") no-repeat center center/contain;
  }
}
.p-about .floorguide__ttl {
  font-size: 3.4rem;
  font-weight: 500;
  line-height: 1.4411764706;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__ttl {
    font-size: 2.4rem;
    line-height: 1.1666666667;
  }
}
.p-about .floorguide__img {
  margin-top: 1.8rem;
  width: 99%;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__img {
    overflow-x: scroll;
    margin-right: calc(50% - 50vw);
    width: unset;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__img img {
    min-width: 70rem;
  }
}
.p-about .floorguide__items {
  margin-top: 5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0 1fr 0 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 0;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__items {
    margin-top: 3rem;
    -ms-grid-columns: 1fr 1.2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 1.2rem;
  }
}
.p-about .floorguide__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.7rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__item {
    gap: 0.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-about .floorguide__item-num {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  background: #004F89;
  color: #fff;
  padding: 0.5rem 1rem;
  border-radius: 50%;
  white-space: nowrap;
  width: 3.9rem;
  height: 3.9rem;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__item-num {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0 0.3rem;
    line-height: 1.375;
  }
}
.p-about .floorguide__item-txt {
  font-size: 1.6rem;
  line-height: 1.1875;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide__item-txt {
    font-size: 1.4rem;
    line-height: 1.2142857143;
  }
}
.p-about .floorguide .floorguide1 {
  margin-top: 8rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide1 {
    margin-top: 4.2rem;
  }
}
.p-about .floorguide .floorguide2 {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide2 {
    margin-top: 7.4rem;
  }
}
.p-about .floorguide .floorguide2 .floorguide__img {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide2 .floorguide__img {
    margin-top: 0.8rem;
  }
}
.p-about .floorguide .floorguide2 .floorguide__items {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide2 .floorguide__items {
    margin-top: 3rem;
  }
}
.p-about .floorguide .floorguide3 {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide3 {
    margin-top: 6.8rem;
  }
}
.p-about .floorguide .floorguide3 .floorguide__img {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide3 .floorguide__img {
    margin-top: 0.8rem;
  }
}
.p-about .floorguide .floorguide3 .floorguide__items {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide3 .floorguide__items {
    margin-top: 2rem;
  }
}
.p-about .floorguide .floorguide4 {
  margin-top: 10rem;
  margin-bottom: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide4 {
    margin-top: 6.8rem;
    margin-bottom: 3rem;
  }
}
.p-about .floorguide .floorguide4 .floorguide__img {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide4 .floorguide__img {
    margin-top: 0.8rem;
  }
}
.p-about .floorguide .floorguide4 .floorguide__items {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .floorguide .floorguide4 .floorguide__items {
    margin-top: 2rem;
  }
}
.p-about .staff {
  padding-top: 5rem;
  position: relative;
  overflow-x: hidden;
}
.p-about .staff::before {
  content: "";
  position: absolute;
  top: -10rem;
  left: -7.5rem;
  width: 63.9rem;
  height: 63.9rem;
  background: url(../images/common/bg.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-about .staff::before {
    top: -20rem;
    left: -22rem;
    width: 61.2rem;
    height: 61.2rem;
  }
}
.p-about .staff::after {
  content: "";
  position: absolute;
  top: 13.6rem;
  left: 0;
  width: 20.7rem;
  height: 19rem;
  background: url(../images/about/staff_bg.png) no-repeat center/cover;
}
@media screen and (max-width: 1279px) {
  .p-about .staff::after {
    top: 12rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .staff::after {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .p-about .staff {
    padding-top: 3.2rem;
  }
}
.p-about .staff .container {
  margin-bottom: 5.6rem;
}
@media screen and (max-width: 1024px) {
  .p-about .staff .container {
    margin-bottom: 2.5rem;
  }
}
.p-about .staff__read {
  font-size: 3rem;
  letter-spacing: 0;
  line-height: 2;
  color: #0F7ECF;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__read {
    font-size: 2rem;
    line-height: 2;
  }
}
.p-about .staff__txt {
  margin-top: 1rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-about .staff__items {
  margin-top: 4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 4rem;
  }
}
.p-about .staff__youtube iframe {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 453/231;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__youtube iframe {
    aspect-ratio: 335/188;
  }
}
.p-about .staff__position {
  margin-top: 2.4rem;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__position {
    margin-top: 1.9rem;
    font-size: 1.4rem;
    line-height: 1;
  }
}
.p-about .staff__name {
  margin-top: 1.5rem;
  font-size: 2.6rem;
  line-height: 1.1153846154;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-about .staff__name {
    margin-top: 0.7rem;
    font-size: 1.8rem;
    line-height: 1.1111111111;
  }
}

.p-access .access .page-nav {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  max-width: 96.4rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access .page-nav {
    margin-top: 3.5rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1.6rem;
  }
}
.p-access .access .page-nav__item {
  padding-left: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access .page-nav__item::after {
    right: 2.2rem;
  }
}
.p-access .access__item {
  margin-top: 7rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item {
    margin-top: 3.8rem;
    display: -ms-grid;
    display: grid;
  }
}
.p-access .access__item2 {
  margin-top: 6rem;
}
.p-access .access__item-ttl {
  font-size: 3rem;
  font-weight: 500;
  line-height: 2.1666666667;
  letter-spacing: 0;
  position: relative;
  padding-left: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-ttl {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
    padding-left: 2.3rem;
  }
}
.p-access .access__item-ttl--map::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.7rem;
  height: 4rem;
  background: url(../images/common/map.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-ttl--map::before {
    width: 1.7rem;
    height: 2.6rem;
  }
}
.p-access .access__item-ttl--bus {
  padding-left: 4.2rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-ttl--bus {
    padding-left: 3rem;
  }
}
.p-access .access__item-ttl--bus::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4rem;
  height: 4rem;
  background: url(../images/common/bus.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-ttl--bus::before {
    width: 2.4rem;
    height: 2.4rem;
  }
}
.p-access .access__item-subttl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.4583333333;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-subttl {
    margin-top: 2.2rem;
    font-size: 1.8rem;
    line-height: 1.4444444444;
    letter-spacing: 0;
  }
}
.p-access .access__item-address {
  margin-top: 1.8rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-address {
    margin-top: 0.6rem;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.04em;
  }
}
.p-access .access__item-flex {
  margin-top: 3.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-flex {
    display: contents;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-btn {
    margin-top: 1rem;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    text-align: center;
  }
}
.p-access .access__item-btn a {
  display: inline-block;
  padding: 1.5rem 8rem 1.5rem 3.2rem;
  border: 1px solid #0F7ECF;
  border-radius: 100px;
  color: #0F7ECF;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-btn a {
    padding: 1.2rem 8rem 1.2rem 3rem;
    text-align: center;
  }
}
.p-access .access__item-btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-image: url(../images/common/link2.svg);
          mask-image: url(../images/common/link2.svg);
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background: #0F7ECF;
}
.p-access .access__item-map {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-map {
    margin-top: 1.6rem;
  }
}
.p-access .access__item-map iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1180/389;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-map iframe {
    aspect-ratio: 335/200;
  }
}
.p-access .access__item-inner {
  padding-top: 2.5rem;
  padding-bottom: 6.7rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner {
    padding-bottom: 4.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 0.5rem;
  }
}
.p-access .access__item-inner2 {
  padding-top: 6.7rem;
  padding-bottom: 6.7rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner2 {
    padding-top: 4rem;
    padding-bottom: 3.7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 0.5rem;
  }
}
.p-access .access__item-inner3 {
  padding-top: 6.7rem;
  padding-bottom: 8rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner3 {
    padding-top: 3.3rem;
    padding-bottom: 3.7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner3 .access__txt-wrap {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner3 .access__txt-wrap2 {
    margin-top: 4rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner3 .access__item-imgs .access__item-img img {
    aspect-ratio: 335/188;
  }
}
.p-access .access__item-inner4 {
  padding-top: 8.4rem;
  padding-bottom: 8rem;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner4 {
    padding-top: 4rem;
    padding-bottom: 6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.3rem;
  }
}
.p-access .access__item-inner4 .c-section-title {
  padding-left: 1.6rem;
  font-size: 2.6rem;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner4 .c-section-title {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.p-access .access__item-inner4 .access__txt-wrap {
  margin-top: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner4 .access__txt-wrap {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.p-access .access__item-inner4 .access__item-img {
  margin-top: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-inner4 .access__item-img {
    margin-top: 3.5rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.p-access .access__txt-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt-wrap {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
}
.p-access .access__txt-wrap-item {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt-wrap-item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 9.6rem 1fr;
    grid-template-columns: 9.6rem 1fr;
    margin-top: 0.8rem;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt-wrap-item:nth-child(2) {
    margin-top: 1rem;
  }
}
.p-access .access__txt-tag {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  border: 1px solid #0F7ECF;
  padding: 0.6rem 2rem;
  color: #0F7ECF;
  width: 12rem;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt-tag {
    font-size: 1.6rem;
    line-height: 1.625;
    padding: 0.6rem 0;
    width: 9.6rem;
  }
}
.p-access .access__txt {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.68;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__txt--pt {
    display: inline-block;
    padding-top: 0.8rem;
  }
}
.p-access .access__subtxt {
  margin-top: 1rem;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-access .access__subtxt {
    margin-top: 0.5rem;
    line-height: 2;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.p-access .access__item-body {
  margin-top: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-body {
    display: contents;
    margin-top: 0;
  }
}
.p-access .access__item-imgs {
  margin-top: 2rem;
  margin-left: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-imgs {
    margin-top: 3rem;
    margin-left: 0;
  }
}
.p-access .access__item-imgs .access__item-img {
  margin-top: 0;
}
.p-access .access__item-imgs .access__item-img:nth-child(2) {
  margin-top: 3.4rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-imgs .access__item-img:nth-child(2) {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-imgs .access__item-img img {
    aspect-ratio: 335/192;
  }
}
.p-access .access__item-img {
  margin-top: -1.3rem;
  max-width: 67.7rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-img {
    margin-top: 3.6rem;
  }
}
.p-access .access__item-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 677/146;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-img img {
    aspect-ratio: 335/170;
  }
}
.p-access .access__item-img--l {
  max-width: 69.5rem;
}
.p-access .access__item-img--l img {
  width: 100%;
  height: auto;
  aspect-ratio: 694/146;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-img--l img {
    aspect-ratio: 335/206;
  }
}
.p-access .access__item-video {
  min-width: 40rem;
}
@media screen and (max-width: 1024px) {
  .p-access .access__item-video {
    min-width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.p-access .access__item-video iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 400/226;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-healthcheck .healthcheck {
  margin-bottom: 6rem;
}
.p-healthcheck .healthcheck .page-nav {
  max-width: 100.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item {
    padding-left: 1.3rem;
  }
}
.p-healthcheck .healthcheck .page-nav__item:nth-child(1) {
  width: 49%;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item:nth-child(1) {
    width: 100%;
  }
}
.p-healthcheck .healthcheck .page-nav__item:nth-child(2) {
  width: 49%;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item:nth-child(2) {
    width: 100%;
  }
}
.p-healthcheck .healthcheck .page-nav__item:nth-child(3) {
  width: 29%;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item:nth-child(3) {
    width: 100%;
  }
}
.p-healthcheck .healthcheck .page-nav__item:nth-child(4) {
  width: 37%;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item:nth-child(4) {
    width: 100%;
  }
}
.p-healthcheck .healthcheck .page-nav__item:nth-child(5) {
  width: 30%;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .page-nav__item:nth-child(5) {
    width: 100%;
  }
}
.p-healthcheck .healthcheck .sec-txt {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .sec-txt {
    margin-top: 1.6rem;
    font-size: 1.4rem;
    line-height: 1.4;
  }
}
.p-healthcheck .healthcheck__ttl {
  margin-top: 9.7rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__ttl {
    margin-top: 6.1rem;
  }
}
.p-healthcheck .healthcheck__read {
  margin-top: 1rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__read {
    margin-top: 1.7rem;
    font-size: 1.4rem;
    line-height: 2;
    font-weight: 500;
  }
}
.p-healthcheck .healthcheck__read2 {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__read2 {
    margin-top: 1.2rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.p-healthcheck .healthcheck__read3 {
  margin-top: 2.5rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__read3 {
    margin-top: 1.2rem;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.75;
  }
}
.p-healthcheck .healthcheck__subttl {
  margin-top: 4.7rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl {
    margin-top: 2rem;
  }
}
.p-healthcheck .healthcheck__subttl.c-section-title3 {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  position: relative;
  padding-left: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl.c-section-title3 {
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 700;
    padding-left: 2rem;
  }
}
.p-healthcheck .healthcheck__subttl.c-section-title3:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  background: #0F7ECF;
}
.p-healthcheck .healthcheck__subttl--mt {
  margin-top: 6rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl--mt {
    margin-top: 4rem;
  }
}
.p-healthcheck .healthcheck__subttl--mt2 {
  margin-top: 6.7rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl--mt2 {
    margin-top: 4.5rem;
  }
}
.p-healthcheck .healthcheck__subttl--mt3 {
  margin-top: 3.6rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl--mt3 {
    margin-top: 4rem;
  }
}
.p-healthcheck .healthcheck__subttl--mt4 {
  margin-top: 6.7rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__subttl--mt4 {
    margin-top: 3.6rem;
  }
}
.p-healthcheck .healthcheck__table {
  margin-top: 3rem;
  overflow-x: auto;
}
.p-healthcheck .healthcheck__time {
  margin-top: 2rem;
  display: -ms-grid;
  display: grid;
  gap: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time {
    margin-top: 1.2rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-healthcheck .healthcheck__time:has(span) {
  -ms-grid-columns: 12rem 1fr;
  grid-template-columns: 12rem 1fr;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time:has(span) {
    -ms-grid-columns: 11rem 1fr;
    grid-template-columns: 11rem 1fr;
  }
}
.p-healthcheck .healthcheck__time span {
  background: #0F7ECF;
  color: #fff;
  text-align: center;
  font-weight: 700;
  padding: 0.4rem 0.5rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time span {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.p-healthcheck .healthcheck__time2 {
  margin-top: 2rem;
  display: -ms-grid;
  display: grid;
  gap: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time2 {
    margin-top: 1.7rem;
    font-size: 1.4rem;
    line-height: 1.2142857143;
  }
}
.p-healthcheck .healthcheck__time2:has(span) {
  -ms-grid-columns: 12rem 1fr;
  grid-template-columns: 12rem 1fr;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time2:has(span) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.p-healthcheck .healthcheck__time2 span {
  background: #0F7ECF;
  color: #fff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 0.4rem 0.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time2 span {
    font-size: 1.4rem;
    padding: 0.4rem 1.5rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-healthcheck .healthcheck__time2 .body {
  background: none;
  color: #333;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time2 .body {
    padding: 0;
    font-size: 1.6rem;
  }
}
.p-healthcheck .healthcheck__time2 .body p {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__time2 .body p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-healthcheck .healthcheck__btn {
  margin-top: 3.8rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__btn {
    margin-top: 2.3rem;
  }
}
.p-healthcheck .healthcheck__btn .c-btn-pdf {
  min-width: 29.4rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__btn .c-btn-pdf {
    min-width: 27.3rem;
  }
}
.p-healthcheck .healthcheck__txt {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__txt {
    font-size: 1.4rem;
    line-height: 1.2142857143;
  }
}
.p-healthcheck .healthcheck__txt2 {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__txt2 {
    font-size: 1.4rem;
    line-height: 1.2142857143;
  }
}
.p-healthcheck .healthcheck__txt3 {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__txt3 {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 1.7;
  }
}
.p-healthcheck .healthcheck__list {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 1.6;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__list {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.p-healthcheck .healthcheck__list li {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck__list li {
    margin-top: 0.3rem;
    padding-left: 0.8em;
    text-indent: -0.8em;
  }
}
.p-healthcheck .healthcheck .c-tel-wrap {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .c-tel-wrap {
    margin-top: 1.8rem;
    background: none;
    border: 1px solid #707070;
    border-radius: 20px;
    padding: 2.4rem 2rem 1.2rem;
    text-align: center;
  }
  .p-healthcheck .healthcheck .c-tel-wrap .c-tel-wrap__right {
    margin-top: 1.2rem;
  }
  .p-healthcheck .healthcheck .c-tel-wrap .c-tel-wrap__right-ttl span {
    display: inline !important;
  }
}
@media screen and (max-width: 1024px) {
  .p-healthcheck .healthcheck .c-flow__items {
    margin-top: 1.2rem;
    gap: 4.2rem;
  }
}
.p-healthcheck .healthcheck__company {
  margin-bottom: 6rem;
}

.healthcheck-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 2.2rem 0 0;
  min-width: 80rem;
  max-width: 103.7rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table {
    display: none;
  }
}
.healthcheck-table thead {
  background: #0F7ECF;
  color: #fff;
}
.healthcheck-table th, .healthcheck-table td {
  padding: 1.46rem 0.8rem;
  text-align: center;
  border: 1px solid #ddd;
  vertical-align: middle;
}
.healthcheck-table th {
  font-weight: 700;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 2.3rem 0;
}
.healthcheck-table__category {
  background: #F2F8FD;
  text-align: left;
  padding-left: 1.5rem;
  min-width: 2rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
}
.healthcheck-table td.healthcheck-table__category {
  text-align: left;
  padding-left: 1rem;
  width: 14.5rem;
}
.healthcheck-table td.healthcheck-table__category.rowspan-25 {
  text-align: center;
  padding: 0;
  letter-spacing: 0.8em;
  width: 3.8rem;
}
.healthcheck-table__item {
  background: #F2F8FD;
  padding-left: 1.5rem;
  min-width: 3rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
}
.healthcheck-table td.healthcheck-table__item {
  text-align: left;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  max-width: 15.5rem;
}
.healthcheck-table__plan {
  min-width: 8rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  background: #0F7ECF;
  color: #fff;
}
.healthcheck-table__check {
  font-size: 2.4rem;
  line-height: 1;
  width: 10rem;
}
.healthcheck-table__check:contains("○") {
  color: #0F7ECF;
}
.healthcheck-table__check:contains("ー") {
  color: #999;
}
.healthcheck-table__price-row {
  background: #f8f9fa;
  font-weight: 700;
}
.healthcheck-table__price-row .healthcheck-table__category {
  color: #0F7ECF;
}
.healthcheck-table__price {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table {
    font-size: 1.2rem;
    min-width: 60rem;
  }
  .healthcheck-table th, .healthcheck-table td {
    padding: 0.8rem 0.4rem;
  }
  .healthcheck-table__category {
    min-width: 8rem;
    padding-left: 0.8rem;
  }
  .healthcheck-table__item {
    min-width: 15rem;
    padding-left: 0.8rem;
  }
  .healthcheck-table__plan {
    min-width: 6rem;
  }
}

.healthcheck-table2 {
  margin-top: 2.5rem;
  min-width: unset;
  max-width: 70.5rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 tbody {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 tbody.table-block {
    display: block;
    margin-top: 1.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 th, .healthcheck-table2 td {
    font-size: 1.4rem;
    line-height: 2;
    padding: 0.6rem 1rem 0.6rem 2rem;
    text-align: left;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 .healthcheck-table__plan {
    width: 14.2rem;
    padding: 0.6rem 1rem 0.6rem 2rem;
    padding-right: 0;
  }
}
.healthcheck-table2 td.healthcheck-table__category {
  padding: 1.4rem 1rem 1.4rem 2.5rem;
  width: 24rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 td.healthcheck-table__category {
    width: 19.3rem;
    padding: 0.6rem 1rem 0.6rem 2rem;
  }
}
.healthcheck-table2 td.healthcheck-table__item {
  width: 14.5rem;
  padding: 1.4rem 1rem 1.4rem 1.5rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 td.healthcheck-table__item {
    width: unset;
    padding: 0.6rem 1rem 0.6rem 2rem;
  }
}
.healthcheck-table2 td.healthcheck-table__price {
  width: 32.1rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table2 td.healthcheck-table__price {
    width: unset;
  }
}

.healthcheck-table3 {
  width: 100%;
  margin: 1.5rem auto 0;
  min-width: 80rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table3 {
    margin-top: 1rem;
  }
}
.healthcheck-table3 dl {
  border: 1px solid #EAEAEA;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 27.2rem 1fr;
  grid-template-columns: 27.2rem 1fr;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table3 dl {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.healthcheck-table3 dl:nth-child(n+2) {
  margin-top: 1.4rem;
}
.healthcheck-table3 dl:nth-child(n+2) .healthcheck-table3__txt {
  padding: 2rem 2.5rem;
}
.healthcheck-table3__ttl {
  background: #F2F8FD;
  padding-left: 1.5rem;
  min-width: 27.2rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  text-align: left;
  padding: 2.5rem;
  vertical-align: middle;
}
.healthcheck-table3__txt {
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.75;
  padding: 0.4rem 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table3__txt {
    padding: 0.4rem 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck-table3 {
    min-width: 100%;
    margin-top: 1.5rem;
  }
  .healthcheck-table3 th, .healthcheck-table3 td {
    padding: 0.8rem 0.4rem;
  }
  .healthcheck-table3 dl:nth-child(n+2) {
    margin-top: 1.4rem;
  }
  .healthcheck-table3 dl:nth-child(n+2) .healthcheck-table3__txt {
    padding: 0.5rem 2rem;
  }
  .healthcheck-table3__ttl {
    min-width: 8rem;
    padding: 1.6rem;
    font-size: 1.4rem;
    line-height: 2;
  }
  .healthcheck-table3__txt {
    min-width: 15rem;
    padding: 0.3rem 2rem 0.7rem;
    font-size: 1.4rem;
    line-height: 2;
    font-weight: 400;
  }
}

.healthcheck-table4 {
  margin-top: 2.3rem;
  min-width: unset;
  max-width: 103.6rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck-table4 {
    margin-top: 2.5rem;
  }
}
.healthcheck-table4 th, .healthcheck-table4 td {
  padding: 1.45rem 0.8rem;
}
.healthcheck-table4 th.healthcheck-table__plan {
  padding: 2.2rem 0;
}
.healthcheck-table4 td.healthcheck-table__category {
  width: 19.3rem;
  padding: 1.4rem 1rem 1.4rem 2rem;
}
.healthcheck-table4 td.healthcheck-table__item {
  max-width: 32.5rem;
  padding: 1.4rem 1rem 1.4rem 2rem;
}
.healthcheck-table4 td.healthcheck-table__check {
  width: 26rem;
  font-size: 1.6rem;
  text-align: left;
  font-weight: 700;
  line-height: 1.5;
  padding: 1.8rem 2rem;
}
.healthcheck-table4 td.healthcheck-table__price {
  width: 25.9rem;
  text-align: left;
  font-weight: 700;
  padding-left: 2rem;
}

.healthcheck-table5 {
  margin-top: 2.5rem;
  min-width: unset;
  max-width: 103.6rem;
}
.healthcheck-table5 th.healthcheck-table__plan {
  padding: 2.2rem 0;
}
.healthcheck-table5 td.healthcheck-table__category {
  width: 30.9rem;
  max-width: unset;
  padding: 1.4rem 1rem 1.4rem 2rem;
}
.healthcheck-table5 td.healthcheck-table__item {
  background: #fff;
  max-width: 41.9rem;
  padding: 1.4rem 1rem 1.4rem 2rem;
}
.healthcheck-table5 td.healthcheck-table__check {
  text-align: left;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  width: 30.8rem;
  padding-left: 2rem;
}

.healthcheck__company .healthcheck-table {
  margin-top: 2.5rem;
}
.healthcheck__company .healthcheck-table__plan {
  padding: 1rem 0;
  line-height: 1.5;
}
.healthcheck__company .healthcheck-table td.healthcheck-table__category {
  width: 12rem;
}
.healthcheck__company .healthcheck-table td.healthcheck-table__category.rowspan-25 {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-align: center;
  padding: 0;
  letter-spacing: 0.8em;
  width: 3.8rem;
}
.healthcheck__company .healthcheck-table__check {
  width: 19.3rem;
}
.healthcheck__company .healthcheck-table__price {
  background: #fff;
}
.healthcheck__company .healthcheck-table__price-row .healthcheck-table__category {
  font-size: 1.8rem;
}
.healthcheck__company .healthcheck__btn {
  margin-top: 2.7rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__company .healthcheck__subttl {
    margin-top: 2.8rem;
  }
}
.healthcheck__company .healthcheck__subttl--mt {
  margin-top: 5.9rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__company .healthcheck__subttl--mt {
    margin-top: 4rem;
  }
}

.healthcheck__prevention .healthcheck__ttl {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__ttl {
    margin-top: 6.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__txt3 {
    margin-top: 2rem;
    line-height: 1.9;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__txt3.mt0 {
    margin-top: 0;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__subttl--mt {
    margin-top: 2.8rem;
  }
}
.healthcheck__prevention .healthcheck__subttl--mt2 {
  margin-top: 6rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__subttl--mt2 {
    margin-top: 3rem;
  }
}
.healthcheck__prevention .healthcheck__btn {
  margin-top: 4rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__prevention .healthcheck__btn {
    margin-top: 2.7rem;
    margin-bottom: 4rem;
  }
}

.healthcheck__cancer .healthcheck__ttl {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__cancer .healthcheck__ttl {
    margin-top: 6.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__cancer .healthcheck__txt3 {
    margin-top: 2rem;
    line-height: 1.9;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__cancer .healthcheck__txt3.mt0 {
    margin-top: 0;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__cancer .healthcheck__subttl--mt {
    margin-top: 2.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__cancer .healthcheck__subttl--mt2 {
    margin-top: 4.3rem;
  }
}

.healthcheck__specific .healthcheck__ttl {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__ttl {
    margin-top: 6rem;
  }
}
.healthcheck__specific .healthcheck-table3 {
  margin-top: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck-table3 {
    margin-top: 1.5rem;
  }
}
.healthcheck__specific .healthcheck-table3 dl:nth-child(n+2) {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck-table3 dl:nth-child(n+2) {
    margin-top: 1.4rem;
  }
}
.healthcheck__specific .healthcheck__txt--mt {
  display: block;
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__txt {
    margin-top: 1rem;
    line-height: 1.9;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__txt2 {
    margin-top: 0.5rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__txt3 {
    margin-top: 2rem;
    line-height: 1.9;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__subttl--mt {
    margin-top: 2.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__subttl--mt2 {
    margin-top: 2.8rem;
  }
}
.healthcheck__specific .healthcheck__subttl--mt3 {
  margin-top: 5.8rem;
}
@media screen and (max-width: 1024px) {
  .healthcheck__specific .healthcheck__subttl--mt3 {
    margin-top: 4rem;
  }
}

.department__sect {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .department__sect {
    margin-top: 6.5rem;
  }
}
.department__ttl {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.4666666667;
  letter-spacing: 0;
  padding-left: 5.5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .department__ttl {
    font-size: 2rem;
    line-height: 1.4;
    padding-left: 4rem;
  }
}
.department__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
  .department__ttl::before {
    left: 0;
  }
}
.department #section1 .department__ttl::before {
  width: 3.4rem;
  height: 3.7rem;
  background: url(../images/department/department-icon1.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section1 .department__ttl::before {
    width: 2.6rem;
    height: 2.9rem;
  }
}
@media screen and (max-width: 1024px) {
  .department #section2 {
    margin-top: 6.7rem;
  }
}
.department #section2 .department__ttl::before {
  width: 2.2rem;
  height: 4.8rem;
  background: url(../images/department/department-icon2.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section2 .department__ttl::before {
    left: 1rem;
    width: 1.6rem;
    height: 3.5rem;
  }
}
.department #section2 .department__img img {
  aspect-ratio: 950/193;
}
@media screen and (max-width: 1024px) {
  .department #section2 .department__img img {
    aspect-ratio: 336/109;
  }
}
@media screen and (max-width: 1024px) {
  .department #section3 {
    margin-top: 6.7rem;
  }
}
.department #section3 .department__ttl {
  padding-left: 6.8rem;
}
@media screen and (max-width: 1024px) {
  .department #section3 .department__ttl {
    padding-left: 4rem;
  }
}
.department #section3 .department__ttl::before {
  width: 4.5rem;
  height: 3.7rem;
  background: url(../images/department/department-icon3.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section3 .department__ttl::before {
    width: 3.3rem;
    height: 2.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .department #section4 {
    margin-top: 7rem;
  }
}
.department #section4 .department__ttl {
  padding-left: 6.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section4 .department__ttl {
    padding-left: 4rem;
  }
}
.department #section4 .department__ttl::before {
  width: 3.8rem;
  height: 4.8rem;
  background: url(../images/department/department-icon4.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section4 .department__ttl::before {
    width: 3rem;
    height: 3.8rem;
  }
}
.department #section4 .sec-txt {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section4 .sec-txt {
    margin-top: 0.5rem;
  }
}
.department #section5.department__sect {
  margin-top: 10.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section5.department__sect {
    margin-top: 6.8rem;
  }
}
.department #section5 .department__ttl {
  padding-left: 6.8rem;
}
@media screen and (max-width: 1024px) {
  .department #section5 .department__ttl {
    padding-left: 4rem;
  }
}
.department #section5 .department__ttl::before {
  width: 5rem;
  height: 5.6rem;
  background: url(../images/department/department-icon5.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section5 .department__ttl::before {
    width: 3.1rem;
    height: 3.5rem;
  }
}
.department #section5 .sec-txt {
  margin-top: 2.2rem;
  line-height: 1.85;
}
@media screen and (max-width: 1024px) {
  .department #section5 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
.department #section5 .department__flex-img {
  margin: 6rem 0 0 5rem;
}
@media screen and (max-width: 1024px) {
  .department #section5 .department__flex-img {
    margin: 4rem 0 3rem 2rem;
  }
}
.department #section5 .department__wrap {
  margin-top: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section5 .department__wrap {
    margin-top: 1.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .department #section6 {
    margin-top: 6.7rem;
  }
}
.department #section6 .department__ttl {
  padding-left: 6.6rem;
}
@media screen and (max-width: 1024px) {
  .department #section6 .department__ttl {
    padding-left: 4rem;
  }
}
.department #section6 .department__ttl::before {
  width: 4.5rem;
  height: 3.7rem;
  background: url(../images/department/department-icon6.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section6 .department__ttl::before {
    width: 2.9rem;
    height: 3rem;
  }
}
.department #section6 .department__flex-img {
  margin: 0.8rem 0 0 5.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section6 .department__flex-img {
    margin: 2rem 0 0 2rem;
  }
}
.department #section6 .sec-txt {
  margin-top: 1.5rem;
  line-height: 1.8;
}
@media screen and (max-width: 1024px) {
  .department #section6 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
.department #section7.department__sect {
  margin-top: 10.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section7.department__sect {
    margin-top: 6.7rem;
  }
}
.department #section7 .department__ttl {
  padding-left: 6.6rem;
}
@media screen and (max-width: 1024px) {
  .department #section7 .department__ttl {
    padding-left: 4rem;
  }
}
.department #section7 .department__ttl::before {
  width: 4.5rem;
  height: 4.5rem;
  background: url(../images/department/department-icon7.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section7 .department__ttl::before {
    width: 3.4rem;
    height: 3.4rem;
  }
}
.department #section7 .department__flex-img {
  margin: 0.8rem 0 0 5.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section7 .department__flex-img {
    margin: 2rem 0 0 2rem;
  }
}
.department #section7 .sec-txt {
  margin-top: 1.5rem;
  line-height: 1.8;
}
@media screen and (max-width: 1024px) {
  .department #section7 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
.department #section8.department__sect {
  margin-top: 10.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section8.department__sect {
    margin-top: 6.7rem;
  }
}
.department #section8 .department__ttl {
  padding-left: 6.6rem;
}
@media screen and (max-width: 1024px) {
  .department #section8 .department__ttl {
    padding-left: 4.2rem;
  }
}
.department #section8 .department__ttl::before {
  width: 5.2rem;
  height: 5.7rem;
  background: url(../images/department/department-icon8.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section8 .department__ttl::before {
    width: 3.2rem;
    height: 3.6rem;
  }
}
.department #section8 .department__flex-img {
  margin: 1.5rem 0 0 5.5rem;
}
@media screen and (max-width: 1024px) {
  .department #section8 .department__flex-img {
    margin: 2rem 0 0 2rem;
  }
}
.department #section8 .sec-txt {
  margin-top: 1.7rem;
  line-height: 1.8;
}
@media screen and (max-width: 1024px) {
  .department #section8 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
.department #section9.department__sect {
  margin-top: 12.1rem;
}
@media screen and (max-width: 1024px) {
  .department #section9.department__sect {
    margin-top: 6.9rem;
  }
}
.department #section9 .department__ttl {
  padding-left: 9.6rem;
}
@media screen and (max-width: 1024px) {
  .department #section9 .department__ttl {
    padding-left: 4.2rem;
  }
}
.department #section9 .department__ttl::before {
  width: 5.5rem;
  height: 5.4rem;
  background: url(../images/department/department-icon9.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section9 .department__ttl::before {
    width: 3.2rem;
    height: 3.3rem;
  }
}
.department #section9 .department__flex-img {
  margin: 1.5rem 0 0 5rem;
}
@media screen and (max-width: 1024px) {
  .department #section9 .department__flex-img {
    margin: 2rem 0 0 2rem;
  }
}
.department #section9 .sec-txt {
  margin-top: 1.7rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .department #section9 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
.department #section10.department__sect {
  margin-top: 10.5rem;
  margin-bottom: 8.3rem;
}
@media screen and (max-width: 1024px) {
  .department #section10.department__sect {
    margin-top: 8.1rem;
    margin-bottom: 6.7rem;
  }
}
.department #section10 .department__ttl {
  padding-left: 7rem;
}
@media screen and (max-width: 1024px) {
  .department #section10 .department__ttl {
    padding-left: 4.2rem;
  }
}
.department #section10 .department__ttl::before {
  width: 3.7rem;
  height: 4.6rem;
  background: url(../images/department/department-icon10.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .department #section10 .department__ttl::before {
    width: 2.6rem;
    height: 3.4rem;
  }
}
.department #section10 .sec-txt {
  margin-top: 1.3rem;
  line-height: 1.7;
}
@media screen and (max-width: 1024px) {
  .department #section10 .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
    font-size: 1.6rem;
  }
}
.department__read {
  margin-top: 1.5rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .department__read {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.department__read2 {
  margin-top: 2.5rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .department__read2 {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.department__img {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .department__img {
    margin-top: 1rem;
  }
}
.department__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 950/210;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .department__img img {
    aspect-ratio: 336/109;
  }
}
.department__sec-txt {
  line-height: 1.8;
  text-align: justify;
  font-family: "Noto Sans JP", sans-serif;
}
.department__flex .sec-txt {
  margin-top: 2rem;
  overflow: hidden;
  line-height: 1.7;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .department__flex .sec-txt {
    margin-top: 0.5rem;
    line-height: 2;
  }
}
@media screen and (max-width: 1024px) {
  .department__flex .sec-txt span {
    display: block;
    margin-top: 0.8rem;
  }
}
.department__flex-img {
  float: right;
  width: 25.2631578947%;
  margin: 0 0 0 3.1rem;
  text-align: center;
  aspect-ratio: 240/262;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .department__flex-img {
    margin: 2rem 0 2rem 2rem;
    width: 47.619047619%;
  }
}
.department__wrap {
  margin-top: 3.4rem;
  padding: 1.5rem 2rem 1.6rem;
  background: #F2F8FD;
}
@media screen and (max-width: 1024px) {
  .department__wrap {
    margin-top: 1.8rem;
  }
}
.department__wrap-item {
  font-size: 1.6rem;
  line-height: 1.75;
  padding-left: 2.6rem;
  letter-spacing: 0;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .department__wrap-item {
    padding-left: 2.3rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.department__wrap-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .department__wrap-item::before {
    width: 0.8rem;
    height: 0.8rem;
  }
}
.department__wrap2 {
  margin-top: 3.4rem;
  padding: 2rem 3rem;
  background: #F2F8FD;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20.3rem;
}
@media screen and (max-width: 1024px) {
  .department__wrap2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
    padding: 1.5rem 2rem 1.6rem;
  }
}
.department__wrap-right .department__wrap-txt:nth-child(n+2) {
  margin-top: 0.4rem;
}
@media screen and (max-width: 1024px) {
  .department__wrap-right .department__wrap-txt {
    padding-left: 3.4em;
    text-indent: -3.4em;
  }
}
.department__wrap-txt {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
.department__wrap-txt span {
  font-weight: 700;
}
.department__wrap-btn {
  margin-top: 1.8rem;
}
.department__wrap-btn .c-btn-blue {
  max-width: 20.8rem;
  background: #0F7ECF;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0;
  padding: 1.1rem 4.1rem 1.1rem 2rem;
}
@media screen and (max-width: 1024px) {
  .department__wrap-btn .c-btn-blue {
    max-width: 100%;
    padding: 1.5rem 4.1rem 1.5rem 3rem;
  }
}
.department__wrap-btn .c-btn-blue::after {
  right: 2rem;
  width: 0.7rem;
  height: 1.2rem;
}

.subject {
  margin-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .subject {
    margin-bottom: 6rem;
  }
}
.subject .subject1 {
  margin-top: 7.6rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject1 {
    margin-top: 5.8rem;
  }
}
.subject .subject1 .subject__ttl::before {
  width: 3.7rem;
  height: 3.7rem;
  background: url(../images/common/subject-icon1.svg) no-repeat center center/cover;
}
.subject .subject2 {
  margin-top: 9.5rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject2 {
    margin-top: 6rem;
  }
}
.subject .subject2 .subject__ttl::before {
  width: 3.7rem;
  height: 3rem;
  background: url(../images/common/subject-icon2.svg) no-repeat center center/cover;
}
.subject .subject3 {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject3 {
    margin-top: 6rem;
  }
}
.subject .subject3 .subject__ttl::before {
  width: 3.7rem;
  height: 3.4rem;
  background: url(../images/common/subject-icon3.svg) no-repeat center center/cover;
}
.subject .subject3 .subject__wrap-items {
  max-width: 79.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 3.6rem auto 3.6rem auto;
  grid-template-columns: repeat(3, auto);
  gap: 1.3rem 3.6rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject3 .subject__wrap-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.2rem;
  }
}
.subject .subject3 .subject__wrap-item {
  min-width: unset;
}
.subject .subject4 {
  margin-top: 12rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject4 {
    margin-top: 6rem;
  }
}
.subject .subject4 .subject__ttl::before {
  width: 3.3rem;
  height: 3.2rem;
  background: url(../images/common/subject-icon4.svg) no-repeat center center/cover;
}
.subject .subject4 .subject__wrap-items {
  max-width: 63.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 3.6rem auto 3.6rem auto;
  grid-template-columns: repeat(3, auto);
  gap: 1.3rem 3.6rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject4 .subject__wrap-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.2rem;
  }
}
.subject .subject4 .subject__wrap-item {
  min-width: unset;
}
@media screen and (max-width: 1024px) {
  .subject .subject4 .subject__txt {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .subject .subject4 .subject__txt2 {
    margin-top: 0.4rem;
    line-height: 2.3;
  }
}
.subject .subject5 {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject5 {
    margin-top: 6rem;
  }
}
.subject .subject5 .subject__ttl::before {
  width: 3.4rem;
  height: 3.6rem;
  background: url(../images/common/subject-icon5.svg) no-repeat center center/cover;
}
.subject .subject5 .subject__wrap {
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject5 .subject__wrap {
    padding-bottom: 2rem;
  }
}
.subject .subject5 .subject__wrap-items {
  max-width: 73.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 1024px) {
  .subject .subject5 .subject__wrap-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.2rem;
  }
}
.subject .subject6 {
  margin-top: 9.3rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject6 {
    margin-top: 6rem;
  }
}
.subject .subject6 .subject__ttl::before {
  width: 2rem;
  height: 3.6rem;
  background: url(../images/common/subject-icon7.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .subject .subject6 .subject__ttl::before {
    left: 2rem;
  }
}
.subject .subject6 .subject__wrap {
  margin-top: 3rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject6 .subject__wrap {
    margin-top: 2.3rem;
    padding-bottom: 2rem;
  }
}
.subject .subject6 .subject__wrap-items {
  max-width: 76.3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1024px) {
  .subject .subject6 .subject__wrap-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.subject .subject6 .subject__wrap-item {
  min-width: unset;
}
.subject .subject6 .subject__cta {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject6 .subject__cta {
    margin-top: 3.5rem;
  }
}
.subject .subject7 {
  margin-top: 10rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject7 {
    margin-top: 7rem;
  }
}
.subject .subject7 .subject__ttl.c-section-title2 {
  padding-left: 9.3rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject7 .subject__ttl.c-section-title2 {
    padding-left: 5.2rem;
    padding-bottom: 1rem;
  }
}
.subject .subject7 .subject__ttl::before {
  width: 5.1rem;
  height: 2.8rem;
  background: url(../images/common/subject-icon8.svg) no-repeat center center/cover;
}
@media screen and (max-width: 1024px) {
  .subject .subject7 .subject__ttl::before {
    width: 3.9rem;
    height: 2.1rem;
  }
}
.subject .subject7 .subject__cta {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  max-width: 71.6rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject7 .subject__cta {
    margin-top: 2.6rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .subject .subject7 .c-btn-pdf {
    padding-right: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .subject .subject7 .subject__txt {
    margin-top: 2rem;
  }
}
.subject .subject__ttl {
  position: relative;
  padding-left: 7rem;
}
.subject .subject__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.subject .subject__ttl.c-section-title2 {
  padding-left: 7.8rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__ttl.c-section-title2 {
    padding-left: 5.3rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
.subject .subject__txt {
  margin-top: 1.4rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .subject .subject__txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.subject .subject__wrap {
  margin-top: 2.4rem;
  background: #F2F8FD;
  padding: 1.6rem 2rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap {
    padding: 1rem 2rem 1.6rem;
  }
}
.subject .subject__wrap-read {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-read {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.subject .subject__wrap-items {
  margin-top: 1.5rem;
  display: -ms-grid;
  display: grid;
  gap: 1.3rem 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-items {
    margin-top: 0.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.2rem;
  }
}
.subject .subject__wrap-item {
  padding-left: 1.6rem;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0;
  position: relative;
  white-space: nowrap;
  min-width: 7rem;
  list-style: none;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-item {
    min-width: unset;
    white-space: normal;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.subject .subject__wrap-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #0F7ECF;
  border-radius: 50%;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-item::before {
    top: 1.1rem;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    width: 0.8rem;
    height: 0.8rem;
  }
}
.subject .subject__wrap-item.mt {
  margin-top: 1.7rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-item.mt {
    margin-top: 0.4rem;
    margin-bottom: 0;
  }
}
.subject .subject__wrap-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.subject .subject__wrap2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1.5rem;
  background: #F2F8FD;
  padding: 2rem 12rem 2rem 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5.3rem;
}
@media (max-width: 1152px) {
  .subject .subject__wrap2 {
    padding: 2rem 5rem 2rem 2.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap2 {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    padding: 2rem 2rem 2rem 2rem;
    border-radius: 16px;
    background: none;
    border: 1px solid #707070;
  }
}
.subject .subject__wrap2-tel a {
  font-size: 4.3rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #0F7ECF;
  padding-left: 3.7rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap2-tel a {
    font-size: 3.5rem;
    line-height: 1.3142857143;
    padding-left: 3rem;
  }
}
.subject .subject__wrap2-tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.1rem;
  height: 3rem;
  background: url(../images/common/tel.svg) no-repeat center/contain;
}
.subject .subject__wrap2-txt {
  margin-top: 1rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .subject .subject__wrap2-txt {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
    text-align: center;
  }
}
.subject .subject__read {
  margin-top: 3.6rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .subject .subject__read {
    margin-top: 4.8rem;
    font-size: 2rem;
    line-height: 1.4;
  }
}
.subject .subject__read.blue {
  color: #0F7ECF;
}
.subject .subject__read2 {
  margin-top: 2rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .subject .subject__read2 {
    margin-top: 3.4rem;
    font-size: 2rem;
    line-height: 1.4;
  }
}
.subject .subject__read2.blue {
  color: #0F7ECF;
}
.subject .subject__btn {
  margin-top: 2.3rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__btn {
    margin-top: 3.5rem;
  }
}
.subject .subject__cta {
  margin-top: 3.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__cta {
    margin-top: 4rem;
  }
}
@media (max-width: 767px) {
  .subject .subject__cta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.subject .subject__cta-item {
  display: inline-block;
  width: auto;
}
@media screen and (max-width: 1024px) {
  .subject .subject__cta-item {
    width: 100%;
  }
}
.subject .subject__cta-item.c-btn-blue {
  padding: 1.7rem 8rem 1.7rem 3rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__cta-item.c-btn-blue {
    padding: 1.3rem 3rem;
  }
}
.subject .subject__cta-item.c-btn-blue:first-child {
  min-width: 35.3rem;
}
@media screen and (max-width: 1024px) {
  .subject .subject__cta-item.c-btn-blue:first-child {
    min-width: unset;
  }
}

/*----------------------------
■■　患者様満足度調査　■■
------------------------------*/
.contact {
  padding: 7.1rem 0 6rem;
  /* ==========================
     プログレストラッカー全体
  ========================== */
}
@media screen and (max-width: 1024px) {
  .contact {
    padding: 4.2rem 0 4.5rem;
  }
}
.contact__flex {
  margin-top: 5.5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.4rem 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .contact__flex {
    margin-top: 2.2rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.contact__left {
  padding: 2.4rem 8.8rem;
  border: 1px solid #D3D3D3;
  border-radius: 16px;
  text-align: center;
}
@media (max-width: 1152px) {
  .contact__left {
    padding: 2.4rem 5rem;
  }
}
@media screen and (max-width: 1024px) {
  .contact__left {
    padding: 1.9rem 1.6rem;
  }
}
.contact__flex-wrap {
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .contact__flex-wrap {
    padding-bottom: 1.2rem;
  }
}
.contact__flex-wrap:last-child {
  padding-top: 2.4rem;
  padding-bottom: 0;
  border-bottom: none;
}
@media screen and (max-width: 1024px) {
  .contact__flex-wrap:last-child {
    padding-top: 1.5rem;
  }
}
.contact__flex-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .contact__flex-ttl {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
}
.contact__txt {
  margin-top: 0.6rem;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact__txt {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.contact__txt span.pc-only {
  display: inline;
}
@media screen and (max-width: 1024px) {
  .contact__txt span.pc-only {
    display: none;
  }
}
.contact__flex-tel {
  margin-top: 0.6rem;
  display: inline-block;
  color: #0F7ECF;
  font-size: 3.1rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1.2903225806;
  letter-spacing: 0;
  padding-left: 3rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .contact__flex-tel {
    margin-top: 0.3rem;
    font-size: 3.5rem;
  }
}
.contact__flex-tel::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.7rem;
  height: 2.6rem;
  background: url(../images/common/tel.svg) no-repeat center/contain;
}
.contact__flex-fax {
  margin-top: 0.6rem;
  color: #0F7ECF;
  font-size: 3.1rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1.2903225806;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .contact__flex-fax {
    margin-top: 0.1rem;
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .contact__flex-fax span {
    font-size: 2.4rem;
  }
}
.contact__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 2.4rem 10.5rem;
  border: 1px solid #D3D3D3;
  border-radius: 16px;
  text-align: center;
}
.contact__right .contact__flex-ttl {
  padding-left: 3.4rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .contact__right .contact__flex-ttl {
    padding-left: 2.3rem;
  }
}
.contact__right .contact__flex-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  background: url(../images/common/recruit-icon.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .contact__right .contact__flex-ttl::before {
    top: 55%;
    left: 0;
    width: 1.7rem;
    height: 1.7rem;
  }
}
@media (max-width: 1152px) {
  .contact__right {
    padding: 2.4rem 5rem;
  }
}
@media screen and (max-width: 1024px) {
  .contact__right {
    padding: 1.9rem 1.6rem;
  }
}
.contact__flex-btn {
  margin-top: 2.4rem;
  display: inline-block;
  background: #004F89;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4444444444;
  letter-spacing: 0;
  padding: 2rem 15.1rem 2rem 3.2rem;
  border-radius: 100px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .contact__flex-btn {
    font-size: 1.6rem;
    margin-top: 1rem;
    padding: 1.4rem 10rem 1.4rem 3rem;
  }
}
.contact__flex-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  background: url(../images/common/link2.svg) no-repeat center/contain;
}
.contact__email {
  margin-top: 8rem;
}
@media screen and (max-width: 1024px) {
  .contact__email {
    margin-top: 3.8rem;
  }
}
.contact__email-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
  padding-left: 3.8rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .contact__email-ttl {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
    padding-left: 2.8rem;
  }
}
.contact__email-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 2.1rem;
  background: url(../images/common/mail-blue.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .contact__email-ttl::before {
    width: 2rem;
    height: 1.4rem;
  }
}
.contact__email-list {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .contact__email-list {
    margin-top: 1.8rem;
  }
}
.contact__email-item {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  padding-left: 1.5rem;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact__email-item {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.contact__email-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.6rem;
  height: 0.6rem;
  background: #0F7ECF;
  border-radius: 50%;
}
@media screen and (max-width: 1024px) {
  .contact__email-item::before {
    top: 1.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .contact__email-item:nth-child(n+2) {
    margin-top: 0.8rem;
  }
}
.contact .p-form__box {
  max-width: 68rem;
  margin: 7.5rem 0 0;
}
@media screen and (max-width: 1024px) {
  .contact .p-form__box {
    margin-top: 4rem;
  }
}
.contact .smf-form p {
  display: block;
  text-align: center;
  margin-top: 2.5rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form p {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    margin-top: 1rem;
    text-align: left;
  }
}
.contact .smf-form p a {
  color: #004F89;
  text-decoration: underline;
}
.contact .smf-form p.sub-txt {
  margin-top: 0.5rem;
  text-align: left;
  font-size: 1.4rem;
}
.contact .smf-form .smf-item {
  padding: 1.1rem 0 0;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form .smf-item {
    padding: 1.5rem 0 0;
  }
}
.contact .smf-form .smf-item__col--label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form .smf-item__col--label {
    padding-bottom: 0;
  }
}
.contact .smf-form .smf-item__description {
  background: #C91C23;
  border-radius: 2px;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0;
  padding: 0.2rem 0.8rem;
}
.contact .smf-form .smf-item.any .smf-item__description {
  background: #AFAFAF;
}
.contact .smf-form .smf-item__label__text {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4444444444;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form .smf-item__label__text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.contact .smf-form .smf-text-control__control {
  background: #F8F8F8;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  padding: 1.3rem 1.6rem;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form .smf-text-control__control {
    padding: 1.5rem 1.6rem;
  }
}
.contact .smf-form .smf-textarea-control__control {
  background: #F8F8F8;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  padding: 1.3rem 1.6rem;
  min-height: 22.5rem;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
}
.contact .smf-form .smf-checkbox-control {
  margin-top: 2.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact .smf-form .smf-checkbox-control {
    margin-top: 2rem;
  }
}
.contact .smf-form .smf-placeholder div {
  text-align: left;
}
.contact .smf-action {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.contact .smf-button-control button[type=submit] {
  margin-top: 2rem;
  background: #004F89;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
  padding: 2rem 8.8rem;
  border-radius: 100px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .contact .smf-button-control button[type=submit] {
    margin-top: 1rem;
    width: 100%;
    text-align: left;
    padding: 1rem 3.2rem;
  }
}
.contact .smf-button-control button[type=submit]::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.4rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.8rem;
  height: 1.2rem;
  background: url(../images/common/arrow-white.svg) no-repeat center/contain;
}
.contact .step-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding: 0;
  gap: 4px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4px 1fr 4px 1fr;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 1rem;
}
@media screen and (max-width: 1024px) {
  .contact .step-list {
    margin-bottom: 2rem;
    background: #D3D3D3;
    clip-path: polygon(0% 0%, calc(100% - 14px) 0%, 100% 50%, calc(100% - 14px) 100%, 100% 100%, 0% 100%);
  }
}
.contact .step-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 7rem;
  padding: 0 28px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  list-style: none;
  background-color: #EFEFEF;
  text-align: center;
  clip-path: polygon(0% 0%, calc(100% - 28px) 0%, 100% 50%, calc(100% - 28px) 100%, 0% 100%, 28px 50%);
  margin: 0 -14px;
  border: 1px solid #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .contact .step-list__item {
    height: 6.2rem;
    padding: 0 20px;
    padding: 0;
    margin: 0 -8px;
    clip-path: polygon(0% 0%, calc(100% - 14px) 0%, 100% 50%, calc(100% - 14px) 100%, 0% 100%, 14px 50%);
  }
}
.contact .step-list__item:first-child {
  clip-path: polygon(0% 0%, calc(100% - 28px) 0%, 100% 50%, calc(100% - 28px) 100%, 0% 100%);
  margin-left: 0;
  padding-left: 0;
}
@media screen and (max-width: 1024px) {
  .contact .step-list__item:first-child {
    margin: 0 -8px;
    clip-path: polygon(0% 0%, calc(100% - 14px) 0%, 100% 50%, calc(100% - 14px) 100%, 0% 100%);
  }
}
.contact .step-list__item:last-child {
  margin-right: -5%;
  padding-right: 0;
}
.contact .step-list__item--current {
  background-color: #0F7ECF;
  color: #fff;
}
.contact .step-list__item--current .step-text {
  color: #fff;
}
.contact .step-text {
  display: block;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 1024px) {
  .contact .step-text {
    font-size: 1.2rem;
    color: #0F7ECF;
  }
}
.contact .step-text2 {
  display: block;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 1024px) {
  .contact .step-text2 {
    font-size: 1.8rem;
  }
}
.contact button.smf-button-control__control[data-action=back] {
  background: none;
  color: #333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  text-decoration: underline;
  border: none;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  padding: 0;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
}
.contact button.smf-button-control__control[data-action=back]::after {
  display: none;
}
.contact:has(form.snow-monkey-form[data-screen=confirm]) #confirm-none {
  display: none;
}
.contact:has(form.snow-monkey-form[data-screen=confirm]) .contact__email {
  margin-top: 0;
}
.contact:has(form.snow-monkey-form[data-screen=confirm]) .p-form__box {
  margin-top: 2rem;
}

.contact-thanks {
  padding: 6.4rem 0 8rem;
}
@media screen and (max-width: 1024px) {
  .contact-thanks {
    padding: 4rem 0 6rem;
  }
}
.contact-thanks .p-form__thanks-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  padding-left: 3.8rem;
  position: relative;
}
.contact-thanks .p-form__thanks-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 2.1rem;
  background: url(../images/common/mail-blue.svg) no-repeat center/contain;
}
.contact-thanks .p-form__thanks-read {
  margin-top: 5rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
}
@media screen and (max-width: 1024px) {
  .contact-thanks .p-form__thanks-read {
    margin-top: 2rem;
    font-size: 1.7rem;
    line-height: 1.4705882353;
  }
}
.contact-thanks .p-form__thanks-txt {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .contact-thanks .p-form__thanks-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.contact-thanks .c-tel-wrap {
  margin-top: 2rem;
  padding: 2.2rem 2rem;
}
@media screen and (max-width: 1024px) {
  .contact-thanks .c-tel-wrap {
    margin-top: 3rem;
    background: none;
    border: 1px solid #707070;
    border-radius: 20px;
    text-align: center;
    padding: 2rem 2rem 2rem 2rem;
  }
}
.contact-thanks .p-form__thanks-btn {
  margin-top: 5rem;
  margin-left: 18rem;
}
@media screen and (max-width: 1024px) {
  .contact-thanks .p-form__thanks-btn {
    margin-top: 3rem;
    margin-left: 0;
  }
}
.contact-thanks .p-form__thanks-btn .c-btn-blue {
  max-width: 32rem;
  display: inline-block;
  background: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .contact-thanks .p-form__thanks-btn .c-btn-blue {
    max-width: 100%;
  }
}

.endoscopy {
  padding-top: 5.6rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy {
    padding-top: 3.8rem;
  }
}
.endoscopy .sec-txt {
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .endoscopy .sec-txt {
    line-height: 2;
  }
}
.endoscopy .page-nav {
  margin-top: 2.5rem;
  max-width: 94rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy .page-nav {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .endoscopy .page-nav__item {
    padding: 1.3rem 2rem 1.3rem 1.2rem;
  }
}
.endoscopy__day {
  padding: 8.7rem 0 6.4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day {
    padding: 5.8rem 0 3.8rem;
  }
}
.endoscopy__day-items {
  margin-top: 4.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day-items {
    margin-top: 2.5rem;
    gap: 2.2rem;
  }
}
.endoscopy__day-item {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  display: -ms-grid;
  display: grid;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day-item {
    font-size: 1.6rem;
    line-height: 1.75;
    gap: 1.5rem;
  }
}
.endoscopy__day-item:has(span) {
  -ms-grid-columns: 17.3rem 1fr;
  grid-template-columns: 17.3rem 1fr;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day-item:has(span) {
    -ms-grid-columns: 15.6rem 1fr;
    grid-template-columns: 15.6rem 1fr;
  }
}
.endoscopy__day-item span {
  background: #0F7ECF;
  color: #fff;
  text-align: center;
  font-weight: 700;
  padding: 0.4rem 0.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.endoscopy__day-item span.small {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  background: none;
  color: #333;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day-item span.small {
    line-height: 1.5;
  }
}
.endoscopy__day-txt {
  margin-top: 4.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day-txt {
    margin-top: 3.2rem;
    font-size: 1.6rem;
  }
}
.endoscopy__day .c-tel-wrap {
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__day .c-tel-wrap {
    background: none;
    border: 1px solid #707070;
    border-radius: 20px;
    padding-bottom: 1.5rem;
  }
}
.endoscopy__type {
  padding: 6.8rem 0;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type {
    padding: 4rem 0;
  }
}
.endoscopy__type-subttl {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-subttl {
    margin-top: 2rem;
  }
}
.endoscopy__type-subttl.c-section-title3 {
  padding-left: 2.6rem;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0;
}
.endoscopy__type-subttl.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-subttl.c-section-title3 {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-left: 2rem;
  }
}
.endoscopy__type-subttl2 {
  margin-top: 5.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-subttl2 {
    margin-top: 3.6rem;
  }
}
.endoscopy__type-subttl2.c-section-title3 {
  padding-left: 2.6rem;
  font-weight: 500;
  font-size: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-subttl2.c-section-title3 {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-left: 2rem;
  }
}
.endoscopy__type-subttl2.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.endoscopy__type-txt {
  margin-top: 2rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-txt {
    margin-top: 1rem;
  }
}
.endoscopy__type-items {
  margin-top: 5rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-items {
    margin-top: 3.2rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 3.4rem;
  }
}
.endoscopy__type-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item {
    gap: 1.4rem;
  }
}
.endoscopy__type-item-img {
  max-width: 20rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item-img {
    max-width: 14.4rem;
  }
}
.endoscopy__type-item:nth-child(1) {
  padding-right: 4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item:nth-child(1) {
    padding-right: 0;
  }
}
.endoscopy__type-item:nth-child(2) {
  margin-left: -2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item:nth-child(2) {
    margin-left: 0;
  }
}
.endoscopy__type-item2 {
  margin-top: 3.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item2 {
    margin-top: 2.2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.endoscopy__type-item2-img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 27.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item2-img {
    max-width: 22.6rem;
  }
}
.endoscopy__type-item-ttl {
  margin-top: 0.4rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item-ttl {
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.endoscopy__type-item-txt {
  margin-top: 0.4rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .endoscopy__type-item-txt {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.endoscopy__flow {
  background: #F8F7F1;
  padding-top: 1rem;
  padding-bottom: 6.4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow {
    padding-top: 2.2rem;
    padding-bottom: 4rem;
  }
}
.endoscopy__flow-txt {
  margin-top: 2.3rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow-txt {
    margin-top: 1.8rem;
  }
}
.endoscopy__flow-items {
  margin-top: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow-items {
    margin-top: 2.4rem;
  }
}
.endoscopy__flow .c-flow__items {
  gap: 6.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__items {
    gap: 4rem;
  }
}
.endoscopy__flow .c-flow__item {
  background: #fff;
}
.endoscopy__flow .c-flow__item:nth-child(3) {
  padding-bottom: 7rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(3) {
    padding-top: 2.8rem;
    padding-bottom: 5.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(4) {
    padding-top: 2.5rem;
  }
}
.endoscopy__flow .c-flow__item:nth-child(4) .c-flow__grid-item:first-child {
  padding-right: 5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(4) .c-flow__grid-item:first-child {
    padding-right: 0;
  }
}
.endoscopy__flow .c-flow__item:nth-child(4) .c-flow__item-txt {
  margin-top: 2.4rem;
  padding-left: 1em;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(4) .c-flow__item-txt {
    padding-left: 0;
  }
}
.endoscopy__flow .c-flow__item:nth-child(5) {
  padding-bottom: 6.4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(5) {
    padding-bottom: 3rem;
  }
}
.endoscopy__flow .c-flow__item:nth-child(6) .c-flow__item-txt {
  margin-top: 3.5rem;
  padding-left: 1em;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__item:nth-child(6) .c-flow__item-txt {
    padding-left: 0;
  }
}
.endoscopy__flow .c-flow__grid-item:first-child {
  padding-right: 7.3rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__flow .c-flow__grid-item:first-child {
    padding-right: 0;
  }
}
.endoscopy__medicine {
  padding-top: 7.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine {
    padding-top: 4rem;
  }
}
.endoscopy__medicine-items {
  margin-top: 3.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-items {
    margin-top: 2.5rem;
    gap: 1.7rem;
  }
}
.endoscopy__medicine-item {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  display: -ms-grid;
  display: grid;
  gap: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-item {
    font-size: 1.6rem;
    line-height: 1.75;
    gap: 1.2rem;
  }
}
.endoscopy__medicine-item:has(span) {
  -ms-grid-columns: 17.3rem 1fr;
  grid-template-columns: 17.3rem 1fr;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-item:has(span) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.endoscopy__medicine-item span {
  background: #0F7ECF;
  color: #fff;
  text-align: center;
  font-weight: 700;
  padding: 0.4rem 0.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-item span {
    max-width: 13.6rem;
  }
}
.endoscopy__medicine-item span.small {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  background: none;
  color: #333;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-item span.small {
    font-size: 1.4rem;
    line-height: 2;
    max-width: 100%;
    padding: 0;
  }
}
.endoscopy__medicine-txt {
  margin-top: 3rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .endoscopy__medicine-txt {
    margin-top: 1.5rem;
    line-height: 2;
  }
}
.endoscopy__price {
  padding-top: 8.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price {
    padding-top: 6.5rem;
  }
}
.endoscopy__price-read {
  margin-top: 4rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  padding-left: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price-read {
    margin-top: 2rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.endoscopy__price-read::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.1rem;
  height: 3.6rem;
  background: url(../images/endoscopy/endoscopy-icon.svg) no-repeat center/contain;
}
.endoscopy__price-txt {
  margin-top: 3rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price-txt {
    font-size: 1.4rem;
    line-height: 2;
    margin-top: 2rem;
  }
}
.endoscopy__price-txt2 {
  margin-top: 1.5rem;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0;
}
.endoscopy__price-items {
  margin-top: 2.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 9.4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price-items {
    margin-top: 3rem;
    gap: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.endoscopy__price-item-ttl {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  padding-bottom: 0.2rem;
  border-bottom: 3px solid #CDE2F2;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price-item-ttl {
    padding-left: 0.5rem;
  }
}
.endoscopy__price-item-txt {
  margin-top: 1.2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
.endoscopy__price-item-txt span {
  margin-right: 0.8rem;
  display: inline-block;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.75;
  line-height: 1.125;
  background: #CDE2F2;
  padding: 0.8rem 0;
  width: 14.2rem;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .endoscopy__price-item-txt span {
    width: 12.4rem;
  }
}
.endoscopy__faq {
  padding-top: 8.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq {
    padding-top: 6rem;
  }
}
.endoscopy__faq .faq__lists-ttl {
  margin-top: 4.2rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__lists-ttl {
    margin-top: 2.2rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.endoscopy__faq .faq__lists-ttl2 {
  margin-top: 8.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__lists-ttl2 {
    margin-top: 6rem;
  }
}
.endoscopy__faq .faq__lists {
  margin-top: 0.5rem;
}
.endoscopy__faq .faq__list-item {
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__list-item {
    padding: 1.6rem 0;
  }
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__question span {
    line-height: 1.2;
  }
}
.endoscopy__faq .faq__answer {
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__answer {
    padding: 0.8rem 0 1rem 3.5rem;
  }
}
.endoscopy__faq .faq__answer p {
  line-height: 2;
}
.endoscopy__faq .faq__answer p:nth-child(n+2) {
  margin-top: 1.2rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__faq .faq__answer p:nth-child(n+2) {
    margin-top: 0.9rem;
  }
}
.endoscopy__contact {
  padding-top: 8.8rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__contact {
    padding-top: 6.2rem;
    padding-bottom: 7.8rem;
  }
}
.endoscopy__contact-txt {
  margin-top: 4rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__contact-txt {
    margin-top: 1.8rem;
  }
}
.endoscopy__contact .c-tel-wrap {
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .endoscopy__contact .c-tel-wrap {
    margin-top: 1.2rem;
    background: none;
    border: 1px solid #707070;
    border-radius: 20px;
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
}

.outpatient {
  margin-top: 5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient {
    margin-top: 3.5rem;
  }
  .outpatient .sec-txt {
    line-height: 2;
    font-family: "Noto Sans JP", sans-serif;
  }
}
.outpatient .page-nav {
  margin-top: 3rem;
  max-width: 94rem;
}
@media screen and (max-width: 1024px) {
  .outpatient .page-nav {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient .page-nav__item {
    padding: 1.3rem 2rem 1.3rem 1.2rem;
  }
}
.outpatient__subttl {
  margin-top: 4rem;
}
.outpatient__subttl.c-section-title3 {
  font-size: 2.5rem;
  line-height: 1.12;
  font-weight: 500;
}
.outpatient .outpatient__btn {
  margin-top: 6.4rem;
}
@media screen and (max-width: 1024px) {
  .outpatient .outpatient__btn {
    margin-top: 3rem;
  }
}
.outpatient .outpatient__btn a {
  display: block;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;
  background: #fff;
  padding: 3.5rem;
  border: 4px solid #0F7ECF;
  text-align: center;
  position: relative;
  border-radius: 10px;
}
@media screen and (max-width: 1024px) {
  .outpatient .outpatient__btn a {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    padding: 1rem 1.5rem 1.5rem;
    text-align: left;
  }
}
.outpatient .outpatient__btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 6rem;
  width: 1.3rem;
  height: 2.2rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .outpatient .outpatient__btn a::after {
    top: 30%;
    right: 1.8rem;
    width: 1.3rem;
    height: 2.2rem;
  }
}
.outpatient .outpatient__btn a span {
  display: inline-block;
  margin-right: 1.4rem;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0;
  color: #0F7ECF;
  position: relative;
  padding-left: 6rem;
}
@media screen and (max-width: 1024px) {
  .outpatient .outpatient__btn a span {
    display: block;
    font-size: 2rem;
    line-height: 1.45;
    padding-left: 4rem;
    text-align: left;
    margin-bottom: 0.5rem;
  }
}
.outpatient .outpatient__btn a span::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 3.2rem;
  height: 4.9rem;
  background: url(../images/top/cta-icon1.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .outpatient .outpatient__btn a span::before {
    width: 2.8rem;
    height: 4.3rem;
  }
}
.outpatient__table {
  margin-top: 3.2rem;
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__table {
    margin-top: 2rem;
  }
}
.outpatient__table dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 26.7rem 1fr;
  grid-template-columns: 26.7rem 1fr;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__table dl {
    -ms-grid-columns: 11.4rem 1fr;
    grid-template-columns: 11.4rem 1fr;
  }
}
.outpatient__table dl:last-child {
  border-bottom: none;
}
.outpatient__table dt {
  background: #F2F8FD;
  text-align: left;
  font-weight: 700;
  border-right: 1px solid #ccc;
}
.outpatient__table dt, .outpatient__table dd {
  padding: 2.2rem 0 2.2rem 4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .outpatient__table dt, .outpatient__table dd {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    padding: 2.5rem 1.5rem 1.2rem 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__table dt {
    white-space: nowrap;
    font-size: 1.6rem;
    padding: 1rem 1.5rem 1.2rem 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__table dt span {
    display: inline-block;
    margin-top: 1.4rem;
  }
}
.outpatient__table dd {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .outpatient__table dd {
    font-size: 1.4rem;
    line-height: 2;
    padding: 1rem 2rem 0.5rem 1.5rem;
  }
}
.outpatient__item {
  margin-top: 8.6rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__item {
    margin-top: 6.3rem;
  }
}
.outpatient__item-ttl {
  margin-top: 6.4rem;
}
.outpatient__guide .outpatient__flex {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__flex {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.outpatient__guide .outpatient__left {
  width: 58.4745762712%;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__left {
    width: 100%;
  }
}
.outpatient__guide .outpatient__subttl {
  margin-top: 2.5rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  padding-left: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__subttl {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.outpatient__guide .outpatient__subttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.6rem;
  height: 3.7rem;
  background: url(../images/common/outpatient-icon.svg) no-repeat center/cover;
}
.outpatient__guide .outpatient__lists .page-nav-subject {
  margin-top: 2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem 2rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__lists .page-nav-subject {
    gap: 0.8rem 1rem;
  }
}
.outpatient__guide .outpatient__right {
  background: #0F7ECF;
  color: #fff;
  padding: 3rem 2.9rem 3rem;
  border-radius: 10px;
  width: 36.4406779661%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right {
    padding: 2rem 2.5rem;
    width: 100%;
  }
}
.outpatient__guide .outpatient__right-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0.1em;
  padding-bottom: 1.2rem;
  border-bottom: 1px dashed #fff;
  padding-left: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-ttl {
    padding-left: 4rem;
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.1em;
  }
}
.outpatient__guide .outpatient__right-ttl.schedule::before {
  content: "";
  position: absolute;
  top: 40%;
  left: 0.9rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.2rem;
  height: 3rem;
  background: url(../images/common/schedule.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-ttl.schedule::before {
    left: 0;
    width: 2.7rem;
    height: 2.5rem;
  }
}
.outpatient__guide .outpatient__right-ttl.close {
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-ttl.close {
    padding-bottom: 0.7rem;
  }
}
.outpatient__guide .outpatient__right-ttl.close::before {
  content: "";
  position: absolute;
  top: 40%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.6rem;
  height: 3.4rem;
  background: url(../images/common/close.svg) no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-ttl.close::before {
    top: 30%;
    width: 3.8rem;
    height: 2.8rem;
  }
}
.outpatient__guide .outpatient__right-read {
  margin-top: 0.5rem;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-read {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.outpatient__guide .outpatient__right-read span {
  font-size: 2.4rem;
  line-height: 1.4583333333;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-read span {
    font-size: 2rem;
    line-height: 1.45;
  }
}
.outpatient__guide .outpatient__right-lists {
  margin-top: 0.5rem;
}
.outpatient__guide .outpatient__right-list-item {
  margin-top: 0.5rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4444444444;
  padding-left: 2.6rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-list-item {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.outpatient__guide .outpatient__right-list-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-list-item::before {
    left: 0.8rem;
    width: 0.8rem;
    height: 0.8rem;
  }
}
.outpatient__guide .outpatient__right-txt {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8571428571;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .outpatient__guide .outpatient__right-txt {
    margin-top: 1rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}
.outpatient__guide .outpatient__right-tel a {
  display: inline-block;
  font-size: 2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
  padding-left: 2.6rem;
  position: relative;
}
.outpatient__guide .outpatient__right-tel a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.7rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-image: url(../images/common/tel.svg);
          mask-image: url(../images/common/tel.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background: #fff;
}
.outpatient__doctor {
  margin-top: 6.4rem;
  padding: 0.7rem 0 6.5rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor {
    margin-top: 4rem;
    padding-bottom: 4rem;
  }
}
.outpatient__doctor .outpatient__item {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor .outpatient__item-ttl {
    margin-top: 3.2rem;
  }
}
.outpatient__doctor-read {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-read {
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
}
.outpatient__doctor-txt {
  margin-top: 0;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-txt {
    margin-top: 0.5rem;
  }
}
.outpatient__doctor-table-txt {
  margin-top: 1rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table-txt {
    font-size: 1.4rem;
    line-height: 2;
    margin-top: 0;
  }
}
.outpatient__doctor-ttl {
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-ttl {
    margin-top: 1.5rem;
  }
}
.outpatient__doctor-ttl.c-section-title3 {
  padding-left: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-ttl.c-section-title3 {
    padding-left: 2rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.outpatient__doctor-ttl.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.outpatient__doctor-ttl2 {
  margin-top: 6rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-ttl2 {
    margin-top: 3.5rem;
  }
}
.outpatient__doctor-ttl2.c-section-title3 {
  padding-left: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-ttl2.c-section-title3 {
    padding-left: 2rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.outpatient__doctor-ttl2.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.outpatient__doctor-table {
  max-width: 104.9rem;
  margin-top: 2rem;
  width: 100%;
  border-collapse: collapse;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  border: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table {
    margin-top: 1rem;
    font-size: 1.2rem;
    line-height: 1.4166666667;
  }
}
.outpatient__doctor-table tr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 15.9rem (1fr)[5] 19rem;
  grid-template-columns: 15.9rem repeat(5, 1fr) 19rem;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table tr {
    -ms-grid-columns: 5.1rem (1fr)[6];
    grid-template-columns: 5.1rem repeat(6, 1fr);
  }
}
@media screen and (max-width: 500px) {
  .outpatient__doctor-table tr {
    -ms-grid-columns: 5.1rem (1fr)[5] 6.1rem;
    grid-template-columns: 5.1rem repeat(5, 1fr) 6.1rem;
  }
}
.outpatient__doctor-table tr:last-child {
  border-bottom: none;
}
.outpatient__doctor-table th, .outpatient__doctor-table td {
  padding: 1.8rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table th, .outpatient__doctor-table td {
    padding: 0.1rem 0;
  }
}
.outpatient__doctor-table thead th {
  background-color: #0F7ECF;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  padding: 1.5rem 0;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table thead th {
    font-size: 1.2rem;
    line-height: 1.4166666667;
    padding: 0.2rem 0;
  }
}
.outpatient__doctor-table thead th:first-child {
  border-left: none;
}
.outpatient__doctor-table tbody th {
  background-color: #eaf4fb;
  width: 100%;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-left: 4rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table tbody th {
    font-size: 1.2rem;
    line-height: 1.1666666667;
    padding-left: 0.5rem;
  }
}
.outpatient__doctor-table tbody th span {
  display: block;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table tbody th span {
    font-size: 1.2rem;
    line-height: 1.1666666667;
  }
}
.outpatient__doctor-table tbody th.center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  padding-left: 0;
}
.outpatient__doctor-table td {
  background-color: #fff;
  min-height: 9.4rem;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table td {
    min-height: 7.3rem;
  }
}
.outpatient__doctor-table td.none {
  position: relative;
  overflow: hidden;
}
.outpatient__doctor-table td.none::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(148deg, transparent 49%, #ccc 50%, transparent 51%);
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table td.none::before {
    background: linear-gradient(155deg, transparent 49%, #ccc 50%, transparent 51%);
  }
}
@media screen and (max-width: 767px) {
  .outpatient__doctor-table td.none::before {
    background: linear-gradient(135deg, transparent 49%, #ccc 50%, transparent 51%);
  }
}
@media screen and (max-width: 500px) {
  .outpatient__doctor-table td.none::before {
    background: linear-gradient(121deg, transparent 49%, #ccc 50%, transparent 51%);
  }
}
.outpatient__doctor-table td:last-child {
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-table td.left {
    text-align: left;
    padding-left: 0.3rem;
  }
}
.outpatient__doctor-btn {
  margin-top: 6.3rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__doctor-btn {
    margin-top: 3.5rem;
  }
}
.outpatient__doctor-btn .c-btn-blue {
  max-width: 35.3rem;
}
.outpatient__reception .outpatient__item {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception .outpatient__item {
    margin-top: 4.2rem;
  }
}
.outpatient__reception .outpatient__item-ttl {
  margin-top: 7rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception .outpatient__item-ttl {
    margin-top: 6.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__reception .outpatient__btn {
    margin-top: 0.6rem;
  }
}
.outpatient__reception__table.reception {
  margin-top: 3.2rem;
}
.outpatient__reception__table.reception .outpatient__table th span {
  display: inline-block;
  margin-top: 1rem;
}
.outpatient__reception__table.reception .outpatient__table th {
  text-align: left;
}
.outpatient__reception-flex {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 40rem 4rem 1fr;
  grid-template-columns: 40rem 1fr;
  gap: 4rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-flex {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.outpatient__reception-flex .outpatient__reception-ttl {
  font-size: 2rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-flex .outpatient__reception-ttl {
    font-size: 1.8rem;
  }
}
.outpatient__reception-item {
  margin-top: 3.3rem;
  background: #F2F8FD;
  padding: 2rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-item {
    margin-top: 2.5rem;
  }
}
.outpatient__reception-ttl {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-ttl {
    line-height: 1.5555555556;
  }
}
.outpatient__reception-lists {
  margin-top: 0.5rem;
}
.outpatient__reception-list-item {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  padding-left: 2.5rem;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-list-item {
    padding-left: 2rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.outpatient__reception-list-item::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .outpatient__reception-list-item::before {
    top: 1rem;
  }
}
.outpatient__flow .outpatient__item {
  margin-top: 0;
}
.outpatient__flow .outpatient__item-ttl {
  margin-top: 7rem;
}
.outpatient__flow-txt-wrap {
  margin-top: 1.5rem;
}
.outpatient__flow-txt-wrap .outpatient__flow-txt2 {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow-txt-wrap .outpatient__flow-txt2:not(:first-child) {
    margin-top: 1rem;
  }
}
.outpatient__flow-txt {
  font-family: "Noto Sans JP", sans-serif;
  margin-top: 1rem;
}
.outpatient__flow-txt2 {
  font-family: "Noto Sans JP", sans-serif;
  margin-top: 0.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow-txt2 {
    margin-top: 1.7rem;
  }
}
.outpatient__flow-txt2 span {
  font-weight: 700;
}
.outpatient__flow-video {
  margin-top: 1.5rem;
  max-width: 64rem;
}
.outpatient__flow-video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 640/359;
  -o-object-fit: cover;
     object-fit: cover;
}
.outpatient__flow-items.c-flow__items {
  margin-top: 5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow-items.c-flow__items {
    margin-top: 1.2rem;
  }
}
.outpatient__flow .c-flow__item {
  padding-bottom: 4rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .c-flow__item {
    padding-bottom: 2rem;
  }
}
.outpatient__flow .c-flow__item:nth-child(4) {
  padding-bottom: 3rem;
}
.outpatient__flow .c-flow__item:nth-child(5) {
  padding-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .c-flow__item:nth-child(5) {
    padding-bottom: 2rem;
  }
}
.outpatient__flow .outpatient__subttl {
  margin-top: 6.8rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .outpatient__subttl.c-section-title3 {
    margin-top: 3.7rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.outpatient__flow .outpatient__subttl.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.outpatient__flow .c-tel-wrap {
  margin-top: 1.6rem;
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .c-tel-wrap {
    margin-top: 2rem;
    padding: 2rem 2rem 1.5rem;
    background: none;
    border: 1px solid #707070;
    border-radius: 20px;
    text-align: center;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .c-tel-wrap .c-tel-wrap__tel {
    display: inline-block;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__flow .c-tel-wrap .c-tel-wrap__tel a {
    font-size: 3.5rem;
    line-height: 1.3142857143;
  }
}
.outpatient__faq {
  margin-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq {
    margin-bottom: 5.5rem;
  }
}
.outpatient__faq .outpatient__item {
  margin-top: 0;
}
.outpatient__faq .outpatient__item-ttl {
  margin-top: 7.2rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .outpatient__item-ttl {
    margin-top: 6.2rem;
  }
}
.outpatient__faq__wrapper {
  max-width: 105rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .faq__lists {
    margin-top: 0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .faq__question span {
    font-size: 2.2rem;
  }
}
.outpatient__faq .faq__question span.faq__question-icon {
  right: 14rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .faq__question span.faq__question-icon {
    right: 0;
  }
}
.outpatient__faq .faq__answer {
  line-height: 1.9;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .faq__answer {
    line-height: 2.2;
    padding: 0.5rem 0 1rem 2.5rem;
  }
}
.outpatient__faq .faq__list-item {
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .outpatient__faq .faq__list-item {
    padding-bottom: 1.5rem;
  }
}

.emergency {
  padding-top: 4rem;
  padding-bottom: 8.3rem;
}
@media screen and (max-width: 1024px) {
  .emergency {
    padding-bottom: 8rem;
  }
}
.emergency__top-ttl {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.8333333333;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .emergency__top-ttl {
    font-size: 2.3rem;
    line-height: 1.2173913043;
  }
}
.emergency__subttl {
  margin-top: 2.1rem;
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .emergency__subttl {
    margin-top: 3.5rem;
  }
}
.emergency__top-txt {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .emergency__top-txt {
    margin-top: 1.4rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.emergency__flex {
  margin-top: 6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
}
@media screen and (max-width: 1024px) {
  .emergency__flex {
    margin-top: 3.8rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
@media screen and (max-width: 1024px) {
  .emergency__flex-wrap {
    display: contents;
  }
}
.emergency__flex-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  padding-left: 2.2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .emergency__flex-ttl {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.emergency__flex-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #0F7ECF;
}
.emergency__wrap {
  margin-top: 2rem;
  background: #F2F8FD;
  padding: 1.8rem 2rem;
}
@media screen and (max-width: 1024px) {
  .emergency__wrap {
    margin-top: 1rem;
    margin-bottom: 3rem;
    padding: 1.5rem 1.8rem 2.5rem;
  }
}
.emergency__list {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  padding-left: 2rem;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .emergency__list {
    font-size: 1.4rem;
    line-height: 2;
    padding-left: 2.3rem;
  }
}
.emergency__list::before {
  content: "";
  position: absolute;
  top: 1.2rem;
  left: 0;
  width: 1rem;
  height: 0.7rem;
  border-radius: 50%;
  background: url(../images/common/check.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .emergency__list::before {
    width: 1.2rem;
    height: 0.9rem;
  }
}
.emergency__list:nth-child(n+2) {
  margin-top: 0.7rem;
}
@media screen and (max-width: 1024px) {
  .emergency__list:nth-child(n+2) {
    margin-top: 0;
  }
}
.emergency__btn {
  margin-top: 8.2rem;
}
@media screen and (max-width: 1024px) {
  .emergency__btn {
    margin-top: 2rem;
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}
.emergency__btn .c-btn-blue {
  max-width: 29.5rem;
}
@media screen and (max-width: 1024px) {
  .emergency__btn .c-btn-blue {
    max-width: 100%;
  }
}
.emergency__wrap-btn {
  margin-top: 1.8rem;
  margin-left: 2rem;
}
@media screen and (max-width: 1024px) {
  .emergency__wrap-btn {
    margin-top: 2.4rem;
    margin-left: 0;
  }
}
.emergency__wrap-btn .c-btn-blue {
  max-width: 35.3rem;
}
.emergency .page-nav {
  margin-top: 6rem;
  max-width: 105.6rem;
  -ms-grid-columns: (30rem)[2] 1fr;
  grid-template-columns: repeat(2, 30rem) 1fr;
}
@media screen and (max-width: 1024px) {
  .emergency .page-nav {
    margin-top: 6.3rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .emergency .page-nav a {
    padding: 1.3rem 2rem 1.3rem 3.1rem;
  }
  .emergency .page-nav a::after {
    width: 0.9rem;
    height: 1.5rem;
    right: 2.2rem;
  }
}
.emergency__section {
  margin-top: 10.8rem;
}
@media screen and (max-width: 1024px) {
  .emergency__section {
    margin-top: 6.2rem;
  }
}
.emergency__section2 {
  margin-top: 11.5rem;
}
@media screen and (max-width: 1024px) {
  .emergency__section2 {
    margin-top: 6.2rem;
  }
}
.emergency__section2 .emergency__txt {
  margin-top: 2.4rem;
}
.emergency__section2 .emergency__txt2 {
  margin-top: 2rem;
  line-height: 1.125;
}
@media screen and (max-width: 1024px) {
  .emergency__section2 .emergency__txt2 {
    margin-top: 0;
  }
}
.emergency__section3 {
  margin-top: 11.1rem;
}
@media screen and (max-width: 1024px) {
  .emergency__section3 {
    margin-top: 6.8rem;
  }
}
.emergency__read {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .emergency__read {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
  }
}
.emergency__table dl {
  margin-top: 2.9rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 9.4rem 1.2rem 1fr;
  grid-template-columns: 9.4rem 1fr;
  gap: 1.2rem;
}
@media screen and (max-width: 1024px) {
  .emergency__table dl {
    margin-top: 1rem;
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  .emergency__table dl:nth-child(n+2) {
    margin-top: 3rem;
  }
}
.emergency__table dt {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
  background: #0F7ECF;
  color: #fff;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .emergency__table dt {
    width: 9.5rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.emergency__table dd {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .emergency__table dd {
    font-size: 1.8rem;
    line-height: 1.75;
  }
}
.emergency__table dd span {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .emergency__table dd span {
    font-size: 1.4rem;
    line-height: 1.1666666667;
    white-space: nowrap;
  }
}
.emergency__read2 {
  margin-top: 8.5rem;
  font-size: 3rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .emergency__read2 {
    margin-top: 6.5rem;
    font-size: 2rem;
    line-height: 1.4;
  }
}
.emergency__txt {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .emergency__txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.emergency__txt--mt40 {
  margin-top: 4rem;
}
@media screen and (max-width: 1024px) {
  .emergency__txt--mt40 {
    margin-top: 1.5rem;
  }
}
.emergency__img {
  margin-top: 6rem;
  max-width: 94.8rem;
  margin-inline: auto;
}
@media screen and (max-width: 1024px) {
  .emergency__img {
    margin-top: 2rem;
  }
}
.emergency__img2 {
  margin-top: 9rem;
  max-width: 101.9rem;
  margin-left: auto;
  margin-right: 2rem;
}
@media screen and (max-width: 1024px) {
  .emergency__img2 {
    margin-top: 2.6rem;
    margin-right: 0;
  }
}
.data .container {
  margin-top: 6.4rem;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .data .container {
    margin-top: 3.7rem;
    margin-bottom: 0;
  }
}
.data__table {
  margin-top: 3rem;
}
.data__table dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 18rem 1.6rem 1fr;
  grid-template-columns: 18rem 1fr;
  gap: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .data__table dl {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0.8rem;
  }
}
.data__table dl:nth-child(n+2) {
  margin-top: 1.7rem;
}
.data__table dt {
  background: #CDE2F2;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  padding: 0.4rem 0;
  font-weight: 500;
}
.data__table dd {
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .data__table dd {
    text-align: center;
  }
}
.data__table-wrap {
  margin-top: 2rem;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1024px) {
  .data__table-wrap {
    width: 50%;
  }
}
.data__table-wrap::before {
  content: "";
  position: absolute;
  right: -15.2rem;
  top: 0;
  width: 11.2rem;
  height: 14.3rem;
  background: url(../images/data/data-txt.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .data__table-wrap::before {
    height: 100%;
    right: -13.5rem;
    background: url(../images/data/data-txt-sp.svg) no-repeat center/contain;
  }
}
@media screen and (max-width: 1024px) {
  .data__table-wrap dd {
    text-align: left;
    padding-left: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__table-wrap dl:nth-child(n+2) {
    margin-top: 1.2rem;
  }
}
.data__contents {
  margin-top: 6.7rem;
}
@media screen and (max-width: 1024px) {
  .data__contents {
    margin-top: 4.5rem;
  }
}
.data__contents--mt {
  margin-top: 6.7rem;
}
@media screen and (max-width: 1024px) {
  .data__contents--mt {
    margin-top: 3rem;
  }
}
.data__contents-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.5rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-ttl {
    font-size: 1.7rem;
    line-height: 1.5294117647;
    gap: 2.1rem;
  }
}
.data__contents-ttl span {
  font-size: 4.3rem;
  line-height: 0.8372093023;
  letter-spacing: 0;
  color: #0F7ECF;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .data__contents-ttl span {
    font-size: 2.8rem;
    line-height: 1.2857142857;
  }
}
.data__contents-table {
  margin-top: 3rem;
  border-collapse: collapse;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
  border: 1px solid #E4E4E4;
}
@media screen and (max-width: 1024px) {
  .data__contents-table {
    width: 100%;
    margin-top: 1.2rem;
    font-size: 1.4rem;
    line-height: 1.1428571429;
  }
}
.data__contents-table tr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16rem (22rem)[3];
  grid-template-columns: 16rem repeat(3, 22rem);
}
@media screen and (max-width: 1024px) {
  .data__contents-table tr {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
  }
}
.data__contents-table tr:first-child th {
  background: #0F7ECF;
  color: #fff;
  text-align: center;
  padding: 2.1rem 0;
}
@media screen and (max-width: 1024px) {
  .data__contents-table tr:first-child th {
    padding: 0.7rem 0;
  }
}
.data__contents-table th {
  background: #F2F8FD;
  text-align: center;
  padding: 1.3rem 0;
  border: 1px solid #E4E4E4;
  place-content: center;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .data__contents-table th {
    padding: 0.7rem 0;
  }
}
.data__contents-table td {
  text-align: center;
  padding: 1.3rem 0;
  border: 1px solid #E4E4E4;
  place-content: center;
}
@media screen and (max-width: 1024px) {
  .data__contents-table td {
    padding: 1.4rem 0;
  }
}
.data__contents-table td.td-col2 {
  padding: 0.8rem 0;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .data__contents-table5 {
    width: 100%;
  }
}
.data__contents-table5 tr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16rem (22rem)[2];
  grid-template-columns: 16rem repeat(2, 22rem);
}
@media screen and (max-width: 1024px) {
  .data__contents-table5 tr {
    -ms-grid-columns: 8rem (1fr)[2];
    grid-template-columns: 8rem repeat(2, 1fr);
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table5 tr:first-child th {
    padding: 1.6rem 0;
  }
}
.data__contents-table2 {
  width: 100%;
}
.data__contents-table2 tr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16rem (1fr)[4];
  grid-template-columns: 16rem repeat(4, 1fr);
}
@media screen and (max-width: 1024px) {
  .data__contents-table2 tr {
    -ms-grid-columns: (1fr)[5];
    grid-template-columns: repeat(5, 1fr);
  }
}
.data__contents-table3 {
  margin-top: 2.6rem;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 {
    width: 100%;
    margin-top: 1rem;
  }
}
.data__contents-table3 tbody {
  width: 100%;
}
.data__contents-table3 th, .data__contents-table3 td {
  border: 1px solid #ccc;
  padding: 1.6rem 0.2rem;
  text-align: center;
  vertical-align: middle;
  height: auto;
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 th, .data__contents-table3 td {
    padding: 0.7rem 0.2rem;
  }
}
.data__contents-table3 th {
  background: #0F7ECF;
  font-weight: 700;
  color: #fff;
}
.data__contents-table3 th:first-child {
  background: #F2F8FD;
  color: #333;
  min-width: 16rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 th:first-child {
    min-width: 8rem;
    padding: 0;
    padding: 0.6rem 0;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 th:nth-child(n+2) {
    min-width: 12.9rem;
    padding: 0.6rem 0;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 th.blue {
    background: #0F7ECF;
    color: #fff;
  }
}
.data__contents-table3 tr {
  height: auto;
}
.data__contents-table3 td {
  padding: 0.7rem;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .data__contents-table3 td {
    width: 50%;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table3.pc-only {
    display: none;
  }
}
.data__contents-table3.sp-only {
  display: none;
}
@media screen and (max-width: 1024px) {
  .data__contents-table3.sp-only {
    display: block;
  }
}
.data__contents-table4 {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 {
    margin-top: 3.5rem;
  }
}
.data__contents-table4 dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16rem 1fr;
  grid-template-columns: 16rem 1fr;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dl {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.data__contents-table4 dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #F2F8FD;
  border: 1px solid #EAEAEA;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dt {
    padding: 0.8rem 0;
  }
}
.data__contents-table4 dd {
  border: 1px solid #EAEAEA;
  padding: 2.9rem 4rem 3rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1380px) {
  .data__contents-table4 dd {
    padding: 2.9rem 3rem 3rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dd {
    padding: 1.2rem 2rem 2rem;
    width: 100%;
  }
}
.data__contents-table4 dd .data__contents-table4-list-row {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
  -ms-grid-rows: (1fr)[5];
  grid-template-rows: repeat(5, 1fr);
  -webkit-column-gap: 3.8rem;
     -moz-column-gap: 3.8rem;
          column-gap: 3.8rem;
}
@media screen and (max-width: 1380px) {
  .data__contents-table4 dd .data__contents-table4-list-row {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dd .data__contents-table4-list-row {
    grid-auto-flow: row;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
  .data__contents-table4 dd .data__contents-table4-list-row > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
.data__contents-table4 dd li {
  padding-left: 1.6rem;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dd li {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.data__contents-table4 dd li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  background: #0F7ECF;
  border-radius: 50%;
}
@media screen and (max-width: 1024px) {
  .data__contents-table4 dd li::before {
    top: 1.6rem;
  }
}
.data__contents-wrap {
  max-width: 78.2rem;
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem 2rem;
  background: #F2F8FD;
  padding: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-wrap {
    margin-top: 1.8rem;
    padding: 1.6rem 1.6rem 2rem;
    gap: 1rem;
  }
}
.data__contents-item {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .data__contents-item {
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.data__contents-item span {
  display: inline-block;
  background: #0F7ECF;
  color: #fff;
  border-radius: 50%;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1;
  width: 2.6rem;
  height: 2.6rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .data__contents-item span {
    margin-right: 0.5rem;
    width: 1.8rem;
    height: 1.8rem;
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 1024px) {
  .data .data__contents-item.column {
    -ms-grid-column-span: 2;
    grid-column: span 2;
  }
}
.data__contents-items {
  margin-top: 3.7rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.7rem 1fr 2.7rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.8rem 2.7rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-items {
    margin-top: 1.5rem;
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
.data__contents-item-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.25;
}
@media screen and (max-width: 1024px) {
  .data__contents-item-ttl {
    font-size: 1.6rem;
    line-height: 1.5625;
  }
}
.data__contents-item-img {
  margin-top: 0.8rem;
}
.data__contents-item-img.modal-img {
  position: relative;
}
@media screen and (max-width: 768px) {
  .data__contents-item-img.modal-img::after {
    content: "";
    position: absolute;
    bottom: 0.6rem;
    right: 0.6rem;
    width: 2.7rem;
    height: 2.7rem;
    background: url(../images/data/data-icon.svg) no-repeat center center/contain;
  }
}
.data__contents-items2 {
  margin-top: 3.4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.7rem 1fr 2.7rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.7rem;
}
@media screen and (max-width: 1024px) {
  .data__contents-items2 {
    margin-top: 1.2rem;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-items2.data__contents-items2--mt {
    margin-top: 4.3rem;
  }
}
.data__contents-items2:has(.data__contents-table4) {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 30rem 4rem 1fr;
  grid-template-columns: 30rem 1fr;
  gap: 4rem;
}
@media screen and (max-width: 1380px) {
  .data__contents-items2:has(.data__contents-table4) {
    -ms-grid-columns: 25rem 2rem 1fr;
    grid-template-columns: 25rem 1fr;
    gap: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-items2:has(.data__contents-table4) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.data__contents-items2:has(.data__contents-table4) dd {
  width: 100%;
  position: relative;
}
.data__contents-items2:has(.data__contents-table4) dd::before {
  content: "等";
  position: absolute;
  bottom: 1rem;
  right: 2rem;
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .data__contents-items2:has(.data__contents-table4) dd::before {
    font-size: 1.4rem;
    line-height: 2;
    bottom: 0.3em;
    right: 2.4rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-items2 .data__contents-item-ttl {
    padding: 0 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-items2 .data__contents-item-img {
    padding: 0 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .data__contents-items2 .data__contents-table4 {
    margin-top: 0;
  }
}
.data .img-modal {
  display: none; /* 非表示 */
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.7);
}
.data .img-modal-content {
  display: block;
  margin: 30% auto;
  max-width: 90%;
  height: auto;
  aspect-ratio: 288/260;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 500px) {
  .data .img-modal-content {
    margin: 50% auto;
  }
}
.data .img-modal-close {
  position: absolute;
  top: 12%;
  right: 6%;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  cursor: pointer;
}

.hospitalization {
  margin-top: 5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization {
    margin-top: 3.5rem;
  }
}
.hospitalization .page-nav {
  max-width: 62rem;
  margin-top: 3rem;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 1024px) {
  .hospitalization .page-nav {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .hospitalization .page-nav__item {
    padding: 1.3rem 2rem 1.3rem 1.2rem;
  }
  .hospitalization .page-nav__item::after {
    width: 0.9rem;
    height: 1.2rem;
    right: 1rem;
  }
}
.hospitalization__head-txt {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__head-txt {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0;
  }
}
.hospitalization__txt {
  margin-top: 2.7rem;
  line-height: 1.5555555556;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__txt {
    margin-top: 2rem;
    line-height: 2;
  }
}
.hospitalization__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .hospitalization__item {
    gap: 1.6rem;
  }
}
.hospitalization__item-ttl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0;
  background: #0F7ECF;
  color: #fff;
  padding: 0.1rem 0;
  text-align: center;
  width: 11.3rem;
}
.hospitalization__item-txt {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5555555556;
  letter-spacing: 0;
}
.hospitalization__guide {
  margin-top: 8.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide {
    margin-top: 6.3rem;
  }
}
.hospitalization__read {
  margin-top: 3rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .hospitalization__read {
    margin-top: 2.2rem;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.hospitalization__guide-flex {
  margin-top: 3.2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 59rem 7.8rem 1fr;
  grid-template-columns: 59rem 1fr;
  gap: 7.8rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide-flex {
    margin-top: 2.5rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.7rem;
  }
}
.hospitalization__guide-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.hospitalization__guide-btn {
  margin-top: 3.4rem;
  max-width: 30.1rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide-btn {
    max-width: 100%;
  }
}
.hospitalization__flow {
  margin-top: 6.4rem;
  padding-top: 7rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flow {
    padding-top: 3.4rem;
  }
}
.hospitalization__flow .c-flow__items {
  margin-top: 3.4rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flow .c-flow__items {
    margin-top: 2.1rem;
    gap: 5.6rem;
  }
}
.hospitalization__flow .c-flow__item {
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flow .c-flow__item::before {
    bottom: -5rem;
    width: 1.9rem;
    height: 4.9rem;
  }
}
.hospitalization__property {
  padding-top: 9.1rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__property {
    padding-top: 6.1rem;
  }
}
.hospitalization__flex {
  margin-top: 3.3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flex {
    margin-top: 2rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
  }
}
@media screen and (max-width: 1024px) {
  .hospitalization__flex-wrap {
    display: contents;
  }
}
.hospitalization__flex-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  padding-left: 2.2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flex-ttl {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.hospitalization__flex-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #0F7ECF;
}
.hospitalization__flex-txt {
  text-align: right;
  margin-top: 1.5rem;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__flex-txt {
    text-align: left;
    margin-top: 1rem;
    line-height: 2;
  }
}
.hospitalization__wrap {
  margin-top: 1.2rem;
  background: #fff;
  padding: 1.8rem 2rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__wrap {
    margin-top: 1.6rem;
    margin-bottom: 3rem;
    padding: 1.5rem 1.8rem 1.7rem;
  }
}
.hospitalization__list {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  padding-left: 2rem;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__list {
    font-size: 1.4rem;
    line-height: 2;
    padding-left: 2.3rem;
  }
}
.hospitalization__list::before {
  content: "";
  position: absolute;
  top: 1.2rem;
  left: 0;
  width: 1rem;
  height: 0.7rem;
  border-radius: 50%;
  background: url(../images/common/check.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .hospitalization__list::before {
    width: 1.2rem;
    height: 0.9rem;
  }
}
.hospitalization__list:nth-child(n+2) {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__list:nth-child(n+2) {
    margin-top: 0.3rem;
  }
}
@media screen and (max-width: 1024px) {
  .hospitalization__wrap.right {
    margin-bottom: 0;
  }
}
.hospitalization__wrap.right .hospitalization__list:nth-child(n+2) {
  margin-top: 1.15rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__wrap.right .hospitalization__list:nth-child(n+2) {
    margin-top: 0.2rem;
  }
}
.hospitalization__btn {
  margin-top: 8.2rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__btn {
    margin-top: 2rem;
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}
.hospitalization__btn .c-btn-blue {
  max-width: 29.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__btn .c-btn-blue {
    max-width: 100%;
  }
}
.hospitalization__wrap-btn {
  margin-top: 1.8rem;
  margin-left: 2rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__wrap-btn {
    margin-top: 2.4rem;
    margin-left: 0;
  }
}
.hospitalization__wrap-btn .c-btn-blue {
  max-width: 35.3rem;
}
.hospitalization__price {
  margin-top: -19rem;
  padding-top: 6.4rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__price {
    margin-top: 0;
  }
}
.hospitalization__price-btn {
  margin-top: 2.8rem;
  max-width: 24rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__price-btn {
    margin-top: 2.3rem;
    max-width: 100%;
  }
}
.hospitalization__price-btn .c-btn-pdf {
  width: 100%;
  padding-right: 3.3rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__price-btn .c-btn-pdf {
    width: auto;
    padding-left: 8rem;
    padding-right: 4.5rem;
  }
  .hospitalization__price-btn .c-btn-pdf::before {
    left: 5rem;
  }
}
.hospitalization__room {
  padding-top: 10rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__room {
    padding-top: 6.2rem;
  }
}
.hospitalization__room-txt {
  margin-top: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__room-txt {
    line-height: 2;
  }
}
.hospitalization__room-txt2 {
  margin-top: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__room-txt2 {
    margin-top: 0;
    line-height: 2;
  }
}
.hospitalization__room-item-wrap {
  margin-top: 3.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__room-item-wrap {
    margin-top: 0.5rem;
    gap: 1.2rem;
  }
}
.hospitalization__room .hospitalization__item-ttl {
  width: 9.7rem;
  line-height: 1.25;
}
@media screen and (max-width: 1024px) {
  .hospitalization__room .hospitalization__item-ttl {
    line-height: 1.5;
  }
}
.hospitalization__guide2 {
  padding-top: 8.2rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2 {
    padding-top: 6.2rem;
  }
}
.hospitalization__guide2-items {
  margin-top: 4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 6rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-items {
    margin-top: 2rem;
    gap: 5.7rem;
  }
}
.hospitalization__guide2-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.2rem;
  }
}
.hospitalization__guide2-item-img {
  width: 35.3389830508%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-img {
    width: 100%;
  }
}
.hospitalization__guide2-item-images {
  margin-top: 1.4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.hospitalization__guide2-item-images img {
  width: 100%;
  height: auto;
  aspect-ratio: 198/154;
  -o-object-fit: cover;
     object-fit: cover;
}
.hospitalization__guide2-item-body {
  width: 60%;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-body {
    width: 100%;
  }
}
.hospitalization__guide2-item-ttl {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0;
  padding-left: 2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-ttl {
    font-size: 1.8rem;
    line-height: 1.5555555556;
    padding-left: 1.8rem;
  }
}
.hospitalization__guide2-item-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  background: #0F7ECF;
  border-radius: 50%;
}
.hospitalization__guide2-item-subttl {
  margin-top: 2.8rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-subttl {
    margin-top: 2.5rem;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.hospitalization__guide2-item-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-txt {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: -0.01em;
  }
}
.hospitalization__guide2-item-txt2 {
  margin-top: 1rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-txt2 {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: -0.01em;
  }
}
.hospitalization__guide2-item-wrap {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__guide2-item-wrap {
    gap: 0.4rem;
  }
}
.hospitalization__guide2 .hospitalization__item-ttl {
  width: 8.2rem;
  padding: 0;
}
.hospitalization__facility {
  padding-top: 8.4rem;
  padding-bottom: 6.4rem;
  background: #F8F7F1;
}
@media screen and (max-width: 1024px) {
  .hospitalization__facility {
    padding-top: 6.4rem;
    padding-bottom: 4.5rem;
  }
}
.hospitalization__facility-items {
  margin-top: 3.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 6.07rem 1fr 6.07rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 6.07rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__facility-items {
    margin-top: 2rem;
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .hospitalization__facility-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 3.8rem;
  }
}
.hospitalization__facility-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
}
.hospitalization__facility-item-ttl {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
.hospitalization__facility-item-txt {
  margin-top: 1.6rem;
}
.hospitalization__facility-btn {
  margin-top: 3.2rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__facility-btn {
    margin-top: 3.8rem;
  }
  .hospitalization__facility-btn .c-btn-pdf {
    padding-left: 7rem;
    padding-right: 4rem;
  }
}
.hospitalization__facility .hospitalization__item {
  margin-top: 1rem;
}
.hospitalization__out {
  padding-top: 7rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__out {
    padding-top: 3.3rem;
  }
}
.hospitalization__out-txt {
  margin-top: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__out-txt {
    margin-top: 1.8rem;
    line-height: 2;
  }
}
.hospitalization__out .c-flow__items {
  margin-top: 1.8rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4.4rem 1fr 4.4rem 1fr 4.4rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 4.4rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__out .c-flow__items {
    margin-top: 2.2rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 4.7rem;
  }
}
.hospitalization__out .c-flow__item {
  padding: 2rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__out .c-flow__item {
    padding-bottom: 2rem;
  }
}
.hospitalization__out .c-flow__item::before {
  content: "";
  position: absolute;
  bottom: unset;
  left: unset;
  top: 36%;
  right: -4rem;
  -webkit-transform: translateY(-50%) rotate(-90deg);
          transform: translateY(-50%) rotate(-90deg);
  width: 4rem;
  height: 4rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__out .c-flow__item::before {
    bottom: -4rem;
    top: unset;
    right: unset;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(0);
            transform: translateX(-50%) rotate(0);
    width: 1.9rem;
    height: 4.9rem;
  }
}
.hospitalization__sympathy {
  padding-top: 7.2rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy {
    padding-top: 5.8rem;
  }
}
.hospitalization__sympathy-wrap {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-wrap {
    margin-top: 1.3rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.3rem;
  }
}
.hospitalization__sympathy .hospitalization__item-ttl {
  width: 13rem;
}
.hospitalization__sympathy-txt {
  font-family: "Noto Sans JP", sans-serif;
}
.hospitalization__sympathy-video {
  margin-top: 2.7rem;
  max-width: 52rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-video {
    margin-top: 1rem;
  }
}
.hospitalization__sympathy-video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 520/292;
  -o-object-fit: cover;
     object-fit: cover;
}
.hospitalization__sympathy-subttl {
  margin-top: 4rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-subttl {
    margin-top: 2.5rem;
  }
}
.hospitalization__sympathy-subttl.c-section-title3 {
  font-size: 2.5rem;
  line-height: 1.12;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-subttl.c-section-title3 {
    margin-top: 2.2rem;
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
}
.hospitalization__sympathy-subttl.c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.hospitalization__sympathy-subttl.mt60 {
  margin-top: 6rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-subttl.mt60 {
    margin-top: 3.7rem;
  }
}
.hospitalization__sympathy-subttl.mt50 {
  margin-top: 5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-subttl.mt50 {
    margin-top: 3rem;
  }
}
.hospitalization__sympathy-subttl2 {
  margin-top: 4.4rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  padding-left: 5rem;
  position: relative;
}
.hospitalization__sympathy-subttl2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.9rem;
  height: 3.5rem;
  background: url(../images/hospitalization/icon6.svg) no-repeat center/contain;
}
.hospitalization__sympathy-items {
  margin-top: 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-items {
    margin-top: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.hospitalization__sympathy-item {
  background: #F2F8FD;
  padding: 2.5rem 2.5rem 3.3rem 2rem;
  min-height: 34rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item {
    padding: 1.8rem 2.5rem 2rem 2rem;
    min-height: unset;
  }
}
.hospitalization__sympathy-item .hospitalization__item-ttl {
  width: 11rem;
}
.hospitalization__sympathy-item:last-child {
  -ms-grid-column-span: 2;
  grid-column: span 2;
}
.hospitalization__sympathy-item-ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  padding-left: 7.5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item-ttl {
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
}
.hospitalization__sympathy-item-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.hospitalization__sympathy-item:nth-child(1) .hospitalization__sympathy-item-ttl::before {
  width: 5.2rem;
  height: 3.9rem;
  background: url(../images/hospitalization/icon1.svg) no-repeat center/contain;
}
.hospitalization__sympathy-item:nth-child(1) .hospitalization__sympathy-item-ttl::before {
  width: 5.2rem;
  height: 3.9rem;
  background: url(../images/hospitalization/icon1.svg) no-repeat center/contain;
}
.hospitalization__sympathy-item:nth-child(1) .hospitalization__sympathy-item-txt {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item:nth-child(1) .hospitalization__sympathy-item-txt {
    margin-top: 0.6rem;
  }
}
.hospitalization__sympathy-item:nth-child(2) .hospitalization__sympathy-item-ttl {
  padding-left: 6.9rem;
}
.hospitalization__sympathy-item:nth-child(2) .hospitalization__sympathy-item-ttl::before {
  width: 3.6rem;
  height: 3.4rem;
  background: url(../images/hospitalization/icon2.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item:nth-child(2) {
    padding-top: 2.5rem;
  }
  .hospitalization__sympathy-item:nth-child(2) .hospitalization__sympathy-item-ttl::before {
    left: 1.5rem;
  }
  .hospitalization__sympathy-item:nth-child(2) .hospitalization__sympathy-item-txt {
    margin-top: 0.4rem;
  }
}
.hospitalization__sympathy-item:nth-child(3) {
  padding-left: 4rem;
}
.hospitalization__sympathy-item:nth-child(3) .hospitalization__sympathy-item-ttl {
  padding-left: 6.5rem;
}
.hospitalization__sympathy-item:nth-child(3) .hospitalization__sympathy-item-ttl::before {
  width: 4rem;
  height: 3.7rem;
  background: url(../images/hospitalization/icon3.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item:nth-child(3) {
    padding-top: 2.5rem;
    padding-left: 2rem;
  }
  .hospitalization__sympathy-item:nth-child(3) .hospitalization__sympathy-item-ttl {
    padding-left: 7rem;
  }
  .hospitalization__sympathy-item:nth-child(3) .hospitalization__sympathy-item-txt {
    margin-top: 0.4rem;
  }
}
.hospitalization__sympathy-item:nth-child(4) {
  padding-top: 4rem;
}
.hospitalization__sympathy-item:nth-child(4) .hospitalization__sympathy-item-ttl {
  padding-left: 6rem;
}
.hospitalization__sympathy-item:nth-child(4) .hospitalization__sympathy-item-ttl::before {
  width: 3.1rem;
  height: 3.1rem;
  background: url(../images/hospitalization/icon4.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item:nth-child(4) {
    padding-top: 2.5rem;
    padding-left: 2rem;
  }
  .hospitalization__sympathy-item:nth-child(4) .hospitalization__sympathy-item-ttl {
    padding-left: 7rem;
  }
  .hospitalization__sympathy-item:nth-child(4) .hospitalization__sympathy-item-ttl::before {
    left: 1.5rem;
  }
  .hospitalization__sympathy-item:nth-child(4) .hospitalization__sympathy-item-txt {
    margin-top: 0.4rem;
  }
}
.hospitalization__sympathy-item:nth-child(5) {
  padding-top: 4.4rem;
  padding-right: 3.2rem;
  padding-left: 1.5rem;
}
.hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-ttl {
  padding-left: 10.2rem;
}
.hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-ttl::before {
  left: -0.5rem;
  width: 7.4rem;
  height: 5.5rem;
  background: url(../images/hospitalization/icon5.svg) no-repeat center/contain;
}
.hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-txt {
  margin-top: 3.6rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item:nth-child(5) {
    padding-top: 3.5rem;
    padding-left: 2rem;
  }
  .hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-ttl {
    padding-left: 7rem;
  }
  .hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-ttl::before {
    width: 5.1rem;
    height: 4.1rem;
    left: 0;
    top: 30%;
  }
  .hospitalization__sympathy-item:nth-child(5) .hospitalization__sympathy-item-txt {
    margin-top: 0.4rem;
  }
}
.hospitalization__sympathy-item-txt {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item-txt {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: -0.01em;
  }
}
.hospitalization__sympathy-btn {
  margin-top: 3.5rem;
  max-width: 26.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-btn {
    margin-top: 2.5rem;
    max-width: 100%;
  }
}
.hospitalization__sympathy-txt {
  margin-top: 2rem;
  line-height: 1.75;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-txt {
    margin-top: 1.4rem;
  }
}
.hospitalization__sympathy-item-wrap {
  margin-top: 5.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.7rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__sympathy-item-wrap {
    margin-top: 1.8rem;
    gap: 2.2rem;
  }
  .hospitalization__sympathy-item-wrap .hospitalization__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0;
  }
  .hospitalization__sympathy-item-wrap .hospitalization__item-ttl {
    width: 100%;
    font-size: 1.5rem;
  }
  .hospitalization__sympathy-item-wrap .hospitalization__item-txt {
    width: 100%;
    display: block;
    font-size: 1.4rem;
    line-height: 2;
    text-align: left;
  }
}
.hospitalization__support {
  padding-top: 8.5rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__support {
    padding-top: 7.5rem;
    padding-bottom: 6rem;
  }
}
.hospitalization__support-txt {
  margin-top: 2.5rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .hospitalization__support-txt {
    margin-top: 1.4rem;
    line-height: 2;
  }
}
.hospitalization__support-btn {
  margin-top: 3rem;
  max-width: 26.5rem;
}
@media screen and (max-width: 1024px) {
  .hospitalization__support-btn {
    margin-top: 4.5rem;
    max-width: 100%;
  }
}

.medicalpersonnel {
  margin-top: 7rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel {
    margin-top: 3.8rem;
  }
}
.medicalpersonnel .news__container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 680fr 4rem 240fr;
  grid-template-columns: 680fr 240fr;
  gap: 4rem;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__container {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    margin-top: -2rem;
    gap: 0.7rem;
  }
}
.medicalpersonnel .news__body-ttl {
  position: relative;
  padding-left: 1.9rem;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__body-ttl {
    line-height: 1.7777777778;
  }
}
.medicalpersonnel .news__body-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.5rem;
  height: 100%;
  border-radius: 5px;
  background: #0F7ECF;
}
.medicalpersonnel .news__body {
  margin-top: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__body {
    margin-top: 0;
  }
}
.medicalpersonnel .news__item {
  position: relative;
  padding: 2.8rem 7rem 2.4rem 0;
  border-bottom: 1px dashed #D3D3D3;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__item {
    padding: 2rem 2rem 1.2rem 0;
  }
}
.medicalpersonnel .news__item::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 4rem;
  width: 0.9rem;
  height: 1.6rem;
  background: url(../images/common/arrow-blue.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__item::after {
    top: 70%;
    right: 0;
    width: 0.8rem;
    height: 1.4rem;
  }
}
.medicalpersonnel .news__item-img img {
  border-radius: 20px;
  width: 100%;
  height: auto;
  aspect-ratio: 176/113;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__item-img img {
    border-radius: 10px;
  }
}
.medicalpersonnel .news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__meta {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem;
  }
}
.medicalpersonnel .news__date {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  white-space: nowrap;
  color: #0F7ECF;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__date {
    font-size: 1.4rem;
  }
}
.medicalpersonnel .news__tag {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #C91C23;
}
.medicalpersonnel .news__label {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding: 0.2rem 1.2rem;
  text-align: center;
  color: #fff;
  display: inline-block;
  background: #004F89;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__label {
    padding: 0.2rem 1rem;
    white-space: nowrap;
  }
}
.medicalpersonnel .news__ttl {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__ttl {
    font-size: 1.4rem;
  }
}
.medicalpersonnel .news__none {
  white-space: nowrap;
}
.medicalpersonnel .news__btn {
  margin-top: 3.6rem;
  text-align: right;
}
.medicalpersonnel .news__btn a {
  max-width: 31.8rem;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel .news__btn a {
    max-width: 100%;
  }
}
.medicalpersonnel .news__category-wrap {
  padding: 2.4rem 1.6rem 12.3rem;
  padding: 2.4rem 0.8rem 12.3rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: sticky;
  top: 9rem;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__category-wrap {
    background: none;
    padding: 0 0 3rem;
  }
}
.medicalpersonnel .news__category-wrap::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 24rem;
  height: 10.3rem;
  background: url(../images/office/sidebar.png) no-repeat center/contain;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__category-wrap::before {
    display: none;
  }
}
.medicalpersonnel .news__category-wrap-ttl {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
  padding-left: 2.1rem;
  position: relative;
}
.medicalpersonnel .news__category-wrap-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 0.5rem;
  height: 100%;
  background-color: #0F7ECF;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__cat-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.2rem 0.9rem;
    display: none;
  }
}
.medicalpersonnel .news__cat-ttl {
  border: 1px solid #0F7ECF;
  border-radius: 23px;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  color: #0F7ECF;
  padding: 0.6rem 1.2rem;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__cat-ttl {
    padding: 0.6rem 1.4rem;
    font-size: 1.3rem;
  }
}
.medicalpersonnel .news__cat-ttl a {
  color: #0F7ECF;
}
.medicalpersonnel .news__cat-ttl.active {
  background: #0F7ECF;
}
.medicalpersonnel .news__cat-ttl.active a {
  color: #fff;
}
.medicalpersonnel .news__cat-ttl:nth-child(n+2) {
  margin-top: 2rem;
}
@media screen and (max-width: 1000px) {
  .medicalpersonnel .news__cat-ttl:nth-child(n+2) {
    margin-top: 0;
  }
}
.medicalpersonnel__txt {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__txt {
    margin-top: 1.5rem;
    font-size: 1.4rem;
    line-height: 2;
  }
}
.medicalpersonnel__txt2 {
  margin-top: 0.7rem;
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__txt2 {
    margin-top: 0.5rem;
    font-size: 1.4rem;
  }
}
.medicalpersonnel__introduce {
  padding-top: 8.5rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce {
    padding-top: 6.5rem;
  }
}
.medicalpersonnel__introduce-items {
  margin-top: 4rem;
}
.medicalpersonnel__introduce .c-flow__items {
  margin-top: 2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4.4rem 1fr 4.4rem 1fr 4.4rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 4.4rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce .c-flow__items {
    margin-top: 2.4rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 3.5rem;
  }
}
.medicalpersonnel__introduce .c-flow__item {
  padding: 2rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce .c-flow__item {
    padding-bottom: 2.5rem;
  }
}
.medicalpersonnel__introduce .c-flow__item::before {
  content: "";
  position: absolute;
  bottom: unset;
  left: unset;
  top: 60%;
  right: -4rem;
  -webkit-transform: translateY(-50%) rotate(-90deg);
          transform: translateY(-50%) rotate(-90deg);
  width: 4rem;
  height: 4rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce .c-flow__item::before {
    bottom: -3rem;
    top: unset;
    right: unset;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(0);
            transform: translateX(-50%) rotate(0);
    width: 3rem;
    height: 3rem;
  }
}
.medicalpersonnel__introduce-img {
  margin-top: 6.4rem;
  margin-inline: auto;
  max-width: 76.2rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-img {
    max-width: 45rem;
    margin-top: 4.5rem;
  }
}
.medicalpersonnel__introduce-img img {
  max-width: 100%;
  height: auto;
  aspect-ratio: 762/357;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-img img {
    aspect-ratio: 335/256;
  }
}
.medicalpersonnel__introduce-wrap {
  margin-top: 5.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-wrap {
    margin-top: 4rem;
    gap: 1.2rem;
  }
}
.medicalpersonnel__introduce-wrap-item {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  background: #0F7ECF;
  color: #fff;
  padding: 0.4rem 2rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-wrap-item {
    font-size: 1.6rem;
    line-height: 1.75;
    padding: 0.4rem 2.4rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.medicalpersonnel__introduce-wrap-txt {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-wrap-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.medicalpersonnel__introduce-btn {
  margin-top: 4.3rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-btn {
    margin-top: 3.2rem;
  }
}
.medicalpersonnel__introduce-btn .c-btn-pdf {
  padding: 2.1rem 2rem 2.1rem 5.8rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-btn .c-btn-pdf {
    padding: 1.2rem 5rem 1.2rem;
  }
}
.medicalpersonnel__introduce-contact {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
}
@media (max-width: 1152px) {
  .medicalpersonnel__introduce-contact {
    gap: 2rem;
  }
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-contact {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.medicalpersonnel__introduce-contact .c-tel-wrap {
  gap: 4.5rem;
}
@media (max-width: 1152px) {
  .medicalpersonnel__introduce-contact .c-tel-wrap {
    gap: 3rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-contact .c-tel-wrap {
    background: none;
    border: 1px solid #D3D3D3;
    border-radius: 20px;
    padding: 2.2rem 3rem 1.5rem;
    text-align: center;
  }
}
.medicalpersonnel__introduce-contact .c-tel-wrap.fax {
  gap: 0.5rem;
  padding-right: 1.8rem;
}
@media (max-width: 1152px) {
  .medicalpersonnel__introduce-contact .c-tel-wrap.fax {
    padding-right: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-contact .c-tel-wrap.fax {
    background: #F2F8FD;
    border: none;
  }
}
.medicalpersonnel__introduce-contact .c-tel-wrap__time {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.medicalpersonnel__introduce-contact .c-tel-wrap__fax {
  color: #0F7ECF;
  font-size: 3.9rem;
  line-height: 1.0256410256;
  font-weight: 500;
  white-space: nowrap;
}
.medicalpersonnel__introduce-contact .c-tel-wrap__fax span {
  font-size: 3rem;
  line-height: 1.3333333333;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__introduce-contact .c-tel-wrap__right {
    margin-top: 1rem;
  }
}
.medicalpersonnel__introduce-contact .c-tel-wrap__fax-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 700;
}
.medicalpersonnel__alignment {
  padding-top: 11rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment {
    padding-top: 7rem;
    padding-bottom: 8.3rem;
  }
}
.medicalpersonnel__alignment .c-section-title3 {
  font-size: 2.5rem;
  line-height: 1.12;
  padding-left: 3rem;
  font-weight: 500;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment .c-section-title3 {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-left: 2rem;
  }
}
.medicalpersonnel__alignment .c-section-title3::before {
  width: 1rem;
  height: 1rem;
}
.medicalpersonnel__alignment .medicalpersonnel__txt {
  margin-top: 1rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment .medicalpersonnel__txt {
    margin-top: 0.6rem;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
  }
}
.medicalpersonnel__alignment-contents {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-contents {
    margin-top: 2rem;
  }
}
.medicalpersonnel__alignment-contents2 {
  margin-top: 6.6rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-contents2 {
    margin-top: 4rem;
  }
}
.medicalpersonnel__alignment-items {
  margin-top: 3.4rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-items {
    margin-top: 2.2rem;
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .medicalpersonnel__alignment-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.medicalpersonnel__alignment-item {
  padding: 2rem 2rem 3.2rem;
  background: #0F7ECF;
  color: #fff;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  -ms-grid-row-span: 2;
  grid-row: span 2;
  gap: 0;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item {
    padding: 2.8rem 2rem 1.9rem;
  }
}
.medicalpersonnel__alignment-item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-head {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.medicalpersonnel__alignment-item-img {
  text-align: center;
}
.medicalpersonnel__alignment-item-img img {
  max-width: 3.2rem;
  margin-inline: auto;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-img img {
    max-width: 2.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-img {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
  }
}
.medicalpersonnel__alignment-item-ttl {
  margin-top: -0.5rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  position: relative;
  padding-top: 5.6rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-ttl {
    margin-top: 0;
    padding-top: 0;
    font-size: 1.6rem;
  }
}
.medicalpersonnel__alignment-item-ttl::before {
  content: "";
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 50%;
  width: 3.2rem;
  height: 5.6rem;
  background: url(../images/common/medicalpersonnel-icon1.svg) no-repeat center/contain;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-ttl::before {
    top: 50%;
    left: -5rem;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 2.5rem;
    height: 4.5rem;
  }
}
.medicalpersonnel__alignment-item:nth-child(2) .medicalpersonnel__alignment-item-ttl::before {
  background: url(../images/common/medicalpersonnel-icon2.svg) no-repeat center/contain;
}
.medicalpersonnel__alignment-item:nth-child(3) .medicalpersonnel__alignment-item-ttl::before {
  background: url(../images/common/medicalpersonnel-icon3.svg) no-repeat center/contain;
}
.medicalpersonnel__alignment-item-txt {
  margin-top: 0.5rem;
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-item-txt {
    margin-top: 1.4rem;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
  }
}
.medicalpersonnel__alignment-wrap {
  margin-top: 1.6rem;
}
.medicalpersonnel__alignment-wrap .c-tel-wrap {
  gap: 5rem;
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-wrap .c-tel-wrap {
    gap: 4.5rem;
    padding: 2.2rem 2rem 1.5rem;
    text-align: center;
    background: none;
    border: 1px solid #D3D3D3;
    border-radius: 20px;
  }
}
@media screen and (max-width: 1024px) {
  .medicalpersonnel__alignment-wrap .c-tel-wrap__right {
    margin-top: 1rem;
  }
}

/*----------------------------
改行クラス
使い方：
PCのみの改行は、point-br--pc
TAB未満の改行は、point-br--tab
SP未満の改行は、point-br--sp
------------------------------*/
.point-br--sp {
  display: none;
}
@media screen and (max-width: 1024px) {
  .point-br--sp {
    display: block;
  }
}
.point-br--tab {
  display: none;
}
@media screen and (max-width: 1279px) {
  .point-br--tab {
    display: block;
  }
}
.point-br--pc {
  display: block;
}
@media screen and (max-width: 1024px) {
  .point-br--pc {
    display: none;
  }
}

/*----------------------------
テキスト位置調整クラス
------------------------------*/
.u-txt--center {
  text-align: center;
}

.u-txt--left {
  text-align: left;
}

.u-txt--right {
  text-align: right;
}

/*----------------------------
色変更クラス
------------------------------*/
.u-color--white--white {
  color: #fff;
}

/*----------------------------
背景色変更クラス
------------------------------*/
.u-bg--gray {
  background: #F8F7F1;
}

/*----------------------------
PC,TAB、SPの表示切り替え
使い方：
SPのみ出力したい等があれば、
クラス名をつけることで可能に。
------------------------------*/
.pc {
  display: block !important;
}
@media (max-width: 1152px) {
  .pc {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important;
  }
}

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

.pc-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}
@media screen and (max-width: 1024px) {
  .pc-flex {
    display: none !important;
  }
}

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

.tab-inline {
  display: none !important;
}
@media screen and (max-width: 1279px) {
  .tab-inline {
    display: inline !important;
  }
}

.tab-flex {
  display: none !important;
}
@media screen and (max-width: 1279px) {
  .tab-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

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

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

.sp-flex {
  display: none !important;
}
@media screen and (max-width: 1024px) {
  .sp-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

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

/*----------------------------
//インラインブロック
使い方：
折り返し自動制御で使える。
例）折り返しのタイミングで２段に
したい場合など。
------------------------------*/
.u-display--ib {
  display: inline-block;
  font-weight: inherit;
}

/*----------------------------
etc
------------------------------*/