/* ---------- フォント ---------- */
/* ----------------------------------------------------------
日本語指定（源ノ角ゴシック / Adobe Fonts）
----------------------------------------------------------

・レギュラー（Regular）
font-family: source-han-sans-japanese,sans-serif;
font-weight: 400;
font-style: normal;

・太（Bold）
font-family: source-han-sans-japanese,sans-serif;
font-weight: 700;
font-style: normal; */

/* ----------------------------------------------------------
大見出し明朝（凸版文久見出し明朝 / Adobe Fonts）
----------------------------------------------------------

font-family: toppan-bunkyu-midashi-min-st,serif;
font-weight: 900;
font-style: normal; */

/* ----------------------------------------------------------
英文明朝 - HOME（Times or Times New Roman）
----------------------------------------------------------

font-family: 'Times', 'Times New Roman', serif;
font-weight: 500;
font-style: normal; */

/* ------------------------------------------------
日本語：第2候補
------------------------------------------------
Windows, Mac, Android, iOS
各OS標準ゴシック、明朝体とする */

/* home */

.home-visual-warp {
 background: url("../images/main-visual.jpg") center center no-repeat;
 background-size: cover;
}

.home-visual-warp .container-fluid {
 max-width: 1623px;
 padding: 0 0;
}

.home-visual-inner {
 display: flex;
 align-items: center;
 justify-content: space-between;
 flex-flow: row-reverse;
 height: 48.5416667vw;
 min-height: 620px;
}

.home-info-box {
 width: 318px;
 background: #fff;
}

.home-info-box dl {
 margin-bottom: 0;
}

.home-info-box dl.map {
 margin-bottom: 0;
}

.home-info-link {
 width: 585px;
}

.home-info-link h2 {
 display: block;
 padding: 10px;
 background:rgba(12,130,53,0.9);
 margin-bottom: 5px;
 font-size: 1.125rem;
 font-weight: bold;
 text-align: center;
 color: #fff;
}

.home-info-link h2 span {
 display: inline-block;
 margin: 0 5px;
 font-size: 1.375rem;
}

.home-info-link ul {
 list-style: none;
 margin: 0;
 width: 100%;
 overflow: hidden;
 background: rgba(255,255,255,0.85);
}

.home-info-link ul li {
 float: left;
 width: 195px;
 height: 195px;
 display: block;
 background: url("../images/line-1.png") bottom center no-repeat, url("../images/line-2.png") right center no-repeat;
}

.home-info-link ul li a {
 display: block;
 height: 100%;
 width: 100%;
 font-size: 1.0625rem;
 font-weight: bold;
 color: #045502;
 transition: 0.3s;
}

.home-info-link ul li a:hover {
 background: #fff;
 transition: 0.3s;
 text-decoration: none;
}

.home-info-link ul li a span {
 display: flex;
 justify-content: center;
 align-items: center;
 flex-direction: column;
 width: 100%;
 height: 100%;
}

.home-info-link ul li a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-1 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-1.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li.home-info-link-2 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-2.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li.home-info-link-3 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-3.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li.home-info-link-4 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-4.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li.home-info-link-5 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-5.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li.home-info-link-6 a span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #E5F5D3 url("../images/icon-home-info-link-6.png") center center no-repeat;
 margin-bottom: 16px;
}

.home-info-link ul li a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-1 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-1-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-2 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-2-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-3 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-3-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-4 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-4-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-5 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-5-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}

.home-info-link ul li.home-info-link-6 a:hover span:before {
 content: '';
 display: inline-block;
 width: 45px;
 height: 45px;
 border-radius: 999px;
 background: #0C8235 url("../images/icon-home-info-link-6-on.png") center center no-repeat;
 margin-bottom: 16px;
 transition: 0.3s;
}


@media screen and (max-width: 1620px){
 .home-info-link {
  margin-right: 98px;
 }
}

.news-block {
 background: #fafafa url("../images/bg-naname.png") left top no-repeat;
 padding-top: 45px;
}

.news-important {
 border: #D81159 solid 1px;
}

.news-important h2 {
 background: #D81159;
 margin-bottom: 0;
 padding: 22px;
 font-size: 1.0625rem;
 font-weight: bold;
 text-align: center;
 color: #fff;
 line-height: 1.0;
}

.news-important h2 span {
 background: url("../images/icon-important.png") left center no-repeat;
 padding-left: 30px;
}

.important-list {
 padding: 0 30px;
 background: #FFFAFC;
}

.important-list ul {
 list-style: none;
 margin-bottom: 0;
}

.important-list ul li {
 border-bottom: #dedede dotted 1px;
}

.important-list ul li a {
 display: flex;
 justify-content: flex-start;
 align-items: flex-start;
 padding: 20px 0;
 background: url("../images/icon-link-red.png") top 30px right 10px no-repeat;
}

.important-list ul li a:hover {
 text-decoration: none;
}

.important-list ul li a .post-day {
 font-size: 0.875rem;
 color: #767676;
 white-space: nowrap;
}

.important-list ul li a .post-title {
 padding-left: 16px;
 padding-right: 30px;
 color: #E1497F;
 transition: 0.3s;
}

.important-list ul li a:hover .post-title {
 text-decoration: underline;
 transition: 0.3s;
}

.news-list-warp {
 margin-top: 45px;
}

.news-title-warp {
 display: block;
}

