@charset "UTF-8";
/* CSS Document */

@import url("https://use.typekit.net/jjh5raf.css");

	
    html {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"!important;
      font-weight: 500;
     font-size: 62.5%;
      height: 100%;
      word-break: break-word;
     color:#404040; 
		scroll-behavior: smooth;
		padding: 0;
      margin: 0;
    }

    body {
		width: 100%!important;
padding: 0;
      margin: 0;
box-sizing: border-box;
		position: relative;
		background-color: #fff;
    }


    *,
    *::before,
    *::after {
      box-sizing: border-box;
    }

 

    img {
	width:100%;
      border: 0;
      margin: 0;
    }

    figure {
      margin: 0;
    }

    p {
      margin: 0;
      padding: 0;
		color: #393939;
    }

    a {
      text-decoration:none;
      color:#4E4E4E;
		transition: 1s;
    }

 a:hover {
      opacity: 0.8;
    }
    ul,
    ol {
      margin: 0;
      padding: 0;
      list-style: none;
    }

h1{
font-family: "lotus-eden", sans-serif;
font-weight: 600;
font-style: normal;
color: #094D71;
position:relative;
	margin: 0;
	padding: 0;
}

h1 small{
color:#4D4C4C;
font-weight: 500;
}

/* h1:after{
content: "";
width: 15px;
height: 15px;
position: absolute;
border-radius: 50%;
background-color:  #094D71;
    top: 60%;
    left: -25px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	line-height: 100%;
} */



h2{
line-height: 100%;
	margin: 0;
	padding: 0;
}


p{
	font-size: 1.6rem;
	color: #4B575D;
font-weight: 400;
	line-height: 250%;
	letter-spacing: 1px;
}


/* ヘッダー */

nav.rct_head{
	width: 100%;
	position:fixed;
	background-color: hsla(0,0%,100%,0.90);
		margin: 0;
	padding: 0;
	top:20px;
	display: flex;
	flex-wrap:wrap;
	  justify-content:center; 
	z-index: 1;
}



nav.rct_head h1{
width:6%;
	font-size: 3.0rem;
 position: absolute;
    top: 55%;
    left:5%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);

	
}

nav.rct_head h1:after{
	display: none!important;
}
.inner{width: 70%;}


nav.rct_head ul{
width:100%;
		height: 50px;
	display: flex;
	flex-wrap:wrap;
  justify-content:center; /*これを指定*/
  align-items:center; /*これを指定*/
  column-gap:80px;
	font-size: 1.6rem;
	padding: 0px 0px;
	
}

nav.rct_head ul li{
letter-spacing:3px;
	
}

nav.rct_head ul li a:hover {
  color: #fff;
  padding: 3px 20px;
border-radius:10px;
  background-color: #153896;
}

nav.rct_head span.entry{
	background-color:#153896;
	position: absolute;
	width: 15%;
	top:-20px;
	right: 0;
	height: auto;
	display: flex;
  align-items:center; /*これを指定*/
	color: #fff;
	font-size: 3.0rem;
	padding: 15px 10px;
	letter-spacing: 2px;
	transition: 1s;
}
a:hover:has(span.entry) {
opacity:1.0;

}



nav.rct_head span.entry:hover{
background-color:#284EB4;
	
}

nav.rct_head span.entry b{
width: 100%;
transition: 1s;
}



nav.rct_head span.entry b{
width: 100%;

}

nav.rct_head span.entry b::after{
	content: "エントリーフォームはこちら";
display: block;
width: 100%;
	line-height:200%;
	font-size: 1.2rem;
	font-weight: 500;
border-top: 1px solid #fff;
}


.toggle_btn {
	display: none;
}


.dropDown {
  position: fixed;
  top: 70px;
  left: 0;
  width: 100vw;
  display: none;
  padding: 10px;
  background-color: hsla(0, 0%, 100%, 0.90);
  box-shadow: 0px 3px 8px -2px #777;
  color: initial;
  box-sizing: border-box;
transition: opacity 0.5s ease; 
}

nav.rct_head ul li:hover > .dropDown,
nav.rct_head ul li:focus > .dropDown {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
	transition: 0.8s;
}

nav.rct_head ul li > .dropDown {
  transition-delay: 0.1s; /* ホバー解除時に0.2秒遅延 */
}
.dropDown__list{
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start!important;
	align-items:center;
	padding: 20px 0 0 30px!important;
	height: auto!important;
	column-gap:0px!important;
	width: 100%;
}

.dropDown__list li{
letter-spacing:3px!important;
	text-align: center;
	font-size: 1.4rem;
}
.dropDown__list li img{
width:70%;
display: block;
margin:0 auto 10px auto;

}

