@charset "utf-8";
/*------------------------------------------------------- CSS clear*/

html{margin: 0px;
	padding: 0px;
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;}
body {
	color:#2E2E2E;
	margin:0;
	padding:0;
}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
	margin: 0;
	padding: 0;
}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{
	border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li {list-style:none;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym {border:0;font-variant:normal;}
sup,sub {line-height:-1px;vertical-align: text-top;}
sub {vertical-align:text-bottom;}
input, textarea, select{font-family:inherit;font-size:inherit;font-weight:inherit;}
a img {	border:0;overflow: hidden;}
*{box-sizing: border-box;}

body{
	padding: 0px;
	margin: 0px;
	font-family: "Noto Sans JP","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	-webkit-text-size-adjust: 100%;	
}
img{
	max-width: 100%;
	height: auto;
}
a {

}
html { margin: 0px !important; }

a:link {
	color: #666;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
a:visited{
	color: #666;
}
a:hover {
	color: #695230;
	text-decoration: underline;
}
a:active {
	color: #666;
}
a img {
     border:none;
     verticle-align:top;
     -webkit-transition: 0.3s ease-in-out;
     -moz-transition: 0.3s ease-in-out;
     -o-transition: 0.3s ease-in-out;
     transition: 0.3s ease-in-out;
}
a:hover img {
	opacity: 0.6;     /* 透過レベル */
	filter: alpha(opacity=60);
}
strong {
	font-weight: bold;
}

@keyframes myBlur{
   0%{ filter: blur(0); }
  60%{ filter: blur(0); }
 100%{ filter: blur(8px); }
 }
 @keyframes e-textBlur{
   0%{ filter: blur(10px); transform: scale(1.5);}
  70%{ filter: blur(0); transform: scale(1);}
 100%{ filter: blur(0);transform: scale(1);}
 }
@keyframes change {
	0% {opacity:1;}
	50% {opacity:0;}
	100% {opacity:0;}
}
@keyframes mRotate {
  from {transform:rotateX(0);}
	to {transform:rotateX(90deg);}
}
@keyframes change-out {
	0% {opacity:0;}
	50% {opacity:0;}
	100% {opacity:1;}
}
@keyframes mRotate-out {
  from {transform:rotateX(90deg);}
	to {transform:rotateX(0);}
}
@keyframes fadeinUp {
	50% {
		transform: translate(0,30px);
		opacity: 0;
	}
	100% {
		transform: translate(0,0);
		opacity: 1;
	}
}
@keyframes textIn{
  from{
    opacity:0;
    transform: translateY(30px);
  }
  to{
    opacity:1;
    transform: translateY(0);
  }
}
@keyframes catchFocus{
	0%{
		opacity:0;
		filter:blur(8px);
		transform: translate(0,40%);
	}


	100%{
		opacity:1;
		filter:blur(0);
		transform: translate(0,0);
	}
}
@keyframes blurFocus{
	0%{
		opacity:0;
		filter:blur(8px);
	}

	100%{
		opacity:1;
		filter:blur(0);
	}
}
@keyframes lineGrow{
	to{
		width:100%;
	}
}
@keyframes photoMove{
	from{transform: translateY(-50%);}
	to{transform: translateY(30%);}
}
@keyframes photoMove2{
	from{transform: translateY(-70%);}
	to{transform: translateY(100%);}
}
@keyframes photoZoom{
	from{filter: blur(0px);}
	to{filter: blur(20px);}
}

@keyframes shadowMove{
	from{box-shadow: -3em -3em 0px 0em #2c3ca0;}
	to{box-shadow: 3em 3em 0px 1em #2c3ca0;}
}
@keyframes backMove{
	from{background-position: center top}
	to{background-position: center center}
}
@keyframes fadeOut{
	0%{
		opacity: 1;
		filter: blur(0px);
	}
	10%{
		opacity: 1;
		filter: blur(0px);
	}
	20%{
		opacity: 0;
		filter: blur(10px);
	}
	100%{
		opacity: 0;
		filter: blur(10px);
	}
}

/* レイアウト
----------------------------------------------------------- */
header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	padding: 2vw;
	pointer-events: none;
}
header ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}
header ul li#logo a {
	display: block;
	background: #FFF;
	border-radius: 2px;
	padding: 1em;
	max-width: 15em;
	pointer-events: auto;
}
header ul li#logo a img{
	display: block;
}
#MainVisual{
	position: sticky;
	width: 100%;
	height: 100vh;
	min-height: 100vh;
	top: 0;
	left: 0;
	right: 0;
	font-feature-settings: "palt";
}
#MainVisual #backgroundSlide{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}
#MainVisual #backgroundSlide:after{
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	display: block;
	background-color: transparent;
	background-image: linear-gradient(#2c3ca0, #202538);
	opacity: 0.7;
}
#MainVisual .message {
	position: absolute;
	/*top: 0;*/
	bottom: 0;
	left: 0px;
	width: 100%;
	height: 100%;
	/*transform: translate(0,-50%);*/
	padding: 2vw;
	color: #FFF;
	text-align: center;
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	
	animation: fadeOut 1s linear both;
	animation-timeline: view();
	animation-range: contain 0% cover 100%;
}
#MainVisual .message h2 {
	color: #FFF;
	font-size: 7vw;
	font-weight: 700;
	line-height: 1.3em;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	font-style: normal;
	position: relative;
	display: inline-block;
	text-align: left;
	opacity: 0;
}
#MainVisual .message.show h2{
	opacity: 1;
}
#MainVisual .message h2 span{
	display:inline-block;
	opacity:0;
	transform:translateY(30px);
}

