/*
Theme Name: kuremotogeka-03
Author: ambition
Description: kuremotogeka site thema
Version: 1.0
*/
@charset "UTF-8";
body {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  /* padding-top: 80px; */
  font-size: 17px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #444444;
   padding-top: 120px;
}
body.home {
  padding-top: 0; /* トップページ余白 */
}
body.noscroll {
  overflow: hidden;
}
img {
  max-width: 100%;
  -webkit-user-drag: none; /* Chrome, Safari, Operaドラッグ禁止 */
  -khtml-user-drag: none; /* Konquerorドラッグ禁止 */
  -moz-user-drag: none; /* Firefoxドラッグ禁止 */
  max-width: 100%;
}
.wrapper {
  width: 960px;
  margin: 56px auto 0 auto;
}
.wrapper2 {
  width: 960px;
  margin: 0 auto;
}
h2 {
  color: #6D8EAF;
  text-align: center;
  font-size: 1.2em;
}
.pc-none {
  display: none;
}
.sp-only {
  display: none;
}
/* トップヘッダー */
header {
  position: relative;
}
.top-header {
  display: flex;
  align-items: center;
  justify-content: space-around;
  position: absolute;
  z-index: 100;
  width: 100%;
}
.header-logo {
  width: 10vw;
  margin-right: 5vw;
}
.sp-sub2-header {
  background-color: #fff;
  border-bottom: 1px solid #0677A8;
  padding: 16px;
}
.sp-sub2header-logo {
  width: 30vw;
}
.pc-nav ul {
  display: flex;
  list-style: none;
  color: #ffffff;
}
.pc-nav ul li {
  margin-right: 1vw;
  text-shadow: 0 4px 8px rgba(0, 0, 0, 0.473);
  font-weight: bold;
}
.pc-nav ul li a {
  text-decoration: none;
}
.pc-nav ul li a:hover {
  color: #0098DB;
  text-shadow: 0 4px 8px rgba(255, 255, 255, 0.473);
}
.has-submenu .submenu li a {
  color: #ffffff;
}
.has-submenu button {
 display: none;
}
.cont-tel {
  width: 200px;
  margin-left: 2vw;
}
.header-tel {
  margin-top: 16px;
}
.tel-logo img {
  width: 24px;
  margin-right: 8px;
}
.tel-logo a {
  font-size: 22px;
  display: flex;
  text-decoration: none;
}
.tel-logo a:hover {
  opacity: 0.5;
}
/* 追従メニュー */

/* サブメニュー初期状態は非表示 */
.subhead-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  margin: 8px 24px;
}
.sub-h-logo {
  width: 250px;
}
.sub-h-logo a:hover {
  opacity: 0.5;
}
.subp-head-bg-blue {
  background-color: #75A5D5;
}
.subp-pc-nav ul {
  display: flex;
  justify-content: space-evenly;
  padding: 12px;
}
.subp-pc-nav ul li {
  color: #fff;
  font-size: 1.1rem;
}
.subp-pc-nav ul li a:hover {
  opacity: 0.5;
}
nav .sub-menu {
  display: none;
  position: absolute;
  background: #71a2d3d2;
  padding: 10px 0;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  z-index: 200;
  border-radius: 10px;
}
/* ホバーで表示 */
nav .has-sub-menu:hover .sub-menu {
  display: block;
}
/* サブページメニューのスタイル */
nav .sub-menu li {
  padding: 5px 20px;
  white-space: nowrap;
}
nav .sub-menu li a {
  color: #333;
  text-decoration: none;
  color: #fff;
}
nav .sub-menu li a:hover {
  opacity: 0.5;
}
/* ▼ を常に表示 */
.has-sub-menu > a::after {
  content: "▼";
  font-size: 0.7em;
  margin-left: 5px;
  display: inline-block;
  transition: transform 0.3s ease;
}
 .sub-h-btn {
  margin-right: 16px;
 }
 .sub-h-btn a {
  background-color: #F4EC9D;
  padding: 12px 32px;
  border-radius: 30px;
 }
 .sub-h-btn a:hover {
  background-color: #fcf6c3;
  color: #ad9d08;
 }
.sub-h-contact .sub-h-phone a {
  font-size: 1.8rem;
}
.sub-h-contact .sub-h-phone a:hover {
  opacity: 0.5;
}
.sub-h-contact .sub-h-phone a img {
  width: 30px;
  margin-right: 8px;
}
.sub-h-contact {
  display: flex;
  align-items: center;
}
.tel-logo img {
  width: 24px;
  margin-right: 8px;
}
.tel-logo a {
  font-size: 22px;
  display: flex;
  text-decoration: none;
}
.tel-logo a:hover {
  opacity: 0.5;
}
.contact-top  {
  margin-top: 32px;
}
.contact-top a {
  text-decoration: none;
  background-color: #F4EC9D;
  padding: 12px 32px;
  border-radius: 30px;
  width: 250px;
}
.contact-top a:hover {
  background-color: #fcf6c3;
  color: #ad9d08;
}
nav .submenu {
  display: none;
  position: absolute;
  background: #e6e9ec86;
  padding: 10px 0;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  z-index: 200;
  border-radius: 10px;
}
.subhead {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000; /* 他要素より前に表示 */
  background: #fff; /* 背景色を指定して透け防止 */
  box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* スクロール時の浮き上がり感 */
}
/* ホバーで表示 */
nav .has-submenu:hover .submenu {
  display: block;
}
/* サブメニューのスタイル */
nav .submenu li {
  padding: 5px 20px;
  white-space: nowrap;
}
nav .submenu li a {
  color: #333;
  text-decoration: none;
}
nav .submenu li a:hover {
  color: #0eb1f7;
}
/* ▼ を常に表示 */
.has-submenu > a::after {
  content: "▼";
  font-size: 0.7em;
  margin-left: 5px;
  display: inline-block;
  transition: transform 0.3s ease;
}
.key-visual {
  width: 95%;
  margin: 0 auto;
  /* 高さは適宜調整してください */
  height: 90vh;
  border-radius: 20px;
  min-height: 360px;
  /* position: relative; */
  overflow: hidden;
  position: relative;
}
/* img-frame はスライド領域（相対） */
.key-copy {
  /* position: relative; */
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.key-copy.img-frame > div {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  animation: crossfade 30s infinite;
}
/* スライド枚数に合わせて等間隔でずらす */
.key-copy.img-frame > div:nth-child(1) { animation-delay: 0s; }
.key-copy.img-frame > div:nth-child(2) { animation-delay: 10s; }
.key-copy.img-frame > div:nth-child(3) { animation-delay: 20s; }
/* アニメーション定義 */
@keyframes crossfade {
  0%   { opacity: 0; }
  10%  { opacity: 1; }  /* フェードイン */
  30%  { opacity: 1; }  /* 表示キープ */
  40%  { opacity: 0; }  /* フェードアウト */
  100% { opacity: 0; }
}
/* --- 各スライドの上に乗るオーバーレイ（白の半透明） --- */
.key-copy.img-frame > div::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(196, 196, 196, 0.459); /* ここで濃さ調整 */
  z-index: 2;
  pointer-events: none;
}
/* --- 文字はオーバーレイの上に出す --- */
.key-copy.img-frame > div > .msg,
.key-copy.img-frame > div > .sub,
.key-copy.img-frame > div > .c3-btm {
  position: relative;
  z-index: 3;
  text-align: center;
  color: #ffffff;
   text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}
