@charset "UTF-8";

/*****************************
  ナビ２段
*****************************/
.nav2tiers{
display: flex;
flex-direction: column;
align-items: flex-end;
margin-right: 50px;
}
@media screen and (max-width: 1024px) {
.nav2tiers{
display: none;
}
}

.nav2tiers .top_area{
  margin-bottom: 5px;
}
@media screen and (max-width: 1024px) {
.nav2tiers .top_area{
  margin-bottom: 30px;
}
}



.nav2tiers .top_area a{
  color: #008655;
  font-size: 16px;
  line-height: 1.8;
}
.nav2tiers .top_area p{
  color: #008655;
  font-size: 14px;
  line-height: 1;
}

.nav2tiers .top_area .top_area_flex{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}

.nav2tiers .top_area .top_area_flex li{
  width: auto;
}
@media screen and (max-width: 1024px) {
.nav2tiers .top_area .top_area_flex{
    flex-direction: column-reverse;
}

.nav2tiers .top_area .top_area_flex li{
  width: 100%;
}
}


.nav2tiers .top_area .top_area_flex li:last-child{
margin-left: 10px;
background: #ffffff;
padding: 3px 10px;
border-radius: 50px;
border: 1px solid #e9e9e9;
}
@media screen and (max-width: 1024px) {
.nav2tiers .top_area .top_area_flex li:last-child{
margin-left: 0px;
margin-bottom: 20px;
}
}


.nav2tiers .top_area .top_area_flex li span{
  padding: 0 10px;
  border-right: 1px solid #008655;
  letter-spacing: 1px;
  color: #008655;
  font-size: 14px;
}
.nav2tiers .top_area .top_area_flex li span a{
  text-decoration: underline;
  font-size: 14px;
}
.nav2tiers .top_area .top_area_flex li span:nth-child(3){
  padding: 0 10px;
  border-right: unset;
}

/*****************************
    topスライド
*****************************/
.topsec-firstview{
  padding-top: 0px;
  overflow: hidden;
  position: relative;
}

.topslider {
  height: 90vh;
  position: relative;
  width: 100%;
}
.topslider .slideitem {
  height: 90vh;
  width: 100%;
}
@media screen and (max-width: 1024px) {
.topslider {
  height: 100%;
  position: relative;
  width: 100%;
   aspect-ratio: 4/3;
}
.topslider .slideitem {
  height: 100%;
  width: 100%;
   aspect-ratio: 4/3;
}
}
@media screen and (max-width: 767px) {
.topslider {
   aspect-ratio: 4/4;
}
.topslider .slideitem {
   aspect-ratio: 4/4;
}
}

.topslider::after{
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  content: "";
  background: rgb(255,255,255,0);
}




/*****************************
  top キャッチコピー
*****************************/
.catchcopy {
position: absolute;
    display: block;
    max-width: 100%;
    color: #ffffff;
    background: rgb(1, 134, 84, .7);
    top: 75%;
    left: 0%;
    text-align: left;
    transform: translateY(-50%) translateX(-0%);
    margin: 0;
    padding: 4% 15% 4% 4%;
    z-index: 1;
}

.catchcopy h2{
font-size: 30px;
letter-spacing: 2px;
}
.catchcopy p{
font-size: 18px;
letter-spacing: 2px;
}

@media screen and (max-width: 820px) {
.catchcopy h2{
font-size: 22px;
}
.catchcopy p{
font-size: 16px;
}
}

@media screen and (max-width: 767px) {
.catchcopy h2{
font-size: 18px;
}
.catchcopy p{
font-size: 14px;
letter-spacing: 0px;
line-height: 1.2;
}
}





