@charset 'UTF-8';

/* ------------------------------------------------

* Style Index
	#. Cores
	#. Layouts    :prefix[l-]
	#. Components :prefix[c-]
	#. Units
	#. Utilities  :prefix[u-]
	// #. Functions :prefix[js-]

------------------------------------------------ */
/* ------------------------------------------------
# Cores
------------------------------------------------ */
/*!
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

:root {
    --orange: #D57070; /*#e63e44*//*rgb 230 62 67 */
}

body {
	line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	color: #272727;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

* {
	box-sizing: border-box;
}

*:before,
*:after {
	box-sizing: inherit;
}
/* 共通部分
------------------------------- */
html {
	font-size: 62.5%;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
}
body {
	font-size: 1.6rem;
	font-family: /*"forma-djr-text",*/ 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-weight: 300;
	font-style:normal;
	line-height: 1.8;
	letter-spacing: 1px;
	color: #272727;
	-webkit-font-feature-settings: 'palt' 1;
	font-feature-settings: 'palt' 1;
	-webkit-text-size-adjust: 100%;
	background:#fff;
	position: relative;
	/*cursor: none;*/
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration:none;
}

img {
    max-width: 100%;
}
h1{
	
}
ul{
	list-style: none;
	flex-wrap: nowrap;	
}
html, body {
  height: 100%;
}
/*heading*/

h1{
	/*font-family: "Castoro", sans-serif;*/
	font-weight: 500;
	font-style: normal;
	font-size: 2.5rem;
	margin-bottom: 0em;
	letter-spacing: 2px;
}
h2{
	/*font-family: "Castoro", sans-serif;*/
	font-weight: 500;
	font-style: normal;
	font-size: 2.3rem;
	letter-spacing: 2px;
}
h3{
	/*font-family: "Castoro", sans-serif;*/
	/*font-weight: 400;*/
	font-style: normal;
	/*text-align: center;*/
	font-size: 2.2rem;
	letter-spacing: 2px;
}
h4{
	/*font-family: "Castoro", sans-serif;*/
	/*font-weight: 400;*/
	font-style: normal;
	/*text-align: center;*/
	font-size: 2rem;
}
h5{
	/*font-family:"forma-djr-text", 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;*/
	font-weight: 400;
	font-style:normal;
	font-size: 2rem;
	margin-bottom: 1em;
	line-height: 1.8;
	letter-spacing: 2px;
}
time{
	/*font-family: "Oswald", sans-serif;*/
  	font-optical-sizing: auto;
	/*color: #bbb;*/
}


/*text*/

@media screen and (max-width: 1025px) {
	body {
		font-size: 1.5rem;
	}
	h1{
		font-size: 2rem;
	}
	h2{
		font-size: 1.9rem;
	}
	h3{
		font-size: 1.7rem;
	}
	h4{
		font-size: 1.7rem;
	}
}
@media screen and (max-width: 740px) {
	body {
		font-size: 1.3rem;
	}
	h1{
		font-size: 1.9rem;
	}
	h2{
		font-size: 1.8rem;
	}
	h3{
		font-size: 1.6rem;
	}
	h4{
		font-size: 1.6rem;
	}
}




/* font */

/* <weight>: Use a value from 100 to 900
   <uniquifier>: Use a unique and descriptive class name */

.noto-sans-jp-400 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/* <weight>: Use a value from 300 to 700*/
/* <uniquifier>: Use a unique and descriptive class name*/

.quicksand-700 {
  font-family: "Quicksand", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;

}

.momo-trust-display-regular {
  font-family: "Momo Trust Display", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.supermercado-one-regular {
  font-family: "Supermercado One", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/* <weight>: Use a value from 200 to 1000
 <uniquifier>: Use a unique and descriptive class name */

.nunito-400 {
  font-family: "Nunito", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.fjalla-one-regular {
  font-family: "Fjalla One", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.lato-thin {
  font-family: "Lato", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.lato-light {
  font-family: "Lato", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.lato-regular {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.lato-bold {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.lato-black {
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.lato-thin-italic {
  font-family: "Lato", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.lato-light-italic {
  font-family: "Lato", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.lato-regular-italic {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.lato-bold-italic {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.lato-black-italic {
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}

.staatliches-regular {
  font-family: "Staatliches", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.alana{
	font-family: "alana", sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	font-size: 5vw;
}

.text5{
  font-family: "Momo Trust Display", sans-serif;
  font-weight: 400;
  font-style: normal;
}

#menu{
	font-family: "Momo Trust Display", sans-serif;
    font-weight: 400;
    font-style: normal;
}



#container{
	/*overflow: hidden;*/
}
li{
	list-style: none;
}
.section1{
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	display: grid;
	align-content: center;
	align-items: center;
	position: relative;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
}

.section0{
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	background:#fff;
	display: grid;
	align-content: center;
	align-items: center;
	position: fixed;
	z-index: -1;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
}
.section4{
	width: 100vw;
	height: auto;
	margin-top: -20vh;
	padding-bottom: 40vh;
	/*height: 100vh;*/
}
.section5{
	
		padding-bottom: 30vh;
	width: 100vw;
	position: relative;
	overflow: hidden;
}
@media screen and (min-width: 1025px) {
	.section5{
		padding-bottom: 40vh;
	}
}
.section6{
	width: 100vw;
	height: 100vh;
	margin-top: -20vh;
	position: relative;
	margin-bottom: 20vh;
	opacity: 0;
}
@media screen and (max-width: 1025px) {
	/*
	.section6{
		margin-top: -20vh;
	}
	*/
}
.section7{
	width: 100vw;
	/*height: 50vh;*/
	position: relative;
}
.section8{
	width: 100vw;
	height: 100vh;
	/*background: gray;*/
}
.section2{
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	display: grid;
	align-content: center;
	align-items: center;
	z-index: 2;
}
.section3{
	width: 100vw;
	height: 350vh;
}

.grid-wrapper{
	width: 100vw;
	height: 120vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
}

.grids{
	display: flex;
	flex-flow: wrap;
}

.grid-box{
	width: 5vw;
	height: 5vw;
	box-sizing: border-box;
	/*border: solid 1px #000;*/
	/*background: #aaa;*/
	display: grid;
	align-content: center;
	align-items: center;
	overflow: hidden;
}

.grid{
	width: 5vw;
	height: 5vw;
	/*opacity: 0.7;*/
	background: #eee;
	margin: auto;
}

@media screen and (max-width: 1025px) {
	.grid-box{
		width: 10vw;
		height: 10vw;
	}

	.grid{
		width: 10vw;
		height: 10vw;
	}
}


.card{
	width: 20%;
	height: auto;
	padding: 1em;
}
.image-wrapper{
	position: relative;
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
}
.image{
	aspect-ratio: 1 / 1;
	overflow: hidden;
	width: 20%;
	height: auto;
	
	/*transform: translate(-50%, -50%);*/
}
.image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kaigyo{
}
.images{
	display: flex;
	flex-wrap: wrap;
	
}

#load{
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	/*background: rgb(0 0 0 / 1);*/
	position: fixed;
	top: 0;
	left: 0;
	z-index: 12;
	
}

.counter-wrapper{
	width: 100vw;
	height: 100vh;
	position: absolute;
	display: flex;
	align-content: center;
	align-items: center;
	top: 0;
	left: 0;
	z-index: 10;
}

.counter{
	height: 5rem;
	overflow: hidden;
	color: #fff;
	width: 30vw;
	
	/*background: red;*/
	/*font-size: 2em;*/
}

@media screen and (max-width: 1025px) {
	.counter{
		width: 100%;
		margin-right: 5vw;
	}
}
.load-text{
	font-family: "Quicksand", sans-serif;
  	font-optical-sizing: auto;
  	font-weight: 700;
  	font-style: normal;
	font-size: 1.5em;
	height: 1.5em;
	padding-left: 5vw;
	white-space: nowrap;
}
.load-persentage{
	font-size: 4.8rem;
	height: 5rem;
	line-height: 1;
	color: #272727;
}
.slot-wrapper{
	display: flex;
	width: fit-content;
	margin-left: auto;
}

.slot{
	line-height: 1;
	/*background: blue;*/
	color: #272727;
	font-family: "Quicksand", sans-serif;
 	font-optical-sizing: auto;
 	font-weight: 700;
 	font-style: normal;
	text-align: center;
	font-size: 4.8rem;
	height: 5rem;
}
.slot1{
	position: relative;
}
.slot2{
	position: relative;
}
.number-wrapper1{
	position: absolute;
}

.number-wrapper2{
	position: absolute;
}

.dj-lottie{
	margin: 0 auto;
}

.wave{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -4;
}
.waves{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -4;
	/*filter: grayscale(100%);*/
}
.typing{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 60%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

#logo{
	position: fixed;
	width: 200px;
	height: 33.33px;
	top: 30px;
	left: 2vw;
	/*transform: translate(-50%, -50%);*/
	z-index: 5;
	mix-blend-mode:difference;
	
}


@media screen and (max-width: 1025px) {
	.wave{	
		left: 50%;
	}
	
	#logo{
		width: 180px;
		height: 30px;
		top: 20px;
	}
}

.gallery2{
	display:grid;
	align-content: center;
	align-items: center;
	margin: auto;
}

.text{
  	width: fit-content;
	text-align: left;
  	font-size: 2vw;
  	font-weight: 500;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
  background: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(230 230 230 / 0%) 50%, rgb(230 230 230 / 0%) 100%);
  background-size: 300%;
  background-position: 100% 50%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
background-repeat: no-repeat;
	
}

@media screen and (max-width: 1025px) {
	
	.text{
  		font-size: 4.5vw; 
	}
	
}

.textanime{
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translate(-50%, -50%);
	
}


/*ブラー*/

.back-blur2{
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	opacity: 0;
	z-index:-1;
}
.back-blur{
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 50%;
	top: 50%;
	backdrop-filter: blur(0px);
	transform: translate(-50%, -50%);
	z-index:-1;
}

.loop-svg {
	/* デフォルトだとSVGの線の開始位置が90°の地点からになるので、0°の地点にまで戻してやる。*/
	fill: transparent;
	position: absolute;
	transform: translate(-50%, -50%) rotate(-90deg)  scale(1, -1);
	top: 50%;
	left: 50%;
}
.indicator-loop{
	display: inline-block;
	margin: 10px;
	padding: 0;
	
}
.circle {
  stroke: #ccc;
  stroke-width: 1px;
  /*animation: circleAnim 2s forwards;*/
  fill: transparent;
  stroke-dasharray: 188px;
  stroke-dashoffset: 0px;
	mix-blend-mode: difference;
}
.circle2 {
  stroke: #ccc;
  stroke-width: 3px;

  /*animation: circleAnim 2s forwards;*/
  fill: transparent;
  stroke-dasharray: 188px;
  stroke-dashoffset: 0px;
	mix-blend-mode: difference;
}
.circle-wrapper{
	width: 60px;
	height: 60px;
	/*border: solid 1px #ccc;*/
	border-radius: 30px;
	display: grid;
	align-content: center;
	align-items: center;
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 3;
	mix-blend-mode: difference;
	
}
.circle-wrapper::before{
	content: 'SCROLL';
	color: #ccc;
	font-weight: 400;
	letter-spacing: 0.5px;
	line-height: 1;
	font-size: 1rem;
	position: absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	left:  50%;
	z-index: 3;
	mix-blend-mode: difference;
}




.text1-wrapper{
	position: relative;
	width: 90vw;
}
.text11{
	position: absolute;
	width: 90vw;
	padding: 5vw 5vw 3em;
	top: 0;
	left: 0;
}

.wipe01{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe02{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe03{
	font-size: 3em;
	line-height: 1;
}

.contents{
	
	width: 70%;
}

.contents p{
	
}

.flex-box1{
	display: flex;
	gap: 3em;
	margin-top: 3em;
	opacity: 0;
}

.split-wrapper4{
	background: orange;
	height: 3.1em;	
	overflow: hidden;
	margin-bottom: 1em;
	position: relative;	
}
.wipe01{
	transform: translate(0, 120%);
	font-size: 3em;
	line-height: 1;
}

.card{
	display: flex;
	opacity: 0;
	
	width: 100%;
	posiiton: relative;
	align-content: center;
	padding: 3.5em 5vw;
	overflow: hidden;
	border-bottom: solid 1px #000;
	background-size: 100% 100%;
	background-position: center;
	position: relative;
	background: linear-gradient(0deg, rgb(255 255 255 / 100%) 0%, rgb(255 255 255 / 100%) 50%, rgb(216 112 112  / 100%) 50%, rgb(216 112 112 / 100%) 50%,rgb(0 0 0 / 100%) 50%, rgb(0 0 0 / 100%) 50%, rgb(216 112 112 / 100%) 50%, rgb(216 112 112 / 100%) 50%,rgb(255 255 255 / 100%) 50%, rgb(255 255 255 / 100%) 100%) ;
}

.back{
	position:absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	transform-origin: center;
	height: 0%;
	z-index: 0;
	background: linear-gradient(0deg, rgb(255 255 255 / 100%) 0%, rgb(255 255 255 / 100%) 0%, rgb(216 112 112 / 100%) 0%, rgb(216 112 112 / 100%) 10%,rgb(0 0 0 / 100%) 10%, rgb(0 0 0 / 100%) 90%, rgb(216 112 112 / 100%) 90%, rgb(216 112 112 / 100%) 100%,rgb(255 255 255 / 100%) 100%, rgb(255 255 255 / 100%) 100%);
	
}
.numbers{
	color: transparent;
	height: auto;
	padding-right: 0.5em;
	line-height: 1;
	font-size: 5em;
	display: grid;
	align-content: center;
	-webkit-text-stroke: 2px #fff;
	mix-blend-mode: difference;
}

ul li.numbers:first-child{
	border-top: solid 1px #000;
}

.card-contents{
	display: grid;
	align-content: center;
	align-items: center;
	width: 80vw;
	mix-blend-mode: difference;
	
}

.text2{
	font-size: 1em;
	margin-top: 0em; 
	line-height: 1.5;
	color:#fff;
	
}
.title2{
	display: flex;
	font-size: 3em;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	line-height: 1;
	color:#fff;
}

.split{
	/*opacity: 0;*/
	/*
	transform-origin: bottom;
	transform: rotateX(90deg);
	font-size: 2rem;
	line-height: 1;
	padding: 0;
	margin: 0;
	*/
}


.heading{
	color: #000;
	/*font-size: 3vw;*/
	line-height: 1;
	margin: 1em 0 3em;
	text-align: center;
	width: 100vw;
	/*height: 7vw;*/
	position: relative;
	/*opacity: 0;
	filter: blur(10px);*/
}


.headline{
	margin: auto;
}


.heading-line{
	position: absolute;
	transform: translate(-50%, 0);
	left: 50%;
	bottom: 0;
	margin: auto;
	opacity: 0.5;
}

.split{
	display: inline-block;
	/*text-transform: uppercase;*/
}
.splitss{
	display: inline-block;
	/*background: red;*/
	/*text-transform: uppercase;*/
}
/*scroll heading*/


.text1-wrapper{
	position: relative;
	width: 90vw;
}
.text11{
	position: absolute;
	width: 90vw;
	padding: 5vw 5vw 3em;
	top: 0;
	left: 0;
}

.wipe01{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe02{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe03{
	font-size: 3em;
	line-height: 1;
}

.contents{
	font-size: 1.3rem;
	width: 70%;
}

.contents p{
	margin-bottom: 1em;
}

.flex-box1{
	display: flex;
	gap: 3em;
	margin-top: 3em;
	opacity: 0;
}

.split-wrapper4{
	height: 3.1em;	
	overflow: hidden;
	margin-bottom: 1em;
	position: relative;	
}
.wipe01{
	transform: translate(0, 120%);
	font-size: 3em;
	line-height: 1;
}


.scroll-heading-wrapperB{
	width: 90vw;
	height: 40vh;
	position: relative;
}
.scroll-headingB{
	mix-blend-mode:hard-light;
}
.text-wrapper{
	display:inline-block;
	align-content: center;
	align-items: center;
	padding: 10vw;
	position: relative;
	margin: auto;
	width: fit-content;
	overflow: hidden;
}

.split-wrapper2{
	height: 2.1em;
	overflow: hidden;
	margin-bottom: 1em;
	text-align: center;
}


.blur-beta{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
/*
	backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
	*/
	z-index: 2;
	display: none;
}

.column1{
	display: flex;
	width: 100vw;
	position: absolute;
	top: 20vh;
	left: 0;
	color: #fff;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.gallery1{
	width: 100%;
	margin-bottom: 10vh;
}

.scroll-logo{
	width: 100%;
	font-size: 10vw;
	line-height: 1;
	padding: 0;
	margin: 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -5;
	
}

.logo1{
	top:50%;
	background: #fff;
	z-index: 0;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
	
	
}
.logo2{
	top:40%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logo3{
	top:60%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
	
}
.logo4{
	top:30%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logo5{
	top:70%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logo6{
	top:20%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logo7{
	top:80%;
	background: #fff;
color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}


@media screen and (max-width: 1025px) {
	
	.scroll-logo{
		font-size: 18vw;
	}
	.gallery1{
		margin-top: -10vw;
	}
	.numbers{
		width: 17vw;
		font-size: 12vw;
	}
	.title2{
		font-size: 8.5vw;
	}
}


.parallax-wrapper{
	width: 100vw;
	height: 80vh;
	position: relative;
}


.parallax1{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 40%;
	left: 20%;
	overflow: hidden;
	border-radius: 1em; 
}
.photo001{
	width: 150%;
	height: 150%;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax1 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax2{
	height: 25vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -20%;
	left: 10%;
	border-radius: 1em; 
}

.photo002{
	width: 150%;
	height: 150%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax2 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax3{
	height: 25vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -20%;
	right: 5%;
	border-radius: 1em; 
}

.photo003{
	width: 160%;
	height: 100%;
	top: 50%;
	left: 30%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax3 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax4{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 20%;
	right: 30%;
	overflow: hidden;
	border-radius: 1em; 
}
.photo004{
	width: 150%;
	height: 150%;
	top: 50%;
	right: -70%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax4 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax5{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
	border-radius: 1em; 
}
.photo005{
	width: 200%;
	height: 200%;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax5 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1025px) {
	.parallax1{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 30%;
	left: 10%;
	overflow: hidden;
}
.photo001{
	width: 150%;
	height: 150%;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax2{
	height: 40vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: 0%;
	left: -5%;
}

.photo002{
	width: 150%;
	height: 150%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax3{
	height: 40vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -10%;
	right: -10%;
}

.photo003{
	width: 160%;
	height: 100%;
	top: 50%;
	left: 30%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax4{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 20%;
	right: 30%;
	overflow: hidden;
}
.photo004{
	width: 150%;
	height: 150%;
	top: 50%;
	right: -70%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax5{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
}
.photo005{
	width: 200%;
	height: 200%;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

}

.scroll-heading-wrapper{
	width: 100vw;
	height: 40vh;
	position: relative;
	
}
.scroll-heading{
	mix-blend-mode:hard-light;
}
.text-wrapper{
	display:inline-block;
	align-content: center;
	align-items: center;
	padding: 10vw;
	position: relative;
	margin: auto;
	width: fit-content;
	overflow: hidden;
	background: blue;	
}

.split-wrapper2{
	height: 2.1em;
	overflow: hidden;
	margin-bottom: 1em;
	text-align: center;
}

.gallery1{
	width: 100%;
}

.scroll-logoB{
	width: 100%;
	font-size: 10vw;
	line-height: 1;
	padding: 0;
	margin: 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -5;
}
@media screen and (max-width: 1025px) {
	.scroll-logoB{
		font-size: 18vw;
	}
}

.logoB1{
	top:50%;
	background: #fff;
	z-index: 0;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB2{
	top:40%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB3{
	top:60%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB4{
	top:30%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB5{
	top:70%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB6{
	top:20%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoB7{
	top:80%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}

.caption{
	position: absolute;

	top: 40vh;
	left: 50%;
	transform: translate(-50%, 0);
	text-align: center;
	z-index: 5;
}

.gradation-split{
	position: absolute;
	top: 35vh;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 5;
	
	display:grid;
	align-content: center;
	align-items: center;
	margin: auto;
}
.gradation-splitB{
	position: absolute;
	top: 35vh;
	
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 2;
	margin: 0;
	padding: 0;
	display:grid;
	align-content: center;
	align-items: center;
}

.text3{
  	width: fit-content;
	text-align: left;
  	font-size: 1.3vw;
  	font-weight: 500;

	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
  background: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(0 0 0 / 10%) 50%, rgb(0 0 0 / 10%) 100%);
  background-size: 300%;
  background-position: 100% 50%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
background-repeat: no-repeat;
	
}

@media screen and (max-width: 1025px) {
	.test-wrapper{
	width: 61vw;
	
}

	.text3{
  		font-size: 3.1vw; 
	}
}


.monoclome {
	/*filter: grayscale(100%);*/
}

.center{
	text-align: center;
	margin: auto;
}

/*footer*/
.footer{
	width: 100vw;
	height: auto;
	
	
	background: #272727;
	overflow: hidden;
	position: relative;
	/*transform: translateY(-100px);*/
	/*background: rgba(255, 255, 255, 1);*/
	/*border-top: solid 1px #272727;*/
}
.footer-main{
	padding: 13vh  5vw 19.7vh;
	position: relative;
}
.lottie-footer-logo-wrapper{
	width: 60vw;
	height: 10.2857vw;
	margin: auto;
	/*filter: grayscale(100%);*/
	/*
	position: absolute;
	transform: translate(-50%, 0);
	top:-1.1vw;
	left: 50%;*/
	/*mix-blend-mode: difference;*/
	opacity: 1;
}

@media screen and (max-width: 1025px) {
	
	.footer{
		
		
	}
	.footer-main{
		padding: 17vh 5vw 19vh;
	}
	.lottie-footer-logo-wrapper{
	width: 80vw;
	height: 11.5555vw;
	margin: auto;
	/*
	position: absolute;
	transform: translate(-50%, 0);
	top:-1.1vw;
	left: 50%;
	/*mix-blend-mode: difference;*/
	opacity: 1;
}
}



/*border*/
.border-line{
	position: absolute;
	left: 0;
	top: 0;
	width: 100vw;
	height: 18.75vw;
}

/*section6*/
.scroll-heading-wrapperC{
	width: 90vw;
	height: 40vh;
	position: relative;
}

.scroll-headingC{
	mix-blend-mode:hard-light;
}

.scroll-logoC{
	width: 100%;
	font-size: 10vw;
	line-height: 1;
	padding: 0;
	margin: 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -5;
}

.logoC1{
	top:50%;
	background: #fff;
	z-index: 0;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC2{
	top:40%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC3{
	top:60%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC4{
	top:30%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC5{
	top:70%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC6{
	top:20%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoC7{
	top:80%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}

@media screen and (max-width: 1025px) {
	
	.scroll-logoC{
		font-size: 18vw;
	}
}

.gradation-splitC{
	position: absolute;
	top: 35vh;
	
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 2;
	margin: 0;
	padding: 0;
	display:grid;
	align-content: center;
	align-items: center;
}

.text4{
  	width: fit-content;
	text-align: center;
  	font-size: 1.3vw;
  	font-weight: 500;
margin: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
  background: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(0 0 0 / 10%) 50%, rgb(0 0 0 / 10%) 100%);
  background-size: 300%;
  background-position: 100% 50%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
background-repeat: no-repeat;
	
}

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

	.text4{
  		font-size: 3vw; 
	}
}

.border-line2{
	margin-top: -10vh;
}


.section10{
	width: 90vw;
	margin: auto;
	position: relative;
	overflow: hidden;
	padding-bottom: 20vh;
}
@media screen and (min-width: 1025px) {
	.section10{
		padding-bottom: 30vh;
	}
}

.section11{
	width: 90vw;
	margin: auto;
	position: relative;
	padding-bottom: 30vh;
	overflow: hidden;
}

.gallery01{
	width: 100%;
}
.gallery02{
	display: flex;
	gap: 0;
	flex-flow: wrap;
}
.photo0001{
	cursol: pointer;
	/*filter: grayscale(100%);*/
	width: calc(100% / 3);
	height: auto;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
}

ul li.photo0001:first-child{
	clip-path: polygon(0% 50%, 50% 50%, 50% 100%, 0% 100%);
}

ul li.photo0001:nth-child(2){
	clip-path: polygon(25% 0%, 75% 0%, 75% 50%, 25% 50%);
}

ul li.photo0001:nth-child(3){
	clip-path: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%);
}

.photo0001 img{
	transform-origin: center;
	width: 75%;
	height: 75%;
	margin-top: 12.5%;
	margin-left: 12.5%;
	object-fit: cover;
}

ul li.photo0001:first-child img{
	transform-origin: bottom left;
	margin-top: 25%;
	margin-left: 0%;
}

ul li.photo0001:nth-child(2) img{
	transform-origin: top center;
	margin-top: 0%;
	margin-left: 12.5%;
}

ul li.photo0001:nth-child(3) img{
	transform-origin: bottom right;
	margin-left: 25%;
	margin-top: 25%;
}

@media screen and (max-width: 1100px) {
	.photo0001{
		width: 50%;
	}
	
	ul li.photo0001:nth-child(2){
		clip-path: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%);
	}
	
	ul li.photo0001:nth-child(2) img{
		transform-origin: bottom right;
		margin-left: 25%;
		margin-top: 25%;
	}
	
	ul li.photo0001:nth-child(3){
		clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
	}
	ul li.photo0001:nth-child(3) img{
		transform-origin: center center;
		margin-top: 12.5%;
		margin-left: 12.5%;
	}
}


@media screen and (max-width: 740px) {
	.photo0001{
		width: 100%;
	}
	ul li.photo0001:first-child{
		clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
	}
	ul li.photo0001:first-child img{
		transform-origin: center center!important;
		margin-top: 12.5%;
		margin-left: 12.5%;
	}
	
	ul li.photo0001:nth-child(2){
		clip-path: polygon(25% 0%, 75% 0%, 75% 50%, 25% 50%);
	}
	ul li.photo0001:nth-child(2) img{
		transform-origin: top center;
		margin-top: 0%;
		margin-left: 12.5%;
	}
}



.scroll-heading-wrapperD{
	width: 100vw;
	height: 40vh;
	position: relative;
}

.scroll-headingD{
	mix-blend-mode:hard-light;
}

.scroll-logoD{
	width: 100%;
	font-size: 10vw;
	line-height: 1;
	padding: 0;
	margin: 0;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -5;
}

.logoD1{
	top:50%;
	background: #fff;
	z-index: 0;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD2{
	top:40%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD3{
	top:60%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD4{
	top:30%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD5{
	top:70%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD6{
	top:20%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}
.logoD7{
	top:80%;
	background: #fff;
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 2px #272727;
}

@media screen and (max-width: 1025px) {
	
	.scroll-logoD{
		font-size: 18vw;
	}
}


/*link*/
.main-pageling{
	cursor: pointer;
}


.article-wrapper{
	display: flex;
	flex-flow: wrap;
	align-items: flex-start;
	gap: 2%;
}


.article001{
	width: 32%;
	height: auto;
	margin-bottom: 4vw;
}

.article001 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.article001-img{
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	overflow: hidden;
	/*filter: grayscale(100%);*/
}

.article001-title{
	font-size: 1.3em;
	font-weight: 500;
	margin: 0.5em 0 0;
}

ul li.article001:nth-child(2){ 
	width: 66%;
}
ul li.article001:nth-child(6){
	width: 66%;
}

ul li.article001:first-child .article001-img{ 
	aspect-ratio: 1 / 1;
}

ul li.article001:nth-child(2) .article001-img{ 
	aspect-ratio: 3 / 2;
	
}

ul li.article001:nth-child(6) .article001-img{ 
	aspect-ratio: 16 / 9;
}

ul li.article001:nth-child(7) .article001-img{ 
	aspect-ratio: 1 / 1;
}

@media screen and (max-width: 1025px) {
	.article001{
		width: 49%;
		height: auto;
		margin-bottom: 5vw;
	}
	ul li.article001:nth-child(2){ 
		width: 100%;
	}
	

}

@media screen and (max-width: 740px) {
	.article001{
		width: 100%;
		height: auto;
		margin-bottom: 7vw;
	}
	ul li.article001:nth-child(2){ 
		width: 100%;
	}
	ul li.article001:nth-child(6){
		width: 100%;
	}
	
	

}


/*tag2*/

.tag2-wrapper{
	display: flex;
	flex: 1;
	flex-flow: wrap;
	gap: 5px;
	margin-top: 0.5em;
}
.tagcontent-wrapper3{
	display: flex;
	gap: 0px;
	flex: 1;
}

.tagcontent-wrapper32{
	margin-top: 0.2em;
}

.heading10{
	padding: 7px 0;
	width: 6em;
	font-size: 0.8em;
}

.tag2{
	padding: 0px 5px 0px 0px;
	font-size: 0.8em;
	border-radius: 0px;
	line-height: 1.3;
	/*background: #ddd;*/
	
}
.tag2::before{
	content: '#';
	padding-right: 0.3em;
}

@media screen and (max-width: 1025px) {
	.heading10{
		width: 100%;
		padding: 0px 0;
	}
	
	.tag2{
	padding: 0px 5px 0 0;
	font-size: 0.8em;
	border-radius: 0px;
	/*background: #ddd;*/
	
}
	
	.tagcontent-wrapper3{
		flex-flow: wrap;
		
	}
	
	.tagcontent-wrapper32{
		margin-top: 1em;
	}
}


/*link*/
.main-pageling{
	cursor: pointer;
}


/*arrow*/

.link-arrow{
	width: 25px;
	height: 25px;
	position: absolute;
	transform: translate(0, -50%);
	right: 0;
	top: 50%;
	overflow: hidden;
}
.prev-arrow::before{
	transform: translate(0, -50%) rotate(-45deg);
	left: 20px;
}

.back-arrow{
	position: absolute;
	transform: translate(0, -50%);
	width: 25px;
	height: 25px;
	top: 50%;
	right: 0;
	overflow: hidden;
}

ul li.back-arrow:nth-child(2){
	position: absolute;
	transform: translate(0, -50%);
	width: 25px;
	height: 25px;
	top: 50%;
	right: 100%;
	overflow: hidden;
	
}

ul li.back-arrow:nth-child(2){
	position: absolute;
	transform: translate(0, -50%);
	width: 25px;
	height: 25px;
	top: 50%;
	right: 200%;
	overflow: hidden;
	
}
.back-arrow::before{
	position: absolute;
	content: '';
	border-top: solid 3px #272727;
	border-left: solid 3px #272727;
	transform: translate(0, -50%) rotate(135deg);
	top: 50%;
	right: 5px;
	width: 20px;
	height: 20px;
}

.back-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	right: 5px;
	width: 20px;
	height: 3px;
	border-top: solid 3px #272727;
}


@media screen and (max-width: 1025px) {
	
	
	.prev-arrow{
		padding-left: 0%;
	}
	.recommend-box{
		gap: 1em;
	}
	
	.prev-arrow{
		text-align: left;
	}
	.next-arrow{
		text-align: right;
	}
	
	/*arrow*/
	
	.link-arrow{
	width: 20px;
	height: 20px;
	position: absolute;
	transform: translate(0, -50%);
	right: 0;
	top: 50%;
	overflow: hidden;
}
.prev-arrow::before{
	transform: translate(0, -50%) rotate(-45deg);
	left: 15px;
}

.back-arrow{
	position: absolute;
	transform: translate(0, -50%);
	width: 20px;
	height: 20px;
	top: 50%;
	right: 0;
	overflow: hidden;
}

ul li.back-arrow:nth-child(2){
	position: absolute;
	transform: translate(0, -50%);
	width: 20px;
	height: 20px;
	top: 50%;
	right: 100%;
	overflow: hidden;
	
}

ul li.back-arrow:nth-child(2){
	position: absolute;
	transform: translate(0, -50%);
	width: 20px;
	height: 20px;
	top: 50%;
	right: 200%;
	overflow: hidden;
	
}
.back-arrow::before{
	position: absolute;
	content: '';
	border-top: solid 3px #272727;
	border-left: solid 3px #272727;
	transform: translate(0, -50%) rotate(135deg);
	top: 50%;
	right: 5px;
	width: 20px;
	height: 20px;
}

.back-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	right: 5px;
	width: 20px;
	height: 3px;
	border-top: solid 3px #272727;
}
	
	
}
/*スプリット*/
.split-alphabet{
	position: absolute;
	transform: translate(0, -50%);
	left: 0; 
	top: 50%;
}

/*blog*/

.heading5{
	line-height: 1;
	/*
	font-family: "Quicksand", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	*/
}

.blog001-title{
	font-size: 1.3em;
	font-weight: 500;
	padding-top: 0.3em;
}
.blog-contents{
	padding: 1em 0 ;
}

@media screen and (max-width: 1025px) {
	.blog-contents{
		padding: 0 0;
	}
	
	ul li.blog001 .blog001-title{
		font-size: 1.3em;
	}
	
	ul li.blog001:first-child .blog-contents{
		padding: 1em 0;
		
	}
	
}

@media screen and (max-width: 740px) {
	
	ul li.blog001 .blog001-title{
		font-size: 1.1em;
	}
	
	ul li.blog001:first-child .blog001-title{
		font-size: 1.3em;	
	}
	
}

.blog-wrapper {
	display: flex;
	flex-flow: wrap;
	align-items: flex-start;
	gap: 2%;
}

.blog001{
	width: 32%;
	height: auto;
	margin-bottom: 4vw;
	opacity: 0;
}

.blog001-img{
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	/*filter: grayscale(100%);*/
}

.blog001-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1025px) {
	ul li.blog001{
	width: 100%;
	height: auto;
	margin-bottom: 1.5em;
	}

	ul li.blog001:last-child{
	margin-bottom: 4em;
	}
}


/*contact*/
.contact-link{
	width: 50%;
}


.pagelink-bar{
	width: 45vw;
	height: 3em;
	margin-right: 5vw;
	cursor: pointer;
	margin-left: auto;
	position: relative;
	overflow: hidden;
}
.pagelink-bar.no-margin{
	margin-right: 0vw;
}

.pagelink-bar.pagelink-bar-service{
	margin-top: 10vh;
}
.pagelink-bar.pagelink-bar-office{
	width: 25vw;
	margin-left: auto;
	margin-right: auto;
	margin-top: 3em;
	position: relative;
	overflow: hidden;
}

@media screen and (max-width: 1025px) {
	.pagelink-bar{
		width: 90vw;
		height: 3em;
		margin-right: 5vw;
		margin-left: auto;
		position: relative;
		overflow: hidden;
	}
	
	.pagelink-bar.pagelink-bar-office{
		width: 40vw;
		margin-top: 2.5em;
	}
}
@media screen and (max-width: 740px) {
	.pagelink-bar.pagelink-bar-office{
		width: 62vw;
		margin-top: 2.5em;
	}
}

/*blog*/
@media screen and (max-width: 1025px) {
	ul li.blog001:nth-child(2) .blog-wrapper,ul li.blog001:nth-child(3) .blog-wrapper{
		display: flex;
		gap: 2%
	}
	ul li.blog001:nth-child(2) .blog-contents,ul li.blog001:nth-child(3) .blog-contents{
		width: 58%;
		padding-left: 1%; 
	}
	ul li.blog001:nth-child(2) .blog001-img,ul li.blog001:nth-child(3) .blog001-img{
		width: 39%;
	}
	ul li.blog001:nth-child(2) .article001-title,ul li.blog001:nth-child(3) .article001-title{
		margin: 0 0 0.3em;
	}
	
}

@media screen and (max-width: 740px) {
	.parallax-wrapper{
		height: 60vh;
		position: relative;
	}
}



.under-border{
	width: 100%;
	height: 3px;
	background: #272727;
	margin-left: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: left;
	cursor: pointer;
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
}

@media screen and (max-width: 740px) {
	.under-border{
		width: 100%;
	}
}


.split-boxx{
	overflow: hidden;
	height: 1em;
	margin-top: 1em;
	line-height: 1;
	position: relative;
}
.text22,.text55,.text66,.text77,.text88,.text99,.text1010,.text1111,.text1212,.text1313,.text1414,.text1515,.text1616,.text1717,.text1818{
	display: inline-block;
	transform: translateY(0em);
	padding: 0 0.01em;
}

.text5{
	position: absolute;
	top: 0;
	left: 0;
}


/*footer-menu*/

.footer-menu-wrapper{
	display: flex;
	flex-flow: wrap;
	padding-bottom: 4em;
	width: 30%;
	margin-left: auto;
}

.footer-menu{
	font-size: 1.5em;
	color: #fff;
	width: 50%;
	text-align: center;
	font-family: "Quicksand", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
}

.footer-menu-inner{
	width: fit-content;
	margin: auto;
	position: relative;
	cursor: pointer;
}

.footer-menu-inner.footer-menu-active{
	/*pointer-events: none;*/
}
.footer-menu-inner.footer-menu-active::after{
	content: '';
	width: 150%;
	position: absolute;
	transform: translate(-50%, -50%);
	left: 50%;
	top: 50%;
	height: 5px;
	border-radius: 2px;
	background: var(--orange);
}


@media screen and (max-width: 1025px) {
	
	.footer-menu-wrapper{
		width: 100%;
		padding-bottom: 5.5em;
	}
	
	.footer-menu{
		width: 50%;
		text-align: center;
	}
	
}


/* header-menu */

.menu-btn{
	width: fit-content;
	height: auto;
	padding: 1em 2em;
	position: fixed;
	border-radius: 30px;
	line-height: 1;
	top: 1em;
	right: 1em;
	z-index: 7;
	background: radial-gradient(
  	circle at 50% 300%,
  	rgba(216, 112, 112, 0.5),
  	rgba(216, 112, 112, 0.5) 30%,
  	rgba(0, 0, 0, 0.5) 30%,
 	rgba(0, 0, 0, 0.5) 100%
	);
	background-position: 50% 50%;
	background-size: 300%;
	color: #fff;
	overflow: hidden;
	cursor: pointer;
	/*background-color: rgba(255, 255, 255, 0.2);*/
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.menu-btn::before{
	content: 'MENU';
	/*mix-blend-mode: difference;*/
	color: #fff;
	font-weight: 500;
}

.menu-back-wrapper{
	position: fixed;
	top: 1em;
	right: 1em;
	border-radius: 20px;
	z-index: 7;
	overflow: hidden;
	display: none;
}

.menu-back{
	border-radius: 20px;
	padding: 3em 3.2em 3em 3em;
	background: rgba(0, 0, 0, 0.8);
	backdrop-filter: blur(10px);
  	-webkit-backdrop-filter: blur(10px);
	z-index: 6;
	transform-origin: top right;
	transform: scale(0);
}

.menu-list-wrapper{
	display: flex;
	flex-flow: column;
	gap: 1em;
}
.menu-list{
	font-size: 1.5em;
	width: 100%;
	line-height: 1;
	padding-top: 0.5em;
	/*padding-left: 2em;*/
	position: relative;
	overflow: hidden;
	font-family: "Quicksand", sans-serif;
	font-optical-sizing: auto;
 	font-weight: 700;
 	font-style: normal;
}
.menu{
	transform: translateY(1.1em);
	font-size: 1.5em;
	width: fit-content;
	margin: 0 11px;
	line-height: 1;
	position: relative;
	/*color: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(230 230 230 / 100%) 50%, rgb(230 230 230 / 100%) 100%);*/
	cursor: pointer;
	background: linear-gradient(90deg, rgb(216 112 112 / 100%) 0%, rgb(216 112 112 / 100%) 50%,rgb(230 230 230 / 100%) 50%, rgb(230 230 230 / 100%) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	background-size: 200%;
	background-position: 100% 50%;
}

.menu.top-menu-active{
	transform: translateY(1.1em);
	width: fit-content;
	line-height: 1;
	position: relative;
	color: #fff;
	pointer-events: none;
}

.sns-menu{
	display: flex;
	flex-flow: column;
	margin-top: 3em;
}

.sns-name{
	
	font-family: "Quicksand", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	color: #fff;
	margin-bottom: 1em;
	height: 1.5em;
	padding-top: 0.2em;
	overflow: hidden;
	cursor: pointer;
}

ul li.sns-name:first-child{
	padding-right: 50%;
}


@media screen and (max-width: 1025px) {
	
	.menu-back-wrapper{
		min-width: auto;
		height: auto;
	}
	.menu-back{
		min-width: auto;
		min-height: auto;
	}
	.menu-list{
		font-size: 1.3em;
	}
	.menu{
		font-size: 1.3em;
	}
	
	.sns-menu{
		flex-flow: column;
		margin-top: 3em;
	}
	.sns-name{
		width: fit-content;
	}

}
@media screen and (max-width: 740px) {
	.sns-menu{
		flex-flow: column;
		margin-top: 3em;
	}
	.sns-name{
		width: fit-content;
	}
}
.menu.top-menu-active{
	pointer-events: none;
}
.menu.top-menu-active::before{
	content: '';
	width: calc(100% + 20px);
	position: absolute;
	transform: translate(-50%, -50%);
	left: 50%;
	top: 50%;
	height: 5px;
	border-radius: 2px;
	background: var(--orange);
}


.menu-close-btn{
	width: 30px;
	height: 30px;
	/*background: yellow;*/
	position: absolute;
	right: 1em;
	top: 1em;
	/*background: red;*/
	cursor: pointer;
	z-index: 2;
}

.menu-close-btn::before{
	content: '';
	position: absolute;
	width: 30px;
	height: 4px;
	border-radius: 2px;
	background: #fff;
	transform: translate(-50%, -50%) rotate(45deg);
	top: 50%;
	left: 50%;
}
.menu-close-btn::after{
	content: '';
	position: absolute;
	width: 30px;
	height: 4px;
	border-radius: 2px;
	background: #fff;
	transform: translate(-50%, -50%) rotate(-45deg);
	top: 50%;
	left: 50%;
}


/*スクロールボーダー*/

.scroll-border-wrapper{
	width: 100vw;
	height: 20vw;
	position: absolute;
	top: 0;
	left: 0;
	
}

ul li.scroll-border{
	width: 100%;
	overflow: hidden;
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 2;
	background: #fff;
}

ul li.scroll-border:first-child{
	top:0;
	height: 6vw;
}
ul li.scroll-border:nth-child(2){
	height: 5vw;
	top:6vw;
}
ul li.scroll-border:nth-child(3){
	height: 4vw;
	top:11vw;
}
ul li.scroll-border:nth-child(4){
	height: 3vw;
	top:15vw;
}

@media screen and (max-width: 1025px) {
	.scroll-border-wrapper{
		height: 34vh;
	}
	ul li.scroll-border{
		width: 100%;
		overflow: hidden;
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0);
		z-index: 2;
		background: #fff;
	}
	ul li.scroll-border:first-child{
		height: 10vh;
	}
	ul li.scroll-border:nth-child(2){
		top:10vh;
		height: 9vh;
	}
	ul li.scroll-border:nth-child(3){
		top:19vh;
		height: 8vh;
	}
	ul li.scroll-border:nth-child(4){
		top:27vh;
		height: 7vh;
	}
}

/*footer-sns*/
.footer-sns{
	width: 100vw;
	height: 100px;
	position: relative;
	background: #272727;
	padding: 2em 5vw;
	/*clip-path: polygon(0% 100%, 100% 100%,100% 100%,0% 100%);*/
}

.footer-sns-menu{
	display: flex;
	flex-flow: wrap;
	gap: 2em;
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	left: 5vw;
}
@media screen and (max-width: 1025px) {
	.footer-sns-menu{
		left: 7vw;
	}
}

.footer-sns-name{
	color: #fff;
	width: fit-content;
	height: 1em;
	font-family: "Quicksand", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	line-height: 1;
	cursor: pointer;
	position: relative;
}

.footer-sns-name::before{
	content: '';
	position: absolute;
	bottom: -3px;
	left: 0;
	height: 2px;
	width: 100%;
	cursor: pointer;
	z-index: 3;
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	background: var(--orange);
}

.small{
	font-size: 0.8em;
	position: absolute;
	/*transform: translate(-50%, 0);*/
	transform:  rotate(90deg);
	right: -1em;
	bottom: 5em;
	color: #fff;
}
@media screen and (max-width: 1025px) {
	.small{
		right: -1.6em;
		bottom: 4.6em;
	}
}
@media screen and (max-width: 740px) {
	.small{
		right: -1.8em;
		bottom: 5em;
	}
}
.footer-menu-inner{
	
	width: fit-content;
	
	/*color: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(230 230 230 / 100%) 50%, rgb(230 230 230 / 100%) 100%);*/
	cursor: pointer;
	background: linear-gradient(90deg, rgb(216 112 112 / 100%) 0%, rgb(216 112 112 / 100%) 50%,rgb(230 230 230 / 100%) 50%, rgb(230 230 230 / 100%) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	background-size: 200%;
	background-position: 100% 50%;
}


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

#load2{
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	/*background: rgb(0 0 0 / 1);*/
	position: fixed;
	top: 0;
	left: 0;
	z-index: 12;
}

.grid-wrapper2{
	width: 100vw;
	height: 120vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
}
.grids2{
	display: flex;
	flex-flow: wrap;
}
.grid-box2{
	width: 5vw;
	height: 5vw;
	box-sizing: border-box;
	display: grid;
	align-content: center;
	align-items: center;
	overflow: hidden;
}
.grid2{
	width: 5vw;
	height: 5vw;
	background: #eee;
	margin: auto;
}

/* page-heading */

.page-heading{
	font-size: 15vw;
	opacity: 0;
	line-height: 1;
	padding: 0.3em 0;
	text-align: center;
	display: flex;
	width: fit-content;
	margin: auto;
}

.page-section-heading{
	font-size: 5vw;
	line-height: 1;
	text-align: center;	
	/*background: red;*/
	width: fit-content;
	margin: auto;
	position: relative;
}

.page-section-heading::before{
	content: '';
	width: 100%;
	height: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.page-section-heading::after{
	content: '';
	width: 0%;
	height: 100%;
	background: var(--orange);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.page-section-heading2{
	font-size: 10vw;
	line-height: 1;
	padding: 0;
	margin: 0;
	text-align: center;
	color: #272727;
	
}
.page-section-heading2.service-section-heading2{
	padding-bottom: 10vh;
}
.page-heading-split{
	opacity: 0;
}


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

.section12{
	width: 100vw;
	min-height: 90vh;
	padding: 0vh 0 20vh; 
	position: relative;
	display: grid;
	align-content: center;
	align-items: center;
}
.page-section-heading-split{
	display: inline-block;
	text-transform: uppercase;
	transform: rotate(90deg);
	opacity: 0;
}
.page-text-wrapper{
	margin: 3em auto 0;
}
/*グラデーションスプリット*/
.gradation-splitE{
	width: fit-content;
	margin: auto;
}

.text6{
  	width: fit-content;
	text-align: center;
  	font-size: 1.3vw;
  	font-weight: bold;
	margin: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
    background: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(0 0 0 / 10%) 50%, rgb(0 0 0 / 10%) 100%);
    background-size: 300%;
    background-position: 80% 50%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: no-repeat;
}

.text7{
  	width: fit-content;
	text-align: center;
  	font-size: 1.3vw;
  	font-weight: 500;
	margin: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
    background: linear-gradient(90deg, rgb(0 0 0 / 100%) 0%, rgb(0 0 0 / 100%) 50%,rgb(0 0 0 / 10%) 50%, rgb(0 0 0 / 10%) 100%);
    background-size: 300%;
    background-position: 120% 50%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: no-repeat;
}
@media screen and (max-width: 1025px) {
	.test-wrapper{
		width: 61vw;
	}
	.text6{
  		font-size: 3.1vw; 
	}
	.text7{
  		font-size: 3.1vw; 
	}
}


.numbers2{
	color: transparent;
	height: auto;
	padding-right: 0.5em;
	line-height: 1;
	font-size: 5em;
	display: grid;
	align-content: center;
	-webkit-text-stroke: 2px #fff;
	mix-blend-mode: difference;
}
ul li.numbers2:first-child{
	border-top: solid 1px #000;
}

@media screen and (max-width: 1025px) {
	
	.numbers2{
		width: 15vw;
		font-size: 12vw;
	}

}

@media screen and (max-width: 1025px) {
	.page-heading{
		padding: 80px 0 0;
		font-size: 23vw;
	}
	.page-section-heading2{
		font-size: 18vw;
	}
	.page-section-heading2.service-section-heading2{
		padding-bottom: 12vh;
	}
	
	.page-section-heading{
		font-size: 8.5vw;
	}
}

.grid2{
	width: 5vw;
	height: 5vw;
	/*opacity: 0.7;*/
	background: #eee;
	margin: auto;
}

@media screen and (max-width: 1025px) {
	.grid-box2{
		width: 10vw;
		height: 10vw;
	}

	.grid2{
		width: 10vw;
		height: 10vw;
	}
}

.heading3{
	position: absolute;
	height: 300px;
	transform: translate(-50%, 0);
	left: 50%;
	bottom: -300px;
	line-height: 0.75;
	font-size: 10em;
	z-index: 3;
	color: #fff;
}

.section002{
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -2;
	overflow: hidden;
}
.section003{
	width: 100vw;
	height: 700vh;
	overflow: hidden;
}
.section004{
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	position: fixed;
	background: #fff;
	z-index: 6;
	top: 100%;
	left: 0;
	display: grid;
	align-content: center;
	align-items: center;
}
.section002 h2{
	font-size: 3em;
	margin-bottom: 0.7em;
	line-height: 1;
	text-align: center;
}
.column{
	width: 100vw;

	color: #fff;
	position: absolute;
	transform: translate(-50%, 0);
	top: 40%;
	left: 50%;

}
.carrer-content{
	width: 30vw;
	margin: auto;
	
}
.column001{
	opacity: 0;
}
.column002{
	opacity: 0;
}
.column003{
	opacity: 0;
}
.slide-back-wrapper{
	width: 100vw;
	height: 100vh;
}
.slide-back{
	width: 100vw;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	filter: grayscale(100);
}
.slide-back img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1025px) {
	ul li.slide-back:first-child img{
		object-position: 60% 50%;
	}
	ul li.slide-back:last-child img{
		object-position: 40% 50%;
	}
}
.slide-back2{
	clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
}

.slide-back3{
	clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
}
.scroll-bar-wrapper{
	position: absolute;
	transform: translate(0, -50%);
	right: 50px;
	top: 50%;
	display: flex;
	flex-flow: column;
	gap: 10px;
}

.scroll-bar{
	width: 7px;
	height: 100px;
	background: #272727;
	position: relative;
}

@media screen and (max-width: 740px) {
	.scroll-bar-wrapper{
		
		right: 3vw;
	}
	.scroll-bar{
	width: 5px;
	height: 80px;
	background: #aaa;
	position: relative;
}
}

.scroll-bar-indicator{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--orange);
	z-index: 3;
	clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}
#western-calendar{
	font-size: 15vw;
	color: var(--orange);
	position: absolute;
	top: 0;
	left: 13.22vw;
	line-height: 1;
	transform-origin: left top;
	transform: rotate(90deg);
	z-index: 0;
	opacity: 0.5;
}

@media screen and (max-width: 1025px) {
	
	.heading3{
		font-size: 20vw;
	}
	
	#western-calendar{
		font-size: 35vw;
		top: 5vw;
		left: 30.8vw;
	}
	
	.column{
		width: 90vw;
		height: auto;
	}
	.carrer-content{
		width: 60vw;
		margin: auto;
	}
	
}

.section005{
	width: 100vw;
	padding-top: 5vh;
	padding-bottom: 20vh;
	background: #fff;
	position: relative;
	/*height: 100vh;*/
}
@media screen and (max-width: 1025px) {
	.section005{
		width: 100vw;
		padding-top: 10vh;
		padding-bottom: 10vh;
		background: #fff;
		position: relative;
	}
}

.number-wrapper1{
	position: absolute;
}

.number-wrapper2{
	position: absolute;
}

.dj-lottie{
	margin: 0 auto;
}

.wave{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -4;
}
.waves{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -4;
}
.typing{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 60%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

#logo2{
	position: fixed;
	width: 200px;
	height: 33.33px;
	top: 30px;
	left: 2vw;
	/*transform: translate(-50%, -50%);*/
	z-index: 8;
	mix-blend-mode:difference;
}


@media screen and (max-width: 1025px) {
	.wave{	
		left: 50%;
	}
	
	#logo2{
		width: 180px;
		height: 30px;
		top: 20px;
	}
}

.gallery2{
	display:grid;
	align-content: center;
	align-items: center;
	margin: auto;
}

.textanime{
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translate(-50%, -50%);
	
}


/*ブラー*/

.back-blur2{
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	opacity: 0;
	z-index:-1;
}
.back-blur{
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 50%;
	top: 50%;
	backdrop-filter: blur(0px);
	transform: translate(-50%, -50%);
	z-index:-1;
}

.loop-svg {
	/* デフォルトだとSVGの線の開始位置が90°の地点からになるので、0°の地点にまで戻してやる。*/
	fill: transparent;
	position: absolute;
	transform: translate(-50%, -50%) rotate(-90deg)  scale(1, -1);
	top: 50%;
	left: 50%;
}
.indicator-loop{
	display: inline-block;
	background: red;
	margin: 10px;
	padding: 0;
	
}




.text1-wrapper{
	position: relative;
	width: 90vw;
}
.text11{
	position: absolute;
	width: 90vw;
	padding: 5vw 5vw 3em;
	top: 0;
	left: 0;
}

.wipe01{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe02{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe03{
	font-size: 3em;
	line-height: 1;
}

.contents{
	
	width: 70%;
}

.contents p{
	
}

.flex-box1{
	display: flex;
	gap: 3em;
	margin-top: 3em;
	opacity: 0;
}

.split-wrapper4{
	background: orange;
	height: 3.1em;	
	overflow: hidden;
	margin-bottom: 1em;
	position: relative;	
}
.wipe01{
	transform: translate(0, 120%);
	font-size: 3em;
	line-height: 1;
}

.card2{
	display: flex;
	opacity: 0;
	
	width: 100%;
	posiiton: relative;
	align-content: center;
	padding: 3.5em 5vw;
	overflow: hidden;
	border-bottom: solid 1px #000;
	background-size: 100% 100%;
	background-position: center;
	position: relative;
	background: linear-gradient(0deg, rgb(255 255 255 / 100%) 0%, rgb(255 255 255 / 100%) 50%, rgb(216 112 112 / 100%) 50%, rgb(216 112 112 / 100%) 50%,rgb(0 0 0 / 100%) 50%, rgb(0 0 0 / 100%) 50%, rgb(216 112 112 / 100%) 50%, rgb(216 112 112 / 100%) 50%,rgb(255 255 255 / 100%) 50%, rgb(255 255 255 / 100%) 100%) ;
}

.back2{
	position:absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	transform-origin: center;
	height: 0%;
	z-index: 0;
	
	
	background: linear-gradient(0deg, rgb(255 255 255 / 100%) 0%, rgb(255 255 255 / 100%) 0%, rgb(216 112 112 / 100%) 0%, rgb(216 112 112 / 100%) 10%,rgb(0 0 0 / 100%) 10%, rgb(0 0 0 / 100%) 90%, rgb(216 112 112 / 100%) 90%, rgb(216 112 112 / 100%) 100%,rgb(255 255 255 / 100%) 100%, rgb(255 255 255 / 100%) 100%);
	
}


.card-contents2{
	display: grid;
	align-content: center;
	align-items: center;
	width: 80vw;
	mix-blend-mode: difference;
}
.lottie-icon{
	width: 15vw;
	height: 15vw;
	mix-blend-mode: difference;
	/*background: red;*/
}
/*scroll heading*/


.text1-wrapper{
	position: relative;
	width: 90vw;
}
.text11{
	position: absolute;
	width: 90vw;
	padding: 5vw 5vw 3em;
	top: 0;
	left: 0;
}

.wipe01{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe02{
	font-size: 3em;
	line-height: 1;
	margin-bottom: 1rem;
}
.wipe03{
	font-size: 3em;
	line-height: 1;
}

.contents{
	font-size: 1.3rem;
	width: 70%;
}

.contents p{
	margin-bottom: 1em;
}

.flex-box1{
	display: flex;
	gap: 3em;
	margin-top: 3em;
	opacity: 0;
}

.split-wrapper4{
	height: 3.1em;	
	overflow: hidden;
	margin-bottom: 1em;
	position: relative;	
}
.wipe01{
	transform: translate(0, 120%);
	font-size: 3em;
	line-height: 1;
}

.scroll-headingB{
	mix-blend-mode:hard-light;
}
.text-wrapper{
	display:inline-block;
	align-content: center;
	align-items: center;
	padding: 10vw;
	position: relative;
	margin: auto;
	width: fit-content;
	overflow: hidden;
	background: blue;	
}

.split-wrapper2{
	height: 2.1em;
	overflow: hidden;
	margin-bottom: 1em;
	text-align: center;
}


.blur-beta{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
/*
	backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
	*/
	z-index: 2;
	display: none;
}

.column1{
	display: flex;
	width: 100vw;
	position: absolute;
	top: 20vh;
	left: 0;
	color: #fff;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

@media screen and (max-width: 1025px) {
	
	
	.title2{
		font-size: 6vw;
	}
}

.parallax1{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 40%;
	left: 20%;
	overflow: hidden;
}
.photo001{
	width: 150%;
	height: 150%;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax1 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax2{
	height: 25vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -20%;
	left: 10%;
}

.photo002{
	width: 150%;
	height: 150%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax2 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax3{
	height: 25vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -20%;
	right: 5%;
}

.photo003{
	width: 160%;
	height: 100%;
	top: 50%;
	left: 30%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax3 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax4{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 20%;
	right: 30%;
	overflow: hidden;
}
.photo004{
	width: 150%;
	height: 150%;
	top: 50%;
	right: -70%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax4 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.parallax5{
	width: 25vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
}
.photo005{
	width: 200%;
	height: 200%;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax5 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1025px) {
	.parallax1{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 30%;
	left: 10%;
	overflow: hidden;
}
.photo001{
	width: 150%;
	height: 150%;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}
.parallax2{
	height: 40vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: 0%;
	left: -5%;
}

.photo002{
	width: 150%;
	height: 150%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax3{
	height: 40vw;
	width: auto;
	aspect-ratio: 9 / 16;
	position: absolute;
	overflow: hidden;
	top: -10%;
	right: -10%;
}

.photo003{
	width: 160%;
	height: 100%;
	top: 50%;
	left: 30%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax4{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 20%;
	right: 30%;
	overflow: hidden;
}
.photo004{
	width: 150%;
	height: 150%;
	top: 50%;
	right: -70%;
	transform: translate(-50%, -50%);
	position: absolute;
}

.parallax5{
	width: 40vw;
	height: auto;
	aspect-ratio: 16 / 9;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
}
.photo005{
	width: 200%;
	height: 200%;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
}

}


.split-wrapper2{
	height: 2.1em;
	overflow: hidden;
	margin-bottom: 1em;
	text-align: center;
}

.gallery1{
	width: 100%;
}

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

	.title2{
		font-size: 6vw;
	}
}

.caption{
	position: absolute;

	top: 40vh;
	left: 50%;
	transform: translate(-50%, 0);
	text-align: center;
	z-index: 5;
	background: red;
}

.gradation-split{
	position: absolute;
	top: 35vh;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 5;
	
	display:grid;
	align-content: center;
	align-items: center;
	margin: auto;
}
.gradation-splitB{
	position: absolute;
	top: 35vh;
	
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 2;
	margin: 0;
	padding: 0;
	display:grid;
	align-content: center;
	align-items: center;
}

@media screen and (max-width: 1025px) {
	.test-wrapper2{
	width: auto;
	
}

}


.monoclome {
	filter: grayscale(100%);
}

.center{
	text-align: center;
	margin: auto;
}



/*border*/
.border-line{
	position: absolute;
	left: 0;
	top: 0;
	width: 100vw;
	height: 18.75vw;
}

.scroll-headingC{
	mix-blend-mode:hard-light;
}



.border-line2{
	margin-top: -10vh;
}


.photo0001{
	/*filter: grayscale(100%);*/
	width: calc(100% / 3);
	height: auto;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
}

ul li.photo0001:first-child{
	clip-path: polygon(0% 50%, 50% 50%, 50% 100%, 0% 100%);
}

ul li.photo0001:nth-child(2){
	clip-path: polygon(25% 0%, 75% 0%, 75% 50%, 25% 50%);
}

ul li.photo0001:nth-child(3){
	clip-path: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%);
}

.photo0001 img{
	transform-origin: center;
	width: 75%;
	height: 75%;
	margin-top: 12.5%;
	margin-left: 12.5%;
	object-fit: cover;
}

ul li.photo0001:first-child img{
	transform-origin: bottom left;
	margin-top: 25%;
	margin-left: 0%;
}

ul li.photo0001:nth-child(2) img{
	transform-origin: top center;
	margin-top: 0%;
	margin-left: 12.5%;
}

ul li.photo0001:nth-child(3) img{
	transform-origin: bottom right;
	margin-left: 25%;
	margin-top: 25%;
}

@media screen and (max-width: 1100px) {
	.photo0001{
		width: 50%;
	}
	
	ul li.photo0001:nth-child(2){
		clip-path: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%);
	}
	
	ul li.photo0001:nth-child(2) img{
		transform-origin: bottom right;
		margin-left: 25%;
		margin-top: 25%;
	}
	
	ul li.photo0001:nth-child(3){
		clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
	}
	ul li.photo0001:nth-child(3) img{
		transform-origin: center center;
		margin-top: 12.5%;
		margin-left: 12.5%;
	}
}


@media screen and (max-width: 740px) {
	.photo0001{
		width: 100%;
	}
	ul li.photo0001:first-child{
		clip-path: polygon(25% 25%, 75% 25%, 75% 75%, 25% 75%);
	}
	ul li.photo0001:first-child img{
		transform-origin: center center!important;
		margin-top: 12.5%;
		margin-left: 12.5%;
	}
	
	ul li.photo0001:nth-child(2){
		clip-path: polygon(25% 0%, 75% 0%, 75% 50%, 25% 50%);
	}
	ul li.photo0001:nth-child(2) img{
		transform-origin: top center;
		margin-top: 0%;
		margin-left: 12.5%;
	}
}

.scroll-headingD{
	mix-blend-mode:hard-light;
}


@media screen and (max-width: 1025px) {
	.card2{
		display: flex;
		flex-flow: wrap;
	}
	.card-contents2{
		width: 75vw;
	}
	.lottie-icon{
		display: block;
		width: 100vw;
		height: 40vw;
	}
	.lottie-icon-inner{
		width: 40vw;
		margin: auto;
	}
	.lottie-icon img{
		height: 100%;
		width: auto;
	}
}


.photo-gallery{
	position: absolute;
	opacity: 0;
	filter: grayscale(100);
	z-index: -1;
}

.photo-gallery img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.photo-gallery1{
	aspect-ratio: 9 / 16;
	width: 12vw;
	position: absolute;
	right: -10%;
	top: 0;
}
.photo-gallery2{
	aspect-ratio: 1 / 1;
	width: 12vw;
	position: absolute;
	left: 10%;
	bottom: -10%;
}
.photo-gallery3{
	aspect-ratio: 3 / 2;
	width: 20vw;
	position: absolute;
	right: 15%;
	top: 10%;
}
.photo-gallery4{
	aspect-ratio: 16 / 9;
	height: 12vw;
	position: absolute;
	left: -5%;
	top: 30%;
}

.photo-gallery5{
	aspect-ratio: 3 / 2;
	width: 20vw;
	position: absolute;
	right: 10%;
	bottom: 10%;
}

.section006{
	width: 100vw;
	height: 300vh;
	position: relative;
	background: #fff;
	overflow: hidden;
	/*background: blue;*/
}

.section007{
	width: 100vw;
	height: 60vh;
	overflow: hidden;
	position: relative;
	background: #fff;
	/*background: blue;*/
}

@media screen and (max-width: 1025px) {
	
	.section007{
		height: 30vh;
	}
	
	.photo-gallery1{
	aspect-ratio: 9 / 16;
	width: 20vw;
	position: absolute;
	right: -10%;
	top: 0;
}

.photo-gallery2{
	aspect-ratio: 1 / 1;
	width: 20vw;
	position: absolute;
	left: 10%;
	bottom: -10%;
}

.photo-gallery3{
	aspect-ratio: 3 / 2;
	width: 30vw;
	position: absolute;
	right: 15%;
	top: 10%;
}

.photo-gallery4{
	aspect-ratio: 16 / 9;
	height: 20vw;
	position: absolute;
	left: -5%;
	top: 17%;
}

.photo-gallery5{
	aspect-ratio: 3 / 2;
	width: 30vw;
	position: absolute;
	right: 10%;
	bottom: 10%;
}

}

@media screen and (max-width: 740px) {	
	.section007{
		height: 20vh;
	}
}

/*link*/
.main-pageling2{
	cursor: pointer;
}
/*carrer*/
.carrer-title{
	text-align: center;
	
}

@media screen and (max-width: 1025px) {
	.grid-box2{
		width: 10vw;
		height: 10vw;
	}
	.grid2{
		width: 10vw;
		height: 10vw;
	}
}

#map{
	position: absolute;
	transform: translate(-50%, -50%);
		top: 55%;
		left: 50%;
	width: 100vw;
	height: 66.666vw;
	z-index: -1;
	mix-blend-mode: multiply;
}

.l-map{
	width: 100vw;
	height: 66.666vw;
	opacity: 0.3;
}

@media screen and (max-width: 1025px) {
	
	#map{
		transform: translate(-50%, -50%);
		top: 48%;
		left: 50%;
		width: 56.25vh;
		height: 100vh;
	}

}
@media screen and (max-width: 740px) {
	#map{
		transform: translate(-50%, -50%);
		top: 48%;
		left: 50%;
		width: 100vw;
		height: 177.777vw;
	}
}
/* work-archive */
.section0000001{
	display: flex;
	padding: 20vh 0 0; 
}
@media screen and (max-width: 1025px) {
	.section0000001{
		flex-flow: column;
		padding: 20vh 0vw 0;
		gap: 2em;
	}
}



@media screen and (max-width: 1025px) {
	.section00001{
		padding-top: 10vh;
		padding-bottom: 10vh;
	}
}

.section00002{
	width: 100vw;
	padding: 0 5vw 30vh;
	min-height: 150vh;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 1025px) {
	.section00002{
		padding: 0 5vw 15vh;
	}
}
.section00003{
	width: 75vw;
	padding: 10vh 0 10vh;
	position: relative;
	overflow: hidden;
}
.blog-section00003.section00003{
	padding: 0vh 0 10vh;
}
@media screen and (max-width: 1025px) {
	.section00003{
		width: 90vw;
		margin-left: 5vw;
	}
}

#loop-gallery-wrapper{
	width: 100vw;
	overflow: hidden;
	height: 500px;
	
	position: relative;
	background: #fff;
	 /*font-size: clamp(16px, 5vw, 50px); /* 最小16px、推奨画面幅の3%、最大32px */
	font-size: 8vw;
	line-height: 1;
	color: #ccc;
}
.loop-gallery-wrapper{

	/*height: 300px;*/
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(0, 0);
	display: flex;
	
	margin: 0em;
	
}
.loop-gallery-wrapper2{

	/*height: 300px;*/
	position: absolute;
	top: 0;
	left: 300vw;
	transform: translate(0, 0);
	display: flex;
	margin: 0em;
	/*background: yellow;*/
}
.loop-gallery-wrapper3{
	/*height: 300px;*/
	position: absolute;
	top: 0;
	left: 300vw;
	transform: translate(0, 0);
	display: flex;
	margin: 0em;
}
ul li.loop-gallery{
	display: inline-block;
	overflow: hidden;
	width: 30vw;
	font-size: 4vw;
	margin: 1em 0;
	/*background: #aaa;*/
	/*background: blue;*/
}

.split{
	display: inline-block;
}




/*loop gallery*/

#scroll-gallery2{
	width: 100vw;
	height: 50vh;
	background: #272727;		
	overflow: hidden;
	position: relative;
	display: grid;
	align-content: center;
	align-items: center;
}
.scroll-gallery-left{
	position: absolute;
	left: -10%;
	top: 50%;
	transform: translate(0, -50%) rotate(10deg);
	width: fit-content;
	height: 50vh;
}
.scroll-gallery-right{
	position: absolute;
	right: -10%;
	top: 50%;
	transform: translate(0, -50%) rotate(10deg);
	width: fit-content;
	height: 50vh;
}
.loop-wrapper01{
	display: flex;
	flex-flow: column;
	
	position: absolute;
	top: 0;
	left: 0;
}
.loop-clone01{
	display: flex;
	gap: 10px;
	flex-flow: column;
	margin-bottom: 10px;
}
.loop-image00{
	width: 15vw;
	height: 8.4375vw;
	overflow: hidden;
	border-radius: 10px;
	over-flow: hidden;
	/*filter: grayscale(100%);*/
}
.loop-image00 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/*2*/
.loop-wrapper02{
	display: flex;
	flex-flow: column;
	position: absolute;
	bottom: 0;
	left: calc(15vw + 10px);
}
.loop-clone02{
	display: flex;
	gap: 10px;
	flex-flow: column;
	/*justify-content: flex-end;*/
	margin-bottom: 10px;
}



/*3*/
.loop-wrapper03{
	display: flex;
	flex-flow: column;
	position: absolute;
	bottom: 0;
	right: calc(15vw + 10px);
}
.loop-clone03{
	display: flex;
	gap: 10px;
	flex-flow: column;
	/*justify-content: flex-end;*/
	margin-bottom: 10px;
}

/*4*/
.loop-wrapper04{
	display: flex;
	flex-flow: column;
	position: absolute;
	bottom: 0;
	right: 0;
}
.loop-clone04{
	display: flex;
	gap: 10px;
	flex-flow: column;
	justify-content: flex-end;
	margin-bottom: 10px;
}

@media screen and (max-width: 1025px) {
	#scroll-gallery2{
		width: 100vw;
		height: 45vw;
	}
	.loop-wrapper{
		
	}
	.loop-image{
		
	}
	.loop-image img{
		
	}
	
}

/*text*/

.page-text-wrapper.page-text-wrapper-works{
	margin: 0 auto ;	
}

/*グラデーションスプリット*/
.gradation-splitE{
	width: fit-content;
	margin: auto;
}

.text8{
  	width: fit-content;
	text-align: center;
  	font-size: 1.3vw;
  	font-weight: 500;
	margin: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
    background: linear-gradient(90deg, rgb(255 255 255 / 100%) 0%, rgb(255 255 255 / 100%) 50%,rgb(255 255 255 / 10%) 50%, rgb(255 255 255 / 10%) 100%);
    background-size: 300%;
    background-position: 80% 50%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: no-repeat;
}


@media screen and (max-width: 1025px) {
	.test-wrapper{
		width: 61vw;
	}
	.text8{
  		font-size: 2.3vw; 
	}
}



ul li.article001:nth-child(6){
	width: 66%;
}


ul li.article001:nth-child(6) .article001-img{ 
	aspect-ratio: 16 / 9;
}

ul li.article001:nth-child(7) .article001-img{ 
	aspect-ratio: 1 / 1;
}

@media screen and (max-width: 1025px) {
	
	ul li.article001:nth-child(6){
		width: 100%;
	}

}


/*タグ*/


.tagcontent-wrapper{
	display: flex;
	gap: 40px;
	width: 80vw;
	/*max-width: 1200px;*/
	margin: auto;
}
@media screen and (max-width: 1025px) {
	.tagcontent-wrapper{
		width: 90vw;
		max-width: inherit;
	}
}
.tag1-wrapper{
	display: flex;
	flex: 1;
	flex-flow: wrap;
	gap: 10px;
}
.tag1{
	padding: 10px 20px;
	font-size: 1em;
	border-radius: 30px;
	background-repeat: no-repeat;
	background: linear-gradient(0deg, rgb(238 238 238 / 100%) 0%, rgb(238 238 238 / 100%) 20%,rgb(39 39 39 / 100%) 20%,  rgb(39 39 39 / 100%) 40%,rgb(238 238 238 / 100%) 40%, rgb(238 238 238 / 100%) 60%, rgb(39 39 39 / 100%) 60%, rgb(39 39 39 / 100%) 80%, rgb(238 238 238 / 100%) 80%, rgb(238 238 238 / 100%) 100%);
	background-size: 100% 500%;
  	background-position: 50% 50%;
	cursor: pointer;
}
.tag1::before{
	content: '#';
	padding-right: 0.3em;
	color: #fff;
	mix-blend-mode: difference;
}
.tag-name{
	color: #fff;
	mix-blend-mode: difference;
}

.tag1.tag-active{
	/*pointer-events: none;*/
	background: #272727;
}
.tag1.tag-active::after{
	content: '×';
	padding-left: 0.5em;
	color: #fff;
	mix-blend-mode: difference;
}
/* work single */

/*content*/

#content1 {
    width: 100vw;
	
	
   background: orange;
  }
#content1 li{
	position:absolute;
	width: 100vw;
  
	height: 56.25vw;
	display: block;
	align-content: center;
	text-align: center;
	font-size: 2em;
	vertical-align: middle;
	top: 0;
	left: 0;
		/*filter: grayscale(100%);*/
  }

#content1 li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#content1 li:first-child{
	

}
#content1  li:nth-child(2){

}
#content1 li:nth-child(3){

}
#content1 li:nth-child(4){

}
#content1 li:nth-child(5){
	background: #ddd;
}
#content1 li.slider.active{
	z-index: 2;
}
#content1 li.slider.non-active{
	z-index: -2;
}

#content12 {
    width: 100vw;
	
	
   background: orange;
  }
#content12 li{
	position:absolute;
	width: 100vw;
  
	height: 56.25vw;
	display: block;
	align-content: center;
	text-align: center;
	font-size: 2em;
	vertical-align: middle;
	top: 0;
	left: 0;
		/*filter: grayscale(100%);*/
  }

#content12 li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#content12 li:first-child{

}
#content12  li:nth-child(2){

}
#content12 li:nth-child(3){

}
#content12 li:nth-child(4){

}
#content12 li:nth-child(5){

}
#content12 li.slider2.active{
	z-index: 2;
}
#content12 li.slider2.non-active{
	z-index: -2;
}

#content13 {
    width: 100vw;
	
	
   background: orange;
  }
#content13 li{
	position:absolute;
	width: 100vw;
  
	height: 56.25vw;
	display: block;
	align-content: center;
	text-align: center;
	font-size: 2em;
	vertical-align: middle;
	top: 0;
	left: 0;
	/*	filter: grayscale(100%);*/
  }

#content13 li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#content13 li:first-child{

}
#content13  li:nth-child(2){

}
#content13 li:nth-child(3){

}
#content13 li:nth-child(4){

}
#content13 li:nth-child(5){

}
#content13 li.slider3.active{
	z-index: 2;
}
#content13 li.slider3.non-active{
	z-index: -2;
}

#container{
	width: 100vw;
	height: 56.25vw;
	overflow: hidden;
	position: relative;
}
#container02{
	width: 100vw;
	height: 56.25vw;
	overflow: hidden;
	position: relative;
}
#container2{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 0;
	left: 0;
	
	z-index: 2;
}
#container03{
	width: 100vw;
	height: 56.25vw;
	overflow: hidden;
	position: relative;
}
#container3{
	width: 100vw;
	height: 56.25vw;
	position: absolute;
	top: 0;
	left: 0;
	
	z-index: 2;
}


.grid-item {
	aspect-ratio: 1/1;
	width:100%;
	height:100%;
	
	overflow: hidden;
}

.grid-item img{
	width:100%;
	height:100%;
	object-fit: cover;
	overflow: hidden;
}



#log{
	color: #fff;
	text-align: center;
	margin-top: 1em;
}
#slideconatner{
	width: 80vw;
	height: 80vh;
	margin: auto;
	overflow: hidden;
	background-repeat: no-repeat;
	/* 画像を常に天地左右の中央に配置 */
  background-position: center center;
   
 opacity: 0.8;
  
   
  /* 表示するコンテナの大きさに基づいて、背景画像を調整 */
  background-size: cover;
   
  /* 背景画像が読み込まれる前に表示される背景のカラー */
  background-color: #272727;
	position:relative;
}


