/*----------共通パーツ----------*/

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

.pagi-nation {
	margin: 24px 0px 0px;
}

.pagi-nation > ul {
	display: flex;
	justify-content: center;
	align-items: center;
    margin: 0px;
    list-style: none;
}

.pagi-nation > ul > li {
    margin: 0px 0.5em;
    width: 2em;
    height: 2em;
}

.pagi-nation > ul > li > a,
.pagi-nation > ul > li > span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: #c7b299;
    box-sizing: border-box;
}

.pagi-nation > ul > li > a {
    border: 1px solid currentColor;
    text-decoration: none;
}

.pagi-nation > ul > li > .current {
    border: 1px solid #c7b299;
    background-color: #c7b299;
    color: #fff;
}
/*
.pagi-nation > ul > li > .prev,
.pagi-nation > ul > li > .next {
    position: relative;
    border: none;
}
.pagi-nation > ul > li > .prev::before,
.pagi-nation > ul > li > .next::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0.75em;
    height: 0.75em;
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: "";
}


.pagi-nation > ul > li > .prev::before {
    transform: translateX(-50%) translateY(-50%) rotate(225deg);
}
.pagi-nation > ul > li > .next::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
}*/

/*テキストリンクの色*/
a{
	color:gray;
}

/*グローバルナビ*/
#globalnav .nav-link{
  font-size: 18px;
}
#globalnav ul{
  max-width: 1024px;
}
.logo img{
	width: 95px;
	height:auto;
	}

/*Works,Indexのメインエリア*/
/*Bootstrapのクラスに追加*/
	.container{
		overflow:hidden;
	}

	.col-md-4{
		margin-top:15px;
		filter:drop-shadow(2px 4px 6px darkgray);
	}

	.col-sm-6{
		filter:drop-shadow(2px 4px 6px darkgray);
}

/*作品・ニュース詳細メインエリア*/
#main{
  max-width: 1024px;
  margin: auto;
  display: flex;
}

#main .topimg{
	margin-top: 56px;
}
#main .topimg img{
	height: auto;
    max-width: 100%;
}

/*詳細ページのスタイル*/
.content{
  /*max-width: 632px;*/
  max-width: 784px;
}
.content-area{
  max-width: 608px;
  margin-left: 76px;
}
.content p{
  padding: 10px 0px 10px 0px;
}

.content h2{
  padding-right:16px;
  margin-top: 16px;
}
.content h3{
  padding-right:16px;
  margin-top: 16px;
}
/*作品の補足情報*/
.info{
	font-size:18px;
	color:#8E8E8E;
}

/*作品・ニュース詳細ページのメインイメージ*/
#main .topimg {
  margin-bottom: 16px;
}
/*作品詳細ページのレコメンドイメージ*/
.recommend{
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
}
.cell{
	max-width:160px;
}
.cell img{
	width:160px;
	height:160px;
	object-fit:cover;
}
.post-title{
	font-size:14px;
}
.col{
  margin-top: 54px;
}

/*サイドバー全般*/
#side{
 /* max-width: 392px;*/
  max-width: 240px;
  padding: 0px 27px 0px 27px;
    margin-top: 56px;
}

#side h3{
  margin-top: 24px;
}
#side h4{
  margin-top: 24px;
}

#side .profile_img{
  margin: auto;
}
#side img{
	border-radius: 50%;
	width: 45px;
    height: auto;
}

/*最近の投稿リスト*/
.recently li{
  list-style: none;
  border-bottom: solid 1px #c7b299;
  padding-top: 6px;
}
.recently ul{
  padding-left: 0px;
}

/*タグ（コンテンツ記事のサイドバー内）*/
.tag-archive{
	margin-top: 16px;
}
.tag-title{
	background-color: #c7b299;
	border-radius: 3px;
	margin-right: 3px;
	padding: 0 .5em;
}
.tag ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tag ul li {
  display: block;
  margin: 0 .3em .3em 0;
  padding: 0;
}
.tag ul li a{
  display: block;
  max-width: 260px;
  height: 28px;
  line-height: 28px;
  padding: 0 1em;
  background-color: #c7b299;
  border: 1px solid #aaa;
  border-radius: 3px;
  white-space: nowrap;/*空白の取り扱い方。詰めるor改行などが指定できる。nowrapは「詰める＆改行しない」という指定*/
  text-overflow: ellipsis;/*文字数が長い場合は...で省略*/
  overflow: hidden;/*要素の内容（文字数等）が多すぎた場合の扱い方。隠したりスクロールしたり*/
  color: #333;
  font-size: 13px;
  text-decoration: none;
  transition: .2s;/*アニメーションの速度指定*/
}

.tag ul li a:hover {
  background-color: #3498db;
  border: 1px solid #3498db;
  color: #fff;
}

