@media (max-width: 767px) {
	
	/* components breadcrumb */
	
	.breadcrumb ul {
		font-size: 1.1rem;
		margin: 12px 0;
	}
	
	/* components header */
	
	.header-logo {
		width: 130px
	}
	.hamburger-menu-btn {
		width: 36px;
	}
	.hamburger-menu-btn::after {
		width: 20px;
	}
	.header-nav-modal {
		padding: 0 40px;
	}
	.header-nav-modal-inner {
		width: 100%;
	}
	.header-nav-modal-inner a {
		font-size: 3.8rem;
		border-bottom: 1px solid #777777;
	}
	.header-nav-modal-arrow {
		display: none;
	}
	
	/* 	component footer */
	
	.footer-logo {
		width: 90px;
	}
	.footer-wrap {
		flex-direction: column;
		align-items: center;
		padding: 30px 40px;
	}
	.footer-nav {
		display: none;
	}
	.copywrite {
		font-size: 1.2rem;
		margin-top: 30px;
	}
	
	/* 	base layout */
	
	.border-container {
		padding-top: 103px;
	}
	.inner-container {
		padding: 0 10px;
	}
	.page-container {
		padding-bottom: 183px;
	}
	
	/* pages home */
	
	.top-button {
		font-size: 1.3rem;
	}
	.right {
		right: 7%;
	}
	.left {
    	left: 7%;
	}
	.FV-pattern-wrap {
		height: calc(100vh - 103px - 3.5vw);
	}
	.FV-pattern-wrap-inner img {
    	min-width: 89px;
	}
	.bottom {
		height: 3.5vw;
	}
	.bottom a {
		position: absolute;
		bottom: 200%;
	}
	
	/* 	pages about */
	
	.co-icon-box {
		max-width: 100%;
		margin: 40px auto 40px;
	}
	.company-profile {
		padding: 40px 20px 0 20px;
	}
	.company-history {
		padding: 40px 20px;
		margin-bottom: 0;
	}
	.about-us {
		padding: 40px 20px;
	}
	.about-us h2 {
		font-size: 3.0rem;
	}
	.about-us .sub-title {
		margin-top: 10px;
	}
	.about-us p {
    	font-size: 1.4rem;
	}
	.philosophy {
		padding: 40px 20px;
	}
	.philosophy h2 {
		font-size: 2.2rem;
	}
	.our-mission {
    	margin-top: 40px;
	}
	.philosophy-wrap h3 {
    	font-size: 1.5rem;
	}
	.our-mission-target {
		width: 177px;
		margin: 25px auto 33px;
	}
	.our-mission p {
    	font-size: 1.4rem;
	}
	.our-vision {
		padding-bottom: 40px;
    	margin: 48px auto 40px; 
	}
	.our-vision-target {
		font-size: 1.8rem;
		margin: 20px 0 14px;
	}
	.our-vision p {
    	font-size: 1.4rem;
	}
	.our-value {
   		margin-top: 40px;
	}
	.our-value-target-wrap {
    	margin-top: 20px;
	}
	.our-value-target {
    	font-size: 1.8rem;
	}
	.our-value-target-wrap p {
    	margin-top: 14px;
	}
	.our-value p {
    	font-size: 1.4rem;
	}
	.our-value-text {
    	margin-top: 40px;
	}
	.company-profile h2 {
		font-size: 2.2rem;
	}
	.profile-columns {
		display: grid;
		grid-template-columns: 1fr;
		margin-top: 30px;
	}
	.profile-columns dl {
    	padding: 13px 0 6px;
		font-size: 1.4rem;
	}
	.profile-columns dd {
   	 	margin-top: 3px;		
	}
	.company-history h2 {
		font-size: 2.2rem;
	}
	.history-list {
		margin-top: 20px;
	}
	.history-list .year {
		font-size: 1.4rem;
	}
	.history-list .content {
		padding: 7px 0 12px 20px;
		margin: 7px 0 0 20px;
		font-size: 1.4rem;
	}
	
	/* pages news */
	
	.news {
		padding: 40px 20px 35px 20px;
	}
	.news h1 {
		font-size: 3.0rem;
	}
	.sub-title {
		font-size: 1.3rem;
	}
	.news-filter {
		margin-top: 40px;
		flex-wrap: wrap;
		justify-content: start;
		font-size: 1.4rem;
	}
	.news-list {
		margin: 38px auto 0;
	}
	.news-item a {
		display: flex;
		flex-wrap: wrap;
		padding: 10px 0 12px 0;
	}
	.news-date {
		font-size: 1.3rem;
	}
	.news-category {
		margin-left: 14px;
		font-size: 1.4rem;
	}
	.news-title {
		padding-left: 0;
		margin-top: 8px;
  		width: 100%;
	}
	.news-arrow {
		display: none;
	}
	.pagination {
		margin-top: 30px;
	}
	.pagination ul {
		font-size: 1.4rem;
	}
	
	/* 	pages news-post */
	
	.news-post-fv {
		padding: 40px 0 80px;
	}
	
	.news-post-fv h1 {
    	font-size: 3.0rem;
	}
	
	.news-post-fv .sub-title {
        font-size: 1.3rem;
		margin-top: 11px;
    }
	
	.news-post-content {
		margin: 0 10px;
   	 	border-radius: 3px;
		padding: 25px 10px 40px;
	}
	
	.news-post-inner > * {
    	margin-top: 0px;
	}
	
	.news-post-inner h2 {
		font-size: 1.8rem;
		line-height:1.6;
		margin-top: 15px;
		padding-bottom: 19px;
	}
	
	.news-post-inner p {
		font-size: 1.4rem;
		line-height: 1.8;
		margin-top: 30px;
	}
	
	.news-post-inner .wp-block-image {
		margin: 30px 20px 0;
	}
	
	.news-post-inner {
		padding-bottom: 30px;
	}
	
	.back-link {
		font-size: 1.4rem;
		line-height: 1.8;
	}
	
	.news-post-content-wrap {
    	margin-bottom: 0px;
	}
	
	/* pages projects */
	
	.project-series-link h2 {
		font-size: 3.5rem;
	}
	.sub-title {
    	font-size: 1.3rem;
    	margin-top: 15px;
	}
	.title-wrap {
    	padding-bottom: 20px;
	}
	.project-series-link {
		padding: 40px 70px;
	}
	.project-series-link p {
		margin-top: 25px;
	}
	.others-series-link {
		margin-bottom: 0;
	}
	.project-series-link-arrow {
    	width: 15px;
    	right: 20px;
	}
	
	/* 	pages projects-list */
	
	.fv-bg-wrap {
		padding: 30px 0 50px;
	}
	
	.fv-bg-wrap h1 {
    	font-size: 3.5rem;
	}
	
	.fv-sub-title {
    	margin-top: 15px;
		font-size: 1.3rem;
	}
	
/* 	.fv-text-wrap {
   		padding-top: 25px;
	} */
	
	.series-description {
		padding: 0 20px;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	
	.fv-text-wrap {
		margin: -30px auto 0;
		padding-top: 25px;
	}
	
	.fv-links-wrap {
		grid-template-columns: 1fr;
		margin-top: 30px;
		border-bottom: none;
		padding: 16px 10px 0;
	}
	
	.fv-next-link {
		padding: 14px 10px;
		border-bottom: 1px solid #cecece;
		font-size: 1.4rem;
	}
	
	.fv-link-list {
		border-left: none;
		padding: 0;
	}
	
	.fv-link-list li {
    	border-bottom: 1px solid #cecece;
		font-size: 1.4rem;
	}
	
	.archive {
		width: 92%;
		margin: 0 auto;
		padding: 55px 0 0;
	}
	
	.archive h2 {
		font-size: 2rem;
	}
	
	.archive-wrap {
		grid-template-columns: 1fr 1fr;
		gap: 0 20px;
		margin-top: 25px;
	}
	
	.archive-item:nth-child(3n + 2) {
    	margin: 0;
	}
	
	.archive-item:nth-child(2n) {
    	margin: 30px 0 0;
	}
	
	.project-name {
		font-size: 1.3rem;
		margin-top: 7px;
	}
	
	/* 	modal */
	
	.project-modal-wrap {
		padding: 65px 15px;
	}
	
	.project-modal-fv {
    	padding: 65px 0;
 	}
	
	.project-modal-fv h2 {
		font-size: 2.4rem;
	}
	
	.modal-sub-title {
		font-size: 1.4rem;
		margin-top: 13px;
	}
	
	.modal-content {
    	padding: 25px 20px 40px;
	}
	
	.modal-content h2 {
		font-size: 1.8rem;
		line-height: 1.8;
		font-weight: bold;
	}
	
	.modal-content-inner {
    	padding-bottom: 30px;
	}
	
	.modal-content-text {
    	padding-bottom: 30px;
		margin-top: 15px;
	}
	
	.modal-content p {
		line-height: 1.8;
	}

	.modal-image-wrap {
		margin-top: 30px;
	}
	
	.image-block {
    	gap: 2px;
    	margin-bottom: 2px;
	}
	
	.image-block:nth-of-type(odd) .left {
		gap: 2px;
	}
	
	.image-block:nth-of-type(even) .right {
		gap: 2px;
	}
	
	.image-block:nth-of-type(odd) .left img, .image-block:nth-of-type(even) .right img {
    	height: calc(50% - 1px);
	}
	
	.project-modal-info {
		grid-template-columns: 1fr;
	}
	
	.project-info-name {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	
	.project-info-content {
		padding: 20px 20px 0;
		border-left: none;
	}	

	/* 	pages 404 */
	
	.error-img {
    	width: 193px;
	}
	.error-text {
		font-size: 2rem;
		margin-top: 16px;
	}
	.error-wrap a {
		font-size: 1.4rem;
		margin-top: 46px;
	}
}


.FV-pattern-wrap {
	z-index: 10;
}
.video {
	z-index: 20;
}
.FV-pattern-wrap-inner canvas {
	max-height: 100%;
}
#gl_canvas {
	top: -20px!important;
    transform: scale(0.9);
}
/* #screen_logger {
	z-index: 50;
} */
#gl_container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1000px;
	max-height: 100%;
	overflow: hidden;
	z-index: 20;
}
#datgui {
	position: fixed;
	left: 0px;
	top: 50px;
	z-index: 400;
}
#title {
	position: absolute;