#MainVisual .message.show h2 span{
	animation:textIn .7s cubic-bezier(.25,.8,.25,1) forwards;
	animation-delay:5s;
}


#MainVisual .message p{
	font-size: 2vw;
	line-height: 1.5em;
	letter-spacing: 0.24em;
	position: absolute;
	font-feature-settings: "palt";
	text-align: left;
	top: 50%;
	left: 2vw;
	transform: translate(0,-50%);
	opacity: 0;
	filter: blur(8px);
	
}
#MainVisual .message.show p{
	animation: catchFocus 1s ease forwards;
}
#MainVisual .message p:after{
	content: "";
	height: 2px;
	width: 0;
	background: #cc2a3e;
	display: block;
	margin-top: 1em;
	max-width: calc(100vw - 4vw);
}

#MainVisual .message.show p:after{
	animation: lineGrow .8s ease forwards;
	animation-delay: .6s;
}
.vegas-animation-kenburns {
    animation: kenburns linear;
}

@keyframes kenburns {
    0% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}



#messages {
	backdrop-filter:blur(10px);
	position: relative;

}
#messages:before{
	content: "";
	background-color: #c5cdff77;
	height: 50vh;
	width: 100%;
	display: block;
}

#messages .rightBox {
	background-color:hsla(227,26%,17%,0.64);
background-image:
radial-gradient(at 95% 67%, hsla(231,56%,40%,0.58) 0px, transparent 50%),
radial-gradient(at 53% 1%, hsla(231,56%,40%,0.68) 0px, transparent 50%),
radial-gradient(at 40% 20%, hsla(228,55%,21%,0.87) 0px, transparent 50%),
radial-gradient(at 0% 0%, hsla(231,56%,40%,1) 0px, transparent 50%);
	width: 100%;
	min-height: 50vh;
	color: #FFF;
	text-align: center;
	padding-top: 25vh;
	padding-bottom: 25vh;
	backdrop-filter:blur(20px);
}
#messages .rightBox:before{
	content: "";
	width: 25vw;
	height: 50%;
	position: absolute;
	background: url("../../img/pic001.jpg?20260323");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	left: 0;
	top:40%;
	transform: translate(0,-50%);
	
	animation: photoMove 1s linear both;
	animation-timeline: view();
	animation-range: entry 0% exit 120%;
}
#messages .rightBox:after{
	content: "";
	width: 20vw;
	height: 20vw;
	position: absolute;
	background: url("../../img/pic005_trim.jpg?20260323");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	right: 0;
	top:50%;
	transform: translate(0,-50%);
	
	animation: photoMove2 1s linear both;
	animation-timeline: view();
	animation-range: entry 0% exit 120%;
	animation-direction: reverse;
}

#messages .rightBox .leftJustified{
	width: 90%;
	max-width: calc(90% - 45vw);
	margin: 0 auto;
	text-align: left;
	padding-left: 5vw
}
#messages .rightBox .leftJustified p span{
	display: inline-block;
}
#messages .rightBox h2 {
	font-size: 2.5vw;
	font-weight: 900;
	line-height: 2.5em;
	letter-spacing: 0.12em;
	font-feature-settings: "palt";
	font-style: normal;
	margin-bottom: 1em;
}
#messages .rightBox h2:after{
	content: "";
	width: 6em;
	height: 2px;
	background: #cc2a3e;
	display: block;
	margin-left: 0;
	margin-right: auto;
}
#messages .rightBox .big{
	font-size: 1.4em;
}
#messages .rightBox .message {
	font-size: 1.1em;
	font-weight: 400;
	line-height: 3em;
	letter-spacing: 0.04em;
	font-style: normal;
	font-weight: 300;
}