.slide{
	width: 100%;
	height: 100%;
	object-fit: cover;
	position:absolute;
	top: 0;
	left: 0;
	opacity: 0;
	display: none;
}


ul li.slide:first-child{
	transform: translate(0 0);
	opacity: 1;
	display: block;
}

.slide img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sliderthumb {
	position:absolute;
	right:0%;
	  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
	display:grid;
	 grid-template-columns: repeat(1, 1fr);
    gap: 0em;
	z-index: 50;
}




.sliderthumb ul{
	
}

.sliderthumb li{
	width: 200px;
	height: 100px;
	overflow: hidden;
}

.sliderthumb li img{
	width:100%;
	height:100%;
	object-fit: cover;
	
}


#prev-btn, #next-btn{
	width: 20%;
	height: 100%;
	position: absolute;
	background: rgba(255,255, 255, 0.5);
	z-index: 3;
	cursor: pointer;
	transform: translateY(-50%);
	opacity: 0;
}
@media screen and (max-width: 1025px) {
	#prev-btn, #next-btn{
		width: 10%;
	}
}
#prev-btn{
	top: 50%;
	left: 0;
}
#prev-btn::before, #next-btn::before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #000;
	border-left: solid 1px #000;
	position: absolute;
	
	
}
#next-btn{
	top: 50%;
	right: 0;
}

