@charset "utf-8";
/*--------------------------------------------------------
ファーストビュー
--------------------------------------------------------*/
.top-fv {
  margin-top: 0px;
  position: relative; 
}
.top-fv img {
	width: 100%;
}
/*--------------------------------------------------------
  メインビジュアル
--------------------------------------------------------*/
/* 高さの先取り（CLS対策） */
.swiper-hero { width:100%; aspect-ratio: 16/9; }

/* 画像フィット */
.slide-img, .slide-img img { width:100%; height:100%; display:block; }
.slide-img img { object-fit: cover; }
.top-fv .slide-img img { object-fit: cover; height:100% !important; }

/* 通常のドット */
.hero-pagination .swiper-pagination-bullet {
  background: #ccc;   /* ←グレーに変更 */
  opacity: 1;         
}
/* アクティブ（現在のスライド） */
.hero-pagination .swiper-pagination-bullet-active {
  background: #db535e; 
}


/*--------------------------------------------------------
緊急お知らせ
--------------------------------------------------------*/
.fv-alert-content {
  width: 92%;
  max-width: 1585px;
  margin: 60px auto;
  background-color: #ff1f5417;
  border-radius: 4px;
  padding:20px;
}
.fv-alert-inner{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0px auto;
  color: #ff1f54;
  padding-top: 12px;
  padding-bottom: 12px;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.fv-alert-inner:hover {
  background-color: #ffdfe5;
  color: var(--black);
}
.fv-alert-date{
  width: 12%;
  font-size: var(--fs-note);
  margin-left: 1%;
}
.fv-alert-date-large{
  font-size: var(--fs-lead);
}
.fv-alert-news{
  width: 84%;
  font-size: var(--fs-body);
  font-weight: 700;
}
/*--------------------------------------------------------
診療科目
--------------------------------------------------------*/
.category-sec{
  width: 100%;
  height: 700px;
}
.category-content{
  width: 92%;
  max-width: 1585px;
  margin: 0 auto 70px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 80px;
  padding-bottom: 10px;
}
.fv-alert-content + .category-content{
  margin-top: 70px;
}
.category-inner{
  position:relative;
  width: 18%;
  height: 520px;
  background-color: var(--white);
  border-radius: 6px;
}


.category-img{
  width: 100%;
  height: 200px;
}
.category-img img{
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}
.category-title {
  position: absolute;
  top: 180px;                /* 縦位置 */
  left: 50%;                 /* 親の幅の50% */
  transform: translateX(-50%); /* 自身の幅の半分戻す → 中央寄せ */
  width: 86%;
  background-color: var(--base1);
  color: #fff;
  padding: 15px 10px;
  text-align: center;
  border-radius: 4px;
  font-size: clamp(1.125rem, 0.444rem + 1.06vw, 1.375rem);/* 1024px-18px 1400px-22px */
  font-weight: 700;
}
.category-icon{
  position: absolute;
  top: 270px;
  left: 50%;
  transform: translateX(-50%);
  width: 30%;
  color: var(--white);
  display: flex;
  justify-content: center;  /* 横方向センター */
  align-items: center;      /* 縦方向センター */
}
.category-icon img {
  width: 100%;   /* 親の幅にフィット */
  height: auto;  /* アスペクト比維持 */
  display: block; /* 余白防止 */
}
.category-text{
   position: absolute;
  top: 370px;                /* 縦位置 */
  left: 50%;                 /* 親の幅の50% */
  transform: translateX(-50%); /* 自身の幅の半分戻す → 中央寄せ */
  width: 86%;
  text-align: left;         /* 文字もセンター */
  font-size: clamp(0.75rem, 0.069rem + 1.06vw, 1rem);/* 1024px-14px 1400px-16px */
  line-height: 1.8em;
  font-weight: 500;
}
.category-link-icon {
  position: absolute;
  top: 450px;                /* 縦位置 */
  left: 50%;                 /* 親の幅の50% */
  transform: translateX(-50%); /* 自身の幅の半分戻す → 中央寄せ */
  width: 10%;
}
.category-link-icon img {
	width: 30px;
}


/* # =================================================================
   # コンテンツ
   # ================================================================= */


/*--------------------------------------------------------
  新着情報
--------------------------------------------------------*/
.news-sec {
  position: relative;
  margin-top: 100px;
}
.news-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 80%;             
  height: 100%;
  background-color: #fff9ed;
  border-radius: 0 30px 30px 0; /* 角丸（上左, 上右, 下右, 下左） */
  z-index: -1;              /* コンテンツの後ろへ */
}
.news-content{
  width: 92%;
  max-width: 1585px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 60px auto;
  padding-top: 20px;
  padding-bottom: 60px;
}
.news-3colm{
  width: 32%;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 20px;
}
.news-2colm{
  width: 47%;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 20px;
}
.news-1colm{
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 20px;
}
.news-headline{
  background-color: var(--base1);
  width: 94%;
  margin: 0 auto;
  padding: 10px 20px;
  margin-top: -40px;
  margin-bottom: 10px;
  border-radius: 8px;
  color: #fff;
  display: flex;              /* 横並び */
  align-items: center;        /* 縦方向を中央揃え */
  justify-content: space-between; /* 両端に配置する場合 */
  transition: opacity 0.5s ease;
  cursor: pointer; 
}
.news-headline:hover{
  opacity: 0.7;
}
.news-icon{
  width: 10%;  
  height: auto;
}
.news-headline-text{
  width: 75%;  
  font-weight: 700;
  font-size: clamp(1rem, 0.94rem + 0.82vw, 1.375rem);/* w768=16px → w1500=22px */
  margin-left: 5%;
}
.news-arrow{
  width: 10%;  
  height: auto;
}
.news-arrow img{
  max-width: 36px;
}

