@charset 'UTF-8';

html,
html * {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	grid-gap: 0;
}

html {
  scroll-behavior: smooth;
}

body {
	position: relative;
	background: #050505;
	background-size: cover;
	font-family: 'Spartan', "hiragino Kaku Gothic ProN", sans-serif;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}


/* header
------------------------------------------------------*/


.header {
	background: #1a1a1a;
	position: fixed;
	font-weight: 400;
	padding: 0px;
	margin: 0px;
	width: 100%;
	top: 0;
	left: 0;
	height: 80px;
	opacity: 90%;
	z-index: 50;
}

.site-title {
	position: fixed;
	width: 250px;
	top: 14px;
	left: 70px;
	z-index: 60;
  transition: opacity .3s;
}

.site-title:hover {
  opacity: .5;
}


.site-title img {
  width: 250px;
  height: auto;
}


.container {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: flex-end;
	height: 82px;
	position: fixed;
	right: 70px;
}

.item {
	color: #fff;
	margin: 10px;
	padding: 10px;
	font-size: 0.7rem;
}

.item a {
	color: #fff;
	text-decoration:none;
	cursor: pointer;
	transition: all 0.5s ease 0s;
}

.item a:hover{
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}



/* video
------------------------------------------------------*/



.home_content {
	position: relative;
	overflow: hidden;
	padding: 80px 0px 0px;
	width: 100%;
	z-index: 0;
}

.video-box {
	line-height: 0;
  padding-top: 80px;
}

.video {
	position: relative;
	width: 100%;
	margin: 0px 0px -4px 0px;
	line-height: 0;
}

.list {
	padding: 120px 0;
}

section.category {
	position: relative;
	top: 0px;
	padding: 100px 0px 50px;
	margin: 0px;
	border: 0px solid white;
	text-align: center;
	color: #111;
}

.taxonomy .filter-list {
  margin-bottom: 60px;
}

.white {
	color: #d2d2d2;
}

.works-list {
	position: relative;
	top: 0px;
	padding: 120px 0px;
	margin: 0px;
	background-color: #111111;
	border: 0px solid white;
	text-align: center;
	color: #fff;
}


/* works
------------------------------------------------------*/

.works-background {
	background-color: rgb(243, 242, 238);
  margin-top: 80px;
}

.works-background .btn {
	display: block;
	text-align: center;
	padding: 9px 16px 6px;
  color: #fff;
  background-color: #505050;
  text-decoration: none;
  margin: 50px auto 0;
  border: unset;
  transition:background-color .3s ,color .3s;
  font-size: .8rem;
}

.works-background .btn:hover {
	background-color: #d2d2d2;
	color: #111;
}

.works {
	position: relative;
	top: 0px;
	padding: 0px 0px;
	margin: 0px;
	color: #fff;
	table-layout: fixed;
  padding-bottom: 120px;
}

.works-filter .filter-list {
	display: flex;
	justify-content: center;
	gap: 15px;
	list-style: none;
	margin-top: 60px;
}

.filter-item a {
	display: inline-block;
	padding: 10px 20px 6px;
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: background-color 0.3s, color 0.3s;
	background-color: #4a4a4a;
	color: #fff;
	line-height: 1;
}

.filter-item a:hover {
	background-color: #d2d2d2;
	color: #111;
}

.work-container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 15px;
	row-gap: 15px;
	width: 100%;
	padding: 15px;
	margin: 0;
	background-size: cover;
	background-position: center;
}

.work-item {
	position: relative;
	overflow:hidden;
	border: 0px solid blue;
	z-index: 1;
}


.work-image {
	position: relative;
	top: 0px;
	width: 100%;
	padding: 0px;
	vertical-align: top;
	margin:0 auto;
	opacity: 100%;
	transition: all 0.6s ease 0s;
}

.mask {
	position: absolute;
	border: 10px solid rgba(255 , 255 , 255,.5);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0%;
	-webkit-transition: 1s all;
	transition: 1s all;
  background-color: rgba(17 , 17 , 17 ,.4);
}

.work-text {
	font-family: 'Spartan', "hiragino Kaku Gothic ProN", sans-serif;
	font-weight: 500;
	position: absolute;
	color: #fff;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	top: 50%;
	left: 50%;
	text-align: center;
	opacity: 100%;
	border: 0px solid red;
}

.work-item:hover img {
	transform:scale(1.15,1.15);
	transition:1s all;
}