#access {
	padding-bottom: 7em;
	padding-top: 5em;
	background-image: url("../../img/pic001.jpg?20260323");
	background-position: right center;
	background-size: cover;
	background-repeat: no-repeat;
	position: relative;
	text-align: center;
	background-attachment: fixed;
}
#access:before{
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	/*background-image: linear-gradient(270deg, rgba(250, 250, 250, 0.95) 0%, rgb(250, 250, 250) 72%);*/
	background: #5c5d65DD;
	z-index: 1;
}
#access *{
	z-index: 2;
	position: relative;
}
#access h2 {
	font-size: 2.5em;
	letter-spacing: 0.16em;
	text-align: left;
	padding-bottom: 1em;
	font-feature-settings: "palt";
	position: relative;
	z-index: 2;
	font-weight: 700;
	width: 90%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
	color: #FFF;
}

#access h2:before{
	content: "";
    width: calc((100vw - 920px) / 2);
    height: 2px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0px;
    background-color: #cc2a3e;
	transform: translate(-100%,0);
}
#access h2:after{
	content: "";
    width: 4.5em;
    height: 2px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0px;
    background-color: #cc2a3e;
}
#access h3{
	position: relative;
	display: inline-block;
	color: #FFF;
	font-size: 1.3em;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	z-index: 3;
	padding: 0.1em 1em 0.2em 1em;
	background: #2e2e2e;
	letter-spacing: 0.1em;
}
table{
	width: 100%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	background: #e8e9f1;
	margin-top: 3em;
	margin-bottom: 4em;
	display: block;
	padding: 1em 2em;
	position: relative;
	z-index: 20;
	color: #202538;
}

table *{
	z-index: 7;
	position: relative;
}
table tbody{
	display: table;
	width: 100%;
	max-width: 920px;
	border-collapse: separate;
	border-spacing: 0em 1em;
	margin-bottom: 0.5em;
}
table tr{
}
table th,table td{
	padding: 1em;
}
table th{
	/*border-bottom:1px #cc2a3e solid;*/
	background: #192557;
	color: #FFF;
	white-space: nowrap;
	font-weight: 700;
	letter-spacing: 0.2em;
}
table td{
	border-bottom:1px #192557 solid;
	line-height: 1.5em;
}
table span{
	display: inline-block;
	padding-right: 0.5em;
}
#access ul {
	margin-top: 3em;
	position: relative;
	z-index: 2;
	max-width: 1140px;
	margin-right: auto;
	margin-left: auto;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	column-gap: 1em;
}
#access ul li {
	background-color: #FFF;
	padding: 2em;
	text-align: left;
	
    position: relative;
}
#access ul li:before{
    content: "";
    width: 50%;
    height: 2em;
    background: #CCC;
    position: absolute;
    top: 100%;
    left: 50%;
    display: block;
    transform: translate(-50%,-3em);
    filter: blur(20px);
    z-index: 5;
}
#access ul li:after{
    content: "";
    width: 100%;
    height: 100%;
    background: #FFF;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: 6;
}
#access ul li *{
	z-index: 7;
}

#access ul li iframe {
	margin-bottom: 20px;
}
#access ul li h4 {
	font-size: 1.2em;
	font-weight: 600;
	margin-bottom: 20px;
}
#access ul li access {
	margin-bottom: 20px;
	display: block;
}
#access ul li p {
}
#access:after{
	content: "";
	width: 20vw;
	height: 20vw;
	background: #c5cdffA0;
	position: absolute;
	right: 10vw;
	bottom: 5vw;
	z-index: 1;
	
	animation: photoMove 1s linear both;
	animation-timeline: view();
	animation-range: entry 0% exit 120%;
}

#gallery2{
	width: 100%;
	height: 110vh;
	background: #5c5d65;
	position: relative;
}
#gallery2:before{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: url("../../img/pic010_trim.jpg?20260323");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
	background-attachment: fixed;
	filter: grayscale(50%);
	opacity: 0.7;
	mix-blend-mode:multiply;
	transform: scale(1);
	animation: photoZoom 1s linear both;
	animation-timeline: view();
	animation-range: contain 0% exit 100%;
}
#gallery2:after{
	content: "";
	width: 2em;
	height: 45vh;
	background: #cc2a3e;
	position: absolute;
	right: 3vw;
	bottom: 4vh;
	z-index: 10;
	
	animation: photoMove 1s linear both;
	animation-timeline: view();
	animation-range: entry 0% exit 120%;
}
#gallery2 .filterBlock{
	width: 100%;
	height: 40vh;
	position: absolute;
	bottom: 0;
	left: 0;
	color: #FFF;
	z-index: 10;
	mix-blend-mode:multiply;
}
#gallery2 .filterBlock:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #3e445c;
	opacity: 0.9;
	position: absolute;
	z-index: 10;
	backdrop-filter:blur(10px);
}