.news-title-inner {
 display: flex;
 justify-content: space-between;
 border-bottom: #0C8235 solid 2px;
}

.news-title-warp h2 {
 margin-bottom: 0;
 font-family: 'Times', 'Times New Roman', serif;
 font-size: 2.875rem;
 color: #045502;
}

.news-title-warp ul {
 list-style: none;
 margin-bottom: 0;
 display: flex;
}

.news-title-warp ul li a {
 display: block;
 padding: 17px;
 font-weight: bold;
 border-left: #fafafa solid 1px;
 cursor: pointer;
 position: relative;
 font-weight: normal;
}

.news-title-warp ul li.active a {
 font-weight: bold;
}

.news-title-warp ul li.active a:after {
 content: '';
 width: 16px;
 height: 10px;
 background: url("../images/icon-active.png") center center no-repeat;
 background-size: cover;
 position: absolute;
 bottom: -10px;
 left: 44%;
 margin-right: -8px;
}

.news-title-warp ul li.all a {
 background: #045502;
 color: #fff;
}

.news-title-warp ul li.all a:hover {
 color: #fff;
}

.news-title-warp ul li.info a {
 background: #E5F4D4;
 color: #333;
}

.news-title-warp ul li.medical a {
 background: #D9EBF8;
 color: #333;
}

.news-list-block {
 display: none;
 background: #fff;
}

.news-list-block.show {
 display: block;
}

.news-list-block ul {
 list-style: none;
 margin-bottom: 0;
}

.news-list-block ul li {
 display: flex;
 justify-content: flex-start;
 align-items: flex-start;
 padding: 20px;
 border-bottom: #DEDEDE dotted 1px;
 font-size: 1.0625rem;
}

.news-list-block ul li .post-day {
 width: 70px;
 margin-right: 10px;
 font-size: 0.875rem;
 color: #767676;
 white-space: nowrap;
}

.news-head {
 display: flex;
}

.news-list-block ul li .post-cat {
 min-width: 100px;
 margin-right: 18px;
 padding: 0 10px;
 text-align: center;
 font-size: 0.8125rem;
 background: #E5F4D4;
 color: #333;
}

.news-list-block ul li .post-cat.news {
 background: #E5F4D4;
}

.news-list-block ul li .post-cat.recruitment {
 background: #FCE4EB;
}

.news-list-block ul li .post-cat.medical-personnel {
 background: #D9EBF8;
}

.news-list-block ul li .post-cat.important {
 background: #FCE4EB;
}

.news-list-block ul li .post-cat.covid-19 {
 background: #ddb8f4;
}

.news-list-block ul li a {
 color: #333;
}

.next-link {
 margin-top: 20px;
}

.next-link a {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 255px;
  height: 54px;
  background: #0C8235 url("../images/icon-link-lgreen.png") center right 10px no-repeat;
  box-shadow: 0px 5px 10px #00000033;
  color: #fff;
  transition: 0.3s;
 font-weight: bold;
}

.next-link a:hover {
  background: #045502 url("../images/icon-link-lgreen.png") center right 10px no-repeat;
 text-decoration: none;
 transition: 0.3s;
}

.pickup-link-warp {
 margin-top: 60px;
 margin-bottom: 75px;
}

.pickup-link-inner {
 max-width: 1180px;
 margin: 0 auto;
 display: flex;
 justify-content: center;
}

.pickup-link-inner dl {
 margin: 0 5px;
 background: #fff;
}

.pickup-link-inner a {
 color: #333333;
 transition: 0.3s;
}

.pickup-link-inner dl dt {
 overflow: hidden;
}

.pickup-link-inner dl dd {
 padding: 10px;
 margin-bottom: 0;
 font-weight: bold;
 text-align: center;
 line-height: 1.4;
}

.pickup-link-inner img {
 width: 100%;
 height: auto;
 object-fit: cover;
}

.pickup-link-inner a:hover {
 text-decoration: none;
}

.pickup-link-inner a:hover dt img {
 transform: scale(1.05);
 transition: 0.3s;
}

.pickup-link-inner a:hover dd {
 background: #045502!important;
 color: #fff!important;
 transition: 0.3s!important;
}

.pickup-link-inner .pickup-box {
 width: 25%;
}

.recruit-link {
 margin-top: 75px;
 height: 400px;
 display: flex;
 align-items: center;
 background: url("../images/left.jpg") left center no-repeat, url("../images/right.jpg") right center no-repeat;
 background-size: contain, contain;
 background-color: #fff;
}

.recruit-link-inner {
 width: 730px;
 margin: 0 auto;
}

.recruit-link-inner h2 {
 display: block;
 margin: 0 auto;
 margin-bottom: 0;
 width: 160px;
 font-size: 2.125rem;
 text-align: center;
 font-family: "Noto Serif Japanese",serif;
 font-weight: 900;
 color: #0C8235;
 border-bottom: #0C8235 solid 4px;
 padding-bottom: 18px;
}

.recruit-link-inner p {
 margin-top: 15px;
 text-align: center;
 margin-bottom: 0;
 font-size: 0.875rem;
 color: #045502;
 font-family: 'Times', 'Times New Roman', serif;
 font-weight: 500;
 font-style: normal;
 line-height: 1.0;
}

.recruit-link-inner .next-link {
 margin-top: 30px;
}

.information-link {
 padding: 150px 0;
 background: url("../images/bg-information.jpg") center center no-repeat;
 background-size: cover;
}