.mask:hover {
	opacity: 100%;
}

.works .btn {
	display: block;
	text-align: center;
	padding: 9px 16px 6px;
  color: #fff;
  background-color: #505050;
  text-decoration: none;
  margin: 50px auto 0;
  border: unset;
  transition:background-color .3s ,color .3s;
  font-size: .8rem;
}

.works .btn:hover {
	background-color: #d2d2d2;
	color: #111;
}

/* about
------------------------------------------------------*/


.about {
	position: relative;
	background-color: #050505;
	color: #D2D2D2;
	height: cover;
	border: 0px solid yellow;
	text-align: center;
	padding-top: 120px;
}

.profile-photo {
	position: relative;
	width: 30%;
	margin: 80px auto -100px auto;
	display: block;
}

.profile-title {
	position: relative;
	width: 650px;
	top: 150px;
	border: 0px solid red;
}

.english {
	position: relative;
	margin: 150px 10%;
	font-size: 1.4rem;
	top: 70px;
	line-height: 1.7;
	border: 0px solid red;
}

.japanese-title {
	font-size: 1.0rem;
	color: #D2D2D2;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	border: 0px solid red;
}

.japanese-name {
	font-size: 1.8rem;
	margin: 10px;
	color: #fff
}

.japanese {
	position: relative;
	font-size: 1rem;
	padding: 2% 10%;
	margin: 0px 0px 80px;
	top: 0px;
	line-height: 2;
	border: 0px solid white;
}


/* news
------------------------------------------------------*/

/* 2025-05-14 .PATH佐藤 追記分　ここから */
.news {
	position: relative;
	background-color: #1a1a1a;
	padding: 120px 0 150px;
	color: #D2D2D2;
	border: 0px solid yellow;
}

.news-section {
	position: relative;
	background-color: rgb(243, 242, 238);
	padding: 60px 0 0;
	color: #D2D2D2;
  margin-top: 80px;
}

.news h2 {
	margin-bottom: 100px;
	text-align: center;
	font-size: 1.6rem;
}

.news-section h2 {
	margin-bottom: 40px;
	text-align: center;
	font-size: 27.2px;
}

.news__wrapper {
	width: 70%;
	margin: 0 auto;
  max-width: 1000px;
}

.news__wrapper a {
	display: block;
	display: flex;
	text-decoration: none;
	gap: 30px;
}

.news .btn a:hover {
	background-color: #fff;
	color: #111;
}


.news-list {
	line-height: 1.7;
	padding-bottom: 50px;
}
.news-list__link {
  transition: opacity .3s ease;
}

.news-list__link:hover {
  opacity: .7;
}

.news-list-thumb {
	width: 400px;
}

.news-list-thumb img {
	width: 100%;
	height: auto;
}

.news-list-content  {
	flex: 1;
	color: #D2D2D2;
}

.news-list-content time {
		font-size: .8rem;
		line-height: 1.7;
		letter-spacing: 0.1em;
		color: #d2d2d2;
}

.news-list-content .news-list-title {
	font-size: 1.5rem;
	line-height: 1.4;
	margin-top: 5px;
	letter-spacing: 0.1em;
	color: #fff;
}

.news-list-content .news-list-lead {
	line-height: 1.7;
	letter-spacing: 0.1em;
	margin-top: 10px;
	color: #d2d2d2;
  word-break: break-word;
  font-size: .9rem;
}

.news .btn {
	text-align: center;
}

.news .btn a {
	font-size: 0.8rem;
	color: #D2D2D2;
	display: inline-block;
	padding: 9px 23px 5px;
	margin-top: 50px;
	background-color: #505050;
  letter-spacing: 0.1em;
	transition: background-color 0.3s, color 0.3s, opacity 0.3s;
}

/* news　ここまで */
/* ページネーション */
.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	padding: 100px 0;
	background-color: rgb(243, 242, 238);
}

.wp-pagenavi .previouspostslink {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	padding-left: 5px;
	color: #111;
	text-decoration: none;
	transition: opacity 0.2s;
	padding-top: 2px;
  border: unset;
}

.wp-pagenavi .previouspostslink svg {
	fill: #111;
	transition: fill .2s;
}

.wp-pagenavi .previouspostslink:hover {
	background-color: #d2d2d2;
	padding-left: 5px;

}

.wp-pagenavi .nextpostslink {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	padding-right: 5px;
	color: #111;
	text-decoration: none;
	transition: opacity 0.2s;
	padding-top: 2px;
  border: unset;
}