/* アクティブなスライドだけ表示 */
.key-copy.img-frame > div.active {
  opacity: 1;
  z-index: 4; /* 必要なら調整 */
}
/* 背景画像の指定 */
.key-copy .img-01 { background-image: url('images/top/top1.jpg'); }
.key-copy .img-02 { background-image: url('images/top/top2.jpg'); }
.key-copy .img-03 { background-image: url('images/top/top3.jpg'); }
.img-frame {
  position: relative;
}
.copy1 {
    position: relative;
}
.copy2 {
    position: relative;
}
.copy3 {
    position: relative;
}
.msg-01 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.msg-02 {
    position: absolute;
    top: 75%;
    right: -25%;
}
.msg-03 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.msg-03-1 {
    position: absolute;
    top: 80%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100;
    color: #ffffff;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}
.copy3 .msg-03 {
    line-height: 2;
}
.msg-f {
    font-size: 1.5em;
}
/* 各メッセージの大きさ */
.msg {
  line-height: 1.1;
  font-weight: 400;
  margin-bottom: 0.6rem;
}
.toppc-none {
  display: none;
}
/* トップへの矢印 */
 .page-top-btn {
    position: fixed;
    bottom: 20px;  /* 画面下から20px */
    right: 20px;   /* 画面右から20px */
    width: 50px;
    height: 50px;
    background-color: rgba(198, 198, 198, .8);  /* ボタンの背景色 */
    color: white;  /* アイコンの色 */
    font-size: 28px;
    text-align: center;
    line-height: 50px;  /* 矢印を中央に配置 */
    border-radius: 50%;  /* 丸い形にする */
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);  /* ボタンに影をつける */
    transition: background-color 0.3s ease;
    opacity: 0;  /* 初期状態では非表示 */
    visibility: hidden;  /* 初期状態では非表示 */
    z-index: 1000;  /* 他の要素より手前に表示 */
}
.page-top-btn.visible {
  opacity: 1;
  visibility: visible;
}
/* 上矢印のアイコン */
.page-top-btn::before {
  content: "↑";    /* 上矢印を表示 */
}
/* トップページのメニュー追従（遅れて表示させる） */
#fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  opacity: 0;
  transform: translateY(-100%);
  transition: all 0.4s ease;
  pointer-events: none;
}
#fixed-header.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
/* トップとサブのヘッダーメニューSP版 */
/* スマホ調整 */
@media (max-width: 900px) {
  .wrapper {
    width: 85vw;
}
.wrapper2 {
  width: 85vw;
}
.top-header {
  display: block;
  position: absolute;
  top: 3%;
  left: 2%;
}
 .sp-none {
  display: none;
 }
 .sp-only {
  display: block;
}
.header-logo {
  width: 30vw;
  margin-right: 5vw;
}
 body {
  padding: 0;
 }
.key-visual {
  height: 80vh;
}
/* SP背景画像の指定 */
.key-copy .img-01 { background-image: url('images/top/sp-key1.jpg'); }
.key-copy .img-02 { background-image: url('images/top/sp-key2.jpg'); }
.key-copy .img-03 { background-image: url('images/top/sp-key3.jpg'); }
/* SP各メッセージの大きさ */
 .msg-01 {
  font-size: 1.8rem;
  line-height: 1.5;
 }
 .msg-f {
  font-size: 2.3rem;
  margin-bottom: 40px;
 }
 .msg-02 {
    position: absolute;
    top: 50%;
    left: 0%;
    font-size: 2.3rem;
    line-height: 1.5;
}
.msg-03 {
    font-size: 2.3rem;
}
.msg-03-1 {
    width: 90%;
    text-align: center;
    font-size: 1.7rem;
}
.toppc-none {
  display: block;
}
 /* サブ下固定ナビ本体 */
.tophead-sp {
  background-color: #83C4E1;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  padding: 10px 0;
  height: 10vh;
}
  .tophead-sp-contact,
  .tophead-sp-phone {
    background-color: #fff;
    border-radius: 50%;
    width: 75px;
    height: 75px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
 .tophead-sp-contact {
  padding: 24px 16px;
}
  .tophead-sp-phone {
  padding: 8px 21px;
}
  /* MENUボタン */
  .tophead-sp-menu .menu-label {
    background-color: #fff;
    width: 180px;
    padding: 12px 16px;
    margin: 0 32px;
    text-align: center;
    font-weight: bold;
    border-radius: 30px;
    font-size: 1.5rem;
    color: #0098DB;
    border: none;
  }
  /* サブメニュー */
  .sp-submenu {
    display: none;
    background: #ffffff;
    margin: 5px 0 0;
    padding: 10px 0;
    width: 80vw;

    /* margin: 5px auto; */
    list-style: none;
  }  
/* 開いたとき */
.has-submenu.active .sp-submenu {
  display: block;
}
/* 見た目調整 */
.sp-submenu li a {
  color: #0098DB;
  text-decoration: none;
  display: block;
  padding: 8px 15px;
  font-size: 1.1rem;
}
/* 親メニューの見出し部分 */
.submenu-head {
  display: flex;
  align-items: left;
  justify-content: left;
  color: #0098DB;
  font-size: 16px;
  position: relative;
}
/* ボタン（▼）を右端に寄せたい場合 */
.toggle-submenu {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  margin-left: 8px;
  font-size: 16px;
}
  /* ナビ初期状態（非表示） */
  .sm {
    display: none;
    position: fixed;
    top: 0; 
    left: 0;
    bottom: -100vh; /* 初期状態：画面外（下） */
    width: 100%;
    height: 100vh;
    text-align: center;
    background: #83C4E1;
    color: #0098DB;
    padding: 72px 20px;
    z-index: 999;
    transition: all 0.3s ease;
    overflow-y: auto; /* ← スクロール可能にする */
    -webkit-overflow-scrolling: touch; /* ← iPhoneで滑らかスクロール */
    font-size: 1.2rem;
  }
.sm ul  {
    background-color: #ffffff;
    color: #fff;
  }
  .sm ul li {
    border-top: 1px solid #b2cde6;
    padding: 16px;
    text-align: left;
    color: #0098DB;
  }
  .sm ul .has-submenu {
   text-align: left;
  }
 .has-submenu div  {
   color: #0098DB;
   font-size: 1.2rem;
  }
  .sm.open {
  display: block;
  animation: slideUp 0.3s ease forwards;
}
@keyframes slideUp {
  from { transform: translateY(100%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
/* ✕ボタン */
.close-btn {
  position: absolute;
  top: 15px;
  right: 20px;
  background: none;
  border: none;
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
  @keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
  body {
    padding-bottom: 15vh;
  }
/* 閉じるボタン */
.menu-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #0098DB;
  color: #fff;
  border: none;
  font-size: 24px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
}
/* 矢印スマホ */
.page-top-btn {
  position: fixed;
  top: 10px;  /* 画面下から20px */
  right: 4px;   /* 画面右から20px */
}
}
@media (max-width: 767px) {
.top-header {
  display: block;
  position: absolute;
  top: 3%;
  left: 2%;
}
 .sp-none {
  display: none;
 }
 .sp-only {
  display: block;
}
.header-logo {
  width: 35vw;
  margin-right: 5vw;
}
.key-visual {
  height: 90vh;
}
/* SP背景画像の指定 */
.key-copy .img-01 { background-image: url('images/top/sp-key1.jpg'); }
.key-copy .img-02 { background-image: url('images/top/sp-key2.jpg'); }
.key-copy .img-03 { background-image: url('images/top/sp-key3.jpg'); }
/* SP各メッセージの大きさ */
 .msg-01 {
  font-size: 1.2rem;
  line-height: 1.5;
 }
 .msg-f {
  font-size: 1.7rem;
  margin-bottom: 24px;
 }
 .msg-02 {
    position: absolute;
    top: 50%;
    left: 0%;
    font-size: 1.6rem;
    line-height: 1.5;
}
.msg-03 {
    font-size: 1.5rem;
}
.msg-03-1 {
    width: 90%;
    text-align: center;
    font-size: 1rem;
}
.toppc-none {
  display: block;
}
 /* サブ下固定ナビ本体 */
.tophead-sp {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: center;
  z-index: 1000;
  padding: 10px 0;
  height: 11vh;
}
  .tophead-sp-contact,
  .tophead-sp-phone {
    background-color: #fff;
    border-radius: 50%;
    width: 56px;
    height: 56px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
 .tophead-sp-contact {
  padding: 10px;
}
  .tophead-sp-phone {
  padding: 8px 16px;
}
  /* MENUボタン */
  .tophead-sp-menu .menu-label {
    background-color: #fff;
    margin: 0;
    padding: 8px 16px;
    text-align: center;
    font-weight: bold;
    border-radius: 30px;
    font-size: 1.5rem;
    color: #0098DB;
    border: none;
  }
  /* サブメニュー */
  .sp-submenu {
    display: none;
    background: #ffffff;
    margin: 5px 0 0;
    padding: 10px 0;
    width: 80vw;

    /* margin: 5px auto; */
    list-style: none;
  }  
/* 開いたとき */
.has-submenu.active .sp-submenu {
  display: block;
}
/* 見た目調整 */
.sp-submenu li a {
  color: #0098DB;
  text-decoration: none;
  display: block;
  padding: 8px 15px;
  font-size: 1.1rem;
}
/* 親メニューの見出し部分 */
.submenu-head {
  display: flex;
  align-items: left;
  justify-content: left;
  color: #0098DB;
  font-size: 16px;
  position: relative;
}
/* ボタン（▼）を右端に寄せたい場合 */
.toggle-submenu {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  margin-left: 8px;
  font-size: 16px;
}
  /* ナビ初期状態（非表示） */
  .sm {
    display: none;
    position: fixed;
    top: 0; 
    left: 0;
    bottom: -100vh; /* 初期状態：画面外（下） */
    width: 100%;
    height: 100vh;
    text-align: center;
    background: #83C4E1;
    color: #0098DB;
    padding: 72px 20px;
    z-index: 999;
    transition: all 0.3s ease;
    overflow-y: auto; /* ← スクロール可能にする */
    -webkit-overflow-scrolling: touch; /* ← iPhoneで滑らかスクロール */
    font-size: 1.2rem;
  }
.sm ul  {
    background-color: #ffffff;
    color: #fff;
  }
  .sm ul li {
    border-top: 1px solid #b2cde6;
    padding: 16px;
    text-align: left;
    color: #0098DB;
  }
  .sm ul .has-submenu {
   text-align: left;
  }
 .has-submenu div  {
   color: #0098DB;
   font-size: 1.2rem;
  }
  .sm.open {
  display: block;
  animation: slideUp 0.3s ease forwards;
}
@keyframes slideUp {
  from { transform: translateY(100%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
/* ✕ボタン */
.close-btn {
  position: absolute;
  top: 15px;
  right: 20px;
  background: none;
  border: none;
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
  @keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
  body {
    padding-bottom: 11vh;
  }
/* 閉じるボタン */
.menu-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #0098DB;
  color: #fff;
  border: none;
  font-size: 24px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
}
/* 矢印スマホ */
.page-top-btn {
  position: fixed;
  top: 10px;  /* 画面下から20px */
  right: 4px;   /* 画面右から20px */
}
}
@media (prefers-reduced-motion: reduce) {
  .key-copy.img-frame > div { transition: none; }
}
/* スライド切り替え時に拡大 */
.key-copy.img-frame > div.active {
  transform: scale(1);
}
.key-copy.img-frame > div { transform: scale(1.02); } /* 非表示時微拡大→activeで元に戻る */
/* お知らせ */
.news-area-inner {
  display: flex;
  align-items: flex-end;
}
.item-news {
  display: flex;
}
.item-news dt {
  margin-right: 16px;
}
.news-area-left {
  width: 280px;
}
.news-area-left button a {
  text-decoration: none;
  background-color: #F4EC9D;
  padding: 8px 32px;
  border-radius: 30px;
  color: #444444;
}
.news-area-left button a:hover {
  opacity: 0.5;
}
.news-area-left .news-logo {
  width: 200px;
}
.news-list .item-news {
 margin-top: 24px;
}
.news-list .item-news a {
  padding: 0;
}
.news-list .item-news a:hover {
  opacity: 0.5;
}
.dotted {
  margin: 24px auto;
  width: 100%;
}
.dotted2 {
  margin: 64px auto;
  width: 100%;
}
.about-bg {
  background-color: #DDDEE1;
  position: relative;
  margin-top: 100px;
  padding-top: 100px;
}
.aboutus-logo {
  width: 30vw;
  position: absolute;
  top: -20vh;
}
.aboutmark {
  width: 150px;
  position: absolute;
  top: -16%;
  left: 50%;
  transform: translateX(-50%);
}
.top-about-contents {
  margin-top: 40px;
}
.container{
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr 1fr 1fr ;
  margin-top: 40px;
}
.item{
  background-color: #ffffff; 
  border-radius: 10px; 
  padding: 24px;
  margin-bottom: 64px;
}
.item a {
  text-decoration: none;
}
.item a:hover {
  opacity: 0.5;
}
.item p {
  text-align: center;
  margin-top: 16px;
}
.features-logo ,.message-logo {
  width: 24vw;
  margin: 0 auto;
}
.topfeatures {
  display: flex;
  margin-top: 32px;
}
.topfeatures-img img {
  width: 25vw;
  border-radius: 10px 0 0 10px;
}
.topfeatures-text {
  width: 50vw;
  padding: 16px 24px 24px 24px;
  background-color: #EEF1F2;
  border-radius: 0 10px 10px 0;
  line-height: 1.5;
}
.topfeatures-text h3 {
  background-color: #75A5D5;
  padding: 10px 16px;
  color: #ffffff;
  text-align: center;
  border-radius: 10px;
  font-size: 1.1em;
  font-weight: 400;
  margin-bottom: 24px;
}
.topfeatures-btn {
  text-align: right;
  width: 100%;
  color: #6D8EAF;
  margin-top: 16px;
}
.topfeatures-btn a {
  border-bottom: 1px solid #6D8EAF;
}
.topfeatures-btn a:hover {
  opacity: 0.5;
}
.topfeatures-btn a::after {
   content: '';/*何も入れない*/
  display: inline-block;
  width: 18px;/*画像の幅*/
  height: 14px;/*画像の高さ*/
  background-image: url(images/top/detail-tri.svg);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.message {
  background-color: #F7F8DC;
  margin-top: 33vh;
  padding-bottom: 8vh;
  position: relative;
}
.message-yellow {
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -10;
}
.message-inner {
  margin-top: 40px;
}
.message-inner h3 {
  text-align: center;
  margin-bottom: 32px;
  font-weight: bold;
}
.message-flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
}
.message-flex p {
  width: 600px;
  margin-bottom: 24px;
  line-height: 2;
  font-size: 18px;
}
.message-img img {
  width: 280px;
  border-radius: 10px;
}
 .message-career {
  background-color: #ffffff;
  display: flex;
  padding: 24px 80px;
  justify-content: space-between;
  border-radius: 5px;
  box-shadow: 0px 3px 6px #00000029;
 }
 .message-career-inner h4 {
  color: #6D8EAF;
  border-bottom: 1px solid #6D8EAF;
  margin-bottom: 24px;
  padding-bottom: 8px;
 }
 .career-detail {
  display: flex;
 }
 .career-detail p {
  margin-bottom: 8px;
 }
 .career-detail .career-period {
  width: 8vw;
 }
 .disaster-s-intro {
  text-align: left;
  margin-bottom: 24px;
 }
 .disaster-support {
  display: flex;
  justify-content: space-between;
 }
 .ds-inner {
  margin-bottom: 64px;
 }
 .ds-inner img {
  width: 420px;
  border-radius: 10px;
 }
 .ds-inner p {
  width: 500px;
  line-height: 1.8;
 }
.disaster-s-flexd  {
   flex-direction: row-reverse; /*左右入れ替え*/
 }
 /* アーカイブページ */
 .blog-list__list-item {
  margin-bottom: 32px; 
}
.blog-item__title a {
  margin-left: 24px;
}
.blog-item__title a:hover {
  opacity: 0.5;
}
.blog-time {
  margin-bottom: 8px;
}
.pagenation {
  text-align: center;
}
/* // 横並びにする */
.nav-links .page-numbers {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 32px;
}
/* // ページタブの共通スタイル */
.nav-links a.page-numbers ,
.nav-links .current,
.nav-links a.prev,
.nav-links a.next,
.nav-links .dots {
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    background: #fff;
    color: #75A5D5;
    border-radius: 50%;
    margin-right: 25px;
    font-size: 1rem;
    font-weight: bold;
    border: 1px solid #75A5D5;
}
/* // マウスが乗った時の、ボタンの背景の色と文字の色 */
.nav-links a.page-numbers:hover {
    color: #FFF;
    background-color: #bbbbbb;
    border-color: #bbbbbb;
}
/* // 現在のページのタブ  */
.nav-links .current {
    background: #75A5D5;
    color: #FFFFFF;
    padding: 0;
}
/* 前への「＜」、次への「＞」 */
.nav-links a.prev,
.nav-links a.next {
    border: 1px solid #75A5D5;
    color: #75A5D5;
    position: relative;
}
/* // 縦線の共通CSS */
.nav-links .next::before,
.nav-links .prev::after {
    content: "";
    display: inline-block;
    width: 0.5px;
    height: 40px;
    background-color: rgb(224, 215, 215);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
/* // 「次へ」の前の縦線位置 */
.nav-links .next::before {
    left: -15px;
}
/* //「前へ」の後の縦線位置 */
.nav-links .prev::after {
    right: -15px;
}
.nav-links .dots {
    background: transparent;
    border: none;
}

 /* SPトップページ */
@media (max-width: 900px) {
  /* お知らせ */
.news-area-inner {
  display: block;
}
.news-area-left {
  width: 80vw;
  text-align: center;
}
.news-area-left .news-logo {
  width: 30vw;
  margin: 0 auto;
}
.news-area-warp {
  margin-top: 64px;
}
.about-bg {
  position: relative;
  margin-top: 64px;
  padding-top: 200px;
}
.aboutus-logo {
  width: 50vw;
  position: absolute;
  top: -0.5%;
}
.aboutmark {
  width: 15vw;
  position: absolute;
  top: -10%;
}
.top-about-contents {
  margin-top: 64px;
  padding-bottom: 24px;
}
.features-logo ,.message-logo {
  width: 40vw;
}
.topfeatures {
  margin-top: 32px;
}
 .topfeatures {
  display: flex;
}
.pc-none {
  display: block;
}
/* .sp-topfeatures-img img {
  border-radius: 10px;
  margin-top: 16px;
} */
.topfeatures-text {
  width: 50vw;
  margin: 0 auto;
  padding: 24px;
  border-radius: 10px;
}
.topfeatures-text h3 {
  font-size: 1em;
}
.topfeatures-btn {
  font-weight: bold;
}
.message {
  margin-top: 16vh;
  padding-bottom: 8vh;
}
.message-yellow {
  top: -32px;
}
.message-inner {
  margin-top: 40px;
}
.message-flex {
  display: block;
}
.message-flex p {
  width: 85vw;
  margin: 0 auto;
  margin-bottom: 24px;
  line-height: 2;
  font-size: 18px;
}
 .career-detail {
  display: block;
 }
 .ds-inner img {
  width: 40vw;
  border-radius: 10px;
 }
 .ds-inner p {
  width: 40vw;
 }
}
@media (max-width: 767px) {
  /* お知らせ */
.news-area-inner {
  display: block;
}
.news-area-left {
  width: 80vw;
}
.news-area-left .news-logo {
  width: 30vw;
}
.news-area-warp {
  margin-top: 64px;
}
.item-news {
  display: block;
}
.about-bg {
  position: relative;
  margin-top: 64px;
  padding-top: 100px;
}
.aboutus-logo {
  width: 50vw;
  position: absolute;
  top: 3%;
}
.aboutmark {
  width: 20vw;
  position: absolute;
  top: -6%;
}
.top-about-contents {
  margin-top: 8px;
  padding-bottom: 24px;
}
.features-logo ,.message-logo {
  width: 40vw;
}
.container {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr ;
  margin-top: 24px;
}
.item{
  padding: 8px;
  margin-bottom: 0px;
}
.pc-none {
  display: block;
}
.sp-topfeatures-img img {
  border-radius: 10px;
  margin-top: 16px;
}
.topfeatures-text {
  width: 80vw;
}
.topfeatures-text h3 {
  font-size: 1em;
}
.topfeatures-btn {
  font-weight: bold;
}
.message {
  margin-top: 16vh;
  padding-bottom: 8vh;
}
.message-yellow {
  top: -32px;
}
.message-inner {
  margin-top: 40px;
}
.message-flex p {
  width: 85vw;
  margin: 0 auto;
  margin-bottom: 24px;
  line-height: 2;
  font-size: 18px;
}
.message-img {
  width: 70vw;
  margin: 0 auto;
}
 .message-career {
  padding: 24px 40px;
  display: block;
 }
 .message-career-inner {
  padding-top: 16px;
 }
 .career-detail {
  display: block;
 }
 .career-detail p {
  margin-bottom: 24px;
 }
 .career-detail .career-period {
  width: 100%;
  margin-bottom: 4px;
 }
 .disaster-s-intro {
  text-align: left;
  margin-bottom: 24px;
 }
 .disaster-support {
  display: block;
  margin-bottom: 56px;
 }
 .ds-inner {
  margin-bottom: 16px;
 }
 .ds-inner img {
  width: 85vw;
  border-radius: 10px;
 }
 .ds-inner p {
  width: 85vw;
 }
 /* ページネーション */
 .nav-links .page-numbers {
    justify-content: space-evenly;
}
 .nav-links a.page-numbers ,
.nav-links .current,
.nav-links a.prev,
.nav-links a.next,
.nav-links .dots {
    width: 40px;
    height: 40px;
    line-height: 40px;
    margin-right: 4px;
    /* font-size: 12px; */
}
}
/* フッター */
 footer {
  background: url(images/common/footer-bg.jpg) no-repeat bottom center/cover ;
  padding: 24px 0;
  margin-top: 96px;
 }
 .footer-inner {
  padding: 40px 24px;
  background-color: #ffffff;
  display: flex;
  justify-content: space-around;
 }
 .footer-detail .footer-logo a img {
  width: 18vw;
 }
 .footer-detail .footer-logo a:hover {
  opacity: 0.5;
 }
 .footer-detail img {
  width: 40vw;
 }
 .footer-phone {
  font-size: 2rem;
 }
 .footer-phone a img {
  width: 1.8rem;
  margin-right: 8px;
  margin-top: 32px;
 }
 .footer-phone a:hover {
  opacity: 0.5;
 }
 .footer-detail address {
  margin-top: 24px;
 }
.cwrite {
  text-align: center;
  margin-top: 24px;
 }
 .footer-tri::before {
   content: '';/*何も入れない*/
  display: inline-block;
  width: 18px;/*画像の幅*/
  height: 16px;/*画像の高さ*/
  background-image: url(images/common/blue-triangle.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
 }
 /* SPフッター */
@media (max-width: 900px) {
 .footer-inner {
  display: block;
 }
 .footer-detail .footer-logo a img {
  width: 50vw;
 }
 .footer-detail img {
  width: 80vw;
  margin-top: 24px;
 }
}
/* サブページ共通1 */
.subheader-title {
  position: relative;
}
.bg-half-circle {
  position: absolute;
  top: -89px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0.5;
}
.sub-key {
 height: 300px;
}
/* 初診の方へ */
.np-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/newpatient/newpatient-head.jpg) no-repeat bottom center/cover;
}
/* 当院について */
.about-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/about/aboutus-head.jpg) no-repeat top center/cover;
}
/* 内視鏡検査 */
.endoscopy-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/endoscopy/endoscopy-head.jpg) no-repeat bottom center/cover;
}
/* 日帰り手術 */
.daysurgery-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/day-surgery/daysurgery-head.jpg) no-repeat bottom center/cover;
}
/* 診療時間・アクセス */
.access-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/access/access-head.jpg) no-repeat bottom center/cover;
}
/* お問い合わせ */
.contact-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/contact/conrtact-head.jpg) no-repeat bottom center/cover;
}
/* お知らせ一覧 */
.information-key {
 background: 
 linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
 url(images/information/news-head.jpg) no-repeat bottom center/cover;
}
.subheader-t-inner {
  background-color: #F7F8DC;
  padding-bottom: 24px;
  margin: 0;
  height: 150px;
}
.subheader-t-inner img {
  width: 400px;
  text-align: center;
}
.subheader-t-inner .contact-fontimg {
  width: 300px;
}
.subheader-t-inner {
  text-align: center; 
}
.subheader-t-inner h1 {
  font-size: 1.3rem;
  color: #0677A8;
  padding-top: 8px;
}
.subheader-t-inner img {
  display: inline-block; /* 中央寄せを効かせる */
}
.sub-h2 {
 text-align: left;
 font-weight: bold;
 margin-bottom: 24px;
}
 /* SPサブページ共通1 */