.information-link-inner {
 width: 1170px;
 margin: 0 auto;
}

.information-link-list {
 display: flex;
 flex-wrap: wrap;
 height: auto;
 border-top: #8BC24C solid 3px;
}

.information-link-list div {
 background: rgba(255,255,255,0.9);
 transition: 0.3s;
}

.information-link-list div:hover {
 background: #E5F5D3;
 transition: 0.3s;
}


.information-link-list div a {
 color: #333;
}

.information-link-list > div {
 width: 195px;
}

.information-link-list div dl {
 margin-bottom: 0;
 padding-top: 35px;
 height: 100%;
 border-right: #DEDEDE solid 1px;
 text-align: center;
}


.information-link-list div dl dt {}
.information-link-list div dl dd {
 margin-top: 10px;
 margin-bottom: 0;
 padding-left: 10px;
 padding-right: 10px;
 font-size: 1.0rem;
 font-weight: bold;
 line-height: 1.4;
}

.information-link-list > div > a {
 display: block;
 width: 195px;
 height: 175px;
 margin: 10px 0;
}

.information-link-list > div > a:hover {
 text-decoration: none;
}

.page-list-warp {}
.page-list-warp a {
 display: block;
 margin-bottom: 30px;
 padding: 18px 23px 18px 0;
 border-bottom: #d6e8dc solid 1px;
 color: #0C8235;
 font-weight: bold;
 position: relative;
 line-height: 1.6;
 text-decoration: none;
 transition: 0.3s;
}

.page-list-warp a:after {
 content: '';
 background: url("../images/border-naname-green.png") center center no-repeat;
 width: 14px;
 height: 14px;
 position: absolute;
 right: 0;
 bottom: 0;
}

.page-list-warp a:hover {
 background: #fff;
 text-decoration: none;
 transition: 0.3s;
}

body.departments .main-contents {}
body.departments .main-contents ul {
 list-style: none;
 margin-left: 0;
 margin-bottom: 0;
}

body.departments .main-contents ul li {
 padding-left: 0;
 background: none;
}

body.departments .main-contents > ul {
 display: flex;
 flex-wrap: wrap;
}

body.departments .main-contents > ul > li {
 width: 31.0%;
 margin: 0 15px;
 position: relative;
 margin-bottom: 30px!important;
 line-height: 1.6;
}

body.departments .main-contents > ul > li > a {
 display: block;
 width: 100%;
 padding: 10px 20px 10px 0;
 border-bottom: #b2d6bf solid 1px;
 color: #045502;
 background: url("../images/border-naname-green.png") bottom right no-repeat;
 text-decoration: none;
 line-height: 1.4;
 transition: 0.3s;
}

body.departments .main-contents > ul > li > a:hover {
 background: #fff url("../images/border-naname-green.png") bottom right no-repeat;
 text-decoration: none;
 transition: 0.3s;
}

.department-list {}
.department-list > li {
 border: #B2DE81 solid 5px;
 border-right: none;
 border-bottom: none;
}

.department-list > li > a {
 padding-left: 30px!important;
 font-weight: bold;
}

.department-list > li > ul {
 display: flex;
 margin-bottom: 0;
 padding: 10px 25px;
}

.department-list > li > ul > li {
 background: url("../images/icon-sublist.png") top 9px left no-repeat!important;
 margin-bottom: 0;
 margin-left: 30px;
 padding-left: 20px!important;
}

.department-list > li > ul > li:first-child {
 margin-left: 0;
}

.department-list > li > ul > li > a {
 color:#0C8235;
 text-decoration: underline;
}

.department-list > li > ul > li > a:hover {
 text-decoration: none;
}

@media screen and (max-width:1351px){
 body.departments .main-contents > ul > li {
  width: 30.9%;
 }
}

@media screen and (max-width:1298px){
 body.departments .main-contents > ul > li {
  width: 30.0%;
 }
}

@media screen and (max-width:1279px){
 body.departments .main-contents > ul > li {
  width: 47%;
 }
}

@media screen and (max-width:1065px){
 body.departments .main-contents > ul > li {
  width: 46%;
 }
}

@media screen and (max-width:857px){
 body.departments .main-contents > ul > li {
  width: 100%;
 }
}

@media screen and (max-width:767px){
 body.departments .main-contents > ul > li {
  margin: 0 0;
 }
 .department-list ul {
  font-size: 0.875rem;
 }
 .department-list > li > ul > li {
  background: url("../images/icon-sublist.png") top 6px left no-repeat !important;
 }
 .department-list > li > ul > li {
  margin-left: 25px;
 }
}

.main-contents .page-list {}
.main-contents .page-list ul {
 margin-left: 0;
}

.main-contents .page-list ul li {
 padding-left: 0;
 margin-bottom: 30px;
 background: none;
}

.main-contents .page-list ul li a {
 margin-bottom: 30px;
 padding: 18px 23px 18px 0;
 border-bottom: #d6e8dc solid 1px;
 color: #045502;
 font-weight: bold;
 position: relative;
 line-height: 1.6;
 display: block;
 text-decoration: none;
}

.main-contents .page-list ul li a:after {
 content: '';
 background: url("../images/border-naname-green.png") center center no-repeat;
 width: 14px;
 height: 14px;
 position: absolute;
 right: 0;
 bottom: 0;
}

.main-contents .page-list ul li a:hover {
 text-decoration: underline;
}