#prev-btn::before{
	
	top: 50%;
	left: 55%;
	transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
}

#next-btn::before{
	
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%) rotate(135deg);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    -ms-transform: translate(-50%, -50%) rotate(135deg);
}

.indicator-wrapper{
	position: absolute;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	bottom: -10px;
	left: 50%;
	z-index: 5;
}

.indicator{
	width: 20px;
	height: 20px;
	margin: 0 5px;
	border-radius: 10px;
	cursor: pointer;
	/*background: #999;*/
	border: solid 2px #fff;
	display: inline-block;
}

@media screen and (max-width: 1025px) {
	.indicator{
		width: 15px;
		height: 15px;
		margin: 0 5px 3px;
		border-radius: 7.5px;
		cursor: pointer;
		/*background: #999;*/
		border: solid 2px #fff;
		display: inline-block;
	}
}

.indicator.i-active{
	background: #fff;
}

.indicator2{
	width: 20px;
	height: 20px;
	margin: 0 5px;
	border-radius: 10px;
	cursor: pointer;
	/*background: #999;*/
	border: solid 2px #fff;
	display: inline-block;
}
@media screen and (max-width: 1025px) {
	.indicator2{
		width: 15px;
		height: 15px;
		margin: 0 5px 3px;
		border-radius: 7.5px;
		cursor: pointer;
		/*background: #999;*/
		border: solid 2px #fff;
		display: inline-block;
	}
}
.indicator2.i-active{
	background: #fff;
}