@media (max-width: 900px) {
.bg-half-circle {
  top: -66px;
}
.sub-key {
 height: 220px;
}
.subheader-t-inner {
  height: 120px;
}
.subheader-t-inner h1 {
  position: relative;
  z-index: 100;
}
.subheader-t-inner img {
  width: 30vw;
}
}
@media (max-width: 767px) {
.bg-half-circle {
  top: -30px;
}
.sub-key {
 height: 200px;
}
.subheader-t-inner .contact-fontimg {
  width: 180px;
}
/* 初診の方へ */
.np-key {
 background: url(images/newpatient/sp-newpatient-head.jpg) no-repeat bottom center/cover;
}
/* 当院について */
.about-key {
 background: url(images/about/sp-about-head.jpg) no-repeat top center/cover;
}
/* 内視鏡検査 */
.endoscopy-key {
 background: url(images/endoscopy/sp-endoscopy-head.jpg) no-repeat bottom center/cover;
}
/* 日帰り手術 */
.daysurgery-key {
 background: url(images/day-surgery/sp-daysurgery-head.jpg) no-repeat bottom center/cover;
}
/* 診療時間・アクセス */
.access-key {
 background: url(images/access/sp-access-head.jpg) no-repeat bottom center/cover;
}
/* お問い合わせ */
.contact-key {
 background: url(images/contact/sp-contact-head.jpg) no-repeat bottom center/cover;
}
/* お知らせ一覧 */
.information-key {
 background:url(images/information/sp-info-head.jpg) no-repeat bottom center/cover;
}
.subheader-t-inner {
  height: 100px;
}
.subheader-t-inner img {
  width: 55vw;
}
}
/* 問合せ */
.contact-text {
  margin-bottom: 32px;
}
.contact-tel {
  width: 280px;
  margin: 0 auto;
  color: #0677A8;
  border: 1px solid #0677A8;
  border-radius: 10px;
  padding: 32px 24px;
}
.contact-tel p {
  border-bottom: 1px solid #0677A8;
  text-align: center;
  padding-bottom: 16px;
}
.contact-tel-logo {
  margin-top: 16px;
  font-size: 1.8rem;
  text-align: center;
}
.contact-tel-logo a:hover {
  opacity: 0.5;
}
.contact-tel-logo img {
  width: 24px;
  margin-right: 8px;
}
/* 応募フォーム */
/* フォーム全体のデザイン */
.wpcf7 {
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  margin: 0 auto;
}
/* ラベルのデザイン */
.wpcf7 label {
  font-size: 16px;
  color: #333;
  margin-bottom: 8px;
  display: block;
  font-weight: bold;
}
.wpcf7 label .required {
  color: #fff;
  background-color: #6D8EAF;
  border-radius: 2px;
  text-align: center;
  padding: 4px;
  margin-right: 8px;
  font-size: 0.8rem;
}
/* テキスト入力フィールドのデザイン */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select {
  width: 100%;
  padding: 10px;
  margin-bottom: 40px;
  border: 1px solid #cfc7c7;
  border-radius: 5px;
  font-size: 14px;
}
/* テキスト入力フィールドのデザイン */
.wpcf7 input[type="number"] {
  width: 100%;
  padding: 10px;
  margin-bottom: 0px;
  border: 1px solid #cfc7c7;
  border-radius: 5px;
  font-size: 14px;
}
/* テキストエリア（必要に応じて） */
.wpcf7 textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 40px;
  border: 1px solid #cfc7c7;
  border-radius: 5px;
  font-size: 14px;
  height: 150px;
  resize: none;
}
/* フォーム送信ボタンのデザイン */
.wpcf7 input[type="submit"] {
  background-color: #F4EC9D;
  padding: 15px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
  width: 100%;
  transition: background-color 0.3s ease;
  text-align: center;
}
.wpcf7 input[type="submit"]:hover {
  background-color: #f7f1c1;
}
/* エラーメッセージのデザイン */
.wpcf7 .wpcf7-not-valid-tip {
  color: #d9534f;
  font-size: 14px;
  margin-top: -15px;
  margin-bottom: 20px;
}
.wpcf7-list-item.first {
  margin: 0;
}
.wpcf7-list-item-label {
  cursor: pointer;
  display: flex;
  margin-bottom: 40px;
}
/* デフォルトのボタン */
.wpcf7 input[type="radio"] {
  opacity: 0; /* デフォルトのボタンを非表示 */
  position: absolute;
}
/* チェック前のボタン */
.wpcf7-list-item-label::before {
  background: #fff;
  border: 0.5px solid #333;
  border-radius: 100%; /* ラジオボタンっぽく丸くする */
  content: "";
  height: 1.2em;
  margin-bottom: auto;
  margin-right: .5em;
  margin-top: auto;

  width: 1.2em;
}
/* チェック後のボタン */
.wpcf7 input[type="radio"]:checked + .wpcf7-list-item-label::before {
  background-color: #0677A8; /* チェック後の中心の色 */
  box-shadow: inset 0 0 0 3px #fff; /* 中心の色のスタイル */
}
.wpcf7-acceptance a {
  color: #0677A8;
  border-bottom: 1px solid #0677A8;
}
/* 個人情報の同意チェックボックス */
.wpcf7-acceptance .wpcf7-list-item {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
/* デフォルトのチェックボックスを非表示 */
.wpcf7-acceptance input[type="checkbox"] {
  opacity: 0;
  position: absolute;
}
/* チェックボックスのカスタムデザイン */
.wpcf7-acceptance .wpcf7-list-item-label {
  position: relative;
  padding-left: 30px;
  cursor: pointer;
  font-size: 14px;
}
/* チェックボックスの枠 */
.wpcf7-acceptance .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border: 1px solid #333;
  background: #fff;
  border-radius: 3px;
  /* transition: background 0.3s, border-color 0.3s ; */
}
/* チェックが入ったときのスタイル */
.wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  background: #0677A8;
  border-color: #333;
  content: "✔";
  color: white;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  font-weight: bold;
}
.cf7-agree  {
  text-align: center;
  margin-bottom: 32px;
}
.cf7-agree a  {
  color: #1467a7;
  border-bottom: 1px solid #1467a7;
}
.cf7-agree a:hover  {
  opacity: 0.5;
}
.wpcf7 .privacy-policy {
  font-size: 16px;
  color: #333;
  margin-top: 0px;
  margin-bottom: 0px;
}
/* プレースホルダー */
/* Google Chrome / Safari / Mozilla Firefox / Opera */
.cf7__list dd input[type="text"]::placeholder,
.cf7__list dd input[type="tel"]::placeholder,
.cf7__list dd input[type="email"]::placeholder,
.cf7__list dd textarea::placeholder {
  color: #a5a5a5;
}