.recruit-cat-list {}
.recruit-cat-list dl,
.center-list-warp dl {
 border-bottom: #DEDEDE dotted 1px;
 margin-bottom: 30px;
}

.recruit-cat-list dl dt,
.center-list-warp dl dt {
 overflow: hidden;
}

.recruit-cat-list a,
.center-list-warp a {
 text-decoration: none;
}

.recruit-cat-list a h3,
.center-list-warp a h3 {
 border-bottom: #8BC24C solid 1px;
 background: #ECF5E2 url("../images/arrow_side.png") center right 10px no-repeat;
 margin-top: 0;
 margin-bottom: 0;
 padding: 20px 24px 20px 16px;
 box-shadow: none;
 border-radius: 0;
 font-size: 1.0625rem;
 font-weight: bold;
 color: #045502;
}

.center-list-warp a h3 {
 border-bottom: #d1e8b8 solid 1px;
}

.recruit-cat-list a:hover,
.center-list-warp a:hover {
 text-decoration: none;
 transition: 0.3s;
}

.recruit-cat-list a dl dt img,
.center-list-warp a dl dt img {
 width: 100%;
 height: auto;
 transition: 0.3s;
}

.recruit-cat-list a:hover dl dt img,
.center-list-warp a:hover dl dt img{
 transform: scale(1.05);
 transition: 0.3s;
}

.recruit-cat-list a:hover dl dd h3,
.center-list-warp a:hover dl dd h3 {
 background: #045502 url("../images/arrow_side.png") center right 10px no-repeat;
 color: #fff;
 transition: 0.3s;
}

.recruit-cat-list dd,
.center-list-warp dd {
 margin-bottom: 0;
 padding: 0 0 20px 0;
}

.recruit-cat-list dd p {
 margin-bottom: 0;
}

.recruit-cat-list a dd .post-day {
 margin-top: 20px;
 font-size: 0.875rem;
 color: #767676;
}

.recruit-cat-list a dd .post-title {
 color: #333333;
}

.recruit-cat-list a dd .nodate  {
 margin-top: 20px;
 color: #333;
}

.main-contents.recruitment {}
.main-contents.recruitment table th {
 background: #8BC24C;
 color: #fff;
 font-weight: normal!important;
}

.main-contents.recruitment table, .main-contents.recruitment table th, .main-contents.recruitment table td {
 border: #fafafa solid 2px !important;
}

.main-contents.recruitment table tr {
 background: #fff;
}

.main-contents.recruitment table tr:nth-child(even) {
 background: #ECF5E2;
}

.recruit-bottom {
 border-top: #97c05d dotted 1px;
 padding-top: 60px;
 padding-bottom: 60px;
}

.recruit-bottom h2 {
 display: flex;
 justify-content: center;
 align-items: center;
 width: 100%;
 height: 54px;
 margin-bottom: 0;
 background: #0C8235;
 font-size: 1.125rem;
 font-weight: bold;
 color: #fff;
}

.recruit-bottom h2 span {
 font-size: 1.375rem;
}

.recruit-bottom ul {
 list-style: none;
 margin-bottom: 0;
 background: #fff;
 display: flex;
 justify-content: space-between;
}

.recruit-bottom ul li {
 width: 16.666%;
 height: 184px;
 background: url("../images/line-1.png") bottom center no-repeat, url("../images/line-2.png") right center no-repeat;
}

.recruit-bottom ul li:last-child {
  background: url("../images/line-1.png") bottom center no-repeat;
}

.recruit-bottom ul li a {
 display: block;
 width: 100%;
 height: 100%;
}

.recruit-bottom ul li a:hover {
 text-decoration: none;
}

.recruit-bottom ul li a span {
 display: flex;
 justify-content: center;
 align-items: center;
 flex-direction: column;
 height: 100%;
 font-size: 1.0625rem;
 color: #045502;
 font-weight: bold;
}

.recruit-bottom ul li a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3;
 border-radius: 999px;
 margin-bottom: 16px;
}

.recruit-bottom ul li.info-bottom-link-1 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-1.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-2 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-2.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-3 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-3.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-4 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-4.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-5 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-5.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}
.recruit-bottom ul li.info-bottom-link-6 a span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #E5F5D3 url("../images/icon-home-info-link-6.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-1 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-1-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-2 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-2-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-3 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-3-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-4 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-4-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-5 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-5-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.recruit-bottom ul li.info-bottom-link-6 a:hover span:before {
 content: '';
 width: 45px;
 height: 45px;
 display: block;
 background: #0C8235 url("../images/icon-home-info-link-6-on.png") center center no-repeat;
 border-radius: 999px;
 margin-bottom: 16px;
 transition: 0.3s;
}

.info-bottom {
 border-top: #97c05d dotted 1px;
 padding-top: 60px;
 padding-bottom: 60px;
}

.info-bottom .reception,
.info-bottom .closed {
 background: #fff;
}

.info-bottom .map {
 background: #E5F5D3!important;
 transition: 0.3s;
}

.info-bottom .map:hover {
 background: #045502!important;
 transition: 0.3s;
}


.info-bottom .map a {
 color:#333333!important;
 background: url("../images/arrow_side.png") right center no-repeat!important;
 transition: 0.3s;
}

.info-bottom .map:hover a {
 color: #fff!important;
 transition: 0.3s;
}

.info-bottom.menu-box dl dt {
 font-size: 1.0625rem;
}