#prev-btn2, #next-btn2{
	width: 20%;
	height: 100%;
	position: absolute;
	background: rgba(255,255, 255, 0.5);
	z-index: 3;
	cursor: pointer;
	transform: translateY(-50%);
	opacity: 0;
}
@media screen and (max-width: 1025px) {
	#prev-btn2, #next-btn2{
		width: 10%;
	}
}
#prev-btn2{
	top: 50%;
	left: 0;
}
#prev-btn2::before, #next-btn2::before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #000;
	border-left: solid 1px #000;
	position: absolute;
	
	
}
#next-btn2{
	top: 50%;
	right: 0;
}

#prev-btn2::before{
	
	top: 50%;
	left: 55%;
	transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
}

#next-btn2::before{
	
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%) rotate(135deg);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    -ms-transform: translate(-50%, -50%) rotate(135deg);
}

.indicator3{
	width: 20px;
	height: 20px;
	margin: 0 5px;
	border-radius: 10px;
	cursor: pointer;
	/*background: #999;*/
	border: solid 2px #fff;
	display: inline-block;
}
@media screen and (max-width: 1025px) {
	.indicator3{
		width: 15px;
		height: 15px;
		margin: 0 5px 3px;
		border-radius: 7.5px;
		cursor: pointer;
		/*background: #999;*/
		border: solid 2px #fff;
		display: inline-block;
	}
}
.indicator3.i-active{
	background: #fff;
}