/* Microsoft Edge */
.cf7__list dd input[type="text"]::-ms-input-placeholder,
.cf7__list dd input[type="tel"]::-ms-input-placeholder,
.cf7__list dd input[type="email"]::-ms-input-placeholder,
.cf7__list dd textarea::-ms-input-placeholder {
  color: #a5a5a5;
}

/* Internet Explorer */
.cf7__list dd input[type="text"]:-ms-input-placeholder,
.cf7__list dd input[type="tel"]:-ms-input-placeholder,
.cf7__list dd input[type="email"]:-ms-input-placeholder,
.cf7__list dd textarea:-ms-input-placeholder {
  color: #a5a5a5;
}
/* リキャプチャ */
.recap-policy {
  padding-top: 24px;
}
.recap-policy a {
  border-bottom: 1px solid #1a1311;
}
.grecaptcha-badge {
  visibility: hidden;
}
/* プライバシー・ポリシー */
.privacy-h2 {
  margin-bottom: 24px;
}
.privacy-inner {
  line-height: 1.8em;
}
.privacy-inner .wrapper {
  margin-bottom: 64px;
}
.privacy-inner p {
  margin-bottom: 16px;
}
.privacy-inner ul li {
  margin-bottom: 8px;
}
 /* 初診の方へ */
 .for-newpatient {
  display: flex;
  justify-content: space-between;
  margin-bottom: 64px;
 }
 .for-np-inner {
  width: 450px;
 }
 .for-np-inner p {
  margin-top: 24px;
 }
 .for-np-img img {
  width: 350px;
  border-radius: 20px;
 }
 .for-np-time {
  margin-bottom: 40px;
 }
 .for-np-time h3 {
  background-color: #75A5D5;
  color: #fff;
  font-weight: bold;
  padding: 16px;
 }
 .np-time {
  display: grid;
  grid-template-columns: 1fr 1fr ;
 }
 .np-time-inner {
  border: 1px solid #75A5D5;
  padding: 24px;
 }
 .np-time-inner h4 {
  color: #0677A8;
  padding-bottom: 8px;
  margin-bottom: 16px;
  border-bottom: 1px solid #0677A8;
 }
