@charset "UTF-8";
/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
/* Theme Name: res */
/* 外部ファイル／フォントの読み込み　
============================================================================ */
/* 基本的なクラスや要素の設定　
============================================================================ */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

li {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

.min {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 400;
}

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

td input {
  max-width: 100%;
}

i,
em {
  font-style: normal;
}

/* SCSS メディアクエリ */
/* フォントサイズをremに変換するmixin */
.inner {
  width: 100%;
  position: relative;
}

/* フレックスボックス */
/* 横幅の計算 */
/* ディレクター用コーディング（ディレクターが使うためのクラスを設定する場所）　　更新が必要な時以外はいじらない
==================================================================================================== */
.pc-only {
  display: unset;
}

.tab-only {
  display: none;
}

.sp-only {
  display: none;
}

.pctab-only {
  display: unset;
}

.tabsp-only {
  display: none;
}

a.tellink {
  pointer-events: none;
}

/* サイト全体に関係するもの（基本のフォントサイズ、文字色、行間、Webフォントなど）　サイトごとに変更する
==================================================================================================== */
/* ルートのフォントサイズを変更したい場合ここから変更する */

html,
body {
  font-size: 1rem;
  line-height: 2;
  color: #333;
  font-family: "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

html {
  overflow: auto;
}

body {
  overflow: hidden;
}

/* WebフォントGoogle　NotoSans JP　Regular:fw400／Bold:fw700 */
/*.noto {
	font-family: 'Noto Sans JP', sans-serif;
}*/
/* WebフォントGoogle　Zen Kaku Gothic New　Medium:fw500／Bold:fw700／Black:fw900 */
.zen {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

/* header部分　
============================================================================== */
.topline_head {
  width: 100%;
  height: 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 4vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.topline_head p.txt_sub {
  font-size: 0.625rem;
  line-height: 1.45;
}
.topline_head .col_right {
  width: 400px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.topline_head .col_right .tel {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-right: 2%;
}
.topline_head .col_right .tel p {
  font-size: 1.5rem;
  color: #F25840;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
}
.topline_head .col_right .tel p i {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid currentColor;
  font-size: 0.625rem;
  line-height: 20px;
  text-align: center;
  margin-right: 0.5rem;
  position: relative;
  top: -0.3em;
}
.topline_head .col_right .tel p span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.2;
}

header {
  width: 100%;
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: stretch;
  padding: 0 0 0 64px;
}

@media (max-width: 767px) {
	header {
  padding: 0 0 0 24px;
}
}


header.fixed {
  position: fixed;
  top: 0;
}
header .head_logo {
  height: 100%;
  padding: 10px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: unset;
}
header .head_logo a:hover {
  opacity: 0.8;
}
header .gnav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
}
header .gnav .ul_one {
  max-width: 930px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
}
header .gnav .add {
  display: block;
  width: 100%;
  padding: 0rem 10vw 3.5rem;
  position: relative;
}
header .gnav .add .tel {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.8rem;
}
header .gnav .add .tel p {
  font-size: 2.125rem;
  color: #F25840;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
}
header .gnav .add .tel p i {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid currentColor;
  font-size: 0.875rem;
  line-height: 30px;
  text-align: center;
  margin-right: 0.5rem;
  position: relative;
  top: -0.3em;
}
header .gnav .add .tel p span {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
}
header .gnav > ul > li > a {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  padding: 1rem 0.8rem;
  position: relative;
}
header .gnav > ul > li > a:hover i {
  color: #B49E78;
}
header .gnav > ul > li > a:hover p {
  color: #B49E78;
  position: relative;
  transition: 0.3s ease;
}
header .gnav > ul > li > a p {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  position: relative;
}
header .gnav > ul li.pc-only a > i {
  font-size: 0.625rem;
  color: #F7BA41;
  position: absolute;
  bottom: 0;
  left: 50%;
}
header .gnav > ul > li.pc-only {
  position: relative;
}
header .gnav > ul > li.pc-only:hover ul.submenu {
  visibility: visible;
  opacity: 1;
}
header .gnav > ul > li.pc-only ul.submenu {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  border-radius: 0.4rem;
  padding: 1.2rem 1.5rem;
  /*@include mq_sp {
  	visibility: visible;
  	opacity: 1;
  	position: static;
  	width: 100%;
  }*/
}
header .gnav > ul > li.pc-only ul.submenu > li:not(:last-child) {
  margin-bottom: 0.5rem;
}
header .gnav > ul > li.pc-only ul.submenu > li a {
  white-space: nowrap;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  position: relative;
}
header .gnav > ul > li.pc-only ul.submenu > li a::before {
  content: "\f105";
  font-size: 0.625rem;
  color: #F7BA41;
  font-weight: 700;
  font-family: "Font Awesome 5 Free";
  position: absolute;
  top: 50%;
  right: calc(100% + 0.2rem);
  transform: translateY(-50%);
}
header .gnav > ul > li.pc-only ul.submenu > li a p {
  display: contents;
}
header .gnav .parent {
  position: relative;
}
header .gnav .parent i {
  font-size: 0.75rem;
  color: #B49E78;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0%;
}
header .gnav ul.submenu.child {
  display: none;
}
header .gnav ul.submenu.child li a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: unset;
  border-bottom: 1px solid #D3D3D3;
  position: relative;
}
header .gnav ul.submenu.child li a p {
  font-size: 0.75rem;
  font-weight: 400;
}

.icn_menu {
  width: 13.3333333333vw;
  height: 13.3333333333vw;
  position: absolute;
  top: 1.3333333333vw;
  right: 1.3333333333vw;
  z-index: 13;
}
.icn_menu .menu-trigger,
.icn_menu .menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
}
.icn_menu .menu-trigger {
  width: 100%;
  height: 100%;
  background-color: #70A375;
  border-radius: 0.6rem;
  padding: 0.8rem;
}
.icn_menu .menu-trigger .spanwrap {
  height: 100%;
  position: relative;
}
.icn_menu .menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.15rem;
  background-color: #fff;
  border-radius: 999px;
}
.icn_menu .menu-trigger span:nth-of-type(1) {
  top: 0;
}
.icn_menu .menu-trigger span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}
.icn_menu .menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.icn_menu .menu-trigger.active span {
  background-color: #fff;
}
.icn_menu .menu-trigger.active span:nth-of-type(1) {
  transform: translateY(-50%) rotate(-45deg);
  top: 50%;
}
.icn_menu .menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.icn_menu .menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-50%) rotate(45deg);
  top: 50%;
}