#prev-btn3, #next-btn3{
	width: 20%;
	height: 100%;
	position: absolute;
	background: rgba(255,255, 255, 0.5);
	z-index: 3;
	cursor: pointer;
	transform: translateY(-50%);
	opacity: 0;
}
@media screen and (max-width: 1025px) {
	#prev-btn3, #next-btn3{
		width: 10%;
	}
}
#prev-btn3{
	top: 50%;
	left: 0;
}
#prev-btn3::before, #next-btn3::before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #000;
	border-left: solid 1px #000;
	position: absolute;
	
	
}
#next-btn3{
	top: 50%;
	right: 0;
}

#prev-btn3::before{
	
	top: 50%;
	left: 55%;
	transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
}

#next-btn3::before{
	
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%) rotate(135deg);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    -ms-transform: translate(-50%, -50%) rotate(135deg);
}

.page-main{
	width: 100vw;
	height: 80vh;
	overflow: hidden;
	position: relative;
	z-index: -2;
	background: #272727;
}

@media screen and (max-width: 1025px) {
	.page-main{
		height: 70vh;
	}

}
.page-main2{
	width: 100vw;
	height: 80vh;
	overflow: hidden;
	/*position: fixed;*/
	z-index: -2;
}
.page-main3{
	width: 100vw;
	padding: 10vh 5vw;
	overflow: hidden;
	background: #fff;
	/*position: fixed;*/
	z-index: -2;
}
@media screen and (max-width: 1025px) {
	.page-main3{
		padding: 10vh 5vw;
	}
}
.tagcontent-wrapper2{
	margin-top: 1.5em;
}
.page-main4{
	width: 100vw;
	padding: 10vh 20vw;
	overflow: hidden;
	background: #fff;
	border-top: solid 1px #ddd;
	/*position: fixed;*/
	z-index: -2;
	display: grid;
	align-content: center;
	align-items: center;
}
@media screen and (max-width: 1025px) {
	.page-main4{
		width: 100vw;
		padding: 10vh 5vw;
	}
}
.page-main .parallax-img{
	width: 100vw;
	height: 90vh;
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
	left: 0;
	/*filter: grayscale(100%);*/
}
@media screen and (max-width: 1025px) {
	.page-main .parallax-img{
		height: 80vh;	
	}
}