.for-np-time-p {
  border: 1px solid #0677A8;
  padding: 24px;
}
.np-flow {
  margin-top: 32px;
}
.np-flow-inner {
  background-color: #F7F8DC;
  margin-bottom: 24px;
  padding: 24px;
  display: flex;
  align-items: center;
}
.np-flow-inner .nb-01 {
  background: url(images/common/01.png) no-repeat  center/cover;
}
.np-flow-inner .nb-02 {
  background: url(images/common/02.png) no-repeat  center/cover;
}
.np-flow-inner .nb-03 {
  background: url(images/common/03.png) no-repeat  center/cover;
}
.np-flow-inner h3 {
  height: 80px;
  width: 100px;
  margin-right: 24px;
  text-align: center;
  font-size: 1.5rem;
  padding-top: 24px;
  color: #0677A8;
}
.np-flow-inner p {
  border-left: 1px solid #0677A8;
  padding: 24px;
}
 /* SP初診の方へ */
@media (max-width: 900px) {
 .for-newpatient {
   display: block;
   margin-bottom: 24px;
 }
 .for-np-inner {
  width: 85vw;
 }
 .for-np-img img {
  width: 85vw;
  margin-top: 16px;
 }
 .for-np-time {
  margin-bottom: 16px;
 }
 .np-time {
  display: grid;
  grid-template-columns: 1fr ;
 }
.np-flow-inner {
  display: block;
}
.np-flow-inner h3 {
  height: 80px;
  width: 100px;
  margin-right: 24px;
  text-align: center;
  font-size: 1.5rem;
  padding-top: 24px;
  color: #0677A8;
}
}
/* 当院について */
.about-detail h2 {
  margin-bottom: 32px;
  font-weight: bold;
}
.about-detail-inner {
  background-color: #EDF5F6;
  border-radius: 20px;
  margin-bottom: 56px;
  padding: 32px 64px;
}
.about-logo img {
  width: 200px;
  margin-bottom: 40px;
}
.about-item {
  display: flex;
  border-bottom: 1px solid #c5c5c5;
  margin-bottom: 16px;
  padding-bottom: 4px;
}
.about-item-inner {
  width: 150px;
}
.prevention {
  margin: 0 auto;
  width: 40vw;
}
.about-equipment {
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr 1fr 1fr ;
  grid-template-rows: 1fr 1fr 1fr ;
  margin-top: 40px;
}
.abouteq {
  border: 1px solid #6D8EAF;
  padding: 16px;
  border-radius: 10px;
}
.abouteq p {
  text-align: center;
  margin-top: 16px;
  color: #6D8EAF;
}
.about-grid-gallery {
  display: grid;
}
.about-g1 {
  position: relative;
}
.pg-font {
  position: absolute;
  top: 10%;
  right: 20px;
    width: 40vw;
}
.about-grid-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr ;
  grid-template-rows: 1fr 1fr ;
  gap: 16px;
  height: 70vh;
  margin-top: 96px;
}
.about-g1 {
  grid-column: 1 / 3;
  grid-row: 1 / 2;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.116), rgba(192, 192, 192, 0.658)),
  url(images/about/gallery1.jpg) no-repeat  center/cover;
}
.about-g2 {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.397), rgba(255, 255, 255, 0.205)),
  url(images/about/gallery2.jpg) no-repeat  center/cover;
}
.about-g3 {
  grid-column:  4 / 5;
  grid-row: 1 / 3;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.144), rgba(255, 255, 255, 0.329)),
  url(images/about/gallery3.jpg) no-repeat  center/cover;
}
.about-g4 {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.397), rgba(255, 255, 255, 0.205)),
  url(images/about/gallery4.jpg) no-repeat  center/cover;
}
.about-g5 {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.397), rgba(255, 255, 255, 0.205)),
  url(images/about/gallery5.jpg) no-repeat  center/cover;
}
.about-g6 {
  grid-column: 3 / 4;
  grid-row: 2 / 3 ;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.397), rgba(255, 255, 255, 0.205)),
  url(images/about/gallery6.jpg) no-repeat  center/cover;
}
/* SP当院について */
@media (max-width: 900px) {
.about-detail-inner {
  margin-bottom: 32px;
  padding: 32px 24px;
}
.about-logo img {
  width: 50vw;
}
.about-item {
  display: block;
}
.about-item-inner {
  width: 80vw;
  padding-bottom: 8px;
}
.prevention {
  width: 80vw;
}
.about-equipment {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 1fr ;
  grid-template-rows: 1fr 1fr 1fr 1fr 1fr ;
}
.about-grid-gallery {
  display: grid;
}
.pg-font {
  position: absolute;
  top: 12%;
  right: 20px;
  width: 80vw;
}
.about-grid-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr ;
  grid-template-rows: 1fr 1fr 1fr 1fr ;
  gap: 8px;
  height: 80vh;
  margin: 96px auto 0 auto;
  width: 96vw;
}
.about-g1 {
  grid-column: 1 / 3;
  grid-row: 1 / 2;
  background: 
  linear-gradient(rgba(255, 255, 255, 0.116), rgba(192, 192, 192, 0.658)),
  url(images/about/gallery1.jpg) no-repeat  bottom/cover;
}
.about-g2 {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
.about-g3 {
  grid-column:  2 / 3;
  grid-row: 2 / 4;
}
.about-g4 {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}
.about-g5 {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
}
.about-g6 {
  grid-column: 2 / 3;
  grid-row: 4 / 5 ;
}
}
/* 内視鏡検査ページ */
.endscopy-features {
  background: url(images/endoscopy/background.png) no-repeat  center/cover;
  padding: 56px;
  width: 50vw;
  border-radius: 20px;
}
.endscopy-features h2 {
  margin-bottom: 40px;
  text-align: left;
  font-weight: bold;
  font-size: 1.3em;
  color: #333;
}
.endscopy-features p {
  margin-bottom: 24px;
}
.endscopy-btn {
  display: flex;
  justify-content: space-between;
}
.endscopy-btn div {
  width: 450px;
}
.endscopy-btn a:hover {
  opacity: 0.5;
}
/* SP内視鏡検査ページ */
@media (max-width: 900px) {
  .endscopy-features {
  padding: 32px;
  width: 85vw;
}
.endscopy-features h2 {
  margin-bottom: 24px;
  font-size: 1.2em;
  text-align: center;
}
.endscopy-btn {
  display: block;
}
.endscopy-btn div {
  margin-bottom: 16px;
  width: 85vw;
}
}
/* 日帰り手術ページ */
.day-s-title h2 {
  font-weight: bold;
  font-size: 2rem;
  color: #333;
}
.day-s-title p {
  text-align: center;
  margin-bottom: 40px;
  font-weight: bold;
}
.day-s-text p {
  margin-bottom: 24px;
}
.surgery-intro h3 {
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 32px;
}
.surgery-flow {
  margin-top: 64px;
}
.surgery-flow1 {
  border: 1px solid #0677A8;
  margin-bottom: 56px;
  border-radius: 10px;
  padding: 32px;
  position: relative;
}
.surgery-flow1 h4 {
  color: #0677A8;
  font-size: 1.3rem;
  position: absolute;
  top: -18px;
  background-color: #fff;
  padding: 0 16px;
}
.sf-bg {
  background-color: #E3EDF8;
  margin-top: 24px;
  padding: 16px 24px;
  border-radius: 10px;
}
.not-cf .not-cf-font {
  color: #0677A8;
  font-size: 1.1rem;
  margin-bottom: 8px;
}
.surgery-flow2 {
  border: 1px solid #7C802B;
  background-color: #F7F8DC;
  margin-bottom: 60px;
  border-radius: 10px;
  padding: 64px 100px;
}
.surgery-flow2 h4 {
  color: #7C802B;
  font-size: 1.4rem;
  text-align: center;
  border-bottom: 1px solid  #7C802B;
  padding-bottom: 24px;
}
.surgery-flow2 p {
  color: #7C802B;
  font-size: 1.3rem;
  margin-top: 32px;
}
.surgery-flow2 .sf2-k {
  color: #333;
  font-size: 1rem;
  margin-top: 4px;
}
/* SP日帰り手術ページ */
@media (max-width: 900px) {
  .day-s-title .day-s-h2 {
  font-size: 1.5rem;
  margin-bottom: 16px;
}
.day-s-title p {
  margin-bottom: 32px;
  font-size: 0.9rem;
}
.day-s-text p {
  margin-bottom: 16px;
}
.surgery-intro h3 {
  margin-bottom: 16px;
}
.surgery-flow1 {
  padding: 32px 16px;
}
.sf-bg {
  padding: 16px;
}
.surgery-flow2 {
  padding: 32px 24px;
}
}
/* アクセスページ */
.access-ft img {
  width: 800px;
  margin-top: 24px;
}
.access-map {
  margin-bottom: 16px;
}
.access-map iframe {
  width: 100%;
  height: 60vh;
  position: relative;
  z-index: -10;
}
.vehicle {
  margin-top: 32px;
}
.vehicle-inner {
  display: flex;
  margin-bottom: 20px;
}
.v-title {
  width: 180px;
  margin-right: 16px;
  text-align: center;
  background-color: #75A5D5;
  padding: 10px;
  border-radius: 5px;
  color: #fff;
}
.v-text {
  padding: 10px;
}
.map-photo {
  display: flex;
    justify-content: space-between;
  margin-top: 80px;
}
.illust-map {
  width: 480px;
}
.car-area {
  width: 400px;
}
.car-area p {
  text-align: center;
  margin-top: 8px;
}
.illust-map img {
  border-radius: 10px;
}
.car-area img {
  border-radius: 10px;
}
.access-center {
  text-align: center;
  margin-top: 56px;
}
/* SPアクセスページ */
@media (max-width: 900px) {
  .access-ft img {
  width: 85vw;
}
.vehicle-inner {
  display: block;
  margin-bottom: 20px;
}
.v-title {
  width: 100%;
}
.map-photo {
  display: block;
}
.illust-map {
  width: 100%;
  margin-bottom: 24px;
}
.car-area {
  width: 100%;
}
.car-area p {
  text-align: center;
  margin-top: 8px;
}
.illust-map img {
  border-radius: 10px;
}
.car-area img {
  border-radius: 10px;
}
.access-center {
  text-align: center;
  margin-top: 56px;
}
}
/* サブページ共通2 */
.sub-low-page h1, .sub-low-page2 h1  {
 font-size: 1.7em;
 margin-bottom: 24px;
 color: #0677A8;
}
.sub-low-page h2 {
 margin-bottom: 24px;
 font-weight: bold;
}
/* SPサブページ共通2 */
@media (max-width: 900px) {
  .sub-low-page h1, .sub-low-page2 h1  {
 font-size: 1.5em;
}
}
/* 胃カメラ大腸カメラ検査 */
.egd-symptoms ,.cf-symptoms {
  margin-top: 40px;
  display: flex;
}
.egd-symptoms-text p , .cf-symptoms-text p  {
  margin-bottom: 24px;
  font-size: 1.2em;
}
.egd-symptoms-text li , .cf-symptoms-text li {
  margin-bottom: 8px;
}