#recruit{
	padding-top: 7em;
	padding-bottom: 7em;
	/*border-top: #2dc3a8 solid 7em;*/
	position: relative;
	background: #FFF;
	background-image:
radial-gradient(at 12% 70%, hsla(232,100%,93%,0.53) 0px, transparent 50%),
radial-gradient(at 70% 100%, hsla(232,41%,87%,1) 0px, transparent 50%);
}
#recruit .rhBlock{
	position: relative;
}
#recruit .rhBlock:after{
	content: "";
	width: calc(((100% - 920px) / 2) + 10em);
	height: calc(100% - 5em);
	position: absolute;
	background: url("../../img/pic009.jpg?20260323");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	right: 0;
	top:5em;
	box-shadow: -3em -3em 0px 0px #2c3ca0;
	display:block;
	will-change: transform;
	
	animation: shadowMove 1s linear both;
	animation-timeline: view();
	animation-range: cover 0% cover 100%;
}


#recruit h2 {
	font-size: 2.5em;
	letter-spacing: 0.16em;
	text-align: left;
	padding-bottom: 1em;
	font-feature-settings: "palt";
	position: relative;
	z-index: 2;
	font-weight: 700;
	width: 90%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
}

#recruit h2:before{
	content: "";
    width: calc((100vw - 920px) / 2);
    height: 2px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0px;
    background-color: #cc2a3e;
	transform: translate(-100%,0);
}
#recruit h2:after{
	content: "";
    width: 4.5em;
    height: 2px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0px;
    background-color: #cc2a3e;
}
#recruit .message{
	font-feature-settings: "palt";
	width: 90%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	margin-top: 5em;
	margin-bottom: 5em;
	line-height: 2em;
	font-size: 1.2em;
	letter-spacing: 0.2em;
	color: #202538;
	font-weight: 600;
	position: relative;
	padding-bottom: 3em;
}
#recruit .message h3{
	font-size: 2em;
	font-weight: 900;
	margin-bottom: 1.5em;
	color: #2c3ca0;
	letter-spacing: 0.5em;
	line-height: 2em;
}
#recruit .message p{
}

#recruit .data{
	font-feature-settings: "palt";
	width: 90%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	margin-top: 5em;
	margin-bottom: 5em;
	line-height: 2em;
	font-size: 1em;
	color: #202538;
	font-weight: 400;
	position: relative;
}
#recruit .data h3{
	font-size: 2em;
	font-weight: 600;
	position: relative;
	line-height: 1em;
	margin-top: 2em;
}
#recruit .data h3:before{
	position: absolute;
	content: "";
	width: 0.3em;
	height: 0.3em;
	background: #cc2a3e;
	left: 0;
	top: 0;
	transform: translate(calc(-100% - 0.5em),0.15em);
}
#recruit table{
	background: #FFF;
}
#recruit table tbody{
	margin-bottom: 0px;
}
#recruit p.button{
	padding-top: 1em;
}
#recruit p.button a{
	display: inline-block;
	border: 1px #3e445c solid;
	position: relative;
	padding: 0.8em 1.3em;
	padding-right: 5em;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.1em;
	color: #192557;
}
#recruit p.button a:after{
	content: "";
	background: #2c3ca0;
	width: 1.55em;
	height: 1.55em;
	position: absolute;
	right: 0.6em;
	top: 0.6em;
	font-size: 1.1em;
	background-image: url("../img/yazirushi.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 0.9em 0.9em;
}


#recruit dl{
	display:table;
	padding: 0px;
	margin-bottom: 0.5em;
	border-collapse:collapse;
}
#recruit dl div{
	display:table-row;
	margin-inline-start: 0;
}
#recruit dl div.border{
	position: relative;
	border-top: 1px #CCC solid;
}
#recruit dt,#recruit dd{
	display: table-cell;
	margin-inline-start: 0;
	padding-bottom: 0.3em;
}
#recruit dt{
	padding-right: 1em;
	white-space: nowrap;
	padding-bottom: 0.3em;
}
#recruit dt span.smpBR{
	display: inline-block;
	font-feature-settings: "palt";
}