/* .main　メインビジュアル
======================================================================================== */
.main_home {
  position: relative;
}
.main_home .content {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.main_home .content .inner {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  align-content: unset;
}
.main_home .content .inner .txt {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  align-content: unset;
}
.main_home .content .inner .txt .ttl01 {
  font-size: 2.3125rem;
  color: #70A375;
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.19em;
  writing-mode: vertical-rl;
}
.main_home .content .inner .txt .ttl01 span {
  background-color: #fff;
  padding: 1rem 0.6rem;
}
.main_home .fix_right {
  position: absolute;
  bottom: 10%;
  right: 0;
  z-index: 2;
}
.main_home .fix_right .btn:not(:last-child) {
  margin-bottom: 6px;
}
.main_home .fix_right .btn a {
  width: 120px;
  height: 120px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  border-radius: 0.6rem 0 0 0.6rem;
  transform: translateX(25%);
  transition: 1s ease;
}
.main_home .fix_right .btn a:hover {
  transform: translateX(0);
}
.main_home .fix_right .btn a i {
  font-size: 1.25rem;
  margin-bottom: 0.5em;
}
.main_home .fix_right .btn a p {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.main_home .fix_right .bg_lg a {
  background-color: #70A375;
  color: #fff;
}
.main_home .fix_right .bg_lg a:hover {
  background-color: #3d6541;
}
.main_home .fix_right .bg_lbr a {
  background-color: #B49E78;
  color: #fff;
}
.main_home .fix_right .bg_lbr a:hover {
  background-color: #836D47;
}
.main_home .main_news {
  width: 610px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background-color: #f5f5f5;
  border-radius: 0 999px 999px 0;
  padding: 1rem 2%;
  position: absolute;
  bottom: 8%;
  left: 0;
}
.main_home .main_news .ttl02 {
  width: 20%;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
.main_home .main_news ul {
  width: 80%;
  border-left: 1px solid #D3D3D3;
  padding-left: 1rem;
}
.main_home .main_news ul li a .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.main_home .main_news ul li a .wrap time, .main_home .main_news ul li a .wrap .cate {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.5;
}
.main_home .main_news ul li a .wrap time {
  margin-right: 2%;
}
.main_home .main_news ul li a .wrap .cate {
  background-color: #F25840;
  padding: 0 0.5rem;
  border-radius: 3px;
  color: #fff;
}

.slick-slider.slick01 {
  line-height: 0;
}
.slick-slider.slick01 li[class^=main]::before {
  content: "";
  width: 100vw;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translate(-50%, 0%);
}
.slick-slider.slick01 li[class^=main].main01::before {
  background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-1.jpg);
}
.slick-slider.slick01 li[class^=main].main02::before {
  background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-2.jpg);
}
.slick-slider.slick01 li[class^=main].main03::before {
  background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-3.jpg);
}

.home-mv__content {
  font-family: "Zen Kaku Gothic New", sans-serif;
  position: absolute;
  width: 100%;
  max-width: 1400px;
  bottom: 90px;
  left: 50%;
  transform: translate(-50%, 0);
  padding: 0 100px;
}

.home-mv__inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: flex-start;
}

.home-mv__copy {
  display: block;
}

.home-mv__msg {
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);
}

.home-mv__btn {
  background-color: #F7BA41;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 100px;
  padding: 14px 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.home-mv__btn-top {
  display: flex;
  gap: 12px;
  align-items: center;
}

.home-mv__btn-num {
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  transform: translate(0px, -4px);
}

.home-mv__btn-icon {
  display: block;
  -webkit-filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, .6));
  filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, .6));
}

.home-mv__btn-sub-text {
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  margin-top: 4px;
}

/* 共通パーツ
============================================================================== */
.section_cmn {
  padding: 5rem 0;
}
.section_cmn.t_narrow {
  padding-top: 3.5rem;
}
.section_cmn.b_narrow {
  padding-bottom: 3.5rem;
}
.section_cmn.t_wide {
  padding-top: 7.5rem;
}
.section_cmn.b_wide {
  padding-bottom: 7.5rem;
}

.ttl_cmn {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.85;
  margin-bottom: 1em;
}
.ttl_cmn span {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 0.8125rem;
  color: #70A375;
  margin-bottom: 0.8em;
  position: relative;
  /*&.bar::after {
  	content: "";
  	width: 40px;
  	height: 1px;
  	background-color: currentColor;
  	position: absolute;
  	top: 50%;
  	left: calc(100% + 0.8rem);
  	@include mq_sp {
  	}
  }*/
}
.ttl_cmn span.bar_left {
  padding-left: 54px;
}
.ttl_cmn span.bar_left::before {
  content: "";
  width: 40px;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
}
.ttl_cmn span.bar_left2 {
  font-size: 1.375rem;
  color: #333;
  padding-left: 110px;
}
.ttl_cmn span.bar_left2::before {
  content: "";
  width: 100px;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
}
.ttl_cmn span.first_r {
  font-size: 1.0625rem;
  color: #333;
}
.ttl_cmn span.first_r::first-letter {
  color: #F25840;
}
.ttl_cmn span.mdl {
  font-size: 1rem;
  margin-bottom: 0;
}
.ttl_cmn em {
  display: block;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
}
.ttl_cmn b {
  color: #F25840;
}
.ttl_cmn.bdb {
  padding-bottom: 0.3em;
  border-bottom: 1px solid #333;
}
.ttl_cmn.tac {
  text-align: center;
}
.ttl_cmn.tac span {
  margin-left: auto;
  margin-right: auto;
}
.ttl_cmn.color_w {
  color: #fff;
}
.ttl_cmn.color_w span {
  color: #fff;
}

.ttl_cmn2 {
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-bottom: 0.7em;
  /*&.bg_ash {
  	background-color: $color_ash;
  	border-radius: 5px;
  	padding: 0.4rem 2%;
  }
  &.bg_w {
  	background-color: #fff;
  	border-radius: 5px;
  	padding: 0.4rem 2%;
  }
  &.bd {
  	padding-bottom: 0.2em;
  	border-bottom: 1px solid currentColor;
  }*/
}
.ttl_cmn2.medium {
  font-weight: 400;
}
.ttl_cmn2.tac {
  text-align: center;
}
.ttl_cmn2.color_w {
  color: #fff;
}
.ttl_cmn2.color_r {
  color: #F25840;
}
.ttl_cmn2.color_lg {
  color: #70A375;
}
.ttl_cmn2.color_lbr {
  color: #B49E78;
}
.ttl_cmn2.large {
  font-size: 2.5rem;
}
.ttl_cmn2.big {
  font-size: 2.25rem;
}
.ttl_cmn2.mdl {
  font-size: 1.25rem;
}
.ttl_cmn2.mdl2 {
  font-size: 1.375rem;
}
.ttl_cmn2.bar_left {
  padding-left: 30px;
  position: relative;
}
.ttl_cmn2.bar_left::before {
  content: "";
  width: 20px;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
}
.ttl_cmn2.bg_ash {
  background-color: #FAF8F5;
  padding: 0.4rem 2%;
}