.info-bottom.menu-box .reception dd ul li {
 font-size: 1.50rem;
}

.info-bottom.menu-box .reception dd ul li span {
 font-size: 1.0rem;
}

.info-bottom.menu-box.menu-box .closed p {
 font-size: 1.0625rem;
 line-height: 1.6;
}

.info-bottom.menu-box.menu-box .closed p span {
 font-size: 1.0rem;
}

.main-contents .search-list li {
 font-size: 1.0625rem!important;
 margin-bottom: 20px!important;
}

.main-contents .search-list li .search-description p {
 margin-top: 10px;
 line-height: 1.6;
 font-size: 0.875rem!important;
 margin-bottom: 0!important;
}

body.error404 {}
body.error404 .title-inner h1 {
 text-align: center;
}

body.category-recruitment .title-warp,
body.category-doctor .title-warp,
body.category-nursing-dept-recruit .title-warp,
body.category-pharmacist .title-warp,
body.category-medical-staff .title-warp,
body.category-office-technical .title-warp,
body.category-others .title-warp,
body.category-volunteer .title-warp{
 background: url("../images/bg-title-recruit.jpg") center center no-repeat;
 background-size: cover;
}

.sp-visual {
 display: none;
}

@media screen and (max-width: 1279px){
 .sp-visual {
  display: block;
 }
 .sp-visual img {
  width: 100%;
  height: auto;
 }
 .home-visual-inner {
  flex-flow: column;
  height: auto;
  min-height: auto;
 }
 .home-visual-warp {
  background: none;
  margin-top: -247px;
 }
 .home-info-link {
  margin-right: 0;
  width: 100%;
 }
 .home-info-link ul {
  display: flex;
  justify-content: center;
 }
 .home-info-box {
  margin-top: 20px;
  width: 100%;
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
 }
 .reception, .closed, .access {
  width: 100%;
 }
 .news-block {
  margin-top: 30px;
 }
 .information-link-inner {
  width: 585px;
 }
 .information-link-list {
  display: flex;
  flex-wrap: wrap;
  height: auto;
 }
 .information-link-list > div {
  width: 33.3333333%;
 }
 .information-link-list > div > a {
  width: 100%;
 }
}

@media screen and (max-width: 1199px){
 .pickup-link-inner {
  width: 100%;
 }
 .footer-links-list {
  height: auto;
  padding: 30px 0;
 }
 .footer-links-list ul {
  flex-wrap: wrap;
  width: 570px;
 }
 .footer-links-list ul li {
  width: 50%;
  margin-bottom: 5px;
 }
}

@media screen and (max-width: 991px){
 .home-info-link ul {
  justify-content: space-between;
  flex-wrap: wrap;
 }
 .home-info-link ul li {
  width: 33.3%;
 }
 .home-info-link ul li a {
  width: 100%;
 }
 .news-block {
  background: none;
  padding-top: 0;
 }
 .recruit-link {
  background: url("../images/left.jpg") left -160px center no-repeat, url("../images/right.jpg") right -160px center no-repeat;
  background-size: contain, contain;
 }
 .pickup-link-inner {
  flex-wrap: wrap;
 }
 .pickup-link-inner .pickup-box {
  width: 50%;
 }
 .information-link {
  padding: 75px 0;
 }
 .footer-head {
  padding: 45px 0 70px 0;
 }
 .recruit-bottom ul li {
  background: url("../images/line-1-sp.png") bottom center no-repeat, url("../images/line-2-sp.png") right center no-repeat;
 }
}

