@charset "UTF-8";


/*****************************************************************
************************  Modal Window ***************************
*****************************************************************/

a.modalWindowBt
{
	cursor: pointer;
	display: block;
	margin: 1em 1em;
	background-color: white;
	color:rgb(0, 0, 0);
	font-size:1.1em;
	text-align: center;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
a.modalWindowBt span{display: block; padding:1em; text-align: center;}

a.modalWindowBt:hover
{
	background-color: rgb(255, 233, 0);
	color:white;
}
div.modalWindow
{
/*	display: none;*/
}

#modalWindow
{
	position:fixed;
	
	left: 0;
	top: 0;
	box-sizing:border-box;
	width:100%;
	height: 100%;
	z-index: 9999;
	background-color: rgba(255, 255, 255, 1);

/*	background-image: url(../_2020/bg.jpg);*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-attachment: fixed;

	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}

#modalWindow .bg
{
	position: absolute;
	box-sizing:border-box;
	width:100%;
	height: 50%;
	bottom: 0;
	background-image: url(../_2021/gl.jpg);
}

#modalWindow .animal
{
	position: absolute;
	box-sizing:border-box;
	width:calc(100% - 2rem);
	max-width: calc(1200px - 2rem);
	bottom: calc(20% + 3rem);
	background-image: url(../_2021/animal.png);
	background-size: cover;
	background-repeat: no-repeat;
}

#modalWindow .animal:after
{
	content:"";
	display:block;
	position: relative;
	padding-top: 53%;
}

#modalWindow .year
{
	position: absolute;
	box-sizing:border-box;
	width: 50%;
	max-width:25rem;
	top: 3rem;
	left: 2rem;
	background-size: cover;
	background-repeat: no-repeat;
}

.svg #modalWindow .year{background-image: url(../_2021/2021.svg);}
.no-svg #modalWindow .year{background-image: url(../_2021/2021.svg);}

#modalWindow .year:after
{
	content:"";
	display:block;
	position: relative;
	padding-top: 50%;
}

#modalWindow .catch
{
	position: absolute;
	box-sizing:border-box;
	width: calc(100% - 4rem);
	max-width: 80rem;
	bottom: 3rem;
	left: 2rem;
	background-size: cover;
	background-repeat: no-repeat;
}

.svg #modalWindow .catch{background-image: url(../_2021/catch.svg);}
.no-svg #modalWindow .catch{background-image: url(../_2021/catch.svg);}

#modalWindow .catch:after
{
	content:"";
	display:block;
	position: relative;
	padding-top: 10%;
}

#modalWindow .entBt
{
	cursor: pointer;
	position: relative;
	display: block;
	width: 100%;
	text-align: center;
	font-family:fontB, GenShinGothic-Bold;	
	font-size: 1.5rem;
	color: rgb(255, 255, 255);
	background-color: rgb(190, 71, 29);
	padding: 2rem 0 2rem;
}

#modalWindow a.entBt:before
{
	content: "";
	display: block;
	position: absolute;
	left: calc(50% + 9rem);
	top: calc(50% - .25rem);
	margin-left: calc(-.5rem * 1.41);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .5rem .5rem 0 .5rem;
	border-color: rgb(255, 255,255) transparent transparent transparent;

	animation: dirBouds 2s linear infinite; /*1秒毎にくるくる回転するアニメーション*/
}

@keyframes dirBouds {
	0%
	{
		transform: translateY( -.2rem);
	}
	20%
	{
		transform: translateY( 0rem);
	}
	50%
	{
		transform: translateY(0rem);
	}
	60%
	{
		transform: translateY(0rem);
		opacity: 1;
	}
	80%
	{
		transform: translateY( 0rem);
	}
	100% 
	{
		transform: translateY( -.2rem);
	}
}

#modalWindow .text
{
	background-color: rgb(190, 71, 29);
	color: rgb(255, 255, 255);
	box-sizing:border-box;
	width: 100%;
	padding: 0rem 0rem 8rem;
	font-family:fontB, GenShinGothic-Bold;	
	color: rgb(255, 255, 255);
	font-size: 1rem;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
}

#modalWindow .text > div
{
	max-width: 650px;
	box-sizing:border-box;
	padding: 0 2rem;
}

#modalWindow:after
{
	content: ""; 
	display: block;
	position: absolute;
	z-index: 9000;
	width: 2.5rem;
	height: 2.5rem;
	box-sizing:border-box;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 2px solid rgb(255, 255, 255);
	border-right-color: transparent;
	
	top: 50%;
	left: 50%;
	margin-top:-1.25rem;
	margin-left:-1.25rem; 

	animation: circle-spin 1s linear infinite; /*1秒毎にくるくる回転するアニメーション*/
}

#modalWindow.loaded:after
{
	display: none;
}

#modalWindow .modalBg
{
	position: fixed;
	width: 100%;
	height: 100%;
}

#modalWindow .contents_area
{
	position:relative;
	width: 100%;
	height: 100%;
	box-sizing:border-box;
/*	max-width:900px;*/
/*	word-wrap: break-word;*/
	background-color: rgba(255, 255, 255, 0);

/*	background-color: rgb(0,96,145);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-attachment: fixed;*/
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
	
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
/*	transform-origin: center center;
	transform: scale(0, 0); fixed が効かなくなる*/
	
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-ms-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
}

/*.svg #modalWindow .contents_area{background-image: url(../img/top-2019.svg);}
.no-svg #modalWindow .contents_area{background-image: url(../img/top-2019.png);}*/

#modalWindow.loaded .contents_area
{
/*	transform: scale(1, 1);*/
	top: 0em;
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

#modalWindow .text h1
{
	font-family: NotoSerif-M, serif;
	font-weight: 500;
	font-size: 1.3em;
	margin-bottom: 1em;
}

#modalWindow .text p
{
	margin-bottom: 1em;
}

#modalWindow .closeBtWrapper
{
	width: 2em;
	height: 2em;
	position: absolute;
	top: 1rem;
	right: 1rem;
}

#modalWindow .closeBtWrapper .closeBt
{
	position: fixed;
	cursor:pointer; 
	text-indent: -9999px;
	width:3em;
	height: 3em;
}
#modalWindow .closeBtWrapper .closeBt:before
{
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	height: 5px;
	top: 1.5em;
	right: 1em;
	background-color: rgb(150, 150, 150);

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}
#modalWindow .closeBtWrapper .closeBt:after
{
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	height: 5px;
	top: 1.5em;
	right: 1em;
	background-color: rgb(150, 150, 150);
	
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}


/*//////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// MEDIA SCREEN /////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////*/


@media screen and (orientation: portrait)
{	
	#modalWindow{padding: 0em;}
	#modalWindow .contents_area{margin-top: 0; border-width: 0;}
	#modalWindow .img{background-image: url(../_2020/top-2020-v.png);}
}