/*****************************
  topsec-news
*****************************/
.topsec-news{
  margin: 0;
  padding: 60px 0;
}
.topsec-news input[type="radio"] {
  display: none;
}
.topsec-news .tab_area{
  margin-bottom: 3rem;
}
.topsec-news .tab_area .ftab{
  background: #ccc;
  border-radius: 5px;
  margin-right: 10px;
  position: relative;
  text-align: center;
  width: calc(15% - 10px);
}
.topsec-news .tab_area .ftab label{
  cursor: pointer;
  display: block;
  font-weight: bold;
  padding: 5px 20px 3px;
  position: relative;
  width: 100%;
  z-index: 1;
  text-align: center;
}
.topsec-news .tab_panel{
  display: none;
}
.topsec-news .tab_area .ftab:hover,
.topsec-news #tnewstab1:checked ~ .tab_area .tnewsftab1{
  background: #101010;
  color: #fff;
}
.topsec-news .tab_area .tnewsftab2:hover,
.topsec-news #tnewstab2:checked ~ .tab_area .tnewsftab2{
  background: #001A66;
  color: #fff;
}
.topsec-news .tab_area .tnewsftab3:hover,
.topsec-news #tnewstab3:checked ~ .tab_area .tnewsftab3{
  background: #E40000;
  color: #fff;
}
.topsec-news .tab_area .tnewsftab4:hover,
.topsec-news #tnewstab4:checked ~ .tab_area .tnewsftab4{
  background: #E40000;
  color: #fff;
}

.topsec-news .tab_area .tnewsftab5:hover,
.topsec-news #tnewstab5:checked ~ .tab_area .tnewsftab5{
  background: #E40000;
  color: #fff;
}

.topsec-news #tnewstab1:checked ~ .panel_area #tnewspanel1,
.topsec-news #tnewstab2:checked ~ .panel_area #tnewspanel2,
.topsec-news #tnewstab3:checked ~ .panel_area #tnewspanel3,
.topsec-news #tnewstab4:checked ~ .panel_area #tnewspanel4,
.topsec-news #tnewstab5:checked ~ .panel_area #tnewspanel5{
  display:block;
}

/* @media only screen and (max-width: 1024px) {
  .page-archive .topsec-news .tab_area {
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width: 820px) {
  .page-archive .topsec-news .tab_area .ftab{
    margin: 1rem 1rem 0 0;
    width: calc(30% - 10px);
  }
}
@media only screen and (max-width: 767px) {
  .page-archive .topsec-news .t-newsttlbox,
  .page-archive .topsec-news .tab_area .ftab label{
    font-size: 1.4rem;
  }
  .page-archive .topsec-news .tab_area .ftab{
    width: calc(33% - 10px);
  }
} */

/*****************************
  お知らせ一覧
*****************************/
.newslist{
  margin-bottom: 60px;
}
.newslinktab{
  margin-bottom: 5rem;
}
.newslinktab li{
    width: 130px;
    margin-bottom: 10px;
}
.newslinktab  a.label{
  background: #928573;
  color: #fff;
  border-radius: 5px;
  display: block;
  font-weight: bold;
  margin-right: 10px;
  opacity: 1 !important;
  padding: .3rem 0;
  position: relative;
  text-align: center;
  letter-spacing: 1px;
}
.newslinktab  a.label:hover,
.newslinktab  a.label.label_cr{
  background: #008655;
  color: #fff;
}
.newslinktab  a.label.label_cr{
  pointer-events: none;
}
.newslinktab  a.label2:hover,
.newslinktab a.label2.label_cr{
  background: #3FAF85;
}
.newslinktab  a.label3:hover,
.newslinktab a.label3.label_cr{
  background: #1F9A6D;
}
.newslinktab  a.label4:hover,
.newslinktab a.label4.label_cr{
  background: #007A4E;
}
.newslinktab  a.label5:hover,
.newslinktab a.label5.label_cr{
  background: #006C45;
}

.newslist li{
  margin-top: 1rem;
}
.newslist a{
  opacity: 1 !important;
  position: relative;
}
.newslist a::before,
.newslist a::after{
  content: "";
  background: #efefef;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
}
.newslist a::after{
  background: #928573;
  transition: 0.3s;
  width: 150px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
.newslist a::after{
  width: 100px;
}
}