@media screen and (max-width: 767px){
 .sp-visual {
  display: block;
 }
 .home-visual-warp {
  margin-top: -115px;
 }
 .home-info-link h2 {
  font-size: 0.9375rem;
 }
 .home-info-link h2 span {
  font-size: 1.125rem;
 }
 .home-info-link ul li {
  height: 135px;
 }
 .home-info-link ul li a span {
  font-size: 0.875rem;
 }
 .home-info-box {
  flex-wrap: wrap;
 }
 .news-important {
  margin-left: -15px;
  margin-right: -15px;
 }
 .important-list {
  padding-left: 15px;
  padding-right: 15px;
 }
 .important-list ul li a {
  background: url("../images/icon-link-red.png") top 27px right 10px no-repeat;
 }
 .important-list ul li a .post-title {
  font-size: 0.9375rem;
  line-height: 1.6;
 }
 .news-title-inner {
  flex-direction: column;
  margin-left: -15px;
  margin-right: -15px;
 }
 .news-title-warp h2 {
  text-align: center;
  font-size: 2.375rem;
 }
 .news-title-warp ul {
  margin-top: 10px;
  margin-left: 15px;
  margin-right: 15px;
 }
 .news-title-warp ul li a {
  font-size: 0.8125rem;
  padding-top: 8px;
  padding-bottom: 8px;
 }
 .news-list-block {
  margin-left: -15px;
  margin-right: -15px;
 }
 .news-list-block ul li {
  flex-direction: column;
 }
 .news-head {
  margin-bottom: 5px;
 }
 .news-list-block ul li a {
  font-size: 0.8125rem;
 }
 .pickup-link-warp {
  margin-left: 15px;
  margin-right: 15px;
 }
 .pickup-link-inner {
  flex-direction: column;
 }
 .pickup-link-inner .pickup-box {
  width: 100%;
 }
 .pickup-link-inner dl {
  margin: 0 0;
  margin-bottom: 5px;
  border: #dedede solid 1px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 75px;
 }
 .pickup-link-inner dl dt {
  height: 75px;
  width: 75px;
 }
 .pickup-link-inner dl dt img {
  height: 75px;
  width: 75px;
  object-fit: cover;
 }
 .pickup-link-inner dl dd {
  height: 75px;
  width : calc(100% - 75px) ;
  text-align: left;
  padding: 10px 15px;
  display: flex;
  align-items: center;
 }
 .recruit-link {
  margin-top: 35px;
  height: 203px;
  background: url("../images/left.jpg") left -80px center no-repeat, url("../images/right.jpg") right -80px center no-repeat;
  background-size: contain, contain;
 }
 .recruit-link-inner {
  width: 100%;
 }
 .recruit-link-inner h2 {
  width: 136px;
  padding-bottom: 10px;
  font-size: 1.50rem;
 }
 .recruit-link-inner p {
  margin-top: 10px;
  font-size: 0.5625rem;
 }
 .recruit-link-inner .next-link {
  margin-top: 20px;
 }
 .next-link a {
  width: 220px;
 }
 .information-link {
  padding: 45px 0;
 }
 .information-link-inner {
  width: 346px;
 }
 .information-link-list > div {
  width: 50%;
 }
 .information-link-list div dl dd {
  font-size: 0.875rem;
 }
 .information-link-list dl dt img {
  width: 32px;
  height: auto;
 }
 .footer-links-list ul {
  width: 100%;
  flex-direction: column;
 }
 .footer-links-list ul li {
  width: 100%;
 }
 .footer-links-list ul li a dl {
  display: flex;
  justify-content: center;
 }
 .footer-links-list ul li a dl dt {
  width: 65px;
  height: 65px;
 }
 .footer-links-list ul li a dl dt img {
  width: 65px;
  height: 65px;
  object-fit: cover;
 }
 .footer-links-list ul li a dl dd {
  width : calc(100% - 65px) ;
  text-align: left;
  display: flex;
  align-items: center;
 }
 .footer-address-inner {
  height: 145px;
 }
 .footer-address-inner dl dd p {
  line-height: 1.4;
  font-size: 0.75rem;
 }
 .info-bottom {
  padding-top: 30px;
  padding-bottom: 30px;
 }
 .main-contents .page-list ul li {
  margin-bottom: 10px;
 }
 .main-contents .page-list ul li a {
  margin-bottom: 0;
 }
 .page-list-warp a {
  margin-bottom: 10px;
 }
 .home-info-link ul li {
 float: left;
 display: block;
 background: url("../images/line-1-s.png") bottom center no-repeat, url("../images/line-2-s.png") right center no-repeat;
 }
 .recruit-bottom {
  padding-top: 30px;
  padding-bottom: 30px;
 }
 .recruit-bottom ul {
  flex-wrap: wrap;
 }
 .recruit-bottom ul li {
  width: 33.3%;
  height: 135px;
 }
 .recruit-bottom ul li a span {
  font-size: 0.875rem;
 }
 .recruit-bottom ul li a span:before {
  margin-bottom: 0!important;
 }
 .menu-box .reception dd {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 0;
 }
 .menu-box .reception dd ul {
  flex-direction: row;
 }
 .menu-box .reception dd ul li {
  border-bottom: none;
  padding: 15px 0;
  font-size: 1.125rem;
 }
 .menu-box .reception dd ul li span {
  font-size: 0.875rem;
 }
 .side-menu dl.closed,
 .side-menu dl.access {
  margin-top: 0;
 }
 .recruit-bottom h2 {
  font-size: 0.941176471rem;
 }
 .recruit-bottom h2 span {
  font-size: 1.250rem;
 }
}

.department-list li a[target="_blank"] {
 padding-right: 0!important;
 background: none!important;
}