/* オーバーレイ */
.news-inner::before,
.news-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  transition: background 1s ease; /* 背景の変化を0.5秒 */
}
/* 初期状態（透明） */
.news-inner::before {
  background: rgba(0,0,0,0);
}
/* hover時：白のオーバーレイ */
.news-inner:hover::after {
  background: rgba(255,255,255,0.6); /* 白60%で明るく見える */
}

.news-date{
  background-color: var(--lightgray);  
  padding: 8px 12px;
  display: inline-block;
  margin-bottom: 10px;
  font-size: 14px;
  margin-left: 10px;
  white-space: nowrap;
}
.news-date-large{
    font-size: 18px;
}
.news-item{
  font-weight: 500;
  font-size: clamp(0.875rem, 0.535rem + 0.53vw, 1rem); /* w768=14px -> w1500=16px */
   padding-left: 14px;
   line-height: 1.6em;
}
.noinfo{
  padding: 15px;
  text-align: center;
}



/*--------------------------------------------------------
  紹介テキスト
--------------------------------------------------------*/
.text-sec {
  width: 92%;
  max-width: 1585px;
  display: block;
  margin: 0 auto;
  padding: 30px 0 30px 0;
}
.text-sec p {
  font-size: var(--fs-title);
  font-weight: 700;
  line-height: 2.4;
  text-align: center;
}

/*--------------------------------------------------------
  施設の特長
--------------------------------------------------------*/
.strength-sec {
  position: relative;
  margin-top: 100px;
}
.strength-sec .strength-block {
  width: 100%;
  height: auto;
  margin: 0 auto 150px;
  position: relative;
}
.strength-sec .strength-block ul.leftSide, 
.strength-sec .strength-block ul.rightSide {
  width: 92%;
  max-width: 1585px;
  display: block;
  min-height: 450px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 0px;
  overflow: hidden;
}
.strength-sec .bgLeft::before, 
.strength-sec .bgRight::before {
	content: "";
	position: absolute;
	top: -50px;
	width: 60%;             
	height: 300px;
	background-color: var(--base1);
	z-index: -1;              /* コンテンツの後ろへ */
}
.strength-sec .bgLeft::before {
	left: 0;
	border-radius: 0 10px 10px 0; /* 角丸（上左, 上右, 下右, 下左） */
}
.strength-sec .bgRight::before {
	right: 0;
	border-radius: 10px 0 0 10px; /* 角丸（上左, 上右, 下右, 下左） */
}