.wp-pagenavi .nextpostslink svg {
	fill: #111;
	transition: fill .2s;
}

.wp-pagenavi .nextpostslink:hover {
	background-color: #d2d2d2;
	padding-right: 5px;
}

.wp-pagenavi .page {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	font-size: 1rem;
	color: #111;
	text-decoration: none;
	transition: background-color 0.3s, color 0.3s;
	padding-top: 7px;
  border: unset;
}
.wp-pagenavi .page:hover {
	background-color: #d2d2d2;
}

.wp-pagenavi .current {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	font-size: 1rem;
	color: #111;
	text-decoration: none;
	transition: background-color 0.3s, color 0.3s;
	padding-top: 7px;
  border: unset;
}


.wp-pagenavi .current:hover {
	background-color: #d2d2d2;
}
/* ページネーション　ここまで */

 /* NEWS一覧ページ ここから */
body.blog .news-list-content time,
body.archive .news-list-content time {
	color: #111;
}

body.blog .news-list-content .news-list-title ,
body.archive .news-list-content .news-list-title {
	color: #111;
}

body.blog .news-list-content .news-list-lead ,
body.archive .news-list-content .news-list-lead {
	color: #111;
}

/* NEWS詳細ページ */


body.single .header {
	opacity: 90%;
}

body.single .news-list-content {
	background-color: rgb(243, 242, 238);
	font-weight: 300;
	max-width: 1000px;
}

body.single time {
	font-size: .9rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #111;
}

body.single .news__category {
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #111;
}

body.single .news-list-title {
	font-size: 1.6rem;
	color: #111;
	line-height: 1;
	line-height: 1.6;
}

body.single .pagenation {
	display: flex;
	justify-content: center;
	gap: 60px;
	background-color: rgb(243, 242, 238);
  padding-top: 70px;
	padding-bottom: 100px;
}

body.single .pagination__arrow a {
  display: inline-flex;
	align-items: center;
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	text-decoration: none;
	height: 27px;
	color: #3c3c3c;
	border: solid 1px #3c3c3c;
	padding-top: 3px;
  transition: color .3s , background-color .3s;
}


body.single .pagination__arrow a:hover {
	background-color: #3c3c3c;
	color: #fff;
}

body.single .pagination__arrow a {
  text-decoration: unset;
  color: #3c3c3c;
}

body.single .pagination__center a {
	display: inline-flex;
	align-items: center;
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	text-decoration: none;
	height: 27px;
	color: #fff;
	background-color: #505050;
	width: 206px;
	justify-content: center;
	padding-top: 3px;
}

body.single .pagination__center a {
  text-decoration: unset;
  color: #fff;
}

body.single .pagination__center a:hover {
	background-color: #3c3c3c;
	color: #fff;
}

body.single .pagination__arrow--prev a {
	padding-right: 22px;
}

body.single .pagination__arrow--prev a::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(225deg);
	margin-right: 6px;
	margin-left: 21px;
	margin-top: -4px;
}

body.single .pagination__arrow--next a {
	padding-left: 42px;
	padding-top: 3px;
}

body.single .pagination__arrow--next a::after {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: rotate(45deg);
	margin-left: 26px;
	margin-right: 21px;
	margin-top: -4px;
}
.pagination__empty {
  width: 142px;
}

/* news single */
.post {
  background-color:rgb(243, 242, 238);
}

.post__inner {
  max-width: 1000px;
  margin: 80px auto 0;
}

.post .news-list-content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 23px;
  column-gap: 30px;
  color: #111;
  padding-top: 60px;
}

.post time {
  color: #111;
}

.post-categories {
  position: relative;
  list-style: none;
}

.post-categories a {
  color: #111;
  text-decoration: unset;
  font-size: .9rem;
}

.post-categories::before {
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background-color: #111;
  position: absolute;
  top: 0;
  left: -15px;
}

.post .news-list-title {
  color: #111;
  margin-top: unset;
  width: 100%;
}

.post .content {
  padding-top: 40px;
}

.post .content .wp-block-image:nth-child(1) {
  padding-top: unset;
}

.post .content .wp-block-image img {
  width: 100%;
  height: auto;
}
.post .content .wp-block-heading {
  padding-top: 30px;
}
.post .content p {
  line-height: 1.7;
  font-size: .9rem;
  padding-top: 20px;
  letter-spacing: .2em;
}
.post .content .wp-block-columns {
  display: flex;
  gap: 30px;
}