.egd-symptoms-img , .cf-symptoms-img {
  width: 320px;
  margin-left: 80px;
}
.egd-symptoms-img img , .cf-symptoms-img img {
  border-radius: 10px;
}
.egd-menu , .cf-menu {
  background-color: #F7F8DC;
  margin-top: 64px;
  padding: 32px 0;
}
.egd-menu ul , .cf-menu ul {
  display: flex;
  justify-content: space-around;
  width: 960px;
  margin: 0 auto;
}
.egd-menu ul li a:hover , .cf-menu ul li a:hover {
  opacity: 0.5;
}
.egd-merit-area , .cf-merit-area {
  background-color: #E3EDF8;
  padding: 40px;
  border-radius: 10px;
}
.egd-merit-area h2 , .cf-merit-area h2 {
  padding-bottom: 16px;
}
.blue-dot {
  color: #6D8EAF;
}
.egd-m-text {
  margin-top: 32px;
}
.egd-m-text h3 {
  margin-bottom: 8px;
}
.egd-flow , .cf-flow {
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
}
.eslow-flow-text  {
  background-color: #F7F8DC;
  width: 60vw;
  padding: 32px;
  border-radius: 10px 0 0 10px;
}
.eslow-flow-text h3  {
  font-size: 1.7rem;
  color: #6D8EAF;
}
.eslow-flow-img  {
  width: 500px;
}
.eslow-flow-img img {
  border-radius: 0 10px 10px 0;
  height: 100%;
  object-fit: cover;
}
.eslow-flow-text .egd01::before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd02::before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd03::before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd04::before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-04.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
  object-fit: cover
}
.cf04 img {
  object-fit: cover;
  height: 250px;
}
.cf-detail {
  margin-bottom: 32px;
}
.egd-bring {
  background-color: #E3EDF8;
  border-radius: 10px;
  padding: 24px 40px;
  margin-top: 24px;
}
.egd-bring h3 {
  margin-bottom: 24px;
  color: #0677A8;
}
.egd-bring-inner {
  display: flex;
  justify-content: space-between;
}
.egd-bring-img {
  width: 150px;
}
.egd-detail-flow , .cf-detail-flow {
  border: 1px solid #0677A8;
  margin-top: 64px;
  border-radius: 10px;
  position: relative;
  padding: 32px 60px;
}
.egd-detail-flow h3 ,.cf-detail-flow h3 {
  font-size: 1.3rem;
  color: #0677A8;
  position: absolute;
  top: -16px;
  left: 40px;
  background-color: #fff;
  padding: 0 16px;
}
.egd-section ,.cf-section {
  margin-top: 24px;
}
.egd-section-flex {
  display: flex;
}
.egd-flex-img {
  width: 200px;
  margin-left: 64px;
}
.egd-section h4 {
  padding-bottom: 8px;
}
.esl-section-p {
  margin-top: 16px;
}
.egd-detail-flow ul {
  margin-left: 24px;
}
.egd-detail-flow ul li {
  margin-bottom: 4px;
}
.egd-detail-flow ul li::before {
  position: relative;
  top: -3px;
  left: -10px;
  display: inline-block;
   width: 4px;
  height: 4px;
   content: '';
   border-radius: 100%;
  background: #333;
}
.washing {
  margin-top: 80px;
}
.washing p {
  margin-bottom: 24px;
}
.washing h3 {
  color: #0677A8;
  font-weight: bold;
  font-size: 1.2rem;
  margin-bottom: 16px;
}
.washing-flex {
  display: flex;
  justify-content: space-between;
}
.washing-flex p {
  width: 680px;
}
.washing-flex img {
  width: 200px;
  border-radius: 10px;
}
.egdprice-text {
  margin-top: 24px;
}
.egdprice-text h3 {
  color: #0677A8;
  margin-bottom: 8px;
}
.cf-important {
  border: 1px solid #7C802B;
  background-color: #F7F8DC;
  margin-bottom: 60px;
  border-radius: 10px;
  padding: 64px 100px;
}
.cf-important h3 {
  color: #7C802B;
  font-size: 1.4rem;
  text-align: center;
  border-bottom: 1px solid  #7C802B;
  padding-bottom: 24px;
}
.cf-important p {
  color: #7C802B;
  font-size: 1.3rem;
  margin-top: 32px;
}
.cf-important .cf2-k {
  color: #333;
  font-size: 1rem;
  margin-top: 4px;
}
.cf-sec-innerbg {
  background-color: #75A5D5;
  color: #fff;
  padding: 8px 24px;
  border-radius: 30px;
  margin-top: 16px;
  margin-bottom: 8px;
}
.cf-sec-flex {
  display: flex;
  justify-content: space-between;
}
.cf-sec-flexin {
  border: 1px solid #0677A8;
  border-radius: 5px;
  width: 400px;
  margin: 24px;
}
.cf-sec-flexin h5 {
  color: #0677A8;
  border-bottom: 1px solid #0677A8;
  padding: 8px;
  text-align: center;
}
.cf-sec-flexin p {
  padding: 16px;
}
.cf-mag-flex {
  display: flex;
  margin-top: 24px;
}
.cf-mag-flex h5 {
  border: 1px solid #0677A8;
  padding: 4px 16px;
  border-radius: 5px;
  color: #0677A8;
}
.cf-mag-flex p {
  padding: 4px 16px;
  color: #0677A8;
}
.cf-magtext {
  margin-left: 112px;
  margin-top: 16px;
}
.cf-magtext p {
  margin-bottom: 4px;
}
.cf-detail-flow-inner {
  display: flex;
  align-items: center;
}
.cf-d-f-img img {
  width: 80px;
  margin-left: 80px;
}
.cf-d-f-text {
  width: 600px;
}
.cf-text-br h4 {
  margin-bottom: 8px;
}
.cf-text-p p {
  margin-bottom: 16px;
}
.cf-d-f-big {
  font-size: 1.2rem;
  margin-bottom: 8px;
  color: #0677A8;
}
.margin-height {
  margin-top: -96px;
  padding-top: 96px;
}
.margin-height-e {
  margin-top: -24px;
  padding-top: 120px;
}
  /* 胃カメラ大腸カメラ検査 */