.dropDown__list li span{
width:70%;
display: block;
margin: auto;
border-radius:10px;
transition: 0.6s;
}

.dropDown__list li a:hover{
color:#fff;
  background-color: #153896;
	
}

.dropDown__list li a:hover span{
color:#fff;
  background-color: #153896;
	
}


/*フッター*/

footer{
	width: 100%!important;
	display: flex;
	flex-wrap: wrap!important;
	align-items: center;
  justify-content:space-around; 
	background-color: #094D71;
	color: #fff;
	padding:50px 0;
}

footer div.footer_info{
	width:30%!important;
	text-align: center;
}



.footer_navi{
	width:60%!important;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
  justify-content:space-between;
	
	
}


.footer_navi div{
	width:30%!important;
}
	
	

footer div h1{
color: #fff;
	font-size: 2.6rem;
	font-weight:600;
	letter-spacing: 2px;
}

footer div address{
	margin: 30px auto 0 auto;
	text-align: left;
	font-size: 1.5rem;
	font-style: normal;
	display: inline-block;
	line-height: 180%;
	letter-spacing:1px;
}

footer div small{
	display: block;
	margin: 50px auto 0 auto;
	font-size: 1.0rem;
	color: #fff!important;
}


.footer_navi a{
color: #fff;
}



.footer_navi h2{
	font-size: 1.8rem;
	text-align: left;
	font-weight:500!import;
	border-bottom:1px solid #fff;
	padding: 0 0 5px 3px;
	margin: 30px 0 20px 0;
	position: relative;
	color: #fff;
}


.footer_navi ul{
	width: 100%;
	font-size: 1.4rem;
	height: auto;
}

.footer_navi div:nth-of-type(1) span:last-of-type ul,.footer_navi div:nth-of-type(2) span:last-of-type ul{
	height: auto;
}

.footer_navi ul li{
text-align: left;
margin: 0 0 15px;
}

/* 投稿内容の詳細 */

.info_detail{
	width:80%;
	height:auto;
	margin: 5% auto 5% auto;
display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	position: relative;
}


.info_detail article{
	width: 100%;
margin: 0 auto 30px auto;
	padding: 0!important;
	
}

.info_detail article h1{
	
	font-size:2.8rem;
	color:#454545;
	width: 100%;
	border-bottom:1px solid #959595;
	padding: 10px 0 5px 10px;
	text-align: left;

}

.info_detail article h1::after{
	
	display: none;
}

.info_detail article h2{
	 font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size:2.0rem;
	color: #393939;
	margin:20px 0 0 10px;

}
.info_detail article div img{
	width:49%!important;

}


.info_detail article span{
	width:auto;
	font-size:1.6rem;
padding: 2px 30px;
	margin:20px 0px!important;
	background-color:#094D71;
	color: #fff;
	border-radius: 20px;
	display: inline-block;
}

.info_detail article div{
width: 100%!important;
margin:0px auto 20px auto;
display: flex;
flex-wrap: wrap;
justify-content:center;


}
.info_detail article div p{
width: 100%!important;
text-align: left;
margin:5px 0  0px 0!important;
	
}

.info_detail article div p:has(img) {
width: 100%!important;
display: flex;
flex-wrap: wrap;
justify-content:space-around;
	margin: 0;

}

.info_detail article span a{

	color: #fff;

}

.post-nav{
display: flex;
margin: 20px auto;
width: 100%;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap:0 20px;
}

.nav-previous, .nav-next{
	display:inline-block!important;
	text-align: center;
	font-size:1.3rem;
	width:auto!important;

}



/*求人情報一覧　フロント、アーカイブ*/

.rct_info_all{
	width: 95%;
	margin:6% auto 5% auto;
}


.rct_info_all h1{
font-size: 3.5rem;
letter-spacing:1px;
	
}

.rct_info_all h2{
font-size: 1.6rem;
letter-spacing:3px;
color:#5D6062;
font-weight: 400;
padding: 5px 0 0 0;

}

.titile_info{
	display: flex;
	flex-direction:column;
	flex-wrap:wrap;
	padding: 0 0 0 30px;
	width: auto;
}



.rct02_inner{
width: 100%!important;
	margin: 0 auto 0px auto;
	  font-size: 62.5%;
	display: flex;
flex-flow: wrap;
flex-direction: column;
}
.add_page{
	width: 100%;
	padding: 0;
}