.post .content .is-layout-flow {
  width: 57%;
  padding-top: 60px;
}

.post .content .wp-block-columns:nth-of-type(1) .wp-block-column:last-child,
.post .content .wp-block-columns:nth-of-type(2) .wp-block-column:first-child {
  width: 40%;
}

.post .content .is-layout-flow p {
  padding: unset;
}

.post .content .wp-block-image {
  padding-top: 60px;
}

.post .content p:nth-of-type(2) {
  padding: unset;
  padding-top: 30px;
}
.post .content .wp-block-embed {
  padding-top: 60px;
}

.post .content .wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
  width: 1000px;
}

.post .content .wp-block-embed__wrapper iframe {
  width: 100%;
  height: 100%;
}

/* 2025-05-14 .PATH佐藤 追記分　ここまで */

/* contact
------------------------------------------------------*/


.contact {
	position: relative;
	background-color: #303030;
	padding: 140px 80px;
	color: #D2D2D2;
	width: 100%;
	text-align: center;
	line-height: 1.7;
}

h2 {
	font-family: 'Spartan', "hiragino Kaku Gothic ProN", sans-serif;
	font-size: 1.5rem;
	font-weight: 200;
	color: #111;
	border: 0px solid red;
	line-height: 1;
}

.main_mail {
	position: relative;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
	text-decoration-line: none;
	color: #fff;
	height: 100%;
	width: 100%;
	top: 60px;
	margin: 200px auto 300px;
	border: 0px solid red;
}


.management {
	font-size: 0.8rem;
	color: #D2D2D2;
	padding: 200px 0px 30px;
	border: 0px solid red;
}


.connection-logo {
	width: 250px;
	padding: 0px 0px;
	border: 0px solid red;
}

.manager {
	border: 0px solid red;
	padding: 30px 0px 0px 0px;
}

.mail {
	border: 0px solid red;
	color: #D2D2D2;
	text-decoration: none;
}

.address {
	font-size: 0.8rem;
	color: #D2D2D2;
	padding: 10px;
	text-decoration: none;
	text-decoration-line: none;
	border: 0px solid red;
	line-height: 2;
}

.contact p {
	color: #D2D2D2;
	text-decoration-line: none;
}


.sitepolicytitle {
	font-size: 0.8rem;
	padding: 190px 0px 5px;
}


.sitepolicy {
	font-size: 0.6rem;
	padding: 0px 0px 0px;
}



/* footer
------------------------------------------------------*/


.footer {
	position: relative;
	background: #1a1a1a;
	font-size: 0.6rem;
	padding: 25px;
	height: 120px;
	color: #D2D2D2;
	text-align: center;
	border: 0px solid red;
}

.sns-container {
	position: relative;
	display: flex;
	justify-content: center;
	grid-template-columns: 25% 25% 25% 25%;
	text-align: center;
	width: 100%;
	border: 0px solid red;
}

.sns-item {
	border: 0px solid yellow;
	width: 100px;
	height: 50px;
}

.sns-icon {
	width: 20%;
}


.copy {
	position: relative;
	padding: 30px auto 30px;
}



/* work page
------------------------------------------------------*/

#work-area {
	background-color: #2F2F2F;
	height: cover;
	width: 100%;
	text-align: center;
	border: 0px solid red;
}

h3 {
	font-weight: 300;
	font-size: 1.2rem;
}

.work-info {
	position: relative;
	border: 0px solid #fff;
	font-weight: 100;
	font-size: 0.8rem;
	color: #D2D2D2;
	top: 80px;
	height: 100px;
	width: 100%;
	padding: 25px;
	line-height: 1.7;
}

.work-video {
	position: relative;
	background-color: black;
	margin: 80px 100px 60px;
	padding: 0px;
	border: 0px solid white;
}

.work-video__inner {
  padding: 56.25% 0 0 0;
  position: relative;
}

.work-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.capture-container {
	display: grid;
	grid-template-columns: 50% 50%;
	gap: 15px;
	padding: 0px 100px 150px;
}

.capture-item {
	margin: 0px 0px;
	border: 0px solid white;
}

.capture {
	width: 100%;
}

/* media query タブレット
------------------------------------------------------*/