/* 20251015 HOME
-----------------------*/
/* ========== ========== */
/* 2025/10/18：編集引継ぎ
/* ========== ========== */
/* ※本番に切り替える際は.home⇒.homeに変更すること */
/* 変更部分のみ：スマホ⇒PCのレスポンシブに変更 */
.home {
  & .home-visual-inner {
    max-height: none;
  }

  & .sp-visual {
    position: relative;
    z-index: 1;

    & img {
      position: relative;
      z-index: -1;
    }
  }
  & .sp-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: white;
    /* 右上→右下にかけて、斜めに切り取る */
    clip-path: polygon(
      calc(100% - 100px) 0%,   /* 右から80pxの位置が始点 */
      100% 0%,                /* 右上 */
      100% 100%,              /* 右下 */
      15px 100%             /* 左から200pxの下辺 */
    );
    z-index: -1;
    opacity: 0.36;
  }
  & .button.pink {
    & a {
      /* background: transparent linear-gradient(102deg, #F7B0A3 0%, #EA553A 100%); */
      background: transparent linear-gradient(112deg, #EA553A 0%, #F7B0A3 51%, #EA553A 100%);
      color: var(--white);
      background-size: 200% auto;
      background-position: right center;
      transition: .3s ease-out;
    }
    & a:hover {
      background: transparent linear-gradient(112deg, #EA553A 0%, #F7B0A3 51%, #EA553A 100%);
      background-size: 200% auto;
      background-position: left center;
      transition: .3s ease-out;
    }
    }
    & a::after {
      background: url("../images/home/arrow_right_white.svg?date=20251020") center center no-repeat;
    }
  }
   & .home-visual-warp {
    position: relative;
    z-index: 1;
  }
  /* 重要なお知らせ ---------- ---------- ---------- */
  & .crucial {
      position: relative;
      margin-bottom: 10px;
      margin-left: 10px;
      margin-right: 10px;
  
      & .crucial-text {
        display: block;
        box-sizing: border-box;
        background: var(--white) 0% 0% no-repeat padding-box;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 3px solid #D81159;
        opacity: 1;
        padding-left: 50px;
        position: relative;

        & ul {
          margin-bottom: 0;
          padding-top: 10px;
          padding-right: 15px;
          padding-bottom: 10px;

          & li {
            list-style-type: none;
            font-size: clamp(0.9375rem, 0.9123rem + 0.1028vw, 1rem);
            line-height: 1.25rem;

            & a {
              color: #D81159;
              font-weight: 600;
              display: block;
              padding: 5px;
            }
          }
        }
      }
      & .crucial-text::before {
        content: '';
        position: absolute;
        width: 28px;
        height: 28px;
        background: url(../images/home/important__red.svg?date=20251020);
        background-repeat: no-repeat;
        background-size: contain;
        z-index: -1;
        right: 0;
        bottom: -16px;
        border-radius: 0;
        top: 12px;
        left: 12px;
        z-index: 1;
      }
    }

    & .home-visual-inner-grid {
      width: 100%;
    }

    & .home-info-link2 {

    /* 9ブロック（メインビジュアル上） ---------- ---------- ---------- */
    & h2 {
      display: block;
      padding: 10px;
      background: rgba(12, 130, 53, 0.9);
      margin-bottom: 5px;
      font-size: 0.9375rem;
      font-weight: bold;
      text-align: center;
      color: #fff;
    }
    & h2 span {
      display: inline-block;
      margin: 0 5px;
      font-size: 1.125rem;
    }

    /* アイコンまとめ ---------- ---------- ---------- */
    & ul {
      display: grid;
      grid-template-columns: repeat(3, 1fr);

      list-style: none;
      margin: 0;
      width: 100%;
      overflow: hidden;
      /* background: rgba(255, 255, 255, 0.85); */

      & li {
        display: block;
        position: relative;
        /* z-index: 5; */

        display: grid;
        grid-row: span 1;
        grid-template-rows: subgrid;
        grid-auto-rows: 1fr; /* 全行を均一高さに */
      }

      & li a {
        position: relative;
        z-index: 1;

        display: grid;
        grid-template-rows: 1fr;    /* 中身を均等に配置 */
        align-items: stretch;       /* 高さを揃える */
        text-align: center;

        height: 100%;
        width: 100%;
        font-size: 1.0625rem;
        font-weight: bold;
        color: #045502;
        transition: 0.3s;
      }
      & li a:hover {
        background: #fff;
        transition: 0.3s;
        text-decoration: none;
      }
      & li a::before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        background: white;
        opacity: 0.85;
        top: 0;
        left: 0;
        z-index: -1;
      }
      & li a span {
        display: block;
        /* font-size: 0.875rem; */
        position: relative;

        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 100%;
        height: 100%;
        padding: 21.5px 10px;
        /* font-size: 1.0625rem; */
        font-size: clamp(0.875rem, 0.7993rem + 0.3083vw, 1.0625rem);
      }
      & li a span:before {
        content: '';
        display: inline-block;
        width: 45px;
        height: 45px;
        border-radius: 999px;
        background: #E5F5D3;
        margin-bottom: 16px;
        transition: 0.3s;
      }
      & li a:hover span:before {
        content: '';
        display: inline-block;
        width: 45px;
        height: 45px;
        border-radius: 999px;
        background: #0C8235;
        margin-bottom: 16px;
        transition: 0.3s;
      }
      & li a span::after {
        position: absolute;
        content: '';
        width: calc(100% + 2px);
        height: calc(100% + 2px);
        top: -1px;
        left: -1px;
        z-index: 1;
        border: 1px solid #DEDEDE;
        --cut: 20px;
        clip-path: polygon(var(--cut) 0, calc(100% - var(--cut)) 0,calc(100% - var(--cut)) var(--cut), 100% var(--cut),100% calc(100% - var(--cut)), calc(100% - var(--cut)) calc(100% - var(--cut)),calc(100% - var(--cut)) 100%, var(--cut) 100%,var(--cut) calc(100% - var(--cut)), 0 calc(100% - var(--cut)),0 var(--cut), var(--cut) var(--cut));
      }

      /* 初診予約 */
      & .home-info-link-1 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-1.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
        & .home-info-link-1 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-1-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
        }
      /* 再診予約 */
        & .home-info-link-2 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-2.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
        }
        & .home-info-link-2 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-2-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
        }
      /* 変更済み？ */
        /* & .home-info-link-3 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-3.png") center center no-repeat;
          margin-bottom: 16px;
        }
        & .home-info-link-3 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-3-on.png") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
        } */
      /* ※患者さん専用最新予約変更 */
      & .home-info-yoyaku {
            line-height: 1.2;

            & a::before {
              content: '';
              position: absolute;
              width: 100%;
              height: 100%;
              background: transparent linear-gradient(124deg, #F7B0A3 0%, #EA553A 100%);
              opacity: 0.85;
              top: 0;
              left: 0;

              background: transparent linear-gradient(124deg, #EA553A 0%, #F7B0A3 51%, #EA553A 100%);
              /* color: var(--white); */
              background-size: 200% auto;
              background-position: right center;
              transition: .3s ease-out;
            }
            & a:hover::before {
              background: transparent linear-gradient(124deg, #EA553A 0%, #F7B0A3 51%, #EA553A 100%);
              background-size: 200% auto;
              background-position: left center;
              transition: .3s ease-out;
            }
            & a span {
              color: #fff;
            }
            /* & a:hover span:before {
              display: none;
            }
            & a span::before {
              display: none;
            } */
            & a span::before,
            & a:hover span::before {
              content: '';
              position: absolute;
              width: 68px;
              height: 52px;
              background: url("../images/home/icon__senyo.png?date=20251020");
              background-repeat: no-repeat;
              background-size: contain;
              z-index: -1;
                    right: 0;
                    bottom: -16px;
                    border-radius: 0;
            }
      }

      /* 外来のご案内 */
      & .home-info-link-4 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-4.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
      & .home-info-link-4 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-4-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
      }
      & .home-info-link-4 a span:before,
      & .home-info-link-4 a:hover span:before {
        background-position: left 8px top 10px;
      }
      /* 入院手続き */
      & .home-info-link-5 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-5.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
      & .home-info-link-5 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-5-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
      }
      /* 面会について */
      & .home-info-link-6 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-6.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
      & .home-info-link-6 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-6-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
      }
      & .home-info-link-6 a span:before,
      & .home-info-link-6 a:hover span:before {
        background-position: center top 10px;
      }
      /* 病院長挨拶 */
      & .home-info-link-7 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-7.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
      & .home-info-link-7 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-7-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
      }
      /* 診療科・部門 */
      & .home-info-link-8 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-8.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
      }
      & .home-info-link-8 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-8-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
      }
      /* 外来担当医表 */
      & .home-info-link-9 a span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #E5F5D3 url("../images/home/icon-home-info-link-9.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
        }
        & .home-info-link-9 a:hover span:before {
          content: '';
          display: inline-block;
          width: 45px;
          height: 45px;
          border-radius: 999px;
          background: #0C8235 url("../images/home/icon-home-info-link-9-on.png?date=20251020") center center no-repeat;
          margin-bottom: 16px;
          transition: 0.3s;
        }
    
      }
  }