.txt_cmn {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2.6;
  letter-spacing: 0.1em;
}
.txt_cmn.lh_m {
  line-height: 2.25;
}
.txt_cmn.lh_n {
  line-height: 1.6;
}
.txt_cmn.bold {
  font-weight: 700;
}
.txt_cmn.color_w {
  color: #fff;
}
.txt_cmn.color_r {
  color: #F25840;
}
.txt_cmn.color_lg {
  color: #70A375;
}
.txt_cmn.color_lbr {
  color: #B49E78;
}
.txt_cmn.tac {
  text-align: center;
}
.txt_cmn.tar {
  text-align: right;
}
.txt_cmn.large {
  font-size: 1.125rem;
}
.txt_cmn.mdl {
  font-size: 0.875rem;
}
.txt_cmn.small {
  font-size: 0.75rem;
}

.btn_cmn {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
.btn_cmn a {
  width: 340px;
  height: 60px;
  max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.btn_cmn a:hover span.dot::before {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.25s, transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
.btn_cmn a:hover span.dot::after {
  opacity: 0;
  transform: scale(28);
  transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, transform 0.65s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}
.btn_cmn a p {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
}
.btn_cmn a i {
  font-size: 0.75rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
}
.btn_cmn a span.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8%;
}
.btn_cmn a span.dot::before, .btn_cmn a span.dot::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: currentColor;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}
.btn_cmn a span.dot::before {
  opacity: 0;
  transform: scale(0);
}
.btn_cmn a span.dot::after {
  transition: opacity 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, transform 0s linear 0s;
}
.btn_cmn.center {
  margin: 0 auto;
}
.btn_cmn.bd_r a {
  border: 2px solid #F25840;
  background-color: #fff;
  color: #F25840;
  transition: border-color 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) 0s;
}
.btn_cmn.bd_r a:hover {
  background-color: #F25840;
  color: #fff;
}
.btn_cmn.bd_r2 a {
  border: 2px solid #F25840;
  background-color: #fff;
  color: #F25840;
  transition: border-color 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) 0s;
}
.btn_cmn.bd_r2 a:hover {
  border: 2px solid #F7BA40;
  background-color: #F7BA40;
  color: #fff;
}
.btn_cmn.bd_lbr a {
  border: 2px solid #B49E78;
  background-color: #fff;
  color: #B49E78;
  transition: border-color 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) 0s;
}
.btn_cmn.bd_lbr a:hover {
  background-color: #B49E78;
  color: #fff;
}

.btn_round {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
.btn_round a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  justify-content: center;
  padding: 21px 12px;
  height: 100%;
}
.btn_round a p {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.btn_round a p i {
  font-size: 0.8125rem;
  margin-right: 0.2em;
  position: relative;
  top: -0.05em;
}
.btn_round a > i {
  font-size: 0.625rem;
  position: absolute;
  top: 50%;
  right: 6%;
  transform: translateY(-50%);
}
.btn_round.bg_lg a {
  background-color: #70A375;
  color: #fff;
}
.btn_round.bg_lg a:hover {
  background-color: #3c6541;
  transition: 0.3s ease;
}
.btn_round.bg_y a {
  background-color: #F7BA41;
  color: #fff;
}
.btn_round.bg_y a:hover {
  background-color: #C68E1E;
  transition: 0.3s ease;
}

.side_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
}
.side_cmn figure {
  width: 50%;
}
.side_cmn .txt {
  width: 45.5357142857%;
}
.side_cmn.reverse {
  flex-direction: row-reverse;
}
.side_cmn.a_start {
  align-items: flex-start;
}
.side_cmn.commu {
  align-items: stretch;
}
.side_cmn.commu figure {
  width: 52.6785714286%;
  position: relative;
}
.side_cmn.commu figure img {
  position: relative;
  top: -2.5rem;
}
.side_cmn.commu .txt {
  width: 50%;
  background-color: #fff;
  border-radius: 0.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
  padding: 1rem 5%;
}
.side_cmn.commu:not(.reverse) .txt {
  margin-left: -2.6785714286%;
}
.side_cmn.commu.reverse .txt {
  margin-right: -2.6785714286%;
}
.side_cmn.phil {
  align-items: flex-start;
}
.side_cmn.phil figure {
  width: 50%;
}
.side_cmn.phil .txt {
  width: 50%;
}

.over_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
  padding: 0rem calc(50vw - 50%) 0rem 0;
  margin: 0 calc(50% - 50vw);
  position: relative;
}
.over_cmn figure {
  width: calc(100% - 560px);
  text-align: right;
}
.over_cmn .txt {
  width: 400px;
}
.over_cmn.reverse {
  flex-direction: row-reverse;
  padding: 0rem 0 0rem calc(50vw - 50%);
}
.over_cmn.reverse figure {
  text-align: left;
}
.over_cmn.a_start {
  align-items: flex-start;
}
.over_cmn.clinic figure {
  width: calc(100% - 640px);
}
.over_cmn.clinic .txt {
  width: 580px;
}

.half_cmn {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset;
}
.half_cmn figure {
  width: 50%;
}
.half_cmn figure img {
  width: 100%;
}
.half_cmn .txt {
  width: 50%;
  padding: 3.5rem 0;
}
.half_cmn .txt .txtinner {
  float: left;
  max-width: 560px;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: stretch;
  align-items: center;
  align-content: center;
}
.half_cmn:not(.reverse) .txt .txtinner {
  padding-left: 3vw;
  margin-right: 3vw;
}
.half_cmn.reverse {
  flex-direction: row-reverse;
}
.half_cmn.reverse .txt .txtinner {
  float: right;
  padding-right: 3vw;
  margin-left: 3vw;
}
.half_cmn.bg_r .txt {
  background-color: #F25840;
}
.half_cmn.bg_lbr .txt {
  background-color: #B49E78;
}