body footer {
	background-image: url("../../img/pic004.jpg?20260323");
	text-align: center;
	color: #FFF;
	padding-top: 2em;
	padding-bottom: 2em;
	position: relative;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	animation: backMove 1s linear both;
	animation-timeline: view();
	animation-range: entry 0% exit 120%;
}
body footer:before{
	background: #202538;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0.95;
	left: 0;
	top: 0;
}
body footer *{
	position: relative;
	z-index: 10;
}
body footer a{
	color: #FFF !important;
	text-decoration: none;
}
body footer p {
	margin-bottom: 1em;
}
footer p.logo {
	width: 15em;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}
footer h1 {
	font-size: 0.9em;
	letter-spacing: 0.19em;
	margin-bottom: 1em;
}
footer access {
	font-size: 0.9em;
	letter-spacing: 0.19em;
	margin-bottom: 1em;
	display: block;
}
footer p#copyRight {
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.9em;
	padding-top: 1em;
	border-top: 1px #cc2a3e solid;
}



/*
------------------------------------------------------------*/
@media screen and (max-width:1024px){
body{
	font-size: 0.9em;
}
#MainVisual .message {
	padding: 2vw;
	display: grid;
	grid-template-columns: 1fr;
	align-content: center;
}
	#MainVisual .message p{
		position: static;
	}
#MainVisual .message h2 {
	font-size: 2.3em;
}
#messages .rightBox:before{
	width: 90%;
	height: 20vh;
	top: -5vh;
	}
#messages .rightBox .leftJustified{
	max-width: none;
}
#messages .rightBox:after{
	width: 50%;
	height: 25vh;
	bottom: 8vh;
	top: auto;
	background-position: center center;
	z-index: -1;
}
#access{
	padding-right: 2em;
	padding-left: 2em;
}
#access h2{
	width: 100%;
}
#access h2:before{
	width: 100%;
}
#access table{
	padding: 0em 1em;
}
#gallery2{
	height: 70vh;
}
#gallery2 .filterBlock:before{
	height: 50%;
	bottom: 0;
}
#recruit{
	padding-right: 2em;
	padding-left: 2em;
}
#recruit h2{
	width: 100%;
}
#recruit h2:before{
	width: 100%;
}
#recruit .message{
	max-width: 68vw;
	margin-left: 0;
}
#recruit .rhBlock:after{
	width: 32vw;
}
}


@media screen and (max-width:767px){
body{
	font-size: 0.8em;
}
#MainVisual .message h2 {
	font-size: 8.7vw;
}
#MainVisual .message p{	
	font-size: 3vw;
	}
#messages .rightBox .leftJustified{
	padding-left: 0;
}
#messages .rightBox h2{
	font-size: 5.5vw;
}
#messages .rightBox h2 span{
	display: inline-block;
}
#access:after{
	width: 20vh;
	height: 20vh;
	right: 2vw;
}
#recruit .rhBlock:after{
		
}
#recruit .message{
	width: 100%;
	max-width: 100%;
	margin-bottom: 0px;
}
#recruit .message h3{
	letter-spacing: 0.2em;
	font-feature-settings: "palt";
}
	#recruit .rhBlock:after {
        width: 100%;
        position: static;
        height: 40vh;
    }
	#recruit .message p{
		transform: translate(0px, 0);
		padding-top: 2em;
	}
	#recruit .data{
		width: 100%;
	}
	
table{
  width:100%;
}

table thead{
  display:none;
}

table tr{
  display:block;
  margin-bottom:1.5em;
  border-bottom:1px solid #ddd;
}

table th,
table td{
  display:block;
  width:100%;
}

}

/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
body{
	font-size: 0.75em;
}






}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){

}

@media (orientation: landscape) and (max-height: 450px) {
	body{
	font-size: 1em;
}
	
}



.fadeinUp.js-anime{
	transform: translate(0,50%);
	opacity: 0;
}
.fadeinUp.show{
	animation: 1s ease-in-out 0s 1 forwards fadeinUp;
}
.catchFocus.js-anime{
	opacity: 0;
	filter: blur(8px);
}
.catchFocus.show{
	animation: catchFocus 1.5s ease forwards;
}
.blurFocus.js-anime{
	opacity: 0;
	filter: blur(8px);
}
.blurFocus.show{
	animation: blurFocus 0.8s ease forwards;
}
.photoMove{
	animation: photoMove linear;
	animation-timeline: view();
	animation-range: cover 0% cover 100%;
}