.newslist a:hover::after{
  width: 100%;
}
.newslist a .cat{
  background: #008655;
  border-radius: 0px;
  color: #fff;
  margin-right: 1rem;
  text-align: center;
  width: 90px;
  font-size: 12px;
  align-items: center;
  align-content: center;
  line-height: 1;
}
.singlehead .cat{
  background: #008655;
  border-radius: 0px;
  color: #fff;
  margin-right: 1rem;
  text-align: center;
  width: 90px;
  font-size: 12px;
  align-items: center;
  align-content: center;
  line-height: 1;
  padding: 7px 5px;
}
.newslist a .cat-cat01,
.singlehead .cat-cat01{
background: #3FAF85;
}
.newslist a .cat-cat02,
.singlehead .cat-cat02{
  background: #1F9A6D;
}
.newslist a .cat-cat03,
.singlehead .cat-cat03{
background: #007A4E;
}
.newslist a .cat-cat04,
.singlehead .cat-cat04{
background: #006C45;
}
.newslist a .ttl{
  padding: 1rem 0;
}
@media only screen and (max-width: 767px) {
  .newslist a .cat{
    font-size: 1.2rem;
    line-height: 2;
    width: 110px;
  }
  .newslist a .date{
    font-size: 1.4rem;
  }
  .singlehead .ttl{
    font-size: 2rem;
  }
}
.newsflex{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.newsimg{
  width: 150px;
  margin-right: 20px;
  aspect-ratio: 1 / 1;
}
@media screen and (max-width: 767px) {
.newsimg{
  width: 100px;
  margin-right: 20px;
  aspect-ratio: 1 / 1;
}
}

.page-single .newsimg{
  width: min(300px, 100%);
  margin-right: 0px;
  aspect-ratio: unset;
  margin: 0 auto 30px;
}

.newsimg img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.newscont{
   width: calc(100% - 170px);
}
.newsimg img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
  background: #f0f6f4;
}
.page-single .newsimg img{
  background: unset;
}


@media only screen and (max-width: 767px) {
  .newsimg{
    margin-right: 10px;
  }
  .newsimg img{
    padding: 0;
    height: auto;
  }
}


/*****************************
ボタン
*****************************/
.top_btn {
  margin: 20px 0;
}
.top_btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 230px;
  margin: 0 auto;
  padding: 5px 30px 5px 2px;
  border: 1px solid #7c6547;
  color: #fff;
  font-size: 1em;
  transition: .6s;
  background: #7c6547;
  border-radius: 50px;
}
.top_btn a:hover {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  border: 1px solid #E064B1;
  color: #fff;
  background: #E064B1;
  opacity: 1;
  transition: .6s;
}
.top_btn a::after {
  position: absolute;
  right: 2em;
  transform: translateY(-50%);
  transform-origin: left;
  width: 2em;
  height: .5em;
  background-color: #fff;
  clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
  content: '';
  transition: .6s;
}
.top_btn a:hover::after {
  /* transform: translateY(-50%) scaleX(1.4); */
  border: 1px solid #EDBFD9;
}
.top_btn a:hover::after {
  position: absolute;
  right: -1.5em;
  transform: translateY(-50%);
  transform-origin: left;
  width: 2em;
  height: .5em;
  background-color: #EDBFD9;
  clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
  content: '';
}


.top_news_whitebg{
  background: #fff;
  padding: 50px 80px;
}
@media screen and (max-width: 1180px) {
.top_news_whitebg{
  background: #fff;
  padding: 50px 50px;
}
}
@media screen and (max-width: 767px) {
.top_news_whitebg{
  background: #fff;
  padding: 50px 10px;
}
}
/* =========================================
   TOP NEWS（完全独立版）
   左：タブ縦 / 右：記事4カラム
   ※既存.tab_areaと干渉しない
========================================= */

/* radio非表示 */
.t-newsbox > input[type="radio"]{
  position:absolute;
  left:-9999px;
}