.strength-sec .strength-block ul.leftSide li.imgBLock, 
.strength-sec .strength-block ul.rightSide li.imgBLock {
	height: 450px;
	width: 40%;
	overflow: hidden;
}
.strength-sec .strength-block ul.leftSide li.imgBLock {
	float: left;
	margin-right: 5%;
}
.strength-sec .strength-block ul.rightSide li.imgBLock {
	float: right;
	margin-left: 5%;
}
.strength-sec .strength-block ul.leftSide li.imgBLock img, 
.strength-sec .strength-block ul.rightSide li.imgBLock img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.strength-sec ul.leftSide li.linkBLock, 
.strength-sec ul.rightSide li.linkBLock {
	width: 50%;
	float: left;
	padding: 80px 10px 30px 10px;
	margin-bottom: 50px;
	border-bottom: 1px solid #4D4D4D;
}
.strength-sec ul.rightSide li.linkBLock {
	float: right;
}
.strength-sec ul.leftSide li.textBlock, 
.strength-sec ul.rightSide li.textBlock {
	width: 50%;
	padding: 0px 10px 0px 10px;
	float: left;
}
.strength-sec ul.rightSide li.textBlock {
	float: right;
}
 .strength-sec ul.leftSide li.textBlock p, 
  .strength-sec ul.rightSide li.textBlock p {
	 font-size: var(--fs-body);
	 line-height: 1.8;
}

.linkBLock strong {
	font-size: var(--fv-fs-h2);
	font-weight: 700;
	color: #333;
	margin-right: 20px;
	padding-top: 3px;
	line-height: 1.8;
	display: inline-block;
	vertical-align: middle;
	@media screen and (max-width:1240px) {
		max-width: clamp(16.875rem, -6.086rem + 46.56vw, 30rem); /* w1240px-480 w789px-270 */
	}
}
.linkBLock .sec-title-arrow{
  width: auto;
  display: inline-block;     /* transformが効くように */
  transition: transform 0.3s ease; /* スムーズに動く */
  margin-right: 10px;
  vertical-align: middle;
}
.linkBLock .sec-title-arrow img {
	width: 30px;
    display: inline-block;
    vertical-align: middle;
}
.linkBLock .sec-title-arrow:hover {
  transform: translateX(10px); /* 右に20px移動 */
}




/*--------------------------------------------------------
  活動
--------------------------------------------------------*/
.activity-sec {
  position: relative;
  margin-top: 80px;
}
.activity-background {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;             
  height: 100%;
  border-radius: 30px 0 0 30px; /* 角丸（上左, 上右, 下右, 下左） */
  z-index: -1;              /* コンテンツの後ろへ */
}
.activity-content{
  width: 86%;
  max-width: 1600px;
  display: flex;
  flex-wrap: wrap;
  margin: 40px auto;
  padding-top: 20px;
  padding-bottom: 60px;
  justify-content: flex-start;
  gap: 2.6%;
}
.activity-inner{
  width: 23%;
  background-color: #fff;
  box-shadow: 0 4px 14px rgba(0,0,0,0.1);
  border-radius: 10px;
  transition: box-shadow 0.8s ease, color 0.8s ease; 
}
.activity-inner:hover{
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  color: var(--base1);
}
.activity-img{
  width: 100%;
  height: 240px;
  margin-bottom: 20px;
  overflow: hidden; 
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}
.activity-img img {
  width: 100%;
  max-width: 100%;
  height: 240px !important;
  display: block;
  object-fit: cover;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  transition: transform 0.8s ease; /* アニメーション */
}
/* hover時に画像を拡大 */
.activity-inner:hover .activity-img img {
  transform: scale(1.1); /* 110% */
}
.activity-date{
  margin-left: 20px;
}
.activity-item{
  font-weight: 700;
  font-size: var(--fs-title);
   padding-left: 20px;
   padding-right: 20px;
   line-height: 1.6em;
   padding-bottom: 20px;
}
/*--------------------------------------------------------
  ピックアップ
--------------------------------------------------------*/
.pickup-sec {
  width: 100%;
  margin-top: 80px;
  background-color: #fff9ed;
  margin-bottom: 100px;
}
.pickup { padding: 40px 0; background:#fff9ed; }
.pickup-title { width:92%; max-width:1585px; margin:0 auto 16px; font-size:24px; font-weight:700; }

.swiper-pickup { width:92%; max-width:1585px; margin:0 auto; }
.swiper-pickup img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  object-fit: cover;
}
/* 画像 hover */
.swiper-pickup img {
    transition: opacity 0.8s ease; 
}
.swiper-pickup img:hover {
  opacity: 0.5;
}

/* ナビゲーション矢印 */
.pickup-prev, .pickup-next { 
 }
