/*全体*/
body{
  max-width: 1100px;
  align-items: center;
  margin: 0 auto;
  position: relative;
}
img{
  width: 100%;
  height: auto;
}
header{
  position: relative;
}
#hamburger-area{
  height: 0;
  overflow: hidden;
}
h1,h2,h3,h4,p,a,li,tr,td{
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}
main{
  position: relative;
  overflow: hidden;
}

/*
ハンバーガーメニュー
///////////////////*/
.hamburger-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 24px;
  position: absolute;
  top: 32px;
  right: 24px;
  z-index: 100;
  cursor: pointer;
}

.hamburger-menu span{
  position: absolute;
  width: 100%;
  height: 3px;
  transition: .3s;
}
.hamburger-menu span:first-of-type{/* ハンバーガーメニューの1番目の線 非アクティブ */
  top: 0;
}
.hamburger-menu span:nth-of-type(2){/* ハンバーガーメニューの2番目の線 非アクティブ */
  top: 50%;
}
.hamburger-menu span:last-of-type{/* ハンバーガーメニューの3番目の線 非アクティブ */
  top: 100%;
}

.hamburger-menu.active span:first-of-type{/* ハンバーガーメニューの1番目の線 アクティブ */
  top: 50%;
  transform: rotate(225deg);
}
.hamburger-menu.active span:nth-of-type(2){/* ハンバーガーメニューの2番目の線 アクティブ */
  opacity: 0;/* 透明にする */
}
.hamburger-menu.active span:last-of-type{/* ハンバーガーメニューの3番目の線 アクティブ */
  top: 50%;
  transform: rotate(-225deg);
}
.slide-menu-menu.active{
  transform: translateX(0); 
}

/*ハンバーガーアイコンの色*/
/*インデックス、啓詁TOP、啓詁詳細、啓詁ニュース*/
#bar-red span{
  background-color: #C20032;
}
/*会社概要、お問い合わせ*/
#bar-lightgreen{
  background-color: none;
  transition: .3s;
}
#bar-lightgreen span{
  background-color: #fff;
}
#bar-lightgreen.active{
  background-color: #fff;
}
#bar-lightgreen.active span:first-of-type{
  background-color: #C20032;
}
#bar-lightgreen.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-lightgreen.active span:last-of-type{
  background-color: #C20032;
}
/*聆詁TOP*/
#bar-white-red{
  background-color: none;
  transition: .3s;
}
#bar-white-red span{
  background-color: #fff;
}
#bar-white-red.active{
  background-color: #fff;
}
#bar-white-red.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-red.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-red.active span:last-of-type{
  background-color: #C20032;
}
/*聆詁詳細*/
#bar-white-red1{
  background-color: none;
  transition: .3s;
}
#bar-white-red1 span{
  background-color: #fff;
}
#bar-white-red1.active{
  background-color: #fff;
}
#bar-white-red1.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-red1.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-red1.active span:last-of-type{
  background-color: #C20032;
}
/*聆詁ニュース*/
#bar-white-darkgreen{
  background-color: none;
  transition: .3s;
}
#bar-white-darkgreen span{
  background-color: #fff;
}
#bar-white-darkgreen.active{
  background-color: #fff;
}
#bar-white-darkgreen.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-darkgreen.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-darkgreen.active span:last-of-type{
  background-color: #C20032;
}
/*昆虫news*/
#bar-white-lightred{
  background-color: none;
  transition: .3s;
}
#bar-white-lightred span{
  background-color: #fff;
}
#bar-white-lightred.active{
  background-color: #fff;
}
#bar-white-lightred.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-lightred.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-lightred.active span:last-of-type{
  background-color: #C20032;
}
/*昆虫詳細*/
#bar-white-lightgreen{
  background-color: none;
  transition: .3s;
}
#bar-white-lightgreen span{
  background-color: #fff;
}
#bar-white-lightgreen.active{
  background-color: #fff;
}
#bar-white-lightgreen.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-lightgreen.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-lightgreen.active span:last-of-type{
  background-color: #C20032;
}
/*ぷちぽっち*/
#bar-white-purple{
  background-color: none;
  transition: .3s;
}
#bar-white-purple span{
  background-color: #fff;
}
#bar-white-purple.active{
  background-color: #fff;
}
#bar-white-purple.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-purple.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-purple.active span:last-of-type{
  background-color: #C20032;
}
/*ぷちぽっち詳細・NEWS*/
#bar-white-purple1{
  background-color: none;
  transition: .3s;
}
#bar-white-purple1 span{
  background-color: #C20032;
}
#bar-white-purple1.active{
  background-color: none;
}
#bar-white-purple1.active span:first-of-type{
  background-color: #C20032;
}
#bar-white-purple1.active span:nth-of-type(2){
  background-color: #C20032;
}
#bar-white-purple1.active span:last-of-type{
  background-color: #C20032;
}