@media screen and (max-width: 1024px) {
.home {
	position: relative;
	width: 100%;
	z-index: 0;
}

.header {
	background: #1a1a1a;
	text-align: center;
	position: fixed;
	font-weight: 400;
	padding: 0px;
	margin: 0px;
	width: 100%;
	top: 0;
	left: 0;
	height: 120px;
	opacity: 80%;
	z-index: 50;
	border: 0px solid white;
}

.site-title {
	position: fixed;
	justify-content: center;
	width: 100%;
	top: 10px;
  right: 0;
  left: unset;
	z-index: 60;
	right: 0px;
	text-align: center;
}

.container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	width: 100%;
	height: 120px;
	position: fixed;
	border: 0px solid red;
	right: 0px;
	left: 0px;
	margin: auto;
	padding: 20px 50px 0px;
}

.video-box {
  padding-top: 120px;
}

.works-filter .filter-list {
    gap: 15px;
		overflow-x: auto;
		padding-bottom: 10px;
		margin-top: 30px;
    padding-left: 20px;
    padding-right: 20px;
}

.works-filter .filter-item  a{
  white-space: nowrap;
}

.item {
	position: relative;
	color: #FF0004;
	margin: 5px auto;
	padding: 10px;
	border: 0px solid yellow;
	text-align: center;
}


.item a {
	color: #fff;
	font-size: 0.6rem;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.5s ease 0s;
	text-align: center;
}

.work-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.about {
	border: 0px solid yellow;
	text-align: center;
}

.profile-photo {
	width: 40%;
 	margin: 50px auto -100px auto;
}

.profile-title {
	width: 400px;
	top: 140px;
}

.english {
	margin: 125px 70px 100px;
	font-size: 1rem;
	top: 50px;
}

.japanese-title {
	font-size: 0.9rem;
	margin: 120px auto 0px;
}

.japanese-name {
	font-size: 1.6rem;
	margin: 10px;
}

.japanese {
	font-size: 0.9rem;
	padding: 2% 10%;
	margin: 0px 0px 115px;
}

.contact {
	padding: 140px 60px;
	text-align: center;
	line-height: 1.7;
}

.main_mail {
	font-size: 1.4rem;
}

.management {
	font-size: 0.8rem;
	color: #D2D2D2;
	padding: 150px 0px 30px;
	border: 0px solid red;
}


.connection-logo {
	width: 180px;
	padding: 0px 0px;
	border: 0px solid red;
}

.manager {
	font-size: 0.8rem;
}

.address {
	font-size: 0.7rem;
	text-decoration: none;
	color: #D2D2D2;
	text-decoration-line: none;
	padding: 10px 0px;
	line-height: 1.8;
}

.sitepolicytitle {
	font-size: 0.6rem;
	color: #D2D2D2;
	padding: 150px 0px 5px;
	border: 0px solid red;
}


.sitepolicy {
	font-size: 0.4rem;
	color: #D2D2D2;
	padding: 0px 0px 0px;
	border: 0px solid red;
}

.works-background {
  margin-top: unset;
}

.taxonomy {
  margin-top: 120px;
}

.category {
  padding-top: 60px;
}
/* 2025-05-14 .PATH佐藤 追記分　ここから */

.news {
	padding: 70px 70px;
}

.news-section {
  margin-top: 120px;
  padding-left: 70px;
  padding-right: 70px;
}

.news h2 {
	margin-bottom: 50px;
}

.news-list {
	padding-bottom: 40px;
}

.news__wrapper {
  width: 100%;
}


.news-list-thumb {
	width: 45%;
}

body.single .news-list-content {
	padding-left: unset;
}

.news-list-content time {
    font-size: .6rem;
}
.news-list-content .news-list-title {
	font-size: 1rem;
  margin-top: unset;
}

.news-list-content .news-list-lead {
	font-size: 0.7rem;
}

.news-list-content .news-list-lead {
	line-height: 1.7;
	letter-spacing: 0.1em;
	margin-top: 10px;
	color: #d2d2d2;
}


.news__wrapper .btn a {
	margin-top: unset;
  font-size: .7rem;
}

.post .content .wp-block-embed__wrapper {
  width: unset;
}

.post {
  background-color:rgb(243, 242, 238);
}

.post__inner {
	width: 80%;
  margin: 120px auto 0;
}

h3 {
	font-weight: 300;
	font-size: 1.1rem;
}

.work-info {
	position: relative;
	border: 0px solid #fff;
	font-weight: 100;
	font-size: 0.7rem;
	color: #D2D2D2;
	top: 120px;
	height: 100px;
	width: 100%;
	padding: 25px;
	line-height: 1.7;
}