.page-main .parallax-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.section0001{
	width: 100vw;
	min-height: 50vh;
	position: relative;
}


.page-main3-content{
	/*background: red;*/
	margin: auto;
	width: 60vw;
	max-width: 1200px;
}
@media screen and (max-width: 1025px) {
	.page-main3-content{
		margin: auto;
		width: 90vw;
	}
}
.excerpt5{
	padding: 0;
	padding-bottom: 1em;
}
.heading5{
	margin-bottom: 1.5em;
}
.heading6{
	padding: 10px 0;
	width: 6em;
	/*background: red;*/
}
/*
.fadein{
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	background: #fff;
	z-index: 10;
}
*/




/*recommend*/
.recommend001{
	width: 100vw;
	/*background: red;*/
	padding: 20vh 20vw;
	display: flex;
	gap: 4%;
	flex-flow: wrap;
}

.recommend-box{
	
	/*background: blue;*/
	display: flex;
	flex-flow: wrap;
	cursor: pointer;
	/*background: red;*/
}
.recommend-left{
	width: 48%;
	height: fit-content;
}
.recommend-right{
	width: 48%;
	height: fit-content;
}
.recommend-thumb{
	width: 60%;
	height: auto;
	aspect-ratio: 16 / 9;
	/*filter: grayscale(100%);*/
	overflow: hidden;
	/*background: green;*/
}
.recommend-thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (min-width: 1025px) {
	
.recommend-right .recommend-arrow{
	order: 0;
}
.recommend-right .recommend-thumb{
	order: 1;
}
.recommend-right .recommend-heading{
	order: 2;
}
	.next-arrow{
	text-align: right;
	}
}