@media (max-width:540px){
  /*聆詁詳細スマホ*/
  #bar-white-red1{
    background-color: none;
  }
  #bar-white-red1 span{
    background-color: #fff;
  }
  #bar-white-red1.active{
    background-color: #fff;
  }
  #bar-white-red1.active span:first-of-type{
    background-color: #C20032;
  }
  #bar-white-red1.active span:nth-of-type(2){
    background-color: #C20032;
  }
  #bar-white-red1.active span:last-of-type{
    background-color: #C20032;
  }
  /*ぷちぽっち詳細・NEWSスマホ*/
  #bar-white-purple1{
    background-color: none;
    transition: .3s;
  }
  #bar-white-purple1 span{
    background-color: #fff;
  }
  #bar-white-purple1.active{
    background-color: none;
  }
  #bar-white-purple1.active span:first-of-type{
    background-color: #C20032;
  }
  #bar-white-purple1.active span:nth-of-type(2){
    background-color: #C20032;
  }
  #bar-white-purple1.active span:last-of-type{
    background-color: #C20032;
  }
}

/* スライドメニューのスタイル */
.slide-menu {
  position: absolute;
  top: 0;
  right: 0;
  width: 422px;
  height: 670px;
  background-color: #fff;
  transition: right 0.3s ease-in-out;
  z-index: 99;
  transform: translateX(100%);
  transition: .3s;
  visibility: visible;
}
.slide-menu-img{
  width: 250px;
  height: auto;
  margin-top: 20px;
  margin-left: 20px;
  aspect-ratio: 285/53;
}
.slide-menu ul {
  list-style: none;
  padding: 20px 0;
  margin-top: 10px;
}
.slide-menu li {
  padding: 24px 40px 24px;
  border-bottom: solid 1px;
  transition: all 0.3s;
  line-height: 1.1;
}
#slide-menu li:last-of-type{
  padding-bottom: 0;
}
.slide-menu a {
  text-decoration: none;
  color: #333;
  font-size: 18px;
}
.slide-menu li:hover {
  background-color: #c7c5c5;
}
.slide-menu.active{
  transform: translateX(0);
  box-shadow: -2px 0 2px rgba(0,0,0,0.2);
}

/*
ハンバーガーメニューここまで
////////////////////*/

/*ニュース最新情報*/
#news{
  background-color: #dddddd;
}
#news_title{
  padding: 80px 0;
}
#news_title h2{
  font-size: 30px;
  margin-bottom: 10px;
  text-align: center;
}
#news_title p{
  font-size: 18px;
  text-align: center;
}
/*ニュース最新情報-ボックス部分*/

.news_blocks{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(281px, 1fr));
  gap: 5px;
  justify-items: center;
  align-items: center;
  padding-left: 60px;
  padding-right: 60px;
}
.news_block{
  background-color: #fff;
  width: 281px;
  height: 434px;
  margin: 0 12px;
  margin-bottom: 40px;
  padding:14px 15px 0;
}
.news_block:hover{
  opacity: 0.8;
  background-color: #a7a7a7;
  cursor: pointer;
}