/*----------個別パーツ----------*/

/*プロフィールページのスタイル*/
.profile{
  max-width: 720px;
  margin: auto;
}

.profile p{
  white-space: pre-wrap;
}

.profile-img{
	width: 600px;
	height: calc(600px * 0.5625);
	margin: auto;
	margin-top:15px;
	overflow:hidden;
}
.profile-img img{
	height: auto;
  max-width: 100%;
}
.prof-header{
  padding-top: 24px;
  border-bottom:1px solid #c7b299;
}
.major-works li{
      padding: 20px 0;
    }

/*ニュース一覧ページのスタイル*/
#news{
  max-width: 820px;
  margin: auto;
}
.news-content{
  display: flex;
}
.news-img{
  margin: 16px 32px 16px 32px;
}
.news-summary{
  max-width: 360px;
  max-height: 240px;
  margin: 16px 0px 16px 0px;
  padding: 0px 16px 0px 16px;
  overflow: hidden;/*要素の内容（文字数等）が多すぎた場合の扱い方。隠したりスクロールしたり*/
 text-overflow: ellipsis;/*文字数が長い場合は...で省略*/
}

/*ニュース詳細ページの記事エリア*/
.news-area{
  max-width: 608px;
  margin-left: 76px;
}

/*ニュース詳細のサイドバー*/
.side-content{
  width: 240px;
}
.top-heading{
  margin-top: 0px !important;
}

footer{
  margin-top: 56px;
}
.copyright{
	display:block;
	text-align:center;
}

/*お問い合わせフォーム*/
.form{
	width:100%;
	margin-left: auto;
	margin-right: auto;
}

/*タイトルをセンターに*/
.form h2{
	text-align:center;
	margin-top:16px;
}

.wpcf7-form.init{
	text-align:center;
}

/*ボタンのサイズと色調整*/
.wpcf7-submit{
	background-color:#c7b299;
	padding: 1rem 4rem;
	text-align: center;

}

/*隠れローダーをブロック要素にしてボタンを中央に*/
.wpcf7-spinner{
	display:block;
}

/* レスポンシブデザイン用の指定 */
@media screen and (min-width:1200px) {

	.container img{
		height:262.5px;
			width:350px;
		object-fit:cover;
	}
	.news-img img{
	max-width:392px;
	height:auto;
}
}

@media screen and (min-width:993px) and (max-width:1199px){

	.container img{
		height:217.5px;
		width:290px;
		object-fit:cover;
	}
	.news-img img{
	max-width:392px;
	height:auto;
}
}

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

	.container img{
		height:157.5px;
		width:210px;
		object-fit:cover;
	}
	.cell{
	max-width:140px;
	}
	.cell img{
		width:140px;
		height:140px;
		object-fit:cover;
	}
	#side{
		width:38%;
		padding-right:32px;
		padding-left:32px;
	}
	.news-img img{
	max-width:392px;
	height:auto;
}
}

@media screen and (min-width:576px) and (max-width:767px){

	.container img{
		height:180px;
		width:240px;
		object-fit:cover;
	}
	.cell{
	max-width:120px;
	}
	.cell img{
		width:120px;
		height:120px;
		object-fit:cover;
	}
   #news{
    max-width: 100%;
    margin: auto;
    margin:0px 16px 0px 16px;
  }
	.news-img img{
		max-width: 100%;
		height: auto;
		/**margin: 16px 32px 16px 32px;**/
	}
	.news-summary {
    width: 50%;
    max-height: auto;
    margin: 16px 0px 16px 0px;
    padding: 0px 16px 0px 16px;
    text-overflow: ellipsis;
    overflow: hidden;
}
	#side{
		width:34%;
		padding-right:32px;
		padding-left:32px;
	}
}

@media screen and (min-width:320px) and (max-width:575px){
  /*画面サイズが320〜559pxまではここのレイアウトを適用（スマホ）*/
  #main{
    display: block;
  }
  #main .topimg{
    margin-top: 24px;
  }