/* 全体 */
.t-newsbox{
  display:flex;
  gap:30px;
  align-items:flex-start;
}
@media screen and (max-width: 767px) {
.t-newsbox{
  display:flex;
  gap:0px;
  align-items:flex-start;
}
}


/* =============================
   左：タブ
============================= */

.tnews_tabs{
  width: 130px;
  flex: 0 0 130px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* 既存.ftabを完全上書き */
.tnews_tabs .ftab{
  width:100% !important;
  margin:0 !important;
  background:none !important;
}

/* タブ */
.tnews_tabs .ftab label{
  display:block;
  width:100%;
  padding:12px 14px;
  font-size:14px;
  border-radius:6px;
  border:1px solid #2f8f7a;
  background:#fff;
  color:#2f8f7a;
  text-align:left;
  cursor:pointer;
  transition:.2s;
}

.tnews_tabs .ftab label:hover{
  background:#e9f5f2;
}


/* 選択中 */
#tnewstab1:checked ~ .tnews_tabs .tnewsftab1 label{
  background:#008655;
  color:#fff;
  border-color:#3FAF85;
  text-align: center;
}

#tnewstab2:checked ~ .tnews_tabs .tnewsftab2 label{
  background:#3FAF85;
  color:#fff;
  border-color:#1F9A6D;
  text-align: center;
}

#tnewstab3:checked ~ .tnews_tabs .tnewsftab3 label{
  background:#1F9A6D;
  color:#fff;
border-color:#008655;
  text-align: center;
}

#tnewstab4:checked ~ .tnews_tabs .tnewsftab4 label{
  background:#007A4E;
  color:#fff;
border-color:#008655;
  text-align: center;
}

#tnewstab5:checked ~ .tnews_tabs .tnewsftab5 label{
  background:#006C45;
  color:#fff;
  border-color:#2f8f7a;
  text-align: center;
}


/* =============================
   右：記事エリア
============================= */

.panel_area_tnews{
  flex:1;
  min-width:0;
}


/* =============================
   記事カード
============================= */

.tnewsgrid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.tnewsgrid__item{
width: calc((100% - 30px) / 4);
}

/* カード */
.tnewscard{
  display:block;
  text-decoration:none;
  color:inherit;
}

.tnewscard__thumb{
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.tnewscard__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.3s;
  background: #f0f6f4;
}

.tnewscard:hover .tnewscard__thumb img{
  transform:scale(1.04);
}

.tnewscard__body{
  padding-top:10px;
}

.tnewscard__meta{
  display:flex;
  align-items:center;
  flex-direction: row;
  flex-wrap: wrap;
}

.tnewscard__cat{
  background: #008655;
  border-radius: 0px;
  color: #fff;
  margin-right: 1rem;
  text-align: center;
  width: 90px;
  font-size: 13px;
  align-items: center;
  align-content: center;
  padding: 0px 5px;;
}

.tnewscard__cat.cat-cat01{
  background: #3FAF85;
}
.tnewscard__cat.cat-cat02{
  background: #1F9A6D;
}
.tnewscard__cat.cat-cat03{
  background: #007A4E;
}
.tnewscard__cat.cat-cat04{
  background: #006C45;
}





.tnewscard__date{
  color: #928573;
  font-size: 16px;
}

.tnewscard__txt{
  font-size:16px;
  line-height:1.6;
}


/* =============================
   Moreボタン
============================= */

.tnews_morebtn{
  display:flex;
  justify-content:flex-end;
  margin-top:20px;
}


/* =============================
   レスポンシブ
============================= */

@media(max-width:1024px){

  .tnewsgrid__item{
    width:calc((100% - 20px) / 2);
  }

}

@media(max-width:767px){

  .t-newsbox{
    flex-direction:column;
  }

  .tnews_tabs{
    width:100%;
    flex-direction:row;
    flex-wrap:wrap;
    flex: 0 0 32px;
  }

  .tnews_tabs .ftab{
    width:auto !important;
  }

  .tnewsgrid{
    gap:10px;
  }

  .tnewsgrid__item{
    width:calc((100% - 10px) / 2);
  }

}