.recommend-arrow{
	width: 40%;
	height: auto;
	display: block;
	align-content: center;
	align-items: center;
	position: relative;
}
.recommend-arrow.back-arrow{
	width: 80%;
	height: auto;
	display: block;
	margin: auto;
	align-content: center;
	align-items: center;
	position: relative;
	border-bottom: solid 3px #272727;
	text-align: right;
	padding: 2em 0;
	cursor: pointer;
}
.prev-arrow{
	padding-left: 5%;
}
.next-arrow{
	padding-right: 5%;
}
.recommend-heading{
	width: 100%;
	font-size: 1.3em;
	/*background: yellow;*/
	line-height: 1.3;
	padding-top: 1em;
}
@media screen and (min-width: 1025px) {
	.recommend-heading{
		width: 100%;
		font-size: 1.1em;
	}
}
/*
.recommend-arrow::before{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	width: 20px;
	height: 20px;
	border-top: solid 3px #272727;
	border-left: solid 3px #272727;
}
.recommend-arrow.prev-arrow::before{
	transform: translate(0, -50%) rotate(-45deg);
	left: 20px;
}
.recommend-arrow.next-arrow::before{
	transform: translate(0, -50%) rotate(135deg);
	right: 20px;
}
.recommend-arrow.back-arrow::before{
	transform: translate(0, -50%) rotate(-45deg);
	left: 0px;
}
.recommend-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	width: 20px;
	height: 1px;
	border-top: solid 3px #272727;
}
.recommend-arrow.prev-arrow::after{
	left: 20px;
}
.recommend-arrow.next-arrow::after{
	right: 20px;
}
.recommend-arrow.back-arrow::after{
	left: 0px;
}
.recommend-arrow.prev-arrow{
	padding-left: 50px;
}
.recommend-arrow.next-arrow{
	padding-right: 50px;
}
*/
@media screen and (max-width: 1025px) {
	.recommend001{
		padding: 10vh 5vw;
		gap: 4%;
	}
	.recommend-arrow{
		width: 100%;
	}
	.recommend-thumb{
		width: 100%;
	}
	
	.prev-arrow{
		padding-left: 0%;
	}
	.recommend-box{
		gap: 1em;
	}
	.recommend-arrow.back-arrow{
	width: 90%;
	}
	.recommend-arrow.prev-arrow::before{
	transform: translate(0, -50%) rotate(-45deg);
	left: 5px;
}
.recommend-arrow.next-arrow::before{
	transform: translate(0, -50%) rotate(135deg);
	right: 5px;
}
	.prev-arrow{
		text-align: left;
	}
	.next-arrow{
		text-align: right;
	}
.recommend-arrow.prev-arrow::after{
	left: 5px;
}
.recommend-arrow.next-arrow::after{
	right: 5px;
}
}


/*link*/
.main-pageling{
	cursor: pointer;
}



.video-area{
    position: relative;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
	aspect-ratio: 16 / 9;
    overflow: hidden;
	width: 100vw;
	height: 56.25vw;
	/*filter: grayscale(100%);*/
}
.video-area2{
    position: relative;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
	aspect-ratio: 1 / 1;
    overflow: hidden;
	width: 50vw;
	height: 50vw;
	/*filter: grayscale(100%);*/
	/*background: red;*/
}
.video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
.video2 {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
.video-area img, .video-area2 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*画像*/
.image-area{
	width: 100vw;
	height: 56.25vw;
	overflow: hidden;
	/*filter: grayscale(100%);*/
}
.image-area img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.image-area2{
	width: 50vw;
	height: 50vw;
	overflow: hidden;
	position: relative;
	/*filter: grayscale(100%);*/
}
.image-area2 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.image-area3{
	width: 100vw;
	height: auto;
	overflow: hidden;
	position: relative;
	/*filter: grayscale(100%);*/
}
.image-area3 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*========= レイアウトのためのCSS ===============*/

#container2{
	background:#fff;
	padding:300px 0;
	text-align: center;
}


#gallery-wrapper{
	display: flex;
	flex-flow: wrap;
	/*filter: grayscale(100%);*/
}

/*---- work-single-back-arrow ----*/

.pagelink-bar2{
	width: 60vw;
	height: 3em;
	margin-right: 20vw;
	cursor: pointer;
	margin-left: auto;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 1025px) {
	.pagelink-bar2{
		width: 90vw;
		height: 3em;
		margin-right: 5vw;
		margin-left: auto;
		position: relative;
		overflow: hidden;
	}
	
}

.link-arrow2{
	width: 25px;
	height: 25px;
	position: absolute;
	transform: translate(0, -50%);
	right: auto;
	left: 0;
	top: 50%;
	overflow: hidden;
}



@media screen and (max-width: 1025px) {	
	.link-arrow2{
		width: 20px;
		height: 20px;
		position: absolute;
		transform: translate(0, -50%);
		right: auto;
		left: 0;
		top: 50%;
		overflow: hidden;
	}
}
.pagelink-bar2 .back-arrow::before{
	position: absolute;
	content: '';
	border-top: solid 3px #272727;
	border-left: solid 3px #272727;
	transform: translate(0, -50%) rotate(-45deg);
	top: 50%;
	left: 5px;
	right: auto;
	width: 20px;
	height: 20px;
}

.pagelink-bar2 .back-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	left: 5px;
	right: auto;
	width: 20px;
	height: 3px;
	border-top: solid 3px #272727;
}

@media screen and (max-width: 1025px) {
.pagelink-bar2 .back-arrow::before{
	position: absolute;
	content: '';
	top: 50%;
	right: auto;
	left: 5px;
	width: 20px;
	height: 20px;
}

.pagelink-bar2 .back-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	right: auto;
	left: 5px;
	width: 20px;
	height: 3px;
	border-top: solid 3px #272727;
}
}



.pagelink-bar2 .text5{
	position: absolute;
	top: 0;
	left: 2.5em;
}

/*--- work single prev arrow ---*/

.recommend-arrow-wrapper{
	width: 40%;
	display: flex;
	padding: 0.5em;
	align-content: center;
	align-items: center;
	position: relative;
	gap: 1em;
}

.link-arrow3{
	width: 25px;
	height: 25px;
	position: relative;
	overflow: hidden;
	order: 1;
}

.link-arrow3 .back-arrow::after{
	content: '';
	position: absolute;
	transform: translate(0, -50%);
	top: 50%;
	left: 5px;
	right: auto;
	width: 20px;
	height: 3px;
	border-top: solid 3px #272727;
}

.link-arrow3 .back-arrow::before{
	position: absolute;
	content: '';
	border-top: solid 3px #272727;
	border-left: solid 3px #272727;
	transform: translate(0, -50%) rotate(-45deg);
	top: 50%;
	left: 5px;
	right: auto;
	width: 20px;
	height: 20px;
}

.prev-arrow{
	margin-left: 3em;
}

.split-boxx2{
	overflow: hidden;
	width: 3.3em;
	height: 1em;
	margin-top: 0.2em;
	line-height: 1;
	position: relative;
	order: 2;
}


@media screen and (max-width: 1025px) {	
	
	.recommend-arrow-wrapper{
		width: 100%;
		display: flex;
		padding: 0.5em 0;
		align-content: center;
		align-items: center;
		position: relative;
		gap: 1em;
	}
	
	.link-arrow3{
		width: 20px;
		height: 20px;
		overflow: hidden;
	}

	.link-arrow3 .back-arrow::after{
		content: '';
			position: absolute;
		transform: translate(0, -50%);
		top: 50%;
		left: 5px;
		right: auto;
		width: 20px;
		height: 3px;
		border-top: solid 3px #272727;
	}

	.link-arrow3 .back-arrow::before{
		position: absolute;
		content: '';
		border-top: solid 3px #272727;
		border-left: solid 3px #272727;
		transform: translate(0, -50%) rotate(-45deg);
		top: 50%;
		left: 5px;
		right: auto;
		width: 20px;
		height: 20px;
	}

}

/*--- next-arrow ---*/
.recommend-arrow-wrapper.next-arrow-wrapper{
	justify-content: flex-end;
}
.link-arrow4{
	width: 25px;
	height: 25px;
	position: relative;
	overflow: hidden;
	order: 3;
}



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

	.link-arrow4{
		width: 20px;
		height: 20px;
		overflow: hidden;
	}
	
}


/*----- blog-archive -----*/

.section0000001 .page-heading{
	font-size: 2vw;
	opacity: 0;
	line-height: 1;
	padding: 0.3em 0;
	text-align: left;
	width: fit-content;
	margin: 0;
	padding-left: 5vw;
}

.section0000001 .section00001 .page-heading{
	padding: 0 0 0 5vw;
}

.section0000001 .section00001{
	width: 20vw;
	height: auto;
	padding-top: 0;
	position: relative;
	padding-bottom: 0;
}

@media screen and (max-width: 1025px) {
	.section0000001 .page-heading{
		font-size: 10vw;
	}
}


.blog-archive-tag-wrapper{
	
	width: 75vw;
}
@media screen and (max-width: 1025px) {
	.blog-archive-tag-wrapper{
	
	width: 90vw;
}
}
ul.blog-archive-wrapper li.blog001:first-child, ul.blog-archive-wrapper li.blog001:nth-child(2){
	width: 49%;
}

/*blog*/
@media screen and (max-width: 1025px) {
	ul.blog-archive-wrapper li .blog-wrapper{
		display: flex;
		gap: 2%
	}
	ul.blog-archive-wrapper li.blog001 .blog-contents{
		width: 58%;
		padding-left: 1%; 
	}
	ul.blog-archive-wrapper li.blog001 .blog001-img{
		width: 39%;
	}
	ul.blog-archive-wrapper li.blog001 .article001-title{
		margin: 0 0 0.3em;
	}
	
	ul.blog-archive-wrapper li:first-child .blog-wrapper, ul.blog-archive-wrapper li:nth-child(2) .blog-wrapper{
		display: block;
		gap: 0;
	}
	
	ul.blog-archive-wrapper li.blog001:first-child, ul.blog-archive-wrapper li.blog001:nth-child(2){
		width: 100%;
	}
	
	ul.blog-archive-wrapper li.blog001:first-child .blog-contents, ul.blog-archive-wrapper li.blog001:nth-child(2) .blog-contents{
		width: 100%;
		padding-left: 0; 
	}
	
	ul.blog-archive-wrapper li.blog001:first-child .blog001-img, ul.blog-archive-wrapper li.blog001:nth-child(2) .blog001-img{
		width: 100%;
	}
	
	ul.blog-archive-wrapper li.blog001:nth-child(2) .blog-contents{
		padding: 1em 0;
		
	}
	
	
}

/*----- serch-form -----*/
.search-form {
	margin-bottom:2em;
	width: 80vw;
	
	margin: auto;
}
@media screen and (max-width: 1025px) {
	.search-form {
		width: 90vw;
	}
}
.search-form .search-box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	margin-bottom:3em;
	position: relative;
}
.search-form .search-box .search-input {
	padding: 0 0 0 0;
	width: 100%;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	border-bottom: 2px solid #272727;
	background-color: transparent;
	outline: none;
}
/*
.search-form .search-box::before {
	content: '';
	position: absolute;
	left: 0px;
	top: 0;
	width: 25px;
	height: 50px;
	background-image: url('../images/icon-new-search.svg'); 
	background-size: 22px 22px;
	background-repeat: no-repeat;
	background-position: center;
}
*/
/*----- pager -----*/
/*
.pager {
	margin: 12% auto 0;
	color:#272727;
	font-family: "Quicksand", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.pager .pagerList {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	
}

.pager .pagerList-item {
	margin: 0 6.5px;
	width: 50px;
	height: 50px;
	text-align: center;
	border: 1px solid #d0d0d0;
	position: relative;
	
}

.pager .pagerList-item.current {
	border: 1px solid #343434;
	background-color: #343434;
	
}

.pager .pagerList-item.current a {
	color: #fff;
}

.pager .pagerList-item.ellipsis a,
.pager .pagerList-item.ellipsis span,
.pager .pagerList-item.next a,
.pager .pagerList-item.next span {
	text-indent: -9999em;
	background-position: center;
	background-repeat: no-repeat;
}

.pager .pagerList-item.ellipsis {
	width: 14px;
	border: none;
}

.pager .pagerList-item.ellipsis span {
	display: block;
	width: inherit;
	height: inherit;
	background-image: url(../images/svg/icon-three-dots.svg);
	background-size: contain;
}

.pager .pagerList-item.next a {
	background-image: url(../images/svg/icon-rightArrow-black.svg);
	background-size: 6px 11px;
}

.pager .pagerList-item a {
	width: 100%;
	height: 100%;
	font-size: 1.4rem;
	line-height: 50px;
}
*/

/*ページャー*/

 .pager {
	margin: 12% auto 0;
	color:#272727;
	font-family: "Quicksand", sans-serif;
  	font-optical-sizing: auto;
  	font-weight: 700;
  	font-style: normal;
}

 .pager .pagerList {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	
}

.pager .pagerList-item {
	margin: 0 6.5px;
	width: 50px;
	height: 50px;
	text-align: center;
	border: 1px solid #d0d0d0;
	position: relative;
	
}

.pager .pagerList-item.current {
	/*border: 1px solid #343434;*/
	background-color: #fff;
	
}

.pager .pagerList-item.current a {
	color: #fff;
}

.pager .pagerList-item.ellipsis a,
.pager .pagerList-item.ellipsis span,
.pager .pagerList-item.next a,
.pager .pagerList-item.next span {
	text-indent: -9999em;
	background-position: center;
	background-repeat: no-repeat;
}

.pager .pagerList-item.ellipsis {
	width: 14px;
	border: none;
}

.pager .pagerList-item.ellipsis span {
	display: block;
	width: inherit;
	height: inherit;
	background-image: url(../images/svg/icon-three-dots.svg);
	background-size: contain;
}

.pager .pagerList-item.next a {
	background-image: url(../images/svg/icon-rightArrow-black.svg);
	background-size: 6px 11px;
}

.pager .pagerList-item a {
	width: 100%;
	height: 100%;
	font-size: 1.4rem;
	line-height: 50px;
}


.nav-links {
	text-align: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	
	
}

.nav-links a,
.nav-links span {
	margin: 0 0.3em;
	width: 3.5em;
	height: 3.5em;
	border-radius: 1.75em;
	border: none;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background:transparent;
	/*border: 1px solid #272727;*/
	color: #272727;
	font-size: 1.8rem;
}
@media screen and (max-width: 1025px) {
	.nav-links a,
	.nav-links span {
		width: 3em;
		height: 3em;
		border-radius: 1.5em;
		font-size: 1.6rem;
	}
}

.nav-links span{
	color: #fff;
}

.nav-links a {
	cursor: pointer;
	background: #fff;
	color: #272727;
}
/*
.nav-links a:hover {
	opacity: 0.95;
}
*/
.nav-links .current {

	border: none;
	background:#272727;
	color: #fff;
}

.nav-links  .dots{
	color: #272727;
	background:transparent;
	border: none;
	padding-bottom: 0.5em;
}



/* ---font  **/


.swiss{
	font-family: "swiss-721-bt-rounded", sans-serif;
font-weight: 700;
font-style: normal;
}

.lexend-deca{
	font-family: "lexend-deca", sans-serif;
font-weight: 700;
font-style: normal;
}

.quicksand-700{
  font-family: "Quicksand", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}


/*----------  blog-single  ----------*/

.page-main5{
	width: 100vw;
	padding: 25vh 0 0;
	overflow: hidden;
	background: #fff;
}