div.rct_info > div a{
	width:100%!important;
	display:flex;
  justify-content:flex-start; 
	flex-wrap:wrap;
  align-items:center;
border-bottom:1px solid #959595;
	padding:0px 0 7px 0 ;
margin: 50px 0 0 0!important;

}

	
.rct02_inner div.rct_info:first-child > div a {
margin: 0px 0 0 0!important;
}

.news_date{
	width:auto;
font-size: 1.7rem;
	margin: 0;
	position: relative;
	padding: 0 0 0 10px;
font-family: "lotus-eden", sans-serif;
font-weight: 600;
font-style: normal;
}



.news_category{
	width:10%;
	text-align: center;
	font-size: 1.5rem;
padding: 2px 0px;
	margin: 0 40px;
	background-color:  #094D71;
	color: #fff;
	border-radius: 10px;
}

.news_title{
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"!important;

	width:auto;
	font-size: 1.6rem;
	font-weight: 400;
	margin: 0;
}


.info_all{
background-color:#094D71;
color:#fff;
padding: 2px 40px;
font-size:1.8rem;
display:inline-block;
margin:20px 10px 0 auto!important;
letter-spacing: 1px;
text-align: center;
border-radius:20px;
}

/* カテゴリタブ */
.cats-nav{
display:flex;
flex-wrap:wrap;
gap:8px 20px;
margin:30px 0 ;
align-items: center;
justify-content: center;
}
.cats-nav .cat-link{
 display:inline-block;
padding:.4em .8em;
border:2px solid #284EB4;
 color:#284EB4;
border-radius:4px;
font-weight:700;
font-size:1.4rem;
}
.cats-nav .cat-link.is-active,
.cats-nav .cat-link:hover{background:#284EB4;color:#fff}

/* ページネーション*/
.pagination {
text-align:center;
margin:50px 0 0 0; }
.pagination .page-numbers{
display:inline-flex;
gap:16px;
padding:0;
}

.pagination .page-numbers a,
.pagination .page-numbers span{
 display:inline-flex;
align-items:center;
justify-content:center;
width:40px;
height:40px;
font-size:1.4rem;
border:2px solid #284EB4;
color:#284EB4;
font-weight:700;
border-radius:4px;
}
.pagination .page-numbers .current{
background:#284EB4;
color:#fff}
.pagination .page-numbers a:hover{background:#284EB4;color:#fff}
.pagination .page-numbers .dots{border:none;width:auto;height:auto;padding:0 6px}


@media screen and (max-width: 1000px) {
	
/*============
　ハンバーガーメニュー
=============*/
nav.rct_head {
position:fixed;
flex-flow:column;
top: 0;
left: -400px;
 bottom: 0;
 width: 400px;
justify-content:flex-start;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 5;
  opacity: 0;
	background-color:none;
}
.open nav.rct_head {
  left: 0;
  opacity: 1;
	
}
nav.rct_head .inner {
  padding: 0px;
	
}
	
nav.rct_head h1{
font-size: 5.0rem;
 position:static;
	width: 50%;
margin:80px auto 50px auto;
	text-align: center;
}
	
.inner{width: 100%;
	
	}

nav.rct_head ul{
width:100%!important;
height: auto;
flex-flow:column;
	text-align: left;
  column-gap:0px;
	row-gap:30px;
	font-size:2.0rem;
padding: 20px;
	
}
nav.rct_head .inner ul li {

width: 100%;
  border-bottom: 1px solid #C3C3C3;
}
nav.rct_head .inner ul li a {

  transition-duration: 0.5s;
}
nav.rct_head .inner ul li a:hover {
	
	color: inherit;
 padding: 10px;
	border-radius: 0px;
	background-color:inherit;
}


	
nav.rct_head span.entry{
	
	position:static;
	width:95%;
	top:0px;
	right: 0;
	height: 90px;
	margin:150px auto 0 auto;
	font-size: 3.0rem;
	padding: 0 10px 0 10px;
	letter-spacing: 2px;
	
}


nav.rct_head span.entry b::after{
	line-height:200%;
	font-size: 1.2rem;

}

	
/****************ドロップメニュー****************/
	
	 /* ── メニュー全体を上詰めに ── */
  nav.rct_head ul {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;  /* 上詰め */
    align-items: stretch !important;           /* 幅いっぱい */
    padding-top: 1rem;                         /* 好きな余白を */
    height: auto !important;                   /* 必要なら固定高さを解除 */
	  
  }

  /* 各 li を幅いっぱいに */
  nav.rct_head ul li {
    width: 100%;
  }

  /* リンクをブロック表示にしてタップしやすく */
  nav.rct_head ul li > a {
    display: block;
    padding: 1rem;
    border-bottom: 1px solid #ddd;
    position: relative;      /* ::after のため */
  }
/* デフォルトでは＋マーク非表示にする */
nav.rct_head ul li > a::after {
  display: none;
}

/* .dropDown を持つ li の a::after だけ表示 */
nav.rct_head ul li:has(.dropDown) > a::after {
  display: block;
  content: "＋";
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

/* 開いているときは − に切り替え */
nav.rct_head ul li.open:has(.dropDown) > a::after {
  content: "−";
}
	
 ul.dropDown__list li > a::after {
    display: none;
  }
	
 

  /* ドロップダウン本体 */
 /* ドロップダウン本体：閉じた状態 */
nav.rct_head ul li > .dropDown {
  display: block;              /* ← ここ重要！！ */
  max-height: 0;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  transition: max-height 0.8s ease, padding 0.4s ease;
}

/* ドロップダウン本体：開いた状態 */
nav.rct_head ul li.open > .dropDown {
  max-height: 500px;         /* 必要に応じて調整 */
  padding-top: 10px;
  padding-bottom: 10px;
}
	
.dropDown__list li a:hover span{
background-color:inherit;
color: inherit;
}
	
	

  /* 画像は隠す */
  .dropDown__list li img {
display: none !important;
  }
	
.dropDown {
  position: relative;
  top: 0px;
  left: 0;
  width: 100%;
  display: none;
  padding: 10px;
  background-color: hsla(0, 0%, 100%, 0.90);
  box-shadow: none;
  color: initial;

  box-sizing: border-box;
transition: opacity 0.5s ease; 
}
  /* ── サブメニューを縦並びに＆幅いっぱいに ── */
  .dropDown__list {
    display: block !important;            /* flex を打ち消し */
    padding: 0 !important;                /* 不要な余白リセット */
  }
  .dropDown__list li {
    display: block !important;            /* 行内リストをブロック化 */
    width: 100% !important;               /* 幅いっぱい */
    margin: 0!important;
    padding: 0rem !important;     /* 好きなパディングを */
    border-bottom:none!important;
    text-align: left !important;
    letter-spacing: normal !important;
    font-size: 1.7rem !important;
	
	 
  }
  
	
	
	/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 30px;
  right: 30px;
  width: 45px!important;
  height:45px!important;
  transition: all .5s;
  cursor: pointer;
  z-index: 6;
	background-color:hsla(0,0%,100%,0.80);
	border-radius: 10px;
	
	}
.open .toggle_btn {
  left: 430px;
}
.toggle_btn span {
  display: block;
 position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	
  width: 30px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
   top: 30%;
}
.toggle_btn span:nth-child(2) {
   top: 50%;
}
.toggle_btn span:nth-child(3) {
   top: 70%;
}
.open .toggle_btn span {
  background-color: #fff;
}
.open .toggle_btn {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
		background-color:hsla(0,0%,100%,0.0);

}
.open .toggle_btn span:nth-child(1), .open .toggle_btn span:nth-child(3) {
  width: 16px;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translate(0px,2px) rotate(45deg);
  transform: translate(0px,2px) rotate(45deg);
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translate(0px,-4px) rotate(-45deg);
  transform: translate(0px,-4px) rotate(-45deg);
}
	
	
	
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 4;
  cursor: pointer;
}
/*============
main
=============*/
main.rct_main {
  width: 100%;
  padding: 50px 0;
  transition: all .5s;
}
.open main {
  margin-left:300px;
}
	
	
.swiper-container h2 {
font-size:3.6rem;
}
		
	
	
	
}



@media screen and (max-width:810px) {
	
/*============
　ハンバーガーメニュー
=============*/
nav.rct_head {

  top: 0;
  left: -400px;
  bottom: 0;
  width: 400px;
	
}
	
nav.rct_head h1{
	width:40%;
margin:100px auto 30px auto;
	
}
	
.inner{width: 100%;
	
	}

nav.rct_head ul{

	row-gap:30px;
	font-size:2.0rem;
padding: 20px;
	
}

	
nav.rct_head span.entry{
	

	width:95%;

	height: 90px;
	margin:150px auto 0 auto;
  
	font-size: 3.0rem;
	padding: 0 10px 0 10px;
	letter-spacing: 2px;
	
}


nav.rct_head span.entry b::after{
	line-height:200%;
	font-size: 1.2rem;

}
	
	
	
/****************ドロップメニュー****************/
	
	 /* ── メニュー全体を上詰めに ── */
  nav.rct_head ul {
 
    padding-top: 1rem;      
  }


  /* リンクをブロック表示にしてタップしやすく */
  nav.rct_head ul li > a {

    padding: 1rem;
  }


/* .dropDown を持つ li の a::after だけ表示 */
nav.rct_head ul li:has(.dropDown) > a::after {
  right:1rem;
  top:50%;}


  /* ドロップダウン本体 */
 

/* ドロップダウン本体：開いた状態 */
nav.rct_head ul li.open > .dropDown {
  max-height: 500px;       
  padding-top: 10px;
  padding-bottom: 10px;
}
	
	
.dropDown {

  padding: 10px;

}
  /* ── サブメニューを縦並びに＆幅いっぱいに ── */

  .dropDown__list li {
   font-size: 1.7rem !important; 
  }

	/*============
.toggle_btn
=============*/
.toggle_btn {

  top: 30px;
  right: 30px;

 
	border-radius: 10px;
	
	}
.open .toggle_btn {
  left: 430px;
}
.toggle_btn span {
  
    top: 50%;
    left: 50%;

	
  width: 30px;
  height: 2px;

}
.toggle_btn span:nth-child(1) {
   top: 30%;
}
.toggle_btn span:nth-child(2) {
   top: 50%;
}
.toggle_btn span:nth-child(3) {
   top: 70%;
}

.open .toggle_btn {
 

}
.open .toggle_btn span:nth-child(1), .open .toggle_btn span:nth-child(3) {
  width: 16px;
}

	
/*============
main
=============*/
main.rct_main {
  width: 100%;
  padding: 50px 0;
}
.open main {
  margin-left:300px;
}
	
	
.movie_pc{
display:none!important;
}

.movie_sp{
display:inherit!important;
}

	
	
	

}



@media screen and (max-width: 428px) {
	
/*============
　ハンバーガーメニュー
=============*/
nav.rct_head {


  left: -400px;
  width: 100%;
	
}

		
nav.rct_head h1{
	width:40%;
margin:90px auto 0px auto;

padding: 0;
}


nav.rct_head ul{

	row-gap:20px;
	font-size:1.8rem;
padding: 10px;

}

	
nav.rct_head span.entry{
	

	width:95%;

	height: 90px;
	margin:40px auto 0 auto;
  
	font-size: 3.0rem;
	
}


nav.rct_head span.entry b::after{
	line-height:200%;
	font-size: 1.2rem;

}

	/*============
.toggle_btn
=============*/
.toggle_btn {

  top: 10px;
  right:10px;
  width: 40px!important;
  height:40px!important;
 
	border-radius:7px;
	
	}
.open .toggle_btn {
  left: 430px;
}

.toggle_btn span:nth-child(1) {
   top: 30%;
}
.toggle_btn span:nth-child(2) {
   top: 50%;
}
.toggle_btn span:nth-child(3) {
   top: 70%;
}

.open .toggle_btn {
  left: inherit;
	 right: 30px!important;
}
	
		.open .toggle_btn span {
  background-color: #000;
}
.toggle_btn 
.open .toggle_btn span:nth-child(1), .open .toggle_btn span:nth-child(3) {
  width: 16px;
}

	
/*============
main
=============*/

.open main {
  margin-left:0px;
}
	
}



@media screen and (max-width: 375px) {
	
/*============
　ハンバーガーメニュー
=============*/


	
nav.rct_head h1{
	width:40%;
margin:70px auto 0px auto;
	
}

	



nav.rct_head ul{

	row-gap:15px;
	font-size:1.6rem;
padding: 10px;
	
}
	
	
.open .toggle_btn {
	 right:5px!important;
}
	

	
nav.rct_head span.entry{
	

	width:90%;

	height: 90px;
	margin:20px auto 0 auto;
  
	font-size: 3.0rem;
	
}

.dropDown__list li {
   font-size: 1.4rem !important; 
  }
	
}






/*====================== min-width: 2500px =======================================================================================*/



@media screen and (min-width:2500px) {
	 html {
     font-size:150%!important;
    }
	
	.news_category{
	
	margin: 0 80px;
	
		
	border-radius: 20px;
}
	
	div.rct_info > div a{

	
margin:100px 0 0 0!important;

}
	
	
	
	.info_all{

padding: 2px 60px;
margin:20px 20px 0 auto!important;
border-radius:30px;
}
	
	
nav.rct_head{

	padding:30PX 0;
	
	
}

	
/* カテゴリタブ */
.cats-nav{

gap:8px 30px;
margin:50px 0 ;

}
.cats-nav .cat-link{

border:3px solid #284EB4;

}


/* ページネーション*/

.pagination .page-numbers{
gap:20px;
}

.pagination .page-numbers a,
.pagination .page-numbers span{

width:80px;
height:80px;
font-size:1.6rem;
border:3px solid #284EB4;

border-radius:4px;
}


}

/*====================== max-width: 980px =======================================================================================*/

@media screen and (max-width: 980px) {
	
	main{
		padding: 0!important;
	}
	
/*フッター*/

footer{
	width: 100%;
	display: flex;
	padding:50px 0;
}

footer div.footer_info{
	width:100%!important;

}

.footer_navi{
	width:90%!important;
}

	.footer_navi div{
	width:48%!important;
}
	
	footer div:first-of-type{
		order: 2;
		
	}
	
	footer div:nth-of-type(2){
		order: 1;
	}
	
	
.footer_navi div:nth-of-type(1){
		order: 1;
		
	}
	
	
.footer_navi div:nth-of-type(2){
		order: 2;
		
	}
	
	
.footer_navi div:nth-of-type(3){
		order: 3;
		
	}
	

footer div h1{
	font-size: 2.6rem;
	letter-spacing: 4px;
	width: auto;
}

footer div address{
	margin: 30px auto 0 auto;

	font-size: 1.6rem;
	line-height: 180%;
	letter-spacing:1px;
	width: auto;
}

footer div small{
	
	margin: 50px auto 0 auto;
	font-size: 1.2rem;
}




.footer_navi h2{
	font-size: 1.8rem;
	padding: 0 0 5px 3px;
	margin: 30px 0 20px 0;

}


.footer_navi ul{
	width: 100%;
	font-size: 1.4rem;
	height: auto;
}


.footer_navi div:nth-of-type(3){
width: 100%;
display: flex;
	flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 50px;
}
	
.footer_navi div:nth-of-type(3) span{
width: 48%;
}
	
	

.footer_navi div:nth-of-type(3) span:nth-of-type(3), .footer_navi div:nth-of-type(3) span:nth-of-type(4){
font-size: 1.4rem;
margin:0px 0px 20px 0;
display: block;
text-align: left;
}
.footer_navi ul li{

margin: 0 0 15px;
}
	
	
.news_category{
	width:15%;

}	
	
	
	
	
}
/*====================== max-width: 810px =======================================================================================*/

@media screen and (max-width: 810px) {

/*フッター*/

footer{
	width: 100%;
	display: flex;
	padding:50px 0;
}

footer div.footer_info{
	width:100%;
	
}

.footer_navi{
	width:90%;
}

	.footer_navi div{
	width:48%;
}
	
	footer div:first-of-type{
		order: 2;
		
	}
	
	footer div:nth-of-type(2){
		order: 1;
	}
	
	
.footer_navi div:nth-of-type(1){
		order: 1;
		
	}
	
	
.footer_navi div:nth-of-type(2){
		order: 2;
		
	}
	
	
.footer_navi div:nth-of-type(3){
		order: 3;
		
	}
	

footer div h1{
	font-size: 2.6rem;
	letter-spacing: 4px;
}

footer div address{
	margin: 30px auto 0 auto;

	font-size: 1.6rem;
	line-height: 180%;
	letter-spacing:1px;
}

footer div small{
	
	margin: 50px auto 0 auto;
	font-size: 1.2rem;
}




.footer_navi h2{
	font-size: 1.8rem;
	padding: 0 0 5px 3px;
	margin: 30px 0 20px 0;

}


.footer_navi ul{
	width: 100%;
	font-size: 1.4rem;
	height: auto;
}


.footer_navi div:nth-of-type(3){
width:100%!important;
margin-bottom: 50px;
}
	
.footer_navi div:nth-of-type(3) span{
width: 48%;
}
	
	
	

.footer_navi div:nth-of-type(3) span:nth-of-type(3), .footer_navi div:nth-of-type(3) span:nth-of-type(4){
font-size: 1.4rem;
margin:0px 0px 20px 0;
}
.footer_navi ul li{

margin: 0 0 15px;
}
	
	
	

}

/*====================== max-width: 768px =======================================================================================*/

@media screen and (max-width: 768px) {


	
/*新着情報*/
	
	

.rct02_innner{
width: 88%;

}
div.rct_info > div a{

	

	padding:0px 0 7px 0 ;
margin:30px 0 0 0!important;

}
		




.news_date{
font-size: 1.8rem;
	margin: 0;
	padding: 0 0 0 10px;
	width: auto;
}
	
	


.news_date::before{
display: none;
width: 110%;
height:3px;
bottom: -9px;
left: 0;
}

.news_category{
width:20%;;
font-size: 1.6rem;
padding: 2px 0px;
margin: 20px 20px 10px	20px;
border-radius: 20px;
}

.news_title{
	font-size: 1.9rem;
	margin: 10px 0px 10px 10px;
	width:100%;
}
	
	
	
	
	

/* 投稿内容の詳細 */

.info_detail{
	width:100%;

}


.info_detail article{
	width: 80%;
	margin: 100px auto ;
	padding: 0!important;
	
}

.info_detail article h1{
	
	font-size:2.4rem;
	padding: 10px 0 5px 10px;


}


.info_detail article h2{
	font-size:2.0rem;
	margin:15px 0 0 10px;

}
.info_detail article div img{
	width:100%!important;
margin: 0 auto 20px auto;
}


.info_detail article span{

	font-size:1.6rem;
padding: 2px 30px;
	margin:20px 0px!important;

	border-radius: 20px;

}

.info_detail article div{
width: 90%!important;
margin:50px auto 20px auto;


}
.info_detail article div p{

	
margin: 20px 0;
}




.post-navigation{

	bottom: 30px;
	right: 15%;
	font-size: 1.4rem;
}


	


	
}


/*====================== max-width: 428px =======================================================================================*/

@media screen and (max-width: 428px) {
	
	
		/*新着情報*/

.rct02_innner{
width: 88%;
margin: 0!important;
}
div.rct_info > div a{

padding: 0px 0 7px 0 ;
margin: 50px 0 0 0;
}

.news_date{
font-size: 1.8rem;
margin:0 0 0 10px;
}



.news_category{
width:30%;
font-size: 1.4rem;
padding: 2px 0px;

}

.news_title{
font-size: 1.6rem;
margin:0 0 0 10px;
padding:0!important;
;
}
	
	

/* 投稿内容の詳細 */

.info_detail{
	width:100%;

}


.info_detail article{
	width: 95%;
	margin: 100px auto ;
	padding: 0!important;
	
}

.info_detail article h1{
	
	font-size:2.0rem;
	padding: 10px 0 5px 10px;


}


.info_detail article h2{
	font-size:1.4rem;

}
.info_detail article div img{
	width:100%!important;
margin: 0 auto 20px auto;
}


.info_detail article span{

	font-size:1.4rem;
padding: 2px 30px;
	margin:20px 0px!important;

	border-radius: 10px;

}

.info_detail article div{
width: 90%!important;
margin:50px auto 20px auto;


}
.info_detail article div p{
width: 100%!important;
font-size:1.2rem;
margin: 20px 0;
}




.post-navigation{

	bottom: 30px;
	right: 15%;
	font-size: 1.4rem;
}



/*フッター*/

footer{
	width: 100%;
	display: flex;
	padding:50px 0;
}

footer div.footer_info{
	width:100%;
	
}

.footer_navi{
	width:90%;
}

	.footer_navi div{
	width:100%!important;
}
	
	footer div:first-of-type{
		order: 2;
		
	}
	
	footer div:nth-of-type(2){
		order: 1;
	}
	
	
.footer_navi div:nth-of-type(1){
		order: 1;
		
	}
	
	
.footer_navi div:nth-of-type(2){
		order: 2;
		
	}
	
	
.footer_navi div:nth-of-type(3){
		order: 3;
		
	}
	

footer div h1{
	font-size: 2.0rem;
	letter-spacing: 4px;
}

footer div address{
	margin: 30px auto 0 auto;

	font-size: 1.4rem;
	line-height: 180%;
	letter-spacing:1px;
}

footer div small{
	
	margin: 50px auto 0 auto;
	font-size: 1.0rem;
}




.footer_navi h2{
	font-size: 1.8rem!important;;
	padding: 0 0 5px 3px;
margin:0px 0 20px 0!important;

}

.footer_navi ul{
	width: 100%;
	font-size: 1.4rem;
	height: auto;
	margin: 0 0 40px 0;
}


.footer_navi div:nth-of-type(3){
width: 100%;
margin-bottom: 50px;
}
	

.footer_navi div:nth-of-type(3) span{
width: 100%;
}
	
	
	
.footer_navi div:nth-of-type(3) span:first-of-type h2{
margin-bottom: 30px;
}

.footer_navi div:nth-of-type(3) span:nth-of-type(2) h2{
margin-bottom: 30px;
}

.footer_navi div:nth-of-type(3) span:nth-of-type(3), .footer_navi div:nth-of-type(3) span:nth-of-type(4){
font-size: 1.4rem;
margin:0px 0px 20px 0;
}
.footer_navi ul li{

margin: 0 0 15px;
}

	
}

	


/*====================== max-width: 394px =======================================================================================*/

@media screen and (max-width: 394px) {
	
	
		/*新着情報*/


	
div.rct_info > div a{
	width:100%;
	padding: 0px 0 7px 0 ;
margin: 50px 0 0 0;
}

.news_date{
font-size:1.4rem!important;

padding:0!important;

}



.news_category{

font-size: 1.2rem;

border-radius: 10px;
}

.news_title{
	font-size: 1.6rem;

}

	
/*フッター*/

footer{
	width: 100%;
	display: flex;
	padding:50px 0;
}

footer div.footer_info{
	width:100%;
	
}

.footer_navi{
	width:90%;
}

	.footer_navi div{
	width:100%;
}
	
	footer div:first-of-type{
		order: 2;
		
	}
	
	footer div:nth-of-type(2){
		order: 1;
	}
	
	
.footer_navi div:nth-of-type(1){
		order: 1;
		
	}
	
	
.footer_navi div:nth-of-type(2){
		order: 2;
		
	}
	
	
.footer_navi div:nth-of-type(3){
		order: 3;
		
	}
	

footer div h1{
	font-size:1.8rem;
	letter-spacing: 4px;
}

footer div address{
	margin: 30px auto 0 auto;

	font-size: 1.2rem;
	line-height: 180%;
	letter-spacing:1px;
}

footer div small{
	
	margin: 20px auto 0 auto;
	font-size: 0.7rem;
}




.footer_navi h2{
	font-size: 1.6rem;
	padding: 0 0 5px 3px;


}


.footer_navi ul{
	width: 100%;
	font-size: 1.2rem;
	height: auto;
	margin: 0 0 20px 10px;
}


.footer_navi div:nth-of-type(3){
width: 100%;
margin-bottom: 50px;
}
	

.footer_navi div:nth-of-type(3) span{
width: 100%;
}
	
	
	
.footer_navi div:nth-of-type(3) span:first-of-type h2{
margin-bottom: 30px;
}

.footer_navi div:nth-of-type(3) span:nth-of-type(2) h2{
margin-bottom: 30px;
}

.footer_navi div:nth-of-type(3) span:nth-of-type(3), .footer_navi div:nth-of-type(3) span:nth-of-type(4){
font-size: 1.4rem;
margin:0px 0px 20px 0;
}
.footer_navi ul li{

margin: 0 0 15px;
}
	
	
.info_all{

font-size:1.4rem!important;

}

	
/* カテゴリタブ */
.cats-nav{

gap:8px 15px;
margin:30px 0 ;

}
.cats-nav .cat-link{
 
padding:.4em .8em;

border-radius:4px;
font-size:1.2rem;
}


/* ページネーション*/
.pagination {
margin:40px 0 0 0; 
	}


.pagination .page-numbers a,
.pagination .page-numbers span{

width:35px;
height:35px;
font-size:1.2rem;

}
	
	

	
}



/* topページに戻る */

.page-top {
 background-color:#153896;
 color: #FFF;
  font-size: 1.8rem;
    width: 80px;
    height: 80px;
    border-radius:50%;
	font-weight: 600;
padding: 0px 0 0 0;
    display: flex;
    justify-content: center;
    align-items:center;
    flex-direction: column;
	position: fixed;
	right:20px;
  bottom:20px;
z-index: 9999;
border:2px solid #fff;
	 opacity: 0;
  visibility: hidden;
 pointer-events: none;
 transition:opacity 0.8s ease-in-out;
transition: 0.5s;
cursor: pointer;
}

.page-top span::before {
  content: "";
   display: block;
    width: 12px;
    height: 12px;
border-top: 3px solid white;
    border-right: 3px solid white;
    transform: rotate(-45deg);
}

.page-top:hover {
    background-color:#fff;
    color:#153896; 
	border:2px solid #153896;
	transition: 0.5s;
}
.page-top:hover span::before {
 border-top: 3px solid #153896;
 border-right: 3px solid #153896;
}

.page-top-active {
 opacity: 1!important;
  visibility: visible!important;
  pointer-events: auto;
}


/*====================== max-width: 480px =======================================================================================*/

@media screen and (max-width: 480px) {
	

	
/* topページに戻る */

.page-top {

  font-size: 1.6rem;
    width: 60px;
    height: 60px;
	right:10px;
  bottom:10px;

}

}


/*====================== max-width: 394px =======================================================================================*/

@media screen and (max-width: 394px) {
	

/* topページに戻る */

.page-top {

  font-size: 1.2rem;
    width: 55px;
    height: 55px;
	right:10px;
  bottom:10px;

}
}