.bg_txt_cmn {
  font-size: 12.5rem;
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
.bg_txt_cmn.color_w {
  color: #fff;
}
.bg_txt_cmn.color_lg {
  color: rgba(112, 163, 117, 0.1);
}
.bg_txt_cmn.vt {
  writing-mode: vertical-rl;
}

/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}

.scroll_up.on {
  transform: translateY(0);
  opacity: 1;
}

/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
  transition: 0.8s ease-in-out;
  transform: translateX(-30px);
  opacity: 0;
  filter: alpha(opacity=0);
}

.scroll_left.on {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateX(0);
}

/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
  transition: 0.8s ease-in-out;
  transform: translateX(30px);
  opacity: 0;
  filter: alpha(opacity=0);
}

.scroll_right.on {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateX(0);
}

/* 本体
======================================================================================== */
.home_second .bnr {
  background: url(images/index/bg_bnr01.jpg) center center/cover no-repeat;
  padding: 1.8rem 5% 2.4rem;
}
.home_second .bnr .ttl01 {
  font-size: 2.3125rem;
  color: #F25840;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}

.home_about {
  padding-bottom: 8rem;
}
.home_about .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 30px;
}
.home_about .inner .unit {
  width: 30.3571428571%;
}
.home_about .inner .unit .content {
  background-color: #fff;
  border-radius: 0.6rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.home_about .inner .unit .content figure {
  text-align: center;
}
.home_about .inner .unit .content ul {
  padding: 1rem 8% 2rem;
}
.home_about .inner .unit .content ul li {
  padding: 1rem 0;
  border-bottom: 1px solid #D3D3D3;
}
.home_about .inner .unit .content ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.home_about .inner .unit .content ul li a:hover p {
  border-bottom: 1px solid currentColor;
  transition: 0.3s ease;
}
.home_about .inner .unit .content ul li a:hover i {
  transform: translateX(5px);
  transition: 0.3s ease;
}
.home_about .inner .unit .content ul li a p {
  border-bottom: 1px solid transparent;
}
.home_about .inner .unit .content ul li a i {
  font-size: 0.625rem;
  color: #B49E78;
}

.home_overview {
  background-color: #FAF8F5;
  padding: 8rem 0 10rem;
  position: relative;
}
.home_overview .gallery {
  margin: 0 calc(50% - 50vw) 3.5rem;
}
.home_overview .gallery .imgwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1224px;
  margin: 0 auto;
}
.home_overview .gallery .imgwrap figure {
  opacity: 0;
}
.home_overview .gallery .imgwrap figure.js--animated {
  animation: fadeIn 0.5s ease 0.5s 1 forwards;
}
@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
.home_overview .gallery .imgwrap figure:not(:first-child) {
  margin-top: 10px;
}
.home_overview .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 6rem;
}
.home_overview .wrap .ttl_cmn {
  width: 35.7142857143%;
}
.home_overview .wrap p.txt01 {
  width: 55.3571428571%;
}
.home_overview .btnwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
.home_overview .btnwrap .btn_cmn {
  margin: 0 1rem;
}
.home_overview .bg_txt_cmn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.home_feature .side_cmn {
  margin-bottom: 6rem;
}
.home_feature .btnwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

.home_commu {
  background-color: #FAF8F5;
}
.home_commu .side_cmn:first-child {
  margin-bottom: 10rem;
}
.home_commu .side_cmn.commu {
  margin-bottom: 5.5rem;
}

.home_green {
  position: relative;
}
.home_green .bg_txt_cmn {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.home_hospital p.txt01 {
  margin-bottom: 10%;
}

.home_reha .over_cmn {
  margin-bottom: 5rem;
}

.home_pickup ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 4.5rem;
}
.home_pickup ul::after {
  content: "";
  width: 29.4642857143%;
}
.home_pickup ul li {
  width: 29.4642857143%;
}
.home_pickup ul li figure {
  text-align: center;
  margin-bottom: 0.8rem;
}
.home_pickup ul li time {
  font-size: 0.8125rem;
  color: #B49E78;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin-bottom: 0.4rem;
}
.home_pickup ul li .ttl01 {
  line-height: 1.5;
}

.home_news {
  background-color: #FAF8F5;
}
.home_news .colwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5rem;
	gap: 64px;
}
.home_news .colwrap .col {
  width: 46.4285714286%;
}
.home_news .colwrap .col ul li:not(:last-child) {
  margin-bottom: 1rem;
}
.home_news .colwrap .col ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.home_news .colwrap .col ul li a figure {
  width: 27%;
}
.home_news .colwrap .col ul li a .txt {
  width: 69%;
  border-bottom: 1px solid #EDDEC4;
}
.home_news time {
  font-size: 0.8125rem;
  color: #B49E78;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin-bottom: 0.4rem;
}
.home_news .ttl01 {
  line-height: 1.5;
  padding-bottom: 0.8rem;
}

.home_recruit p.txt01 {
  margin-bottom: 10%;
}

.home_access {
  background-color: #FAF8F5;
}
.home_access .map {
  position: relative;
  width: 100%;
  padding-top: 420px;
  overflow: hidden;
}
.home_access .map iframe {
  position: absolute;
  top: -200px;
  left: 0;
  width: 100%;
  height: calc(100% + 200px + 200px);
  pointer-events: none;
}
.home_access .logo {
  margin-bottom: 2.2rem;
}
.home_access p.txt01 {
  line-height: 1.6;
  margin-bottom: 3.5rem;
}