.work-video {
	position: relative;
	background-color: black;
	margin: 110px 85px 50px;
	padding: 0px;
	border: 0px solid white;
}

.capture-container {
	display: grid;
	grid-template-columns: 50% 50%;
	justify-content: center;
	gap: 15px;
	padding: 0px 100px 125px;
}

.wp-pagenavi {
	padding: 50px 0;
}
/* 2025-05-14 .PATH佐藤 追記分　ここまで */
/* work page
------------------------------------------------------*/

}

/* カテゴリー横スクロール開始 */
@media screen and (max-width: 970px) {
  .works-filter .filter-list {
    gap: 15px;
		overflow-x: auto;
    white-space: nowrap;
		padding-bottom: 10px;
		margin-top: 30px;
    width: calc(100% - 40px);
    margin-right: auto;
    margin-left: auto;
    padding-left: unset;
    padding-right: unset;
    justify-content: center;
    flex-wrap: wrap;
  }

  .filter-list::-webkit-scrollbar {
    height: 4px;
  }

  .filter-list::-webkit-scrollbar-track {
    background-color: #ddd;
  }

  .filter-list::-webkit-scrollbar-thumb {
    background-color: #999;
    border-radius: 2px;
  }
}



/* media query スマホ
------------------------------------------------------*/


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

	.works-filter .filter-list {
		gap: 10px;
		justify-content: unset;
		overflow-x: auto;
    flex-wrap: unset;
		padding-bottom: 10px;
		margin-top: 30px;
	}

	h2 {
		font-size: 1.3rem;
	}

	.filter-list {
		padding-left: 10px;
		padding-right: 10px;
	}



	.work-container {
		display: grid;
		grid-template-columns: 100%;
	}

	.filter-item a {
		white-space: nowrap;
		font-size: 0.6rem;
    padding: 10px 20px 6px;
	}

	.home {
		position: relative;
		width: 100%;
		z-index: 0;
	}

	.header {
		background: #1a1a1a;
		text-align: center;
		position: fixed;
		font-weight: 400;
		padding: 0px;
		margin: 0px;
		width: 100%;
		top: 0;
		left: 0;
		height: 120px;
		opacity: 80%;
		z-index: 50;
		border: 0px solid white;
	}

	.site-title {
		position: fixed;
		justify-content: center;
		width: 100%;
		top: 20px;
		z-index: 60;
    right: 0;
    left: unset;
		text-align: center;
	}

	.container {
		display: flex;
		flex-direction: row;
		justify-content: center;
		width: 100%;
		height: 120px;
		position: fixed;
		border: 0px solid red;
		right: 0px;
		left: 0px;
		margin: auto;
		padding: 20px 50px 0px;
	}

	.item {
		position: relative;
		color: #FF0004;
		margin: 5px auto;
		padding: 10px;
		border: 0px solid yellow;
		text-align: center;
	}

	.category {
		padding: 60px 0 10px;
	}

	.item a {
		color: #fff;
		font-size: 0.5rem;
		text-decoration: none;
		cursor: pointer;
		transition: all 0.5s ease 0s;
		text-align: center;
	}

  .works {
    padding-bottom: 60px;
  }
	.works .btn {
		padding: 10px 5px 7px;
	}

	.works .btn a {
		font-size: 0.5rem;
	}

	.about {
		text-align: center;
	}

	.profile-photo {
		width: 50%;
		margin: 100px auto -100px auto;
	}

	.profile-title {
		width: 300px;
		top: 130px;
	}

	.english {
		margin: 115px 50px 75px;
		font-size: 0.8rem;
		top: 35px;
	}

	.japanese-title {
		font-size: 0.8rem;
		margin: 100px auto 0px;
	}

	.japanese-name {
		font-size: 1.4rem;
	}

	.japanese {
		font-size: 0.8rem;
		padding: 2% 10%;
		margin: 0px 0px 115px;
	}

	.contact {
		padding: 140px 40px;
	}

	.main_mail {
		font-size: 1.2rem;
	}

	.management {
		font-size: 0.8rem;
		color: #D2D2D2;
		padding: 150px 0px 30px;
		border: 0px solid red;
	}

	.connection-logo {
		width: 180px;
		padding: 0px 0px;
		border: 0px solid red;
	}

	.manager {
		font-size: 0.8rem;
	}

	.address {
		font-size: 0.6rem;
		text-decoration: none;
		color: #D2D2D2;
		text-decoration-line: none;
		padding: 10px 0px;
		line-height: 1.8;
	}

	.sitepolicytitle {
		font-size: 0.4rem;
		color: #D2D2D2;
		padding: 100px 0px 5px;
		border: 0px solid red;
	}

	.sitepolicy {
		font-size: 0.2rem;
		color: #D2D2D2;
		padding: 0px 0px 0px;
		border: 0px solid red;
	}

	/* news
	------------------------------------------------------*/
	/* 2025-05-14 .PATH佐藤 追記分　ここから */
	.news {
		padding: 115px 0px 0px;
	}

  .news-section {
    padding-left: unset;
    padding-right: unset;
  }

	.news h2 {
		font-size: 1.2rem;
		margin-bottom: 50px;
	}

	.news-section h2 {
		font-size: 1.3rem;
	}

	.news__wrapper {
		width: 100%;
    padding-left: 10%;
    padding-right: 10%;
  }

	.news__wrapper .news-list a {
		gap: 15px;
	}

	.news-list {
		padding-bottom: 60px;
	}


	.news-list__link {
		flex-direction: column;
	}

	.news-list-thumb {
		display: block;
		width: 100%;
	}

	.news-list-content time {
		font-size: 0.625rem;
	}

	.news-list-content .news-list-title {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.news-list-content .news-list-lead {
		font-size: 0.8rem;
	}

	.news__wrapper .btn {
		text-align: center;
	}

	.news__wrapper .btn a {
		display: inline-block;
		font-size: 0.8rem;
		color: #D2D2D2;
		margin-bottom: 75px;
	}

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

.wp-pagenavi {
	gap: 10px;
	padding-bottom: 50px;
	padding-top: unset;
}

.wp-pagenavi .previouspostslink {
	width: 20px;
	height: 20px;
}

.wp-pagenavi .page {
	font-size: 0.8rem;
	width: 25px;
	height: 25px;
	padding-top: 5px;
}

.wp-pagenavi .current {
	font-size: 0.8rem;
	width: 25px;
	height: 25px;
	padding-top: 5px;
}

.wp-pagenavi .nextpostslink {
	width: 20px;
	height: 20px;
}

/* works詳細ページ */
body.single .category {
	padding: 70px 0 10px;
}

/* news詳細ページ */
body.single .news-list-content {
	padding-left: unset;
	padding-top: 70px;
}

body.single .news-list-title {
	font-size: 1.2rem;
}

body.single time {
	font-size: 0.5rem;
}

body.single .news__category {
	font-size: 0.5rem;
}

body.single .pagination {
	gap: 20px;
	padding-bottom: 50px;
}

body.single .pagination__center a{
	font-size: 0.5rem;
	white-space: nowrap;
	height: 20px;
	width: unset;
	padding: 0 10px;
  line-height: 1px;
}

body.single .pagination__arrow a{
	font-size: 0.5rem;
  height: 20px;
}
body.single .pagination__arrow--prev a {
  padding-right: 12px;
}
body.single .pagination__arrow--next a {
  padding-left: 22px;
}

body.single .pagination__arrow--prev a::before {
	width: 5px;
	height: 5px;
	margin-left: 13px;
  margin-right: 10px;
  margin-top: -3px;
}

body.single .pagination__arrow--next a::after {
	width: 5px;
	height: 5px;
	margin-right: 16px;
  margin-left: 10px;
  margin-top: -3px;
}

body.single .pagenation {
  gap: 20px;
}

.post__inner {
  width: 86%;
}

	/* 2025-05-14 .PATH佐藤 追記分　ここまで */

	/* work page
	------------------------------------------------------*/

	h3 {
		font-weight: 300;
		font-size: 1rem;
	}

	.work-info {
		position: relative;
		border: 0px solid #fff;
		font-weight: 100;
		font-size: 0.6rem;
		color: #D2D2D2;
		top: 120px;
		height: 100px;
		width: 100%;
		padding: 25px;
		line-height: 1.7;
	}

	.work-video {
		position: relative;
		background-color: black;
		margin: 110px 0px 50px;
		padding: 0px;
		border: 0px solid white;
	}

	.capture-container {
		display: grid;
		grid-template-columns: 50% 50%;
		justify-content: center;
		gap: 15px;
		padding: 0px 30px 100px;
	}
}