.date{
  margin-left: 5px;
}
.news_block p{
  padding: 10px 0;
  font-size: 15px;
  line-height: 22px;
}
.newsh3{
  display: flex;
  align-items: center;
  height: 60px;
}
.news_block h3{
  margin-top: 15px;
  font-weight: bold;
  line-height: 1.2;
}
.articleImgage{
  display: block;
  width: 100%;
  height: 140px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0px;
  object-fit: cover;
  object-position: center;
}
/*MOREボタン*/
.linkbox{
  display: flex;
  justify-content: center;
}
.linkbox a{
  display: block;
  border: solid 1px;
  text-align: center;
  width: 222px;
  height: 38px;
  line-height: 34px;
  margin-top: 10px;
  margin-bottom: 98px;
}
#more a:hover{
  background-color: #fff;
  font-weight: bold;
}
#more a:active{
  background-color: #fff;
  font-weight: bold;
}
/*1234>ページ切替ボタン*/
#page-icon{
  display: flex;
  justify-content: center;
  gap: 15px;
  padding-bottom: 80px;
}
#page-icon a{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 42px;
  height: 42px;
  line-height: 42px;
  background-color: rgb(253, 244, 234);
  border-radius: 50%;
  text-align: center;
  margin-right: 0;
}
#page-icon a:hover{
  color: #fff;
  background-color: #C20032;
}
#page-icon a:active{
  color: #fff;
  background-color: #C20032;
}
/*#page-icon a:last-of-type{
  margin-right: 0;
}*/
#page-icon p{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 42px;
  height: 42px;
  line-height: 42px;
  color: #fff;
  background-color: rgb(193, 154, 105);
  border-radius: 50%;
  text-align: center;
  margin-right: 0px;
}
.mb60{
  padding-bottom: 60px;
}
/*記事がありませんメッセージ*/
.noArticle{
  text-align: center;
  margin-top: 80px;
}
.notfound_msg{
  text-align: center;
}

/*啓詁ヘッダー画像*/
.hirokiko-hd img{
  width: 85%;
  height: auto;
  aspect-ratio: 977 / 250;
  margin-left: 5%;
  margin-bottom: 50px;
}

/*サブナビゲーション*/
/*reiko*/
.reikohd{
  position: relative;
}
#navi_r{
  display: flex;
  flex-wrap: wrap;
  height: 0;
  position: absolute;
  top:68%;
  left: 4%;
}
#navi_r div{
  margin-right: 10px;
  font-size: 13px;
  line-height: 20px;
}
/*hirokiko*/
#navi_h{
  display: flex;
  position: relative;
  top: -10px;
  left: 4%;
}
#navi_h div{
  margin-right: 10px;
  font-size: 13px;
  line-height: 20px;
}
/*共通*/
#wide-control{
  display: none;
}
@media (max-width:769px){
  #navi_r{
    width: 220px;
  }
  #wide-control{
    display: block;
    width: 50px;
  }
}
#navi_r a{
  color: blue;
  text-decoration: underline;
}
#navi_h a{
  color: blue;
  text-decoration: underline;
}
#navi-c a{
  color: blue;
  text-decoration: underline;
}
#navi-co a{
  color: blue;
  text-decoration: underline;
}

#navi_r a:hover{
  text-decoration: none;
}
#navi_h a:hover{
  text-decoration: none;
}
#navi-c a:hover{
  text-decoration: none;
}
#navi-co a:hover{
  text-decoration: none;
}