.home_contact {
  position: relative;
}
.home_contact::before, .home_contact::after {
  content: "";
  width: 100%;
  height: 50%;
  position: absolute;
  left: 0;
}
.home_contact::before {
  background-color: #FAF8F5;
  top: 0;
}
.home_contact::after {
  background-color: #70A375;
  bottom: 0;
}
.home_contact .area {
  background-color: #fff;
  padding: 2rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  position: relative;
  z-index: 1;
}
.home_contact .area .col {
  width: 33.33%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.home_contact .area .col:not(:last-child) {
  border-right: 1px solid #EDDEC4;
}
.home_contact .ttl_cmn {
  margin-bottom: 0;
}
.home_contact .ttl01 {
  color: #beac8d;
  margin-bottom: 0.8rem;
}
.home_contact .tel {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.8rem;
}
.home_contact .tel p {
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
}
.home_contact .tel p i {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid currentColor;
  font-size: 0.875rem;
  line-height: 30px;
  text-align: center;
  margin-right: 0.5rem;
  position: relative;
  top: -0.3em;
}
.home_contact .tel p span {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

/* フッター
======================================================================================== */
footer {
  background-color: #70A375;
}
footer .fmain {
  padding: 4.5rem 0 5rem;
}
footer .fmain .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
footer .fmain .inner .left {
  width: 26.7857142857%;
}
footer .fmain .foot_logo {
  margin-bottom: 2.5rem;
}
footer .fmain .fnav {
  width: 63.3928571429%;
}
footer .fmain .fnav .top {
  margin-bottom: 3rem;
}
footer .fmain .fnav .top,
footer .fmain .fnav .btm {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
footer .fmain .fnav .top ul,
footer .fmain .fnav .btm ul {
  width: 25%;
}
footer .fmain .fnav .top ul li:not(:last-child),
footer .fmain .fnav .btm ul li:not(:last-child) {
  margin-bottom: 0.5rem;
}
footer .fmain .fnav .top ul li.parent a p,
footer .fmain .fnav .btm ul li.parent a p {
  font-size: 1rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.1em;
}
footer .fmain .fnav .top ul li a p,
footer .fmain .fnav .btm ul li a p {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
footer .fmain .fnav .top ul li:not(.parent) p,
footer .fmain .fnav .btm ul li:not(.parent) p {
  color: rgba(255, 255, 255, 0.65);
  padding-left: 20px;
  position: relative;
}
footer .fmain .fnav .top ul li:not(.parent) p::before,
footer .fmain .fnav .btm ul li:not(.parent) p::before {
  content: "";
  width: 10px;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
}
footer .foot_band {
  padding: 0.8rem 0;
}
footer .foot_band .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
footer .foot_band .inner a {
  font-size: 0.8125rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.16em;
}
footer .foot_band .inner a:not(:last-child) {
  padding-right: 1.2rem;
  border-right: 1px solid currentColor;
  margin-right: 1.2rem;
}
footer .copyright {
  border-top: 1px solid #fff;
  padding: 0.8rem 0;
  text-align: center;
}
footer .copyright small {
  display: block;
}
@media (min-width: 1200px) {
  .inner {
    max-width: 1160px;
    padding: 0 20px;
    margin: 0 auto;
  }
  header .gnav .ul_one {
    margin-right: 2rem;
  }
  header .gnav .add {
    display: none;
  }
  .slick-slider.slick01 li[class^=main] {
    max-height: 840px;
    height: 100vh;
  }
  .half_cmn figure img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .home_pickup ul li:nth-child(n+4) {
    margin-top: 3.5rem;
  }
  .home_contact .area .col {
    min-height: 208px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .inner {
    padding: 0 4vw;
  }
  .pc-only {
    display: none;
  }
  .tab-only {
    display: unset;
  }
  .sp-only {
    display: none;
  }
  .pctab-only {
    display: unset;
  }
  .tabsp-only {
    display: unset;
  }
  .topline_head {
    height: 50px;
  }
  .topline_head .col_right {
    display: none;
  }
  .topline_head .col_right .tel {
    width: 100%;
  }
  header .gnav {
    display: none;
    width: 100%;
    min-width: unset;
    position: absolute;
    top: 80px;
    left: 0;
    z-index: 11;
  }
  header .gnav::before {
    content: "";
    width: 92%;
    height: 96%;
    background-color: #FAF8F5;
    border-radius: 0 0 0.6rem 0.6rem;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    z-index: 0;
  }
  header .gnav.open {
    display: block;
  }
  header .gnav .ul_one {
    width: 80%;
    display: block;
    max-width: unset;
    margin: 0 auto;
  }
  header .gnav .right {
    width: 100%;
    padding: 1.5rem 10vw 1.2rem;
  }
  header .gnav .right .btn_round {
    margin: 0 auto;
  }
  header .gnav .add .tel {
    width: 100%;
    margin: 0 auto 0.8rem;
  }
  header .gnav .add .btn_round {
    margin: 0 auto;
  }
  header .gnav > ul > li > a {
    justify-content: flex-start;
    padding: 1.2rem 0vw;
    border-bottom: 1px solid #D3D3D3;
  }
  header .gnav > ul > li > a:not(.parent)::after {
    content: "\f105";
    font-size: 0.625rem;
    color: #B49E78;
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 0vw;
    transform: translateY(-50%);
  }
  header .gnav > ul > li > a p {
    text-align: left;
  }
  header .gnav ul.submenu.child li a {
    padding: 1.2rem 0vw;
  }
  header .gnav ul.submenu.child li a::after {
    content: "\f105";
    font-size: 0.625rem;
    color: #B49E78;
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 0vw;
    transform: translateY(-50%);
  }
  .icn_menu {
    width: 60px;
    height: 60px;
    top: 10px;
    right: 10px;
  }
  .icn_menu .menu-trigger {
    padding: 14px;
  }
  .main_home .content .inner .txt .ttl01 {
    font-size: 2.25rem;
  }
  .main_home .content .inner .txt .ttl01 span {
    padding: 0.6rem 0.3rem;
  }
  .main_home .main_news {
    padding: 1rem 4%;
  }
  .slick-slider.slick01 li[class^=main] {
    max-height: 840px;
    height: 100vh;
  }
  .ttl_cmn {
    font-size: 1.25rem;
  }
  .ttl_cmn em {
    font-size: 2.375rem;
  }
  .btn_round a {
    width: 70vw;
    height: 4rem;
  }
  .btn_round a p {
    font-size: 1.125rem;
  }
  .side_cmn.commu figure img {
    top: -1.5rem;
  }
  .over_cmn figure {
    width: 51.7857142857%;
  }
  .over_cmn .txt {
    width: 44.6428571429%;
  }
  .over_cmn.clinic figure {
    width: 48.2142857143%;
  }
  .over_cmn.clinic .txt {
    width: 48.2142857143%;
  }
  .half_cmn figure img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .bg_txt_cmn {
    font-size: 6.25rem;
  }
  .home_overview .btnwrap .btn_cmn:not(:last-child) {
    margin-bottom: 0.6rem;
  }
  .home_feature .btnwrap .btn_cmn:not(:last-child) {
    margin-bottom: 0.6rem;
  }
  .home_pickup ul li:nth-child(n+4) {
    margin-top: 2.5rem;
  }
  .home_contact .tel {
    width: 100%;
    margin: 0 auto 0.8rem;
  }
  footer .fmain .fnav .top ul li.parent a p,
  footer .fmain .fnav .btm ul li.parent a p {
    font-size: 0.8125rem;
  }
  footer .fmain .fnav .top ul li a p,
  footer .fmain .fnav .btm ul li a p {
    font-size: 0.6875rem;
  }
}
@media (max-width: 767px) {
  .inner {
    padding: 0 6%;
  }
  .pc-only {
    display: none;
  }
  .tab-only {
    display: none;
  }
  .sp-only {
    display: unset;
  }
  .pctab-only {
    display: none;
  }
  .tabsp-only {
    display: unset;
  }
  a.tellink {
    pointer-events: inherit;
  }
  :root {
    font-size: 4.26666vw !important;
  }
  .topline_head {
    height: 10vw;
  }
  .topline_head .col_right {
    display: none;
  }
  .topline_head .col_right .tel {
    width: 100%;
  }
  header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
  }
  header .head_logo {
    width: 84vw;
    height: 16vw;
    z-index: 12;
  }
  header .head_logo img {
    width: 26.6666666667vw;
  }
  header .gnav {
    display: none;
    width: 100%;
    min-width: unset;
    position: absolute;
    top: 16vw;
    left: 0;
    z-index: 11;
  }
  header .gnav::before {
    content: "";
    width: 92%;
    height: 96%;
    background-color: #FAF8F5;
    border-radius: 0 0 0.6rem 0.6rem;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    z-index: 0;
  }
  header .gnav.open {
    display: block;
  }
  header .gnav .ul_one {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  header .gnav .right {
    width: 100%;
    padding: 1.5rem 10vw 1.2rem;
  }
  header .gnav .add .tel {
    width: 100%;
  }
  header .gnav > ul > li > a {
    height: 7vh;
    justify-content: flex-start;
    padding: 0.5rem 0vw;
    border-bottom: 1px solid #D3D3D3;
  }
  header .gnav > ul > li > a:not(.parent)::after {
    content: "\f105";
    font-size: 0.625rem;
    color: #B49E78;
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 0vw;
    transform: translateY(-50%);
  }
  header .gnav > ul > li > a p {
    font-size: 0.875rem;
    text-align: left;
  }
  header .gnav ul.submenu.child li a {
    height: 7vh;
    padding: 0.5rem 0vw;
  }
  header .gnav ul.submenu.child li a::after {
    content: "\f105";
    font-size: 0.625rem;
    color: #B49E78;
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 0vw;
    transform: translateY(-50%);
  }
  .main_home {
    height: 38.75rem;
  }
  .main_home .content .inner .txt {
    padding-bottom: 10vh;
  }
  .main_home .content .inner .txt .ttl01 {
    font-size: 1.625rem;
  }
  .main_home .content .inner .txt .ttl01 span {
    padding: 0.6rem 0.3rem;
  }
  .main_home .fix_right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    width: 100vw;
    position: fixed;
    bottom: 0;
    right: 0;
  }
  .main_home .fix_right .btn:not(:last-child) {
    margin-bottom: 0;
  }
  .main_home .fix_right .btn a {
    width: 50vw;
    height: 12vw;
    flex-direction: row;
    transform: unset;
    border-radius: 0.4rem 0.4rem 0 0;
  }
  .main_home .fix_right .btn a i {
    font-size: 0.875rem;
    margin: 0 0.4em 0 0;
  }
  .main_home .fix_right .btn a p {
    font-size: 0.75rem;
  }
  .main_home .main_news {
    width: 92vw;
    padding: 1rem 4%;
  }
  .main_home .main_news .ttl02 {
    width: 17%;
    font-size: 0.9375rem;
  }
  .main_home .main_news ul {
    width: 83%;
    padding-left: 0.5rem;
  }
  .main_home .main_news ul li a .wrap time, .main_home .main_news ul li a .wrap .cate {
    font-size: 0.625rem;
  }
  .main_home .main_news ul li a .ttl03 {
    font-size: 0.6875rem;
    letter-spacing: -0.02em;
  }
  .slick-slider.slick01 li[class^=main] {
    background-size: cover;
    height: 100vh;
    max-height: 38.75rem;
  }
  .slick-slider.slick01 li[class^=main].main01::before {
    background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-1-sp.jpg);
  }
  .slick-slider.slick01 li[class^=main].main02::before {
    background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-2-sp.jpg);
  }
  .slick-slider.slick01 li[class^=main].main03::before {
    background-image: url(https://kouseikai-sekiya.or.jp/2019sys/QkzS9M/wp-content/uploads/2024/07/home-mv-3-sp.jpg);
  }
  .home-mv__content {
    padding: 0 1.875rem;
    bottom: 40px;
  }
  .home-mv__btn {
    padding: 0.625rem 1.75rem;
    width: 100%;
  }
  .home-mv__btn-top {
    gap: 0.75rem;
  }
  .home-mv__btn-num {
    font-size: 1.5rem;
    transform: translate(0px, -2px);
  }
  .home-mv__btn-sub-text {
    font-size: 0.75rem;
  }
  .section_cmn {
    padding: 3rem 0;
  }
  .section_cmn.t_narrow {
    padding-top: 2.5rem;
  }
  .section_cmn.b_narrow {
    padding-bottom: 2.5rem;
  }
  .section_cmn.t_wide {
    padding-top: 3.5rem;
  }
  .section_cmn.b_wide {
    padding-bottom: 3.5rem;
  }
  .ttl_cmn {
    font-size: 1.125rem;
  }
  .ttl_cmn span {
    font-size: 0.6875rem;
  }
  .ttl_cmn span.bar_left2 {
    font-size: 1rem;
  }
  .ttl_cmn span.first_r {
    font-size: 0.8125rem;
  }
  .ttl_cmn span.mdl {
    font-size: 0.8125rem;
  }
  .ttl_cmn em {
    font-size: 1.5rem;
  }
  .ttl_cmn2 {
    font-size: 1.125rem;
  }
  .ttl_cmn2.large {
    font-size: 1.5rem;
  }
  .ttl_cmn2.big {
    font-size: 1.375rem;
  }
  .ttl_cmn2.mdl {
    font-size: 1.0625rem;
  }
  .ttl_cmn2.mdl2 {
    font-size: 1.125rem;
  }
  .txt_cmn {
    font-size: 0.875rem;
    line-height: 2;
  }
  .txt_cmn.lh_m {
    line-height: 1.8;
  }
  .txt_cmn.lh_n {
    line-height: 1.4;
  }
  .txt_cmn.large {
    font-size: 1rem;
  }
  .txt_cmn.mdl {
    font-size: 0.75rem;
  }
  .txt_cmn.small {
    font-size: 0.625rem;
  }
  .btn_cmn a {
    width: 88vw;
    height: 16vw;
  }
  .btn_round a {
    width: 80vw;
    height: 14vw;
  }
  .btn_round a p {
    font-size: 0.875rem;
  }
  .side_cmn figure {
    width: 100%;
    margin-bottom: 1rem;
  }
  .side_cmn .txt {
    width: 100%;
  }
  .side_cmn.commu figure {
    width: 100%;
    margin-bottom: 0;
  }
  .side_cmn.commu figure img {
    top: 0;
  }
  .side_cmn.commu .txt {
    width: 100%;
    padding: 1.5rem 4%;
  }
  .side_cmn.commu:not(.reverse) .txt {
    margin-left: 0;
  }
  .side_cmn.commu.reverse .txt {
    margin-right: 0;
  }
  .side_cmn.phil figure {
    width: 100%;
  }
  .side_cmn.phil .txt {
    width: 100%;
  }
  .over_cmn {
    padding: 0rem calc(50vw - 50%);
  }
  .over_cmn figure {
    width: 100%;
    margin-bottom: 1rem;
  }
  .over_cmn .txt {
    width: 100%;
  }
  .over_cmn.reverse {
    padding: 0rem calc(50vw - 50%);
  }
  .over_cmn.clinic figure {
    width: 100%;
  }
  .over_cmn.clinic .txt {
    width: 100%;
  }
  .half_cmn {
    display: block;
  }
  .half_cmn figure {
    width: 100%;
  }
  .half_cmn .txt {
    width: 100%;
    padding: 2.5rem 0;
  }
  .half_cmn:not(.reverse) .txt .txtinner {
    padding-left: 8vw;
    margin-right: 8vw;
  }
  .half_cmn.reverse .txt .txtinner {
    float: unset;
    padding-right: 8vw;
    margin-left: 8vw;
  }
  .bg_txt_cmn {
    font-size: 6.25rem;
  }
  .home_second .bnr {
    padding: 1.2rem 4% 1.8rem;
  }
  .home_second .bnr .ttl01 {
    font-size: 1.25rem;
  }
  .home_about {
    padding-bottom: 3rem;
  }
  .home_about .inner .unit {
    width: 100%;
  }
  .home_about .inner .unit:not(:last-child) {
    margin-bottom: 2rem;
  }
  .home_about .inner .unit .content ul {
    padding: 1rem 6% 1.5rem;
  }
  .home_about .inner .unit .content ul li {
    padding: 0.4rem 0;
  }
  .home_overview {
    padding: 2.5rem 0 4rem;
  }
  .home_overview .gallery {
    margin: 0 0 2rem;
  }
  .home_overview .gallery .imgwrap figure:not(:first-child) {
    margin-top: 5px;
  }
  .home_overview .wrap {
    margin-bottom: 2rem;
  }
  .home_overview .wrap .ttl_cmn {
    width: 100%;
    margin-bottom: 1.5rem;
  }
  .home_overview .wrap p.txt01 {
    width: 100%;
  }
  .home_overview .btnwrap .btn_cmn {
    margin: 0.8rem 0;
  }
  .home_feature .side_cmn {
    margin-bottom: 2.5rem;
  }
  .home_feature .btnwrap .btn_cmn:not(:last-child) {
    margin-bottom: 1rem;
  }
  .home_commu .side_cmn:first-child {
    margin-bottom: 3rem;
  }
  .home_commu .side_cmn.commu {
    margin-bottom: 2.5rem;
  }
  .home_reha .over_cmn {
    margin-bottom: 2.5rem;
  }
  .home_pickup ul {
    margin-bottom: 2.5rem;
  }
  .home_pickup ul li {
    width: 100%;
  }
  .home_pickup ul li:not(:last-child) {
    margin-bottom: 2rem;
  }
  .home_pickup ul li figure {
    margin-bottom: 0.4rem;
  }
  .home_pickup ul li time {
    font-size: 0.6875rem;
  }
  .home_news .colwrap {
    margin-bottom: 2.5rem;
  }
  .home_news .colwrap .col {
    width: 100%;
  }
  .home_news .colwrap .col:not(:last-child) {
    margin-bottom: 2rem;
  }
  .home_news time {
    font-size: 0.6875rem;
  }
  .home_access .map {
    padding-top: 100%;
  }
  .home_access .map iframe {
    top: -30vw;
    height: calc(100% + 30vw + 30vw);
  }
  .home_access .logo {
    margin-bottom: 1.2rem;
  }
  .home_access p.txt01 {
    margin-bottom: 2rem;
  }
  .home_contact .area {
    padding: 1rem 6%;
  }
  .home_contact .area .col {
    width: 100%;
    padding: 1rem 0;
  }
  .home_contact .area .col:not(:last-child) {
    border-right: unset;
    border-bottom: 1px solid #EDDEC4;
  }
  .home_contact .tel {
    width: 100%;
  }
  footer .fmain {
    padding: 2.5rem 0;
  }
  footer .fmain .inner .left {
    width: 100%;
    margin-bottom: 1.8rem;
  }
  footer .fmain .foot_logo {
    margin-bottom: 1.5rem;
  }
  footer .fmain .fnav {
    width: 100%;
  }
  footer .fmain .fnav .top {
    margin-bottom: 2rem;
  }
  footer .fmain .fnav .top ul,
  footer .fmain .fnav .btm ul {
    width: 50%;
  }
  footer .fmain .fnav .top ul:nth-child(n+3),
  footer .fmain .fnav .btm ul:nth-child(n+3) {
    margin-top: 1.5rem;
  }
  footer .fmain .fnav .top ul li.parent a p,
  footer .fmain .fnav .btm ul li.parent a p {
    font-size: 0.8125rem;
  }
  footer .fmain .fnav .top ul li a p,
  footer .fmain .fnav .btm ul li a p {
    font-size: 0.6875rem;
  }
  footer .foot_band .inner a {
    font-size: 0.625rem;
    letter-spacing: 0.1em;
  }
  footer .copyright {
    padding-bottom: calc(12vw + 0.8rem);
  }
  .u-mt-s-48 {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .u-mt-d-64 {
    margin-top: 64px;
  }
}

/* category一覧追加 */
.category_menu_list {
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
	flex-wrap: wrap;
}

.category_menu_list .category_menu {
	border: solid 1px #F25840;
    color: #F25840;
    padding: 0.3rem 1rem;
    min-width: 100px;
    text-align: center;
}

.category_menu_list .category_menu:hover {
	background-color: #F25840;
    color: #fff;
    font-weight: 500;
}

@media (max-width: 767px) {
	.category_menu_list {
		justify-content: flex-start;
		gap: 15px;
	}
}

/* 新着情報　詳細ページ　日付、カテゴリー　レイアウト変更 */
.blog_single .top .info {
	
}

.blog_single .top .info .info_box {
	display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 0.5rem;
	flex-wrap: wrap;
}

.blog_single .top .info .info_box .date {
	color: #B49E78;
    letter-spacing: 0.1em;
	font-weight: 600;
    margin-right: 0.5rem;
	margin-bottom: 0.5rem;
}

.blog_single .top .info .info_box .cate {
	background-color: #ccc;
    border-radius: 50px;
    padding: 0.1rem 1rem 0.2rem;
    font-size: 0.8rem;
    margin-right: 0.5rem;
	margin-bottom: 0.5rem;
	color: #fff;
}

.blog_single .top .info .info_box .cate:last-of-type {
	margin-right: 0;
}

.blog_single .top .info .info_box .cate_blog {
	background-color: #6bb4f5;
}

.blog_single .top .info .info_box .cate_pickup {
	background-color: #f56b72;
}

.blog_single .top .info .info_box .cate_notice {
	background-color: #98c99e;
}

.blog_single .top .info .info_box .cate_event {
	background-color: #f6ba40;
}

/* 新着情報 一覧　レイアウト変更 */
.news_list .wrap time {
    margin: 0 4% 0.5rem 0;
}

.news_list .wrap .cate {
	border-radius: 50px;
    padding: 0.1rem 1rem 0.2rem;
    font-size: 0.8rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
    color: #fff;
}

.news_list .wrap .cate:last-of-type {
	margin-right: 0;
}

.news_list .wrap time {
	margin-bottom: 0.5rem!important;
}

.news_list .wrap .cate_blog {
	background-color: #6bb4f5;
}

.news_list .wrap .cate_pickup {
	background-color: #f56b72;
}

.news_list .wrap .cate_notice {
	background-color: #98c99e;
}

.news_list .wrap .cate_event {
	background-color: #f6ba40;
}


/* 採用情報　御祝い金 */
.iwaikin_box {
	width: fit-content;
    margin: 0 auto 2rem;
}

.iwaikin_box .iwaikin_txt {
	margin-bottom: 1rem;
	font-weight: 500;
	line-height: 1.8rem;
}

.iwaikin_box .iwaikin_ttl {
	font-size: 1.2rem;
    font-weight: 600;
    justify-content: center;
    display: flex;
    align-items: center;
	margin-bottom: 0.5rem;
}

.iwaikin_box .iwaikin_ttl:before,
.iwaikin_box .iwaikin_ttl:after {
	content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.iwaikin_box .iwaikin_ttl:before {
    margin-right: 1rem;
}

.iwaikin_box .iwaikin_ttl:after {
    margin-left: 1rem;
}

.iwaikin_box .iwaikin_txt .txt_note {
	font-size: 0.8rem;
}

.iwaikin_box table {
	border: solid 1px #919191;
	text-align: center;
	font-weight: 500;
}

.iwaikin_box table tr {
	border-bottom: solid 1px #919191;
}

.iwaikin_box table tr:last-of-type {
	border-bottom: none;
}

.iwaikin_box table td {
	border-right: solid 1px #919191;
	padding: 0.5rem 2rem;
}

.iwaikin_box table td:last-of-type {
	border-right: none;
}

.iwaikin_box .table_note {
	font-size: 0.8rem;
    text-align: right;
}

.iwaikin_box .ex {
	display: flex;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0.5rem;
	margin-top: 1rem;
}

.iwaikin_box .ex span:first-of-type {
	display: flex;
    justify-content: center;
    align-items: center;
    background-color: #f25840;
    color: #fff;
    padding: 0.5rem;
}

.iwaikin_box .ex span:last-of-type {
	line-height: 1.6rem;
    font-size: 0.8rem;
}

.iwaikin_box table.pctab-only {
  display: block;
}

.iwaikin_box table.sp-only {
  display: none;
}

@media (max-width: 767px) {
	.iwaikin_box table {
		font-size: 0.8rem;
	}
	/*.iwaikin_box table td {
		padding: 0.5rem;
	}
	.iwaikin_box table td:first-of-type {
		width: 25%;
	}
	.iwaikin_box table td:nth-of-type(2) {
		width: 35%;
	}*/
	.iwaikin_box .iwaikin_ttl {
		font-size: 1.6rem;
    line-height: 1.8rem;
		width: calc(100vw - 12%);
	}
	.iwaikin_box .iwaikin_ttl:before {
		margin-right: 0.5rem;
	}
	.iwaikin_box .iwaikin_ttl:after {
		margin-left: 0.5rem;
	}
  .iwaikin_box table td {
    padding: 0.5rem 1rem;
  }
  .iwaikin_box table tr td:first-of-type {
    width: 45%;
  }

  .iwaikin_box table.pctab-only {
    display: none;
  }
  .iwaikin_box table.sp-only {
    display: block;
  }
}

.renewal_pamphlet {
	width: 80%;
	margin: 0 auto;
}

.renewal_box {
	
}

.renewal_box h2 {
	text-align: center;
	color: #b49e78;
	font-size: 32px;
	line-height: 2.4rem;
}

.renewal_box p {
	margin: -1rem auto 2rem;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 600;
	line-height: 1.8rem;
}

.renewal_box .renewal_bnr {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

@media (max-width: 767px) {
	.renewal_box .renewal_bnr {
		flex-direction: column;
	}
}

/* 入院相談バナー */

.top-banner {
    display: flex;
    justify-content: center; 
    align-items: center;
    height: 50vh; 
}

.top-banner img {
    max-width: 100%;
    height: auto;
}

/* フローティングボタン */
.floating_btn {
	position: fixed;
    right: 0;
    top: 150px;
    width: 70px;
	z-index: 10000;
}

.floating_btn .floating_btn_box {
	display: flex;
    flex-direction: column;
	gap: 10px;
}

@media (max-width: 767px) {
	.floating_btn {
		position: fixed;
		right: 0;
		top: initial;
		width: 100%;
		bottom: 0;
		transform: translateZ(0);
	}

	.floating_btn .floating_btn_box {
		display: flex;
		justify-content: flex-start;
		align-items: flex-end;
		flex-direction: initial;
		gap: 0;
	}
	
	.floating_btn .floating_btn_box a {
		width: 50%;
	}
	
	.floating_btn .floating_btn_box a img {
		width: 100%;
	}
}

/*.iwaikin-wrapper table {
    min-width: 700px; 
	display: inline-block;
    border-collapse: collapse;
}*/