/* デフォルト矢印を消す */
.pickup-prev::after, .pickup-next::after {
  display: none;
}
/* 通常のドット */
.pickup-pagination .swiper-pagination-bullet {
  background: #ccc;   /* ←グレーに変更 */
  opacity: 1;         /* Swiperデフォは0.2。しっかり色を出すなら1に */
}
/* アクティブ（現在のスライド） */
.pickup-pagination .swiper-pagination-bullet-active {
  background: #db535e; /* ←ブランドカラーなど好きな色 */
}







/************************************************************************************************************************************************************************************
************************************************************************************************************************************************************************************
     スマホ用の設定　ここから
************************************************************************************************************************************************************************************
************************************************************************************************************************************************************************************/
@media screen and (max-width:1020px) {
/*--------------------------------------------------------
　ファーストビュー
--------------------------------------------------------*/

.top-fv-catch {
  position: absolute; 
  top: 36%;
  right: 4%;          
  color: #4d4d4d;
  font-size: 40px; 
  font-weight: 700;
  line-height: 1.4em;
  letter-spacing: 0.1em;
  text-align: right;
  padding: 0 20px; /* スマホで文字が端に寄りすぎないように */
  z-index: 10; 
  writing-mode: vertical-rl;


    text-shadow:
    0 0 4px rgba(255, 255, 255, 0.8),
    0 0 8px rgba(255, 255, 255, 0.6),
    0 0 12px rgba(255, 255, 255, 0.4);
}
.top-fv-catch-sub{
  margin-top: 20px;
  font-size: clamp(0.875rem, 0.638rem + 1.19vw, 1.75rem);/* w320=14px → w1500=28px */
    line-height: 1.8em;
    padding-left: 10px;
    letter-spacing: 0.1em;
}



/*--------------------------------------------------------
  メインビジュアル
--------------------------------------------------------*/
/* 高さの先取り（CLS対策） */
.swiper-hero { aspect-ratio: 9/16; width:100%; height: 100svh; }

/* 画像フィット */
.slide-img, .slide-img img { width:100%; height:100%; display:block; }
.slide-img img { object-fit: cover; }

/* 通常のドット */
.hero-pagination .swiper-pagination-bullet {
  background: #ccc;   /* ←グレーに変更 */
  opacity: 1;         
}
/* アクティブ（現在のスライド） */
.hero-pagination .swiper-pagination-bullet-active {
  background: #db535e; 
}





/* # =================================================================
   # コンテンツ
   # ================================================================= */
main {
	
}





/*--------------------------------------------------------
緊急お知らせ
--------------------------------------------------------*/
.fv-alert-content {
  width: 90%;
  max-width: 90%;
  margin: 30px auto;
  background-color: #ff1f5417;
  border-radius: 4px;
  padding:20px;
}
.fv-alert-inner{
  width: 100%;
  display: block;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0px auto;
  color: #ff1f54;
  padding-top: 10px;
  padding-bottom: 10px;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.fv-alert-inner:hover {
  background-color: #ffdfe5;
  color: var(--black);
}
.fv-alert-icon {
  display: none;
}
.fv-alert-date{
  width: 100%;
  font-size: var(--fs-note);
  margin-left: 0px;
  padding-left: 25px;
  position: relative;
}
.fv-alert-date::after {
	content: "";
	position: absolute;
	left: 0;
	top:50%;
	margin-top: -10px;
	width: 20px;
	height: 20px;
}
.fv-alert-date-large{
  font-size: var(--fs-lead);
}
.fv-alert-news{
  width: 100%;
  font-size: var(--fs-body);
  font-weight: 700;
  margin-top: 5px;
}


/*--------------------------------------------------------
診療科目
--------------------------------------------------------*/
.category-sec{
  height: auto;
}
.category-content{
  width: 90%;
  max-width: 90%;
  margin: 0 auto 20px;
  display: block;
  flex-wrap: none;
  justify-content: none;
  padding-top: 30px;
  padding-bottom: 10px;
}
.fv-alert-content + .category-content{
  margin: 20px auto;
}
.category-inner {
  position:relative;
  display: block;
  width: 100%;
  height: 85px;
  background-color: var(--white);
  border-radius: 6px;
  margin-bottom: 23px;
  box-shadow: 0 4px 4px rgba(0,0,0,0.05); /* x方向, y方向, ぼかし, 色 */
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
.category-inner {
  position:relative;
  display: block;
  width: 100%;
  height: 120px;
  background-color: var(--white);
  border-radius: 6px;
  margin-bottom: 30px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2); /* x方向, y方向, ぼかし, 色 */
}
}

.category-inner::after {
	content: "";
	width: 20px;
	height: 20px;
	background-size: 100% 100%;
	position: absolute;
	top: 50%;
	margin-top: -10px;
	right: 5%;
}
.category-img {
  width: 30%;
  height: auto;
  overflow: hidden;
  position: absolute;
}
.category-img img{
  width: 128%;
  margin-left: -14%;
  height: auto;
  object-fit: contain;
  border-top-right-radius: 0px;
  border-top-left-radius: 4px;
}
.category-title {
  position: absolute;
  top: 50%;                /* 縦位置 */
  left: 31%;
  transform: none;
  transform: translateY(-50%); /* 自身の幅の半分戻す → 中央寄せ */
  width: 57%;
  background-color: none;
  background: none;
  color: var(--base1);
  padding: 20px 0;
  text-align: center;
  border-radius: 4px;
  font-size: var(--fs-h3);
  font-weight: 400;
}
.category-icon{
  display: none;
}
.category-icon img {
  display: none;
}
.category-text{
  display: none;
}
.category-link-icon{
  display: none;
}






/*--------------------------------------------------------
  新着情報
--------------------------------------------------------*/
.news-sec {
  position: relative;
}
.news-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 88%;             
  height: 100%;
  background-color: #fff9ed;
  border-radius: 0 30px 30px 0; /* 角丸（上左, 上右, 下右, 下左） */
  z-index: -1;              /* コンテンツの後ろへ */
}
.news-content{
  width: 90%;
  max-width: 90%;
  display: block;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 30px auto;
  padding-top: 20px;
  padding-bottom: 40px;
}
.news-3colm{
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 20px;
  margin-bottom: 60px;
}
.news-3colm:last-child {
  margin-bottom: 0px;
}