/*フッター*/
footer h2{
  font-size: 23px;
  font-weight: bold;
  text-align: center;
  margin-top: 89px;
  margin-bottom: 25px;
  line-height: 28px;
}
/*フッター画像上段*/
#footerimage{
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
#footerimage a{
  max-width: 288px;
  max-height: 288px;
}
#footerimage img:hover{
  opacity: 80%;
  background-color: #c7c5c5;
}
#f-reiko{
  max-width: 288px;
  height: auto;
  aspect-ratio: 1/1;
}
#f-reiko:hover{
  opacity: 70%;
  background-color: #c7c5c5;
}
#f-hirokiko{
  max-width: 288px;
  height: auto;
  aspect-ratio: 1/1;
}
#f-hirokiko:hover{
  opacity: 80%;
  background-color: #c7c5c5;
}
/*フッター中段*/
#footerimage2{
  display: flex;
  justify-content: center;
}
#footerimage2 a{
  max-width: 288px;
  max-height: 288px;
}
#footerimage2 img:hover{
  opacity: 80%;
  background-color: #c7c5c5;
}
/*フッター下段*/
#footerimage3{
  display: flex;
  justify-content: center;
  margin-bottom: 96px;
}
#footerimage3 a,
#footerimage3 div{
  max-width: 288px;
  max-height: 288px;
}
#f-insect:hover{
  opacity: 80%;
  background-color: #c7c5c5;
}

/*フッター文字*/
#footertext{
  text-align: center;
}
#footertext img{
  max-width: 349px;
  height: auto;
  aspect-ratio: 251/47;
}
#footertext p{
  margin-top: 20px;
  margin-bottom: 53px;
  line-height: 22px;
  color: #707070;
  font-size: 14px;
}

footer .linkbox{/*フッター問い合わせリンク*/
  padding: 0;
  margin-bottom: 0px;
}

#otoiawase a:hover{
  background-color: #dddddd;
  font-weight: bold;
}
#otoiawase a:active{
  background-color: #dddddd;
  font-weight: bold;
}

/*レスポンシブ対応*/
@media (max-width:930px){
  #news_title{
    padding: 50px 0;
  }
}
@media (max-width:626px){
  .news_block{
    margin-bottom: 30px;
  }
  footer h2{
    font-size: 19px;
    margin-top: 80px;
  }
  #footerimage3{
    margin-bottom: 70px;
  }
  .linkbox a{
    margin-bottom: 40px;
  }
  #more.linkbox{
    margin-bottom: 0;
  }
}
@media (max-width:580px){
  #f-reiko{
    width: 50%;
  }
  #f-hirokiko{
    width: 50%;
  }
}

/*
スマホ対応
/////////*/

/*啓詁トップ　古今和歌集の序文部分*/
.resp520{
  display: none;
}
@media (max-width:520px){
  .pc520{
    display: none;
  }
  .resp520{
    display: block;
  }
}

.resp{
  display: none;
}
.resp-reikoname{
  max-width: 160px;
  height: auto;
  aspect-ratio: 136.78/45.35;
  margin: 24px auto 56px;
  display: none;
}
#resp-toplogo{
  width: 157.8px;
  height: 29.61px;
  margin-top: 17px;
  margin-left: 15.6px;
  margin-bottom: 10px;
}
#resp-hirokiko-newdetail{
  aspect-ratio: 1/1;
}
@media (max-width:540px){

  .pc{
    display: none;
  }
  #navi_r{
    display: none;
  }
  .resp{
    display: block;
  }
  .resp-reikoname{
    display: block;
  }
  #navi{
    display: none;
  }
  .header-mb{
    display: none;
  }
  

  /*ハンバーガーメニュー*/
  .hamburger-menu {
    top: 29px;
  }
  .slide-menu {
    width: 100%;
  }
  .slide-menu.active{
    width: 100%;
  }
  .slide-menu li {
    transition: none;
  }

  /*ニュース最新情報*/
  #page-icon a{
    font-size: 14px;
    width: 38px;
    height: 38px;
    line-height: 38px;
  }
  #page-icon p{
    font-size: 14px;
    width: 38px;
    height: 38px;
    line-height: 38px;
  }
  .news_blocks{
    padding-left: 20px;
    padding-right: 20px;
  }
  
}

@media (max-width:350px){
  .hamburger-menu {
    top: 22px;
  }
  .slide-menu-img{
    width: 180px;
  }
  .slide-menu li {
    padding-left: 20px;
  }

}