/*
Theme Name: Lightning Child
Template: lightning
Theme URI: https://nistage-online.com/
Author: nandi
Author URI: https://nistage-online.com/
Description: Lightningの子テーマ。専用のカスタマイズを行っています。
Version: 1.0
*/
@charset "utf-8";
@media screen and (min-width: 768px) {
  .pc
  {
    display: block;
  }
  .sp
  {
    display: none;
  }
body
{
  box-sizing: border-box;
  max-width: 100vw;
  margin: 0;
  padding: 0;
  font-size: 1.2vw;
  font-family: "Noto Sans JP", sans-serif;
  color: #4E4E4E;
  background-image: url(assets/img/body_back.png);
  background-repeat: repeat-y !important;
  background-size: 100%;
  background-attachment: fixed;
  position: relative;
  z-index: 0;
  
}
/*header(共通)*/

  .header-sub
  {
    width: 100%;
    position: relative;
    height: 25vw;
    background-image: url(assets/img/header_5.png?20250223);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    position: relative;
  }
  .header-sub::after
  {
    content: "";
    width: 90%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: rgba(0,0,0,0.4);
    background-size: 100%;
    background-position: center;
    border-radius: 0 0 0 7vw;
    z-index: 10;
  }
  .header-con>h2
  {
    color: #fff;
    font-size: 2.5em;
    position: absolute;
    top: 11vw;
    right: 40%;
    z-index: 9999;
    margin: 0;
  }
  .header-con
  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0.5vw 2vw;
    display: flex;
    justify-content: space-between;
  }
  .header_logo
  {
    width: 5vw;
  }
  .header-nav
  {
    display: flex;
    width: 45vw;
    z-index: 9999;
  }
  .header-nav>nav
  {
    width: 80%;
    display: flex;
    justify-content: space-evenly;
  }
  .header-nav>nav ul
  {
    list-style: none;
    display: flex;
  }
  .header-nav>nav ul li
  {
    font-size: 100%;
    margin: 0 0.5vw;
    padding: 0;
  }
  .header-nav>nav ul li a
  {
    text-decoration: none;
    color: #fff;
  }
  .header-nav>nav ul li a:hover
  {
    color: #4e4e4e;
  }
  .current-menu-item a, 
  .current-page-item a {
      border-bottom: 1px solid #fff; /* 線の色と太さを指定 */
  }
  .contact-con
  {
    width: 15%;
    position: relative;
  }
  .contact-con>div
  {
    width: 10vw;
    height: 7vw;
    padding-bottom: 1vw;
    box-sizing: border-box;
    background-image: url(assets/img/contact_1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    position: absolute;
    top: -0.5vw;
    border-radius: 0 0 2vw 2vw;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  }
  .contact-con>div:hover
  {
    filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  }
  .contact-con>div a
  {
    width: 100%;
    height: 100%;
    font-size: 120%;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    text-decoration: underline 1px solid;
    position: relative;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .contact-con>div a::after
  {
    content: "お問い合わせ";
    font-size: 60%;
    color: #fff;
    position: absolute;
    top: 60%;
    text-wrap: nowrap;
  }
  .links
  {
    width: 80%;
    margin: auto;
    text-align: left;
  }
  .breadcrumb
  {
    background: none;
    width: fit-content;
    border-radius: 0;
    padding: 0.1vw 2vw 0.1vw 0.5vw;
    margin: 2vw 0 1vw 1vw;
    background-color: #3195D3;
    color: #fff;
    border-radius: 0 2vw 2vw 0;
    position: relative;
  }

  .breadcrumb::before
  {
    content: "";
    width: 0.5vw;
    height: 100%;
    background-color: #3195D3;
    position: absolute;
    top: 0;
    left: -1vw;
  }
  .links a
  {
    text-decoration: none;
    color: #fff;

  }
  .links a:hover
  {
    text-decoration: none;
    color: #2C3E50;

  }
/*header(index)*/
.header-top
{
  width: 100%;
  height: fit-content;
  position: relative;
}
/* .header-top::after
{
  content: "";
  width: 100%;
  height: 21vw;
  position: absolute;
  bottom: -3vw !important;
  background-image: url(assets/img/top_shadow.png);
  background-repeat: no-repeat;
  background-size: contain;
} */
.top-after {
  width: 100%;
  height: 21vw;
  position: absolute;
  bottom: -3vw !important;
  opacity: 0; /* 初期状態で非表示 */
  transform: translateY(40px); /* 初期位置を下げる */
  transition: opacity 0.3s ease, transform 1s ease; /* スムーズなアニメーション */
}

.topFadeUp {
  opacity: 1; /* 表示 */
  transform: translateY(0); /* 元の位置 */
}
/* @keyframes topUp {
  from {
    opacity: 0;
   transform: translateY(20px);
   }
 
   to {
     opacity: 1;
   transform: translateY(0);
   }  
} */
.logo_back
{
  width: 15vw;
  height: 15vw;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(assets/img/logo_back_2.png);
  background-size: cover;
  z-index: 99;
}
.logo_back>h1
{
  margin: 1vw;
  padding: 0;
  width: 7vw;
  height: 7vw;
}
.logo_back>h1 a
{
  display: inline-block;
  width: 100%;
  height: 100%;
}
.logo_back>h1 img
{
  width: 100%;
  height: 100%;
  object-fit: contain;
}


.slick-slider {
  margin: 0 auto;
  width: 100%;
  max-width: 100vw;
}

.slick-slider img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: cover;
}

.slick-prev, .slick-next {
  display: none;
}

/* メニュー全体の位置調整 */
.menu-list {
  position: fixed;
  top: 80vh;
  right: 7vw;
  transition: transform 0.3s ease-in-out;
  z-index: 99999;
}
.menu-list.open
{
  transform: translateY(-10vh);
  transition: transform 0.3s ease-in-out;
}

.menu-btn {
  position: fixed;
  width: 4.5vw;
  height: 4.5vw;
  background-image: url(assets/img/menu_btn.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 150% 150%;
  filter: drop-shadow(3px 3px 10px rgba(0,0,0,0.16));
  padding: 0;
  border: none;
  cursor: pointer;
  border-radius: 50%;
  font-size: 1vw;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  transition: transform 0.3s ease-in-out;
}

.menu-btn:hover,
.menu-btn:active {
  filter: drop-shadow(0 0 0 rgba(0,0,0,0.16));
}

/* メニューが最初は非表示 (hidden-nav) */
.hidden-nav {
  position: absolute;
  width: 100%;
  height: 100%;
  top: -2vw;
  left: -5vw;
  display: none; 
  z-index: 9999;
}

.menu-list.open .hidden-nav {
  display: block; 
}

.hidden-nav ul {
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 9999;
}

.hidden-nav ul li {
  position: absolute;
  width: 3.5vw;
  height: 3.5vw;
  text-wrap: wrap;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  opacity: 0; /* 初期状態では透明 */
  transform: translate(0, 0); /* 初期状態はボタンの位置 */
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out; /* 透明度のアニメーション */
  animation: fadeIn 0.4s ease-in-out forwards; /* フェードインのアニメーション */
  z-index: 9999;
}

.menu-list.open .hidden-nav ul li {

  animation-delay: 0.4s; /* 0.4秒の遅延後に表示 */
}

.hidden-nav ul li a {
  display: flex; /* Flexboxを使用して中央揃え */
  justify-content: center; /* 水平方向の中央揃え */
  align-items: center; /* 垂直方向の中央揃え */
  width: 100%;
  height: 100%;
  padding: 1vw 0;
  box-sizing: border-box;
  background-color: #3195D3;
  filter: drop-shadow(3px 3px 10px rgba(0,0,0,0.16));
  border-radius: 50%;
  color: #fff;
  font-size: 0.8vw;
  line-height: 1.2; 
  text-align: center;
  text-decoration: none;
  transition: transform 0.3s, background-color 0.3s;
  text-wrap: nowrap;
  z-index: 9999;
}

.hidden-nav ul li a:hover {
  transform: scale(1.1);
}

.menu-list.open .hidden-nav {
  display: block;
  z-index: 9999999;
  position: fixed;
}



/* 追加: 半円にメニューを配置するためのtransformを追加 */
.menu-list.open .hidden-nav ul li {
  transform-origin: 50% 50%;

}

.hidden-nav ul li:nth-child(1) {
  transform: translate(6vw, -4vw); /* 1つ目のメニューの配置 */
  animation: fadeUp 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(2) {
  transform: translate(1.75vw, -3.25vw); /* 2つ目のメニューの配置 */
  animation: fadeUp 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(3) {
  transform: translate(-1vw, 0.25vw); /* 3つ目のメニューの配置 */
  animation: fadeR 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(4) {
  transform: translate(-1vw, 4.5vw); /* 4つ目のメニューの配置 */
  animation: fadeR 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(5) {
  transform: translate(1.75vw, 8.25vw); /* 5つ目のメニューの配置 */
  animation: fadeDw 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(6) {
  transform: translate(6vw, 9vw); /* 6つ目のメニューの配置 */
  animation: fadeDw 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li {
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;

  }
}
@keyframes fadeDw {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeR {
  0% {
    opacity: 0;
    transform: translateX(-10px);
  }
  100% {
    opacity: 1;

  }
}

/*section*/
h2,h3
{
  border: none;
  padding: 0;
}
h3::after
{
  display: none;
}

main
{
  width: 80%;
  margin: 5vw auto 0;
  height: fit-content;
}
section
{
  margin-bottom: 10vw;
  position: relative;
}
section >h2
{
  color: #3195D3;
  text-decoration: underline 1px solid #3195D3;
  filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.16));
  position: relative;
  font-size: 2vw;
}

.line
{
  max-width: fit-content !important;
}
.business-section > h2::after {
  content: "会社について";
}
.business-section .line
{
  position: absolute;
  bottom: -130%;
  left: -10vw;
  width: 100vw;
  z-index: -1;
}
.service-section>h2::after
{
  content: "事業内容";
}
.service-section .line
{
  position: absolute;
  bottom: -50%;
  left: -10vw;
  width: 100vw;
  z-index: -1;
}
.news-section>h2::after
{
  content: "お知らせ";
}
.news-section .line
{
  position: absolute;
  top: 30vw;
  left: -10vw;
  width: 100vw;
  z-index: -1;
}
.blog-section>h2::after
{
  content: "ブログ";
}
.blog-section .line
{
  position: absolute;
  bottom: -30vw;
  left: -10vw;
  width: 100vw;
  z-index: -1;
}
.sns-section>h2::after
{
  content: "SNS";
}
/* .sns-section::after
{
  content: "";
  position: absolute;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_L.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
section>h2::after
{
  position: absolute;
  text-decoration: none !important;
  font-size: 0.5em;
  display: block;
  color: #3195D3;
  filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.16));
  border: none;
}

/*Businessセクション*/
.business-con
{
  display: flex;
  justify-content: space-between;
}
.business-L
{
  width: 37%;
  height: auto;
}
.business-L>p
{
  margin: 0.5vw 0;
}
.business-L>p:nth-child(1)
{

  font-size: 120%;
}
.business-L>p:nth-child(2)
{
  color: #676D72;
  font-size: 100%;
}
.business-R
{
  width: 63%;
}
.business-circle
{
  width: 18vw;
  height: 18vw;
  margin: 0 auto 10vw;
  background-image: url(assets/img/circle.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
}
.business-circle>div
{
  width: 16vw;
    height: 16vw;
    position: absolute;
    background-image: url('assets/img/sec_back1.png');
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
    overflow: hidden;
    z-index: 2;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    display: flex;
    justify-content: center;
    text-align: center;
    transition: all 0.3s ease-in-out;
}
.business-circle>div:hover
{
  background-image: url('assets/img/sec_back2.png');
  transition: all 0.3s ease-in-out;
}
.business-circle>div:nth-child(1):hover::after
{
  content: "看護学生から定年後のセカンドキャリアまで看護師の多様な働き方を実現できる社会";
  width: 90%;
  font-size: 115%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.business-circle>div:nth-child(2):hover::after
{
  content: "自身にあった働き方を自らの意思で選択できる看護師を増やす";
  width: 90%;
  font-size: 115%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.business-circle>div:nth-child(3):hover::after
{
  content: "新しく働ける\A未来を応援する\A キャリア実現のために寄り添える場になる";
  width: 90%;
  font-size: 115%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center; /* 中央揃え（必要に応じて） */
  white-space: pre-wrap; /* 改行を有効にする */
}
.business-circle>div>p
{
  margin: 0;
  font-size: 180%;
  color: #3195D3;
  height: fit-content;
  margin: auto;
}
.business-circle>div:hover .business-circle>div>p
{
  display: none;
}
.business-circle>div:nth-child(1)
{
  top: -8vw;
  left: 50%;
  transform: translateX(-50%);
}
.business-circle>div:nth-child(2)
{
  bottom: -7vw;
  left: -10vw;
}
.business-circle>div:nth-child(3)
{
  bottom: -7vw;
  right: -10vw;
}

/*Serviceセクション*/
.service-slider
{
  width: 100%;
  margin: 5vw 0;
  height: auto;
  display: flex;
  justify-content: space-evenly;
  align-items: stretch;
  overflow: visible;
}
.slick-track
{
  display: flex;
  height: fit-content;
}
.slick-track>div
{
  display: flex; /* 子要素も伸びるように設定 */
  align-items: stretch;
  height: auto; /* 高さをコンテンツに合わせる */
}
.service-slide
{
  height: 100%;
}
.service-slider>div
{
  overflow: visible;
  align-items: stretch;
  height: auto;
}
.service-slider a
{
  text-decoration: none;
  color: #4E4E4E;
}
.item1,
.item2,
.item3,
.item4
{
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.item1:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}
.item2:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}
.item3:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}


.service-slider>div
.service-item
{
  display: flex;
  flex-flow: column;
  width: 90% !important;
  justify-content: space-between;
  margin: 0 2vw;
  align-items: stretch;
  height: 100% !important;
  padding: 2vw;
  box-sizing: border-box;
  background-image: url("assets/img/service.png");
  
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  border-radius: 2vw;
  position: relative;
  z-index: 100;

}
.service-item::after
{
  content: "";
  position: absolute;
  width: 2vw;
  height: 2vw;
  background-image: url("assets/img/link_icon.png");
  background-repeat: no-repeat;
  background-size: contain;
  
  bottom: 2vw;
  right: 2vw;
}
.item4 > .service-item::after
{
  content: "";
  background: none;
  display: none;
}
.servise-logo
{
  width: 100%;
  height: 4vw;
  margin: 0 auto 1vw;
}
.service-logo>img
{
  max-width: 100%;
  object-fit: contain;
}
.service-text
{
  width: 100%;
  margin: 2vw auto 1vw;
  text-align: justify;
}
.service-item h3
{
  text-align: center;
  font-size: 120%;
}




/*news*/
.news-list
{
  display: flex;
  flex-flow: column;
  width: 100%;
  justify-content: center;
}
.news-list a
{
  text-decoration: none;
  color: #4E4E4E;
  transition: all 0.3s ease-in-out;
}
.news-list a:hover .news-text
{
  background: url(assets/img/news_2.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  color: #3195D3;
  border: 1px solid #3195D3;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  padding: 1.2vw 4.5vw 1.2vw 2vw;
  transition: all 0.3s ease-in-out;
}
.news-text
{
  width: 90%;
  padding: 1.25vw 4.5vw 1.25vw 2vw;
  box-sizing: border-box;
  display: flex;
  background: url(assets/img/news_1.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  border-radius: 3vw;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  margin: 1vw auto;
  text-align: left;
  justify-content: space-between;
}
.news-text>div:nth-child(1)
{
  width: 15vw;
}
.news-text>div:nth-child(2)
{
  width: 70vw;
}
.news-text p
{
  margin: 0;
  padding: 0;
}
.btn-con
{
  width: 35vw;
  padding: 1.15vw 2vw;
  border-radius: 2vw;
  box-sizing: border-box;
  background-image: url("assets/img/btn_1.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  text-align: center;
  margin: 1vw auto;
  transition: all 0.3s ease-in-out;
}
.btn-con:hover
{
  background-image: url("assets/img/btn_2.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
  
}
.btn-con:hover>a
{
  color: #fff;
}
.btn-con>a
{
  width: 100%;
  display: inline-block;
}

/*blog*/
.blog-list
{
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.blog-list a
{
  text-decoration: none;
  color: #4E4E4E;
}
.blog-list a:hover>article
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.blog-list article
{
  width: 24vw;
  height: 100%;
  background-image: url(assets/img/blog_1.png);
  border-radius: 2vw;
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  box-sizing: border-box;
  padding: 2vw;
  align-items: stretch;
  transition: all 0.3s ease-in-out;
}

.blog-list article >div
{
  width: 100%;
}

.blog-list article:nth-child(2)
{
  animation-duration: 0.3s;
}
.blog-list article:nth-child(6)
{
  animation-duration: 0.6s;
}
.blog-img>img
{
  width: 100%;
  object-fit: cover;
}

.blog-text
{
  margin: 2vw 0;
}
.blog-text>p
{
  margin: 0;
  padding: 0;
}
.blog-text>h3
{
  margin: 0;
  padding: 0;
  font-size: 120%;
}


/*SNS*/
.sns-con>h3
{
  border-bottom: 1px solid #4E4E4E;
  width: fit-content;
  margin-top: 2vw;
  margin-left: 3vw;
  position: relative;
}
.sns-con>h3::before
{
  content: "";
  display: flex;
  background-image: url(assets/img/icon_insta.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 2.5vw;
  height: 2.5vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -3vw;
}
.sns-box
{
  display: flex;
  justify-content: space-between;
}
.sns-box>div:nth-child(1)
{
  display: flex;
  justify-content: space-between;
  height: fit-content;
}
.sns-box>div:nth-child(1) blockquote
{
  width: 48%;
}
.sns-box>div
{
  width: 48%;

}
.sns-box>div:nth-child(2)
{
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}
.more-btn-con
{
  width: 35vw;
  padding: 1.15vw 2vw;
  border-radius: 2vw;
  box-sizing: border-box;
  background-image: url("assets/img/more_1.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  text-align: center;
  margin: 1vw auto;
  transition: all 0.3s ease-in-out;
}
.more-btn-con:hover
{
  background-image: url("assets/img/more_2.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
  border: 1px solid #3195D3;
  padding: 1.125vw 2vw;
}
.more-btn-con:hover>a
{
  color: #3195D3;
}
.more-btn-con>a
{
  width: 100%;
  color: #4E4E4E;
  display: inline-block;
  text-decoration: none;
}
@media screen and (max-width: 1590px) {
  .sns-con
  {
    width: 50%;
    margin: auto;
  }
  .sns-box
  {
    display: block;
    justify-content: center;
  }
  .sns-box>div:nth-child(1)
  {
    display: flex;
    justify-content: space-between;
    height: fit-content;
  }
  .sns-box>div:nth-child(1) blockquote
  {
    width: 50%;
  }
  .sns-box>div
  {
    width: 100%;

  }
  .sns-box>div:nth-child(2)
  {
    display: flex;
    flex-flow: column;
    justify-content: space-around;
  }
}
@media screen and (max-width: 1450px) {
  .pc
  {
    display: none;
  }
  .sp
  {
    display: block;
  }
  .sns-con
  {
    width: 100%;
    margin: auto;
  }
  .sns-box
  {
    display: block;
    justify-content: center;
  }
  .sns-box>div:nth-child(1)
  {
    display: flex;
    justify-content: space-between;
    height: fit-content;
  }
  .sns-box>div:nth-child(1) blockquote
  {
    width: 50%;
  }
  .sns-box>div
  {
    width: 100%;

  }
  .sns-box>div:nth-child(2)
  {
    display: flex;
    flex-flow: column;
    justify-content: space-around;
  }
}
/*footer*/
footer
{
  width: 100%;
  padding: 3vw 10%;
  height: fit-content;
  box-sizing: border-box;
  background-image: url(assets/img/footer.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}
.footer-con
{
  width: 100%;
  display: flex;
}
.footer-L
{
  width: 50%;
  text-align: left;
  color: #fff;
}
.footer-L>p
{
  margin: auto;
  width: fit-content;
  height: fit-content;
}
.footer-R
{
  display: flex;
  width: 50%;
}
.footer-R>div:nth-child(1)
{
  width: 50%;
}
.footer-R>div:nth-child(1)>ul
{
  list-style: none;
  width: fit-content;
  height: fit-content;
  text-align: left;
  margin: 1vw auto;
  padding: 0;
}
.footer-R>div:nth-child(1)>ul li
{
  margin: 0 0 0.5vw;
}
.footer-R>div:nth-child(1)>ul li>a
{
  text-decoration: none;
  color: #fff;
  font-size: 100%;
}
.footer-R>div:nth-child(1)>ul li>a:hover
{
  color: #2C3E50;
  text-decoration: underline 1px #2C3E50;
}
.footer-R>div:nth-child(2)
{
  width: 50%;
}
.contact-footer
{
  width: 10vw;
  height: 10vw;
  background-color: #fff; 
  background-image: none;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  text-align: center;
  border-radius: 50%;
}
.contact-footer:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  border: none;
}
.contact-footer>a
{
  display: inline-flex;
  width: 100%;
  height: 100%;
  text-align: center;
  align-items: center;
  text-decoration: none;
  color: #3195D3;
  margin: auto;
  justify-content: center;
  text-decoration: underline #3195D3 1px;
  position: relative;
  font-size: 130%;
}
.contact-footer>a::after
{
  position: absolute;
  content: "お問い合わせ";
  color: #3195D3;
  font-size: 55%;
  top: 55%;
}

/*ブログ*/

.blog-listing .content-wrapper
{
  display: flex;
  justify-content: space-between;
}
.blog-listing .content-wrapper .main-content
{
  width: 60%;
}
.blog-listing .container
{
  padding: 0;
  width: 100%;
  max-width: 100%;
}
.blog-listing .content-wrapper .sidebar
{
  width: 35%;
}
.blog-page-list
{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 2vw;
  margin: 0 auto 3vw;
}
.blog-page-list a
{
  text-decoration: none;
  color: #4E4E4E;
}
.blog-page-list a:hover>article
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.blog-page-list article
{
  width: 22vw;
  height: 100%;
  background-image: url(assets/img/blog_1.png);
  border-radius: 2vw;
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  box-sizing: border-box;
  padding: 2vw;
  align-items: stretch;
  transition: all 0.3s ease-in-out;
}

.blog-page-list article >div
{
  width: 100%;
}
.blog-img>img
{
  width: 100%;
  height: 12vw;
  object-fit: cover;
}

.blog-text
{
  margin: 2vw 0;
}
.blog-text>p
{
  margin: 0;
  padding: 0;
}
.blog-text>h3
{
  margin: 0;
  padding: 0;
  font-size: 120%;
}

.blog-page-list::after {
  content: ''; /* 見えない要素を追加 */
  flex: 0.76 0.76 auto; /* 自動でスペースを埋める */
}

/*サイトマップ*/
.sitemap ul
{
  list-style: none;
}

}

@media screen and (max-width: 767px) {
  .line
  {
    display: none;
  }
  .pc
  {
    display: none;
  }
  .sp
  {
    display: block;
  }
  body
{
  box-sizing: border-box;
  max-width: 100vw;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  font-size: 3vw;
  font-family: "Noto Sans JP", sans-serif;
  color: #4E4E4E;
  background-image: url(assets/img/body_back.png);
  background-repeat: repeat-y !important;
  background-size: 100%;
  background-attachment: fixed;
  position: relative;
  z-index: 0;
  
}
/*header(共通)*/

  .header-sub
  {
    width: 100%;
    position: relative;
    height: 25vw;
    background-image: url(assets/img/header_5.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
  }
  .header-sub::after
  {
    content: "";
    width: 90%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: rgba(0,0,0,0.4);
    background-size: 100%;
    background-position: center;
    border-radius: 0 0 0 7vw;
    z-index: 10;
  }
  .header-con>h2
  {
    color: #fff;
    font-size: 2em;
    position: absolute;
    top: 8vw;
    right: 32.5%;
    z-index: 9999;
    margin: 0;
  }
  .header-con
  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0.5vw 2vw;
    display: flex;
    justify-content: space-between;
  }
  .header_logo
  {
    width: 5vw;
  }

  .links
  {
    width: 80%;
    margin: auto;
    text-align: left;
  }
  .breadcrumb
  {
    background: none;
    width: fit-content;
    border-radius: 0;
    padding: 0.1vw 2vw 0.1vw 0.5vw;
    margin: 2vw 0 1vw 1vw;
    background-color: #3195D3;
    color: #fff;
    border-radius: 0 2vw 2vw 0;
    position: relative;
  }

  .breadcrumb::before
  {
    content: "";
    width: 0.5vw;
    height: 100%;
    background-color: #3195D3;
    position: absolute;
    top: 0;
    left: -1vw;
  }
  .links a
  {
    text-decoration: none;
    color: #fff;

  }
  .links a:hover
  {
    text-decoration: none;
    color: #2C3E50;

  }


/*header(index)*/
.header-top
{
  width: 100%;
  height: fit-content;
  position: relative;
}
/* .header-top::after
{
  content: "";
  width: 100%;
  height: 21vw;
  position: absolute;
  bottom: -3vw !important;
  background-image: url(assets/img/top_shadow.png);
  background-repeat: no-repeat;
  background-size: contain;
} */

.logo_back
{
  width: 20vw;
  height: 20vw;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(assets/img/logo_back_2.png);
  background-size: cover;
  z-index: 99;
}
.logo_back>h1
{
  margin: 1vw;
  padding: 0;
  width: 7vw;
  height: 7vw;
}
.logo_back>h1 a
{
  display: inline-block;
  width: 100%;
  height: 100%;
}
.logo_back>h1 img
{
  width: 100%;
  height: 100%;
  object-fit: contain;
}


.slick-slider {
  margin: 0 auto;
  width: 100%;
  max-width: 100vw;
}

.slick-slider img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: cover;
}

.slick-prev, .slick-next {
  display: none;
}

/* メニュー全体の位置調整 */
.menu-list {
  position: fixed;
  top: 82vh;
  right: 12.5vw;
  transition: transform 0.3s ease-in-out;
  z-index: 99999;
}
.menu-list.open
{
  transform: translateY(-10vh);
  transition: transform 0.3s ease-in-out;
}

.menu-btn {
  position: fixed;
  width: 10vw;
  height: 10vw;
  background-image: url(assets/img/menu_btn.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 150% 150%;
  filter: drop-shadow(3px 3px 10px rgba(0,0,0,0.16));
  padding: 0;
  border: none;
  cursor: pointer;
  border-radius: 50%;
  font-size: 3vw;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  transition: transform 0.3s ease-in-out;
}

.menu-btn:hover,
.menu-btn:active {
  filter: drop-shadow(0 0 0 rgba(0,0,0,0.16));
}

/* メニューが最初は非表示 (hidden-nav) */
.hidden-nav {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0vw;
  left: -5vw;
  display: none; 
  z-index: 9999;
}

.menu-list.open .hidden-nav {
  display: block; 
}

.hidden-nav ul {
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 9999;
}

.hidden-nav ul li {
  position: absolute;
  width: 12vw;
  height: 12vw;
  text-wrap: wrap;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  opacity: 0; /* 初期状態では透明 */
  transform: translate(0, 0); /* 初期状態はボタンの位置 */
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out; /* 透明度のアニメーション */
  animation: fadeIn 0.4s ease-in-out forwards; /* フェードインのアニメーション */
  z-index: 9999;
}

.menu-list.open .hidden-nav ul li {

  animation-delay: 0.4s; /* 0.4秒の遅延後に表示 */
}

.hidden-nav ul li a {
  display: flex; /* Flexboxを使用して中央揃え */
  justify-content: center; /* 水平方向の中央揃え */
  align-items: center; /* 垂直方向の中央揃え */
  width: 100%;
  height: 100%;
  padding: 1vw 0;
  box-sizing: border-box;
  background-color: #3195D3;
  filter: drop-shadow(3px 3px 10px rgba(0,0,0,0.16));
  border-radius: 50%;
  color: #fff;
  font-size: 3vw;
  line-height: 1.2; 
  text-align: center;
  text-decoration: none;
  transition: transform 0.3s, background-color 0.3s;
  text-wrap: nowrap;
  z-index: 9999;
}

.hidden-nav ul li a:hover {
  transform: scale(1.1);
}

.menu-list.open .hidden-nav {
  display: block;
  z-index: 9999999;
  position: fixed;
}



/* 追加: 半円にメニューを配置するためのtransformを追加 */
.menu-list.open .hidden-nav ul li {
  transform-origin: 50% 50%;

}

.hidden-nav ul li:nth-child(1) {
  transform: translate(5vw, -20vw); /* 1つ目のメニューの配置 */
  animation: fadeUp 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(2) {
  transform: translate(-10vw, -17vw); /* 2つ目のメニューの配置 */
  animation: fadeUp 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(3) {
  transform: translate(-20vw, -7vw); /* 3つ目のメニューの配置 */
  animation: fadeR 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(4) {
  transform: translate(-20vw, 7vw); /* 4つ目のメニューの配置 */
  animation: fadeR 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(5) {
  transform: translate(-10vw, 17vw); /* 5つ目のメニューの配置 */
  animation: fadeDw 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li:nth-child(6) {
  transform: translate(5vw, 20vw); /* 6つ目のメニューの配置 */
  animation: fadeDw 0.4s ease-in-out forwards;
  animation-duration: 0.4s;
}

.hidden-nav ul li {
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;

  }
}
@keyframes fadeDw {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeR {
  0% {
    opacity: 0;
    transform: translateX(-10px);
  }
  100% {
    opacity: 1;

  }
}

/*section*/
h2,h3
{
  border: none;
  padding: 0;
}
h3::after
{
  display: none;
}

main
{
  width: 90%;
  margin: 5vw auto 0;
  height: fit-content;
}
section
{
  margin-bottom: 15vw;
  position: relative;
}
section >h2
{
  color: #3195D3;
  text-decoration: underline 1px solid #3195D3;
  filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.16));
  position: relative;
  font-size: 4vw;
}
.business-section > h2::after {
  content: "会社について";
}
/* .business-section::after
{
  content: "";
  position: absolute;
  bottom: -100%;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_L.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
.service-section>h2::after
{
  content: "事業内容";
}
/* .service-section::after
{
  content: "";
  position: absolute;
  bottom: -50%;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_R.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
.news-section>h2::after
{
  content: "お知らせ";
}
/* .news-section::after
{
  content: "";
  position: absolute;
  top: 30vw;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_L.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
.blog-section>h2::after
{
  content: "ブログ";
}
/* .blog-section::after
{
  content: "";
  position: absolute;
  top: -13vw;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_R.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
.sns-section>h2::after
{
  content: "SNS";
}
/* .sns-section::after
{
  content: "";
  position: absolute;
  left: -10vw;
  width: 100vw;
  height: 60vw;
  z-index: -1;
  background-image: url(assets/img/line_L.png);
  background-size: contain;
  background-repeat: no-repeat;
} */
section>h2::after
{
  position: absolute;
  text-decoration: none !important;
  font-size: 0.5em;
  display: block;
  color: #3195D3;
  filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.16));
  border: none;
}

/*Businessセクション*/
.business-con
{
  display: block;
}
.business-L
{
  width: 100%;
  height: auto;
}
.business-L>p
{
  margin: 0.5vw 0;
}
.business-L>p:nth-child(1)
{

  font-size: 120%;
}
.business-L>p:nth-child(2)
{
  color: #676D72;
  font-size: 100%;
}
.business-R
{
  width: 100%;
}
.business-circle
{
  width: 50vw;
  height: 50vw;
  margin: 15vw auto 20vw;
  background-image: url(assets/img/circle.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
}
.business-circle>div
{
  width: 36vw;
    height: 36vw;
    position: absolute;
    background-image: url('assets/img/sec_back1.png');
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.16));
    overflow: hidden;
    z-index: 5;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    display: flex;
    justify-content: center;
    text-align: center;
    transition: all 0.3s ease-in-out;
    padding: 5px;
    box-sizing: border-box;
}
.business-circle>div:hover
{
  background-image: url('assets/img/sec_back2.png');
  transition: all 0.3s ease-in-out;
}
.business-circle>div:nth-child(1):hover::after
{
  content: "あなたらしく働ける未来を応援する、キャリア実現のために寄り添える場所になる";
  width: 80%;
  font-size: 105%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.business-circle>div:nth-child(2):hover::after
{
  content: "自身にあった働き方を自らの意思で選択できる看護師を増やす";
  width: 75%;
  font-size: 115%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.business-circle>div:nth-child(3):hover::after
{
  content: "新しく働ける\A未来を応援する\A キャリア実現のために寄り添える場になる";
  width: 75%;
  font-size: 115%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center; /* 中央揃え（必要に応じて） */
  white-space: pre-wrap; /* 改行を有効にする */
}
.business-circle>div>p
{
  margin: 0;
  font-size: 180%;
  color: #3195D3;
  height: fit-content;
  margin: auto;
}
.business-circle>div:hover .business-circle>div>p
{
  display: none;
}
.business-circle>div:nth-child(1)
{
  top: -13vw;
  left: 50%;
  transform: translateX(-50%);
}
.business-circle>div:nth-child(2)
{
  bottom: -10vw;
  left: -17vw;
}
.business-circle>div:nth-child(3)
{
  bottom: -10vw;
  right: -17vw;
}

/*Serviceセクション*/
.service-slider
{
  width: 100%;
  margin: 5vw 0;
  height: fit-content;
  display: flex;
  justify-content: space-evenly;
  align-items: stretch;
  overflow: visible;
}
.service-slider>div
{
  overflow: visible;
}
.service-slider a
{
  text-decoration: none;
  color: #4E4E4E;
}
.item1,
.item2,
.item3,
.item4
{
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.item1:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}
.item2:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}
.item3:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;

}


.service-slider>div
.service-item
{
  display: flex;
  flex-flow: column;
  width: 90% !important;
  justify-content: space-between;
  margin: 0 2vw;
  height: auto !important;
  padding: 5vw;
  box-sizing: border-box;
  background-image: url("assets/img/service.png");
  
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  border-radius: 5vw;
  position: relative;
  z-index: 100;

}
.service-item::after
{
  content: "";
  position: absolute;
  width: 5vw;
  height: 5vw;
  background-image: url("assets/img/link_icon.png");
  background-repeat: no-repeat;
  background-size: contain;
  
  bottom: 5vw;
  right: 5vw;
}
.item4 > .service-item::after
{
  content: "";
  background: none;
  display: none;
}
.servise-logo
{
  width: 100%;
  height: 15vw;
  margin: 0 auto 1vw;
}
.service-logo>img
{
  max-width: 90%;
  object-fit: contain;
}
.service-text
{
  width: 100%;
  margin: 5vw auto 1vw;
}
.service-item h3
{
  text-align: center;
  font-size: 120%;
}

.slick-prev,
.slick-next
{
  position: absolute;
  z-index: 9999;
  background-color: #3195D3 !important;
  border-radius: 50%;
  width: 30px;
  height: 30px;
}

/*news*/
.news-list
{
  display: flex;
  flex-flow: column;
  width: 100%;
  justify-content: center;
}
.news-list a
{
  text-decoration: none;
  color: #4E4E4E;
  transition: all 0.3s ease-in-out;
}
.news-list a:hover .news-text
{
  background: url(assets/img/news_2.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  color: #3195D3;
  border: 1px solid #3195D3;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  padding: 1.9vw 4.9vw 1.9vw 2vw;
  transition: all 0.3s ease-in-out;
}
.news-text
{
  width: 100%;
  padding: 2vw 5vw 2vw 2vw;
  box-sizing: border-box;
  display: flex;
  background: url(assets/img/news_1.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  border-radius: 10vw;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  margin: 1vw auto;
  text-align: left;
  justify-content: space-between;
}
.news-text>div:nth-child(1)
{
  width: 30vw;
}
.news-text>div:nth-child(2)
{
  width: 60vw;
}
.news-text p
{
  margin: 0;
  padding: 0;
}
.btn-con
{
  width: 50vw;
  padding: 2vw 5vw;
  border-radius: 10vw;
  box-sizing: border-box;
  background-image: url("assets/img/btn_1.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  text-align: center;
  margin: 1vw auto;
  transition: all 0.3s ease-in-out;
}
.btn-con:hover
{
  background-image: url("assets/img/btn_2.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
  
}
.btn-con:hover>a
{
  color: #fff;
}
.btn-con>a
{
  width: 100%;
  display: inline-block;
}

/*blog*/
.blog-list
{
  width: 100%;
  display: block;
  justify-content: space-between;
}
.blog-list a
{
  text-decoration: none;
  color: #4E4E4E;
}
.blog-list a:hover>article
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.blog-list article
{
  width: 100%;
  height: 100%;
  background-image: url(assets/img/blog_1.png);
  border-radius: 5vw;
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  box-sizing: border-box;
  padding: 5vw;
  align-items: stretch;
  transition: all 0.3s ease-in-out;
  margin: 5vw auto;
}

.blog-list article >div
{
  width: 100%;
}
.blog-img>img
{
  width: 100%;
  object-fit: cover;
}

.blog-text
{
  margin: 2vw 0;
}
.blog-text>p
{
  margin: 0;
  padding: 0;
}
.blog-text>h3
{
  margin: 0;
  padding: 0;
  font-size: 120%;
}


/*SNS*/
.sns-con>h3
{
  border-bottom: 1px solid #4E4E4E;
  width: fit-content;
  margin-top: 3vw;
  margin-left: 5vw;
  position: relative;
}
.sns-con>h3::before
{
  content: "";
  display: flex;
  background-image: url(assets/img/icon_insta.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 2.5vw;
  height: 2.5vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -3vw;
}
.sns-box
{
  display: block;
  justify-content: space-between;
}
.sns-box>div:nth-child(1)
{
  display: block;
  justify-content: space-between;
  height: fit-content;
}
.sns-box>div:nth-child(1) blockquote
{
  width: 100%;
}
.sns-box>div
{
  width: 100%;

}
.sns-box>div:nth-child(2)
{
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}
.more-btn-con
{
  width: 100%;
  padding: 2vw 5vw;
  border-radius: 10vw;
  box-sizing: border-box;
  background-image: url("assets/img/more_1.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.16));
  text-align: center;
  margin: 3vw auto;
  transition: all 0.3s ease-in-out;
}
.more-btn-con:hover
{
  background-image: url("assets/img/more_2.png");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
  border: 1px solid #3195D3;
  padding: 1.9vw 5vw;
}
.more-btn-con:hover>a
{
  color: #3195D3;
}
.more-btn-con>a
{
  width: 100%;
  color: #4E4E4E;
  display: inline-block;
  text-decoration: none;
}

/*footer*/
footer
{
  width: 100%;
  padding: 5vw 5%;
  height: fit-content;
  box-sizing: border-box;
  background-image: url(assets/img/footer.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}
.footer-con
{
  width: 100%;
  display: block;
}
.footer-L
{
  width: 100%;
  text-align: left;
  color: #fff;
}
.footer-L>p
{
  margin: 0;
  width: fit-content;
  height: fit-content;
}
.footer-R
{
  display: flex;
  width: 100%;
}
.footer-R>div:nth-child(1)
{
  width: 50%;
}
.footer-R>div:nth-child(1)>ul
{
  list-style: none;
  width: fit-content;
  height: fit-content;
  text-align: left;
  margin: 5vw 0;
  padding: 0;
}
.footer-R>div:nth-child(1)>ul li
{
  margin: 0 0 0.5vw;
}
.footer-R>div:nth-child(1)>ul li>a
{
  text-decoration: none;
  color: #fff;
  font-size: 100%;
}
.footer-R>div:nth-child(1)>ul li>a:hover
{
  color: #2C3E50;
  text-decoration: underline 1px #2C3E50;
}
.footer-R>div:nth-child(2)
{
  width: 50%;
}
.contact-footer
{
  width: 25vw;
  height: 25vw;
  background-color: #fff;
  background-image: none;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  text-align: center;
  border-radius: 50%;
}
.contact-footer:hover
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  border: none;
}
.contact-footer>a
{
  display: inline-flex;
  width: 100%;
  height: 100%;
  text-align: center;
  align-items: center;
  text-decoration: none;
  color: #3195D3;
  margin: auto;
  justify-content: center;
  text-decoration: underline #3195D3 1px;
  position: relative;
  font-size: 130%;
}
.contact-footer>a::after
{
  position: absolute;
  content: "お問い合わせ";
  color: #3195D3;
  font-size: 55%;
  top: 55%;
}

/*ブログ*/

.blog-listing .content-wrapper
{
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
.blog-listing .content-wrapper .main-content
{
  width: 100%;
}
.blog-listing .container
{
  padding: 0;
  width: 100%;
  max-width: 100%;
}
.blog-listing .content-wrapper .sidebar
{
  width: 100%;
  margin: 5vw auto;
}
.blog-page-list
{
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  row-gap: 2vw;
  margin: 0 auto 3vw;
}
.blog-page-list a
{
  text-decoration: none;
  color: #4E4E4E;
}
.blog-page-list a:hover>article
{
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0.16));
  transition: all 0.3s ease-in-out;
}
.blog-page-list article
{
  width: 100%;
  height: 100%;
  background-image: url(assets/img/blog_1.png);
  border-radius: 5vw;
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.16));
  box-sizing: border-box;
  padding: 5vw;
  margin: 3vw 0;
  align-items: stretch;
  transition: all 0.3s ease-in-out;
}

.blog-page-list article >div
{
  width: 100%;
}
.blog-img>img
{
  width: 100%;
  height: 52vw;
  object-fit: cover;
}

.blog-text
{
  margin: 2vw 0;
}
.blog-text>p
{
  margin: 0;
  padding: 0;
}
.blog-text>h3
{
  margin: 0;
  padding: 0;
  font-size: 120%;
}

.blog-page-list::after {
  content: ''; /* 見えない要素を追加 */
  flex: 0.76 0.76 auto; /* 自動でスペースを埋める */
}

/*サイトマップ*/
.sitemap ul
{
  list-style: none;
}
}