/* 	top: 0;
	left: 0; */
	top: calc(50% + 142px);
    left: calc(50% - 130px);
	width: 100%;
	height: 1000px;
	max-height: 100%;
	background-image: url("../../../svg/title.svg");
	background-repeat: no-repeat;
/* 	background-position: 49% 73%; */
	background-size: clamp(100px, 50vw, 250px) auto;
	opacity: 0;
	z-index: 20;
}
@media (max-width: 767px) {
	#gl_canvas {
		top: -60px!important;
		transform: scale(0.72);
	}
	#title {
		transform: scale(0.9);
		top: calc(50% + 35px);
		left: calc(50% - 120px);
	}
}

.txt_skip {
	position: absolute;
	display: inline-block;
    bottom: 110px;
    right: 115px;
    padding: 2px 15px 5px 15px;
    border: solid 1px #ddd;
    border-radius: 60px;
/* 	z-index: 300; */
}
/* .txt_skip:hover {
	cursor: pointer;
} */
@media (max-width: 767px) {
	.txt_skip {
		right: unset;
		left: 50%;
		bottom: 70px;
		transform: translate(-50%,0);
	}
}

/* 調整 */

.top-button {
	z-index: 1000;
}
.site-header {
	background: #fafafa;	
}
.about-us > p {
	margin-top: 2rem;
}
.projects-fv .fv-text-wrap {
	margin: -45px auto 0;
    padding-top: 55px;
}
@media (max-width: 767px) {
	.fv-text-wrap {
        margin: -20px auto 0;
        padding-top: 22px;
    }
}
.history-list .year {
	color: #437f9f;
}
.project-modal-wrap .container {
	max-width: 1080px;
}
.project-modal .modal-image-wrap .image-block {
	margin-top: 5px;
}
.project-modal .modal-image-wrap .image-block:first-child {
	margin-top: 60px;
}
.project-modal .modal-image-wrap .horizontal {
	height: auto;
}
.project-modal .modal-image-wrap .square-2-vertical-1 {
	grid-gap: 5px;
}

@media (max-width: 767px) {
	.top-button.right,.top-button.right a,.top-button.right a span {
/* 		-webkit-writing-mode: sideways-lr;
		-ms-writing-mode: sideways-lr;
		writing-mode: sideways-lr; */
		-webkit-writing-mode: unset;
		-ms-writing-mode: unset;
		writing-mode: unset;
	}
	.top-button.right span {
		display: block;
	}
	.top-button.right a {
		transform: rotate(-90deg);
	}
	
}