.news-2colm{
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  padding: 20px;
  margin-bottom: 60px;
}
.news-2colm:last-child {
  margin-bottom: 0px;
}

.news-date{
  background-color: var(--lightgray);  
  padding: 8px 12px;
  display: inline-block;
  margin-bottom: 10px;
  font-size: 8px;
  margin-left: 10px;
}
.news-date-large{
    font-size: 10px;
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
.news-headline{
  background-color: var(--base1);
  width: 90%;
  margin: 0 auto;
  padding: 20px;
  margin-top: -40px;
  margin-bottom: 10px;
  border-radius: 8px;
  color: #fff;
  display: flex;              /* 横並び */
  align-items: center;        /* 縦方向を中央揃え */
  justify-content: space-between; /* 両端に配置する場合 */
  transition: opacity 0.5s ease;
  cursor: pointer; 
}
.news-icon{
  width: 5%;  
  height: auto;
}
.news-headline-text{
  width: 90%;  
  font-weight: 700;
  font-size: clamp(1rem, 0.94rem + 0.82vw, 1.375rem);/* w768=16px → w1500=22px */
  margin-left: 5%;
}
.news-arrow{
  width: 5%;  
  height: auto;
}
}


/*--------------------------------------------------------
  紹介テキスト
--------------------------------------------------------*/
.text-sec {
  width: 92%;
  max-width: 1585px;
  display: block;
  margin: 0 auto;
  padding: 10px 0 10px 0;
}
.text-sec p {
  font-size: var(--fs-body);
  font-weight: 700;
  line-height: 2;
  text-align: left;
}



/*--------------------------------------------------------
  施設の特長
--------------------------------------------------------*/
.strength-sec {
  width: 100%;
  position: relative;
  margin-top: 70px;
}
.strength-sec .strength-block {
  width: 100%;
  height: auto;
  margin: 0 auto 100px;
  position: relative;
}
.strength-sec .bgLeft::before, 
.strength-sec .bgRight::before {
	content: "";
	position: absolute;
	top: -30px;
	width: 60%;
	height: 350px;
	background-color: var(--base1);
	z-index: -1;              /* コンテンツの後ろへ */
}