.logo img{
	width: 95px;
	height:auto;
	}

	/*グローバルナビ*/
	#globalnav .nav-link{
	  font-size: 18px;
	}

   /*コンテンツページ・サイドイバーの設定*/
  #side{
    max-width: 100%;
    /*max-width: 240px;*/
    margin: auto;
    padding: 0px 16px 0px 16px;
    margin-top: 40px;
  }

  img{
    max-width: 100%;
    height: auto;
  }

 /*コンテンツページ・コンテンツエリアのマージン*/
  .content{
    margin:0px 16px 0px 16px;
  }
 /*コンテンツページ・コンテンツエリアの横幅*/
  .content-area{
    max-width: 100%;
    margin:auto;
  }

 /*コンテンツページ下部のレコメンドイメージ*/
  .recommend{
    display: block;
  }

	.cell{
	    max-width:100%;
		margin-bottom: 16px;
		}

	.cell img{
		width: 100% ;
		height: auto;
		}

	/*ニュース一覧ページ全体スタイル*/
  #news{
    max-width: 100%;
    margin: auto;
    padding:0px 16px 0px 16px;
  }

  /*ニュース一覧ページ、フレックス解除*/
  .news-content{
    display: block;
		margin:auto;
  }
  /*ニュース一覧ページ、サマリーのスタイル*/
  .news-summary{
    max-width: 100%;
    max-height: 240px;
    margin: 0px 0px 64px 0px;
    padding: 0px 16px 0px 16px;
    text-overflow: ellipsis;/*文字数が長い場合は...で省略*/
    overflow: hidden;/*要素の内容（文字数等）が多すぎた場合の扱い方。隠したりスクロールしたり*/
  }

	/*ニュース一覧ページ、タイトルのフォントサイズ変更*/
	h4.news-title{
		font-size: 20px;
	}

  /*ニュースページ、コンテンツエリアの横幅*/
  .news-area{
    max-width: 100%;
    margin:auto;
  }
  /*ニュースページ、サイドコンテンツの横幅*/
  .side-content {
      width: 100%;
  }

  /*ニュースページ、画像の横幅をディスプレイに合わせる*/
  .news-img{
    max-width: 100%;
		height: auto;
		margin:auto;
    padding: 16px 0px 16px 0px;
		text-align:center;
  }
  .row{
    display: block!important;
  }

/*プロフィールページの左右余白*/
  .profile{
    margin: 0px 16px;
  }
 .profile-img {
	 max-width:100%;
     height: auto;
    margin: auto;
    margin-top: 15px;
	 padding: 0px 16px 0px 16px;
    overflow: hidden;
	}
}
/*------トップページスライダー用スタイル------*/
 *{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style: none;
}

.main-slider {
	overflow: hidden;
	margin-top:15px;
}
.carousel {
  width: 600px;
  height: calc(600px * 0.5625);
 position:relative;
  margin: 0 auto;
}
.carousel-area {
	/*width: 3150px;*/
  height: 100%;
  display: flex;
  position:absolute;
}
.carousel-list {
  width: 600px;
　height: calc(600px * 0.5625);
  margin-right: 30px;
}
.carousel-img {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 600px) {
  .carousel {
    width: 300px;
    height: calc(300px * 0.5625);
  }
  .carousel-area {
    /*width: 1500px;*/
  }
  .carousel-list {
    width: 300px;
    height: calc(300px * 0.5625);
    margin-right: 0;
  }
}

/*backgroundで画像表示*/
.carousel-list {
  width: 600px;
  height: 100%;
  margin-right: 30px;
  background-size: cover;　　　　 /* 追記 */
  background-position: center;　 /* 追記 */
  background-repeat: no-repeat;  /* 追記 */
}
/* 以下、各スライドの背景に画像設定。相対パス指定 */
.carousel-list:nth-child(1) {
  background-image: url(../images/1.jpg);
}
.carousel-list:nth-child(2) {
  background-image: url(../images/2.jpg);
}
.carousel-list:nth-child(3) {
  background-image: url(../images/3.jpg);
}
.carousel-list:nth-child(4) {
  background-image: url(../images/55.jpg);
}
.carousel-list:nth-child(5) {
  background-image: url(../images/1.jpg);
}
/* clipで非表示指定（スクリーンリーダー対策） */
.carousel-img {
  width: 1px;　　/* 100％ → 1px */
  height: 1px;　/* 100％ → 1px */
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
}

/* ボタンタグの装飾リセット */
button {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: none;
  border-radius: 0;
}
/*********** スライド送りボタン ***********/
/* 共有パーツ */
.arow-wrap {
  width: 90%;
  height: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.arrow-btn {
  width: 48px;
  height: 48px;
  background-color: rgba(113, 135, 245, 0.8);
  border-radius: 50%;
  transition: .2s;
}
.arrow-btn:focus {
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.8);
}
.arrow-btn:hover {
  background-color: rgb(51, 79, 216);
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.8);
}

/* 左 */
.arrow-left {
  position: relative
}
/* ボタン左の中身（三角を擬似要素で表現） */
.arrow-left:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fefefe;
  border-left: 2px solid #fefefe;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%)rotate(-45deg);
}
/* 右 */
.arrow-right {
  position: relative
}
/* ボタン右の中身（三角を擬似要素で表現） */
.arrow-right:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fefefe;
  border-left: 2px solid #fefefe;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%)rotate(135deg);
}