@media (max-width: 900px) {
.egd-symptoms ,.cf-symptoms {
  margin-top: 24px;
  display: block;
}
.egd-symptoms-text p , .cf-symptoms-text p  {
  margin-top: 40px;
}
.egd-symptoms-text li , .cf-symptoms-text li {
  margin-bottom: 16px;
}
.egd-symptoms-img , .cf-symptoms-img {
  width: 100%;
  margin-left: 0;
}
.egd-menu , .cf-menu {
  padding: 0;
}
.egd-menu ul , .cf-menu ul {
  display: block;
  padding: 32px 24px;
  width: 100%;
}
.egd-menu ul li , .cf-menu ul li {
  margin-bottom: 24px;
}
.egd-merit-area , .cf-merit-area {
  padding: 24px;
}
.egd-flow , .cf-flow {
  display: block;
  margin-bottom: 40px;
}
.egd-section-flex {
  display: block;
}
.eslow-flow-text  {
  width: 100%;
  padding: 24px;
  border-radius: 10px 10px 0 0 ; 
}
.eslow-flow-text h3  {
  font-size: 1.3rem;
  margin-bottom: 24px;
}
.eslow-flow-img   {
  width: 100%;
}
.eslow-flow-img img {
  border-radius: 0 0 10px 10px ;
}
.eslow-flow-text .egd01::before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd02::before {
  content: '';
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd03::before {
  content: '';
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
}
.eslow-flow-text .egd04::before {
  content: '';
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-04.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 6px;
  object-fit: cover
}
.egd-bring-inner {
  display: block;
}
.egd-bring-img {
  width: 50%;
  margin-top: 24px;
}
.egd-detail-flow , .cf-detail-flow {
  margin-top: 64px;
  position: relative;
  padding: 24px;
}
.egd-detail-flow h3 ,.cf-detail-flow h3 {
  position: absolute;
  top: -16px;
  left: 16px;
}
.egd-flex-img {
  width: 50%;
  margin-left: 120px;
  margin-top: 24px;
}
.egd-section h4 {
  padding-bottom: 8px;
} 
.esl-section-p {
  margin-top: 16px;
}
.egd-detail-flow ul {
  margin-left: 24px;
}
.egd-detail-flow ul li {
  margin-bottom: 4px;
}
.egd-detail-flow ul li::before {
  position: relative;
  top: -3px;
  left: -10px;
  display: inline-block;
   width: 4px;
  height: 4px;
   content: '';
   border-radius: 100%;
  background: #333;
}
.washing-flex {
  display: block;
}
.washing-flex p {
  width: 100%;
}
.egdprice-text {
  margin-top: 24px;
}
.egdprice-text h3 {
  color: #0677A8;
  margin-bottom: 8px;
}
.cf-important {
  padding: 40px 24px;
}
.cf-important h3 {
  color: #7C802B;
  font-size: 1.4rem;
  text-align: center;
  border-bottom: 1px solid  #7C802B;
  padding-bottom: 24px;
}
.cf-important p {
  font-size: 1.3rem;
  margin-top: 32px;
}
 .cf-important .cf2-k {
  color: #333;
  font-size: 1rem;
  margin-top: 4px;
}
.cf-sec-innerbg {
  padding: 8px 24px;
  border-radius: 30px;
  margin-top: 16px;
  margin-bottom: 8px;
}
.cf-sec-flex {
  display: block;
}
.cf-sec-flexin {
  width: 100%;
  margin: 0px;
  margin-top: 8px;
}
.cf-sec-flexin h5 {
  color: #0677A8;
  border-bottom: 1px solid #0677A8;
  padding: 8px;
  text-align: left;
}
.cf-sec-flexin p {
  padding: 16px;
}
.cf-mag-flex {
  display: block;
  margin-top: 24px;
}
.cf-mag-flex h5 {
  padding: 8px 16px;
  font-size: 1.2rem;
  margin-bottom: 4px;
}
.cf-mag-flex p {
  padding: 4px 0px;
  color: #0677A8;
  font-size: 1.2rem;
}
.cf-magtext {
  margin-left: 0px;
  margin-top: 16px;
}
.cf-magtext p {
  margin-bottom: 4px;
}
.cf-detail-flow-inner {
  display:block;
}
.cf-d-f-img img {
  width: 30%;
  margin-left: 20px;
  margin-top: 16px;
}
.cf-d-f-text {
  width: 100%;
}
.cf-text-br h4 {
  margin-bottom: 8px;
}
.cf-text-p p {
  margin-bottom: 16px;
}
.cf-d-f-big {
  font-size: 1.2rem;
  margin-bottom: 8px;
  color: #0677A8;
}
.margin-height {
  margin-top: 64px;
  padding-top: 0;
}
}
/* 診療内容と自費診療 */
.sub-low-page2 h2 {
  text-align: left;
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 1.2rem;
}
.font-w {
  font-weight: bold;
}
/* 超音波 */
.echopage-img {
  width: 300px;
}
.echopage-img img {
  border-radius: 10px;
  margin: 24px 0;
}
.echopage-bottom {
  margin-bottom: 16px;
}
/* 一般外来診療 */
.outpatient-img {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}
.outpatient-img img {
  width: 300px;
}
/* 自費診療ページ */
.ownex-block {
  display: flex;
  margin-top: 40px;
}
.ownex-btn {
  border: 1px solid #0677A8;
  color: #0677A8;
  padding: 24px 8px;
  width: 250px;
  text-align: center;
  border-radius: 10px;
}
.ownex-btn a:hover {
  opacity: 0.5;
}
.ownex-text {
  width: 800px;
  margin-left: 40px;
}
.shiratama {
  text-align: center;
  margin-bottom: 24px;
  color: #0677A8;
  font-size: 1.2rem;
  font-weight: bold;
}
.sub-section {
  margin-top: 64px;
}
.sub-section h2 {
  margin-bottom: 16px;
  color: #1D7094;
}
.cosme-img img {
  width: 430px;
  border-radius: 10px;
  margin-bottom: 24px;
}
.aga-topheigt {
  margin-top: 24px;
}
.aga-bottomheigt {
  margin-bottom: 24px;
}
.aga-p-bot p {
  margin-bottom: 24px;
}
.aga-img {
  display: flex;
  justify-content: space-around;
}
.aga-img img {
  width: 380px;
}
.aga-detail {
  border: 1px solid #0677A8;
  padding: 24px 40px;
}
.border-btm {
  border-bottom: 1px solid #0677A8;
  padding-bottom: 16px;
  margin-bottom: 16px;
}
.aga-sankaku {
  text-align: center;
  margin: 8px auto;
}
.ownex-topheigt {
  margin-top: 32px;
}
.ownex-topheigt-min {
  margin-top: 16px;
}
.ed-img {
  margin-top: 24px;
}
.ed-section ul li {
  margin-bottom: 8px;
}
.diet-approach h2 {
  text-align: center;
}
.diet-recomend {
  display: flex;
}
.diet-recomend-inner {
  width: 70vw;
}
.diet-recomend-img {
  width: 30vw;
}
.diet-recomend-img img {
  border-radius: 10px;
}
.diet-flow {
  background-color: #ECF4F5;
  margin-bottom: 24px;
  padding: 24px 40px;
}
.diet-flow h3 {
  color: #6D8EAF;
  font-size: 1.5rem;
  margin-bottom: 16px;
}
.diet-flow  .diet-01::before {
   content: '';/*何も入れない*/
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-flow  .diet-02::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-flow  .diet-03::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-p-top h3 {
  margin-bottom: 8px;
}
.diet-bg {
  background-color: #ECF4F5;
  padding: 32px;
  margin-top: 60px;
}
.dietdrop-melit h3 {
 font-size: 1.1rem;margin-bottom: 8px;
}
.dietdrip-flow {
  background-color: #fff;
  margin-bottom: 24px;
  padding: 24px 40px;
}
.dietdrip-flow h3 {
  color: #6D8EAF;
  font-size: 1.5rem;
  margin-bottom: 16px;
}
.dietdrip-flow  .dietdrip-01::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.dietdrip-flow  .dietdrip-02::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.dietdrip-flow  .dietdrip-03::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
  /* 胃カメラ大腸カメラ検査 */
@media (max-width: 900px) {
  .ownex-block {
  display: block;
}
.ownex-btn {
  width: 100%;
}
.ownex-text {
  width: 100%;
  margin-left: 0px;
  margin-top: 16px;
}
.cosme-img img {
  width: 100%;
}
.aga-img {
  display: block;
}
.aga-img img {
  width: 100%;
  margin-top: 56px;
}
.diet-recomend {
  display: block;
}
.sub-section .ripo-center {
  text-align: center;
}
.diet-recomend-inner {
  width: 85vw;
}
.diet-recomend-img {
  width: 50vw;
  margin-top: 24px;
  }
.diet-recomend-img img {
  border-radius: 10px;
}
.diet-flow {
  background-color: #ECF4F5;
  margin-bottom: 24px;
  padding: 24px 40px;
}
.diet-flow h3 {
  color: #6D8EAF;
  font-size: 1.5rem;
  margin-bottom: 16px;
}
.diet-flow  .diet-01::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-flow  .diet-02::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-flow  .diet-03::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.diet-p-top h3 {
  margin-bottom: 8px;
}
.diet-bg {
  background-color: #ECF4F5;
  padding: 32px;
  margin-top: 60px;
}
.dietdrop-melit h3 {
 font-size: 1.1rem;margin-bottom: 8px;
}
.dietdrip-flow {
  background-color: #fff;
  margin-bottom: 24px;
  padding: 24px 40px;
}
.dietdrip-flow h3 {
  color: #6D8EAF;
  font-size: 1.5rem;
  margin-bottom: 16px;
}
.dietdrip-flow  .dietdrip-01::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-01.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.dietdrip-flow  .dietdrip-02::before {
   content: '';
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-02.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
.dietdrip-flow  .dietdrip-03::before {
   content: '';/*何も入れない*/
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(images/endoscopy-lower/endscopylow-03.png);
  background-size: contain;
  vertical-align: middle;
  margin-left: 6px;
}
}
/* おなかの病気 */
.stomach-menu-inner {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr 1fr 1fr ;
  margin-top: 40px;
  text-align: center;
}
.stomach-items {
  background-color: #75A5D5;
  color: #fff;
  padding: 16px;
  border-radius: 5px;
}
.stomach-items:hover {
  opacity: 0.5;
}
.lower-ul-top li {
  margin-top: 12px;
}
.lower-cause {
 margin-top: 40px; 
}
.lower-block {
 margin-top: 40px; 
}
.lower-block-in {
 margin-top: 16px; 
}
.li-link {
  padding-top: 16px;
}
.li-link a {
  color: #0677A8;
  border-bottom: 1px solid #0677A8;
  margin-left: 24px;
}
.li-link a:hover {
  opacity: 0.5;
}
.criteria {
  margin-top: 24px;
}
.criteria-h {
  color: #0677A8;
}
.stomach-cancer-img {
  margin-top: 32px;
}
.lower-block-flex {
  display: flex;
  justify-content: space-between;
}
.lower-block-flex .lower-block-in {
  width: 550px;
}
.lower-block-in-img {
  width: 300px;
}
.colorectal-cancer-img {
  margin-top: 32px;
}
  /* SPおなかの病気 */
@media (max-width: 900px) {
  .stomach-menu-inner {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr;
}
.lower-block-flex {
  display: block;
}
.lower-block-flex .lower-block-in {
  width: 100%;
}
.lower-block-in-img {
  width: 100%;
}
}
/* おしりの病気 */
.bottocks-menu {
  width: 600px;
  margin: 0 auto;
}
.bottocks-menu-inner {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr 1fr ;
  margin-top: 40px;
  text-align: center;
}
.bottocks-items {
  background-color: #75A5D5;
  color: #fff;
  padding: 16px;
  border-radius: 5px;
}
.bottocks-menu-inner a:hover {
  opacity: 0.5;
}
.page-daysurgery-link {
  margin-top: 40px;
  text-align: center;
}
.page-daysurgery-link a {
  color: #0677A8;
  border-bottom: 1px solid #0677A8;
}
.page-daysurgery-link a:hover {
  opacity: 0.5;
}
.bottocks-flex {
  display: flex;
  justify-content: space-between;
}
.bottocks-flex-explain-text p {
  width: 450px;
  margin-right: 40px;
}
.bottocks-flex-explain-img  {
  width: 500px;
}
.bottocks-flex-explain-text2 p {
  width: 300px;
  margin-right: 40px;
}
.bottocks-flex-explain-img2  {
  width: 600px;
}
.bottocks-area .sub-section h3 {
  margin-bottom: 16px;
}
.bottocks-end-img {
  margin-top: 64px;
}
.b-f-e-i08 {
  width: 500px;
  margin-top: 24px;
}
.howtouse-ointment {
  width: 700px;
}
  /*sp おしりの病気 */
@media (max-width: 900px) {
.bottocks-menu {
  width: 85vw;
}
.bottocks-menu-inner {
  display: grid;
  gap:16px;
  grid-template-columns: 1fr ;
}
.bottocks-flex {
  display: block;
}
.bottocks-flex-explain-text p {
  width: 100%;
  margin-right: 0px;
}
.bottocks-flex-explain-img  {
  width: 100%;
  margin-top: 16px;
}
.bottocks-flex-explain-text2 p {
  width: 100%;
  margin-right: 0px;
}
.bottocks-flex-explain-img2  {
  width: 100%;
  margin-top: 16px;
}
.b-f-e-i08 {
  width: 100%;
  margin-top: 24px;
}
.howtouse-ointment {
  width: 100%;
}
}