.strength-sec .strength-block ul.leftSide li.imgBLock, 
.strength-sec .strength-block ul.rightSide li.imgBLock {
	height: 250px;
	width: 100%;
	display: block;
	overflow: hidden;
	margin-bottom: 30px;
}
.strength-sec .strength-block ul.leftSide li.imgBLock {
	float: none;
	margin-right: 0;
}
.strength-sec .strength-block ul.rightSide li.imgBLock {
	float: none;
	margin-left: 0;
}
.strength-sec .strength-block ul.leftSide li.imgBLock img, 
.strength-sec .strength-block ul.rightSide li.imgBLock img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.strength-sec ul.leftSide li.linkBLock, 
.strength-sec ul.rightSide li.linkBLock {
	width: 90%;
	float: none;
	clear: both;
	display: block;
	padding: 0px 10px 30px 10px;
	margin-bottom: 30px;
	border-bottom: 1px solid #4D4D4D;
	margin-left: auto;
	margin-right: auto;
}
.strength-sec ul.rightSide li.linkBLock {
	float: none;
}
.strength-sec ul.leftSide li.textBlock, 
.strength-sec ul.rightSide li.textBlock {
	width: 90%;
	padding: 0px 10px 30px 10px;
	float: none;
	margin-left: auto;
	margin-right: auto;
}
.strength-sec ul.rightSide li.textBlock {
	float: none;
}
 .strength-sec ul.leftSide li.textBlock p, 
  .strength-sec ul.rightSide li.textBlock p {
	 font-size: var(--fs-body);
	 line-height: 1.8;
}

.linkBLock strong {
	font-size: var(--fv-fs-h2);
	font-weight: 700;
	color: #333;
	margin-right: 20px;
	padding-top: 0px;
	line-height: 1.8;
	display: inline-block;
	vertical-align: middle;
	max-width: 90%;
	@media screen and (max-width:768px) {
		width: calc(100% - 35px);
		font-size: 18px;
		margin: 0;
	}
}
.linkBLock .sec-title-arrow{
  width: 100%;
  display: inline-block;     /* transformが効くように */
  transition: transform 0.3s ease; /* スムーズに動く */
  margin-right: 10px;
  vertical-align: middle;
}



/*--------------------------------------------------------
  活動
--------------------------------------------------------*/
.activity-sec {
  position: relative;
  margin-top: 80px;
}
.activity-background {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;             
  height: 200px;
  border-radius: 30px 0 0 30px; /* 角丸（上左, 上右, 下右, 下左） */
  z-index: -1;              /* コンテンツの後ろへ */
}
.activity-content {
  width: 90%;
  max-width: 90%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px auto;
  padding-top: 0px;
  padding-bottom: 0px;
}
.activity-inner{
  width: 47%;
  border-radius: 5px;
  margin-bottom: 30px; 
}
.activity-inner:hover{
  box-shadow: 0 4px 18px rgba(0,0,0,0.1); /* x方向, y方向, ぼかし, 色 */
  color: var(--base1);
}
.activity-img{
  width: 100%;
  height: 145px;
  margin-bottom: 20px;
  overflow: hidden; 
}
.activity-img img {
  width: 100%;
  height: 145px !important;
  object-fit: cover;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  transition: transform 0.8s ease; /* アニメーション */
}
/* hover時に画像を拡大 */
.activity-inner:hover .activity-img img {
  transform: scale(1.1); /* 110% */
}
.activity-date{
  margin-left: 10px;
}
.activity-item{
  font-weight: 700;
  font-size: var(--fs-title);
   padding-left: 20px;
   padding-right: 20px;
   line-height: 1.6em;
   padding-bottom: 20px;
}



/*--------------------------------------------------------
  ピックアップ
--------------------------------------------------------*/
.pickup-sec {
  width: 100%;
  margin-top: 40px;
  margin-bottom: 40px;
}
.pickup { padding: 40px 0; background:#fff9ed; }
.pickup-title { width:90%; max-width:90%; margin:0 auto 16px; font-size:24px; font-weight:700; }

.swiper-pickup { width:90%; max-width:90%; margin:0 auto; }
.swiper-pickup img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  object-fit: cover;
}
/* 画像 hover */
.swiper-pickup img {
    transition: opacity 0.8s ease; 
}
.swiper-pickup img:hover {
  opacity: 0.5;
}

/* ナビゲーション矢印 */
.pickup-prev, .pickup-next {
	width: 46px !important;
	height: 20px;
}
.pickup-prev { margin-left: -10px; }
.pickup-next { margin-right: -10px; }

/* デフォルト矢印を消す */
.pickup-prev::after, .pickup-next::after {
  display: none;
}
/* 通常のドット */
.pickup-pagination .swiper-pagination-bullet {
  background: #ccc;   /* ←グレーに変更 */
  opacity: 1;         /* Swiperデフォは0.2。しっかり色を出すなら1に */
}





} /**** END media screen *****/