/*＝＝＝タブレット＆スマホ横のレイアウトのための調整 */
.container {
  overflow: hidden;
}

/* 内部リンクへの位置微調整 */
:root {
  --header: 115px;/* ヘッダーheight70px　+　ニュースティッカーheight35px +　10px*/
  scroll-padding: var(--header);
}

/* header */
#header{
  width: 100%;
  height: 70px;
 margin-top: 0px;
 text-align: center;

}

#header h1{
  top: 0px;
  text-align: left;
  
 }

#header h1 img.logo{
  width:  365px;
  padding: 14px 0px 0px 0px; /*上右下左 */
 }

/*ハンバーガーメニュー*/

#header ul li a::after {
  bottom: 35%;
}

#g-nav{
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position:fixed;
  z-index: 1;
  /*ナビのスタート位置と形状*/
  top:70px;
  left: -100%;
  width:100%;
  height: 100vh;/*ナビの高さ*/
  background:#1b3c53;
     /*動き*/
  transition: all 0.6s;
  letter-spacing: 0.2em;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
  left: 0;
}


/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
  /*ナビの数が増えた場合縦スクロール*/
  position: relative;
  z-index: 999; 
  width:100%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav h1 {
  /*ナビゲーション天地中央揃え*/
  display: inline;
  font-size: 1.3rem;
  color: #1b3c53;
  position: absolute;
  z-index: 999;
  width: 100%;
  left: 0;
  top:10%;
  text-align: center;
  
}


#g-nav-list{
  overflow-y: scroll;
  width: 100vw;
  display: flex;
  flex-wrap: wrap;
  flex-flow: column;
  justify-content: space-around;
  
}

/*ナビゲーション*/
#g-nav ul {
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  flex-flow: column;  
  z-index: 999;
  top:0;
  text-align: center;
  line-height:30px;
  
  display: flex;
  padding: 10px 0;
  align-self: center;
}

/*リストのレイアウト設定*/
#g-nav ul li { 
  /*ナビゲーション天地中央揃え*/
  flex-grow: 1;
  font-size: 1.3rem;
  font-weight: bold;
  
  display: inline-block;
  overflow: hidden;
}

#g-nav ul li a.panelactive{
  animation: 1.3s fadeup ease-in-out forwards;
}

#g-nav ul li a { 
  color: #fff;
}
 
@keyframes fadeup {
  0% {
    opacity: 0;
    transform: translateY(80px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
  position:fixed;
  z-index: 9999;/*ボタンを最前面に*/
  top:10px;
  right: 10px;
  cursor: pointer;
  width: 70px;
  height:70px;
}

/*×に変化*/	
.openbtn span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 14px;
  height: 3px;
  border-radius: 2px;
background-color: #666;
  width: 45%;
}

.openbtn span:nth-of-type(1) {
top:15px;	
}

.openbtn span:nth-of-type(2) {
top:23px;
}

.openbtn span:nth-of-type(3) {
top:31px;
}

.openbtn.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 50%;
}

.openbtn.active span:nth-of-type(2) {
opacity: 0;
}

.openbtn.active span:nth-of-type(3){
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 50%;
}

/* ニュースティッカー */
#infomation {
  position: sticky; /*** ← fixedで固定 ***/
  top: 70px;
  z-index: 2;
 
  padding:5px 0;
  margin:0;
  /* overflow: hidden; */
}

/*==================================================
スライダー（sliderスライドショー）のためのcss
===================================*/
.slider img {
  width:40vw;/*スライダー内の画像を40vwにしてレスポンシブ化*/
}

.slider p {
  width: 400px;
}

/* .slick-dots { */
/*   margin:20px 0 50px 0; */
/* } */

.slick-dots li {
  margin:0 15px;
}

.slick-dots button {
  width:20px;/*ドットボタンのサイズ*/
  height:20px;/*ドットボタンのササイズ*/
}

/* sort */
#sort {
  display: flex; 
  text-align:center; 
	flex-wrap: wrap;  
  /*writing-mode: vertical-lr;/* 縦書き */
	padding:0px 0px 40px 0px;
	margin: 0 auto;	
}

#sort ul{
	justify-content: center; 
	flex-wrap: wrap;
  /*writing-mode: vertical-lr;/* 縦書き */
	padding:0px 0px 0px 0px;
}

#sort li{
  list-style:none;
	border-radius:0px;
	cursor: pointer;
	padding: 10px 30px;
	/* margin:0 0px; */
	border-bottom: 2px solid #1b3c53;
	color: #a1a1a1;
}

#sort li.active{/*ボタンに現在地＝activeというクラス名がついたら背景色を変更*/
	border-top: 2px solid #1b3c53;
	border-bottom: 0px solid #ddd;
	border-left: 2px solid #1b3c53;
	border-right: 2px solid #1b3c53;
	color: #1b3c53;	
}


/* gallery */

#gallery{
  margin-bottom: 0px;
}

#gallery img{
	border-radius: 5px;
	width:100%;
	height:auto;
	vertical-align: bottom;/*画像の下にできる余白を削除*/
}

.box {
    display:flex;
    flex-direction: column;
    margin: 0px 10px 40px 10px;
    text-align: left;
}

.box h3 {
    font-size: 1.2rem;
    margin: 0;
}

.box p {
  font-size: 1.0rem;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;/* テキストoverflow時「・・・」表示 */
}

/*各画像の横幅などの設定*/
.item{
width: 33%;/*横並びで3つ表示*/
}

.footer-area .footer-title{
  font-size:1.6rem;
}    

.info{
  width:68%;
}

.info li{
font-size:1.3rem;
}

.footer-area dl img{
width: 140px;
}

#footer small{
font-size:1.0rem;
}