/* ---------- ---------- ---------- ---------- ---------- ---------- */
/* ---------- ---------- 992px 以上 ---------- ---------- */
@media screen and (min-width: 768px) {
  .home {
    & .home-info-link2 {
      & h2 {
        font-size: 1.125rem;
      }
      & h2 span {
        font-size: 1.375rem;
      }
    }
  }
}
/* ---------- ---------- ---------- ---------- ---------- ---------- */
/* ---------- ---------- 992px 以上 ---------- ---------- */
@media screen and (min-width: 992px) {
  .home {
    & .home-info-link2 ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }
    /* 9ブロック（メインビジュアル上） ---------- ---------- ---------- */
    & .home-info-link2 ul {
      justify-content: space-between;
      flex-wrap: wrap;
    }

  }
}
/* ---------- ---------- ---------- ---------- ---------- ---------- */
/* ---------- ---------- 1280px 以上 ---------- ---------- */
@media screen and (min-width: 1280px){
  .home {
    & .sp-visual::after {
      display: none;
    }
    & .home-visual-warp {
        position: relative;
        z-index: 1;
      }
      & .home-visual-warp::after {
        content: "";
        position: absolute;
        inset: 0;
        background: white;
        /* 右上→右下にかけて、斜めに切り取る */
        clip-path: polygon(calc(100% - 111px) 0%,
            /* 右から80pxの位置が始点 */
            100% 0%,
            /* 右上 */
            100% 100%,
            /* 右下 */
            414px 100%
            /* 左から200pxの下辺 */
          );
        z-index: -1;
        opacity: 0.36;
      }

    & .home-info-box {
      width: 318px;
      background: rgba(255, 255, 255, 0.85);
    }
    & .crucial {
      margin-right: 98px;
      margin-bottom: 0px;
      margin-left: 0px;
    }
    & .home-info-link2 {
      width: 585px;
      margin-right: 98px;
    }
    & .home-info-link2 ul {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
    }
    &.home-info-link2 {
      /* margin-right: 98px; */
    }
    & .home-visual-inner-grid {
      display: grid;
      /* grid-template-columns: 50% 50%; */
      grid-template-columns: 318fr 682fr;
      justify-content: space-between;
      row-gap: 40px;
    }
    & .crucial {
        grid-area: 1 / 2 / 2 / 3;
    }
    & .home-info-link2 {
      grid-area: 2 / 2 / 3 / 3;
      margin-left: auto;
    }
    & .home-info-box {
      grid-area: 1 / 1 / 3 / 2;
    }
    /* 9ブロック（メインビジュアル上） ---------- ---------- ---------- */
  }
}
/* ---------- ---------- ---------- ---------- ---------- ---------- */
/* ---------- ---------- 1621px 以上 ---------- ---------- */
@media screen and (min-width: 1621px) {
  .home {
    & .home-info-link2 {
      /* width: 585px; */
    }
    /* 9ブロック（メインビジュアル上） ---------- ---------- ---------- */

  }
}