@media screen and (max-width: 1025px) {
	.page-main5{
		width: 100vw;
		padding: 15vh 0 0;
		overflow: hidden;
		background: #fff;
	}
}

.page-main5-content{
	/*background: red;*/
	margin: auto;
	width: 60vw;
	max-width: 1200px;
}

.page-main5-content .heading7{
	padding: 2.5em 0 2em;
	font-size: 2em;
}

.page-main3-content .tagcontent-wrapper{
	display: flex;
	gap: 40px;
	width: 60vw;
	max-width: 1200px;
	margin: auto;
	padding-top: 3em;
}

@media screen and (max-width: 1025px) {
	.page-main3-content .tagcontent-wrapper{
		width: 90vw;
	}
}


.page-main5-content .tagcontent-wrapper{
	display: flex;
	gap: 40px;
	width: 60vw;
	max-width: 1200px;
	margin: auto;
	padding-top: 3em;
}

@media screen and (max-width: 1025px) {
	.page-main5-content .tagcontent-wrapper{
		width: 90vw;
	}
}


@media screen and (max-width: 1025px) {
	.page-main5-content{
		width: 90vw;
	}
}
.page-main6{
	width: 100vw;
	padding: 10vh 0 0;
	overflow: hidden;
	background: #fff;
	/*position: fixed;*/
	z-index: -2;
}
	
.page-main6-content{
	/*background: red;*/
	margin: auto;
	width: 60vw;
	max-width: 1200px;
	min-height: 1000px;
}	
@media screen and (max-width: 1025px) {
	.page-main6-content{
		width: 90vw;
	}
}	
/*blog- recommend*/
.recommend001.blog-recommend{
	width: 60vw;
	margin: auto;
	max-width: 1200px;
	/*background: red;*/
	padding: 20vh 0;
	display: flex;
	gap: 4%;
	flex-flow: wrap;
}	
@media screen and (max-width: 1025px) {
	.recommend001.blog-recommend{
		width: 90vw;
		padding: 10vh 0;
	}	
}

.pagelink-bar2.blog-pagelink-bar{
	width: 60vw;
	height: 3em;
	margin: auto;
	cursor: pointer;
	
	position: relative;
	overflow: hidden;
	max-width: 1200px;
}
@media screen and (max-width: 1025px) {
	.pagelink-bar2.blog-pagelink-bar{
		width: 90vw;
		height: 3em;
		margin-right: 5vw;
		margin-left: auto;
		position: relative;
		overflow: hidden;
	}
	
}

.blog-single-visual{
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

/*damy*/
.damy{
	/*filter: grayscale(100%);*/
	padding: 2em 0;
}
.damy-heading{
	padding: 1.5em 0 1em;
	
}


/*コンタクトフォーム*/

#new-contact-container {
	padding-bottom: 30vh;
}
#new-contact-container .about-section{
	width: 100vw;
	padding: 0 ;
	
	max-width: 1000px;
	align-content: center;
	align-items: center;
	margin: auto;
	text-align: center;
}

@media screen and (min-width: 740px) {
	#new-contact-container .about-section{
		padding: 0 3vw;
	}
}
@media screen and (min-width: 1250px) {
	#new-contact-container .about-section{
		padding: 5em 0;
	}
}
#pg-contact {
	text-align: center;
	padding-bottom: 20vh;
}



#pg-contact .lead strong {
	font-weight: 500;
}

#pg-contact .form-inner {
	margin: 0 auto 5%;
	max-width: 1200px;
}

#pg-contact .form-inner .contact-form {
	margin: auto;
}

#pg-contact .form-inner .contact-form .input-box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	text-align: left;
}

#pg-contact .form-inner .contact-form .input-box:not(:first-child) {
	margin-top: 5.5%;
}

#pg-contact .form-inner .contact-form .input-box .label-area {
	padding: 14px 10px 14px 0;
	width: 25%;
	font-size: 1.6rem;
}

#pg-contact .form-inner .contact-form .input-box .input-area {
	width: 75%;
	color: #404040;
	position: relative;
}

#pg-contact .form-inner .contact-form .input-box .input-area input {
	padding: 14px 14px;
	width: 100%;
	font-size: 1.6rem;
	color: #838383;
	border-radius: 5px;
	/*border: none;*/
	background-color:#eee;
	/*border: 1px solid #272727;*/
}

#pg-contact .form-inner .contact-form .input-box .input-area textarea {
	resize: none;
	padding: 14px 12px;
	width: 100%;
	height: 243px;
	font-size: 1.6rem;
	color: #838383;
	border: none;
	background-color:#eee;
	border-radius: 5px;
	/*border: 1px solid #272727;*/
	margin-bottom:-5px;
}

#pg-contact .form-inner .contact-form .input-box .input-area input:focus,
#pg-contact .form-inner .contact-form .input-box .input-area textarea:focus {
	outline: none;
	color: #272727;
	/*box-shadow: inset 2px 2px 3px rgba(0,0,0,.3);*/
}

#pg-contact .form-inner .contact-form .input-box .input-area .input-error {
	display: none;
	position: absolute;
	bottom: -30px;
	left: 0;
	color: #c00;
}

#pg-contact .form-inner .contact-form .input-box .input-area .input-error.wpcf7-not-valid-tip {
	display: block;
}

#pg-contact .form-inner .contact-form .action-box {

	margin-top: 5em;
	margin-bottom: 5em;
}


#pg-contact .form-inner .note {
	margin-top: 4%;
}

#pg-contact .form-inner .note small {
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0.2em;
	text-align: left;
}

.wpcf7 form.sent .wpcf7-response-output { /* 送信ボタン下完了時 */
    font-size: 0.1rem;
	font-family:"forma-djr-text", 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-weight: 400;
	font-style:normal;
	padding:0.1em ;
	border-color: #eee;
	color:#eee;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output { /* 送信ボタン下未入力警告 */
    border-color: var(--orange);
	padding:1em ;
	color: var(--orange);
}

.wpcf7-not-valid-tip { /* 必須未入力項目下の文章 */
    color: var(--orange);
    font-size: 1.5rem;	
}

/*フォーム終わり*/

#pg-contact .form-inner .contact-form .input-box .conform-area {
	width: 75%;
	height:100px;
	color: #272727;
	position: relative;
}

#pg-contact .section-buttons{
	width:260px;
	margin:auto;
}

/*フォーム*/
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 740px) {


	#pg-contact .form-inner {
	margin: 8% 0% 5% 0%;
	width: 100%;
	border-radius: 0;	
	}

	#pg-contact .form-inner .contact-form .input-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	#pg-contact .form-inner .contact-form .input-box:not(:first-child) {
		margin-top: 6.7%;
	}

	#pg-contact .form-inner .contact-form .input-box .label-area {
		padding: 6px 0;
		width: 100%;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area {
		width: 100%;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area input {
		padding: 13px 18px;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area textarea {
		padding: 13px 18px;
		height: 160px;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area .input-error {
		padding: 0 18px;
		bottom: -20px;
		font-size: 1.1rem;
	}

	#pg-contact .form-inner .contact-form .action-box {
		margin-top: 5em;
	margin-bottom: 5em;
	}

	#pg-contact .form-inner .note {
		margin-top: 10%;
		
	}

	#pg-contact .form-inner .note small {
		font-size: 1.3rem;
		line-height: 1;
		letter-spacing: 1px;
	}
	
}
/*アスタリスク*/
.contact-aster{
	color: var(--orange);
}
/*チェックボックス変更*/

.wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
	
}
span .wpcf7-checkbox .wpcf7-list-item {
  position: relative;
  margin: 8px 50px 0 0 ;/*項目ごとの余白を調整*/
}
.wpcf7-checkbox .wpcf7-list-item-label {/*項目の色や文字サイズ*/
  /*color: #fff;*/
  cursor: pointer;
  font-size: 16px;
}
#new-contact-container input[type="checkbox"] {
  position: absolute;
	
  opacity: 0;/*既存のチェックボックスを見えなくする*/
}

.wpcf7-checkbox .wpcf7-list-item-label:before {/*チェックボックスの枠*/
  content: '';
  height: 25px;
  width: 25px;
  display: inline-block;
  background: #fff;
  position: relative;
  top: -2px;
  left: -5px;
  margin-right: 1em;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
	background-color:#fff;
	border:1px solid #ddd;
	border-radius:5px;
	z-index: 5;
}

input[type="checkbox"]:checked +  .wpcf7-list-item-label:after {/*チェックアイコン*/
  content: "";
  display: block;
  position: absolute;
  bottom: 4px;
  left: -4px;
  width: 23px;
  height: 23px;
  /*border-radius: 5px;*/
border:1px solid #272727;
  background-image:url(../images/common/contact-check01.svg);
  background-repeat: no-repeat;
  background-size: cover;
 background-color:#272727;
  	border: none;
	z-index: 5;
	border-radius: 5px;
}

input[type="checkbox"]:checked +  .wpcf7-list-item-label:before {/*チェックアイコン*/
  content: "";
background-color:#272727;
  border-radius: 5px;
 border:1px solid #272727;
}



#pg-contact .agree_box{
	margin-top:4px;
}

/*フォーム*/
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 740px) {
.wpcf7-checkbox .wpcf7-list-item-label:before {/*チェックボックスの枠*/
 
  left: 0px;

}
	input[type="checkbox"]:checked +  .wpcf7-list-item-label:after {/*チェックアイコン*/

  left: 1px;
 
}

	#pg-contact .form-inner {
	margin: 0% 0% 5% 0%;
	width: 100%;
	border-radius: 0;	
	}

	#pg-contact .form-inner .contact-form .input-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	#pg-contact .form-inner .contact-form .input-box:not(:first-child) {
		margin-top: 6.7%;
	}

	#pg-contact .form-inner .contact-form .input-box .label-area {
		padding: 6px 0;
		width: 100%;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area {
		width: 100%;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area input {
		padding: 13px 18px;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area textarea {
		padding: 13px 18px;
		height: 160px;
		font-size: 1.6rem;
	}

	#pg-contact .form-inner .contact-form .input-box .input-area .input-error {
		padding: 0 18px;
		bottom: -20px;
		font-size: 1.1rem;
	}

	#pg-contact .form-inner .contact-form .action-box {
		margin-top: 5em;
	margin-bottom: 5em;
	}

	#pg-contact .form-inner .note {
		margin-top: 10%;
		
	}

	#pg-contact .form-inner .note small {
		font-size: 1.3rem;
		line-height: 1;
		letter-spacing: 1px;
	}
	
}
/*アスタリスク*/
.contact-aster{
	color: var(--orange);
	font-size: 0.3em;
	vertical-align: top;
	padding-left: 0.2em;
}


.contact-label{
	
	
}

.contact-label::after{
	
}


/*フォーム終わり*/




/*サブミットボタン*/

input[type="submit"] {
	transition: all 0.3s ease 0.2s;
	color: #fff;
	border: 1px solid #fff;
	background: var(--orange);
	-webkit-transition: all 0.3s ease 0.2s;
	z-index: 1;
	padding:15px 0;
	width:230px;
	border-radius: 10px;
	overflow: hidden;
	position: relative;

}

/*
input[type="submit"]:hover {
	color: var(--orange);
	border: 1px solid var(--orange);
}

input[type="submit"]::after {
	
}
*/

#pg-contact .section-buttons{
	width:260px;
	margin:auto;
}

/*サンクス*/

#pg-thanks {
	width: 100vw;
	min-height: 100vh;
	padding: 10vh 0vw 10vh; 
	color: #272727;
	display: grid;
	align-content: center;
	align-items: center;
}
#pg-thanks.pg404{
	padding: 10vh 0vw 15vh; 
}

.page-heading.thanks-page-heading{
	font-size: 10vw;
	opacity: 1;
	font-family: "Momo Trust Display", sans-serif;
  font-weight: 400;
  font-style: normal;
	padding-bottom: 0.5em; 
	letter-spacing:normal;
	line-height: 1;
	/*color: var(--orange);*/
}
@media screen and (max-width: 1025px) {
	
	.page-heading.thanks-page-heading{
		font-size: 14vw;
	}
}

.thanks-excerpt{
	text-align: center;
	margin: auto;
	margin-top: 0em;
	padding: 0 5vw;
}


.pagelink-bar2.thanks-pagelink-bar{
	width: 25vw;
	margin-top: 4em;
	height: 3em;
	margin-right: auto;
	cursor: pointer;
	margin-left: auto;
	position: relative;
	overflow: hidden;
}

.thanks-lottie-icon{
	width: 10vw;
	height: 10vw;
	margin: auto;
	margin-top: 2em;
}

.section008{
	width: 100vw;
	height: 70vh;
}

@media screen and (max-width: 1025px) {
	.thanks-excerpt{
		/*margin-top: 3em;*/
	}
	
	.pagelink-bar2.thanks-pagelink-bar{
		width: 40vw;
	}
	.thanks-lottie-icon{
		width: 25vw;
		height: 25vw;
	}
	
	.section008{
		height: 60vh;
	}
}

#pg-thanks .wrapper{
	min-height:250px;
}


/*-----------------------サンクス-----------------------------*/


#new-thanks-container .about-section{
	
	min-height: 100vh;
	max-width: 1000px;
	align-content: center;
	align-items: center;
	margin: auto;
	text-align: center;
}


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

.page-heading.contact-page-heading{
	font-size: 10vw;
}


.contact-heading-wrapper{
	margin-top: 10vh;
}



/*----- blog-single -----*/

.blog-single-img{
	max-width: 1200px;
}

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

	.blog-single-img{
		width: 100vw!important;
		margin-left: -5vw;
	}

}



.works-about-lottie{
	
	
}
.works-about-lottie-wrapper{
	padding: 2.5vw 0 0 2.5vw;
	
}

.d-gray{
	background: #272727; 
}
.l-gray{
	background: #ddd; 
}



#load0{
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	background: #eee;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}

/*404*/
.page-heading.page-heading-404{
	font-size: 10vw;
	opacity: 1;
	font-family: "Momo Trust Display", sans-serif;
  font-weight: 400;
	padding: 0;
  font-style: normal;

	letter-spacing:normal;
	margin: 0 auto;
	/*color: var(--orange);*/
}
@media screen and (max-width: 1025px) {
	
	.page-heading.page-heading-404{
		font-size: 14vw;
	}
}
.heading-404{
	text-align: center;
	margin: auto;
		padding-bottom: 1em; 
}

.grecaptcha-badge { visibility: hidden; }




