*
{
	margin:0;
	padding:0;
}
body{
	font-size:14pt;
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
}
h1{
    font-size: 1.7em;

}
h2{
	font-size:1.5rem;
	text-align:center;
	padding-top: 30px;
	padding-bottom: 30px;
}

.header{
	background-color:#f8f9fa;
	width:100%;
	text-align:center;
	margin:auto;
	
}
.header a{
	text-decoration:none;
	font-size:11pt;
	color:#000;
	height:30px;
	line-height:30px;
	padding:0;
	margin:0;

}
.header a .flagstrap-icon{
	margin-right:10px;
}
.header a:hover{

	background-color:#aaa;
}
.main-container{
	margin:auto;
	text-align:center;
}
.main{
	margin:auto;
}
.center{
	margin:auto;
	text-align:center;
}
.content-container.gray{
	background-image:url(/images/gray.gif);
}
.content-container.yellow{
	background-image:url(/images/yellow.gif);
}
.content-container.pink{
	background-image:url(/images/pink.gif);
}
.content-container.green{
	background-image:url(/images/green.gif);
}
.content{
	text-align:left;
	min-width:500px;
	max-width:900px;
	margin-left:auto;
	margin-right:auto;
	font-size:1rem;
	padding-bottom:25px;
}
.logo img{
	max-width:770px;
	min-width:500px;
	width:85%;
}
.logo-button{
	height:60px;
	margin:auto;
	text-align:center;
}

p{
	line-height:2em;
	padding:10px;
}
.toname{
	font-size:1.7em;
	font-weight:bold;
}
p.quote{
	margin-left:10px;
	margin-right:10px;
	margin-top:20px;
	margin-bottom:20px;

}
p.case1{

	background-color:rgba(66,133,244,0.1);
	border:1px solid #4285F4 ;
}
p.case2{
	background-color:rgba(251,188,5,0.1);
	border:1px solid #FBBC05 ;
}

a.changeorg{
	font-weight: bold;
	text-align: center;
	line-height: 1;	
	border:1px solid #ec2c22;
	border-radius: 5px;
	background: #ec2c22;
	color: #fff;
	font-size: 1rem;
	padding: 12px 18px;
	text-decoration:none;
	min-width:300px;
	margin-left:5px;
	margin-right:5px;
}
a.changeorg:hover{
	background: #C9241C;
}

a.update{
	font-weight: bold;
	text-align: center;
	line-height: 1;	
	border:1px solid #FBBC05;
	border-radius: 5px;
	background: #FBBC05;
	color: #FFF;
	font-size: 1rem;
	padding: 12px 18px;
	text-decoration:none;
	min-width:300px;
	margin-left:5px;
	margin-right:5px;
}
a.update:hover{
	background: #EDA107;
}



a.donate{
	font-weight: bold;
	text-align: center;
	line-height: 1;	
	border:1px solid #34A853;
	border-radius: 5px;
	background: #fff;
	color: #34A853;
	font-size: 1rem;
	padding: 12px 18px;
	text-decoration:none;
	min-width:300px;
	margin-left:5px;
	margin-right:5px;
}
a.donate:hover{
	color: #fff;
	background: #34A853;
}

a.donate2{
	font-weight: bold;
	text-align: center;
	line-height: 1;	
	border:1px solid #34A853;
	border-radius: 5px;
	background: #34A853;
	color: #fff;
	font-size: 1rem;
	padding: 12px 18px;
	text-decoration:none;
	min-width:300px;
	margin-left:5px;
	margin-right:5px;
}
a.donate2:hover{
	background: #2e8b57;
}
a.button{
	margin-top: 25px;
	margin-bottom: 25px;
}

p.to{
	font-size:12pt;
}
span.comment{
	color:#aaa;
	font-size:10pt;
}



.content .separate{
	position:relative;

}
.content .separate p{
	font-size:1rem;
	line-height:1.5rem;
}
.content .separate .left{
	display:inline-block;
}
.content .separate .right{
	display:inline-block;
	vertical-align:top;
}
.content .separate:after {
	content:" ";
	display:block;
	clear:both;
}

.content .separate .image{
	width:20%;
}
.content .separate .image .name{
	display:block;
	font-size:9pt;
	color:#777;
}
.content .separate .image-content{
	width:79%;
	
}

/* ============================== This is for Overall Styling of the Content Gallery. */
.gallery-container
{
	border:0;
	margin:10px auto;
	padding:0px;
	display:table;
}

.gallery
{
	max-width:900px;
	background:#999;
}


.slider
{
	overflow:scroll;
}
.slider ul
{
	width:100000px;
	list-style:none;
	margin-left:0px;
}
.slider li
{
	float:left;
}
.slider-nav
{
	display:none;
	margin-top: -10em;
	cursor: pointer;
}

.backbtn
{
	position:relative;
	opacity:0.5;
}

.nextbtn
{
	position:relative;
	opacity:0.5;
}

.slider-pagi
{
	text-align:center;
}
.pagi-container
{
	padding: 5px;
	display: inline-block;
}

.pagi-container > ul
{
	padding:2px;
	display: inline-block;	
}

.pagi-container > ul li
{
	list-style:none;
	padding:0px;
	border:1px solid #aaa;
	margin: 0px auto;
	margin-bottom:5px;
	display:inline-block;
	background: radial-gradient(rgba(255, 255, 255, 0.8) 50%, rgba(180,180,180,0.8));		
}
.pagi-container > ul li:hover{
	background: radial-gradient(rgba(220, 220, 220, 0.3), rgba(180,180,180,0.8) 95%);
}

.pagi-container > ul li a{
	display:inline-block;
	padding:5px;
	text-decoration:none;
	color:rgb(100,100,100);	
}

.pagi-container > ul li a img:hover{
	opacity:1.0;
}

.img-normal{
	opacity:0.5;
	vertical-align:bottom;
}

.img-selected{
	opacity:1.0;
}

.pagi-selected{
	-webkit-box-shadow:0 0 15px #000;
	-moz-box-shadow:0 0 15px #000;
	box-shadow:0 0 15px #000;
	opacity:1.0;
}


.scroll-to-top{
	max-width: none;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	line-height: 1.25rem;
	padding: 90px 16px 24px;
	text-align: right;

}
.scroll-to-top a img{
	fill:#1a73e;
	vertical-align:top;

}
.scroll-to-top a{
	vertical-align:top;
	text-decoration-line:none;
	text-decoration-color: #1a73e8;
	color: #1a73e8;
	font-family: Arial,Helvetica,sans-serif;
	font-size: .875rem;
	font-weight: 500;
}




.footer-container{
	font-size: 1rem;
	font-weight: 400;
	margin: 0;
	padding: 0;
	margin: 0 auto;
	background-color: #f8f9fa;
	text-align: left;
}

/* ============================== Footer > social */
.footer .social-container{
	align-items: center;
	display: flex;
}
.footer .social{
	border-bottom: 1px solid #dadce0;
	padding: 30px 0;
	width: 100%;
	height:24px;
}

.footer .social h2{
	color: #202124;
	font-family: Arial,Helvetica,sans-serif;
	font-size: .9rem;
	font-weight:normal;
	letter-spacing: .03rem;
	line-height: 24px;
	margin: 0 1.5em 0 0;
	display: inline-block;
	vertical-align: top;

}
.footer .social ul {
	list-style:none;
	display: inline-block;
	height: 1.5rem;
	margin: 0;
	padding:0;
}
.footer .social ul li {
	display: inline-block;
	margin-right: 18px;
	line-height:24px;
}
.footer .social ul li a{
	display: inline-block;
}
.footer .social ul li a img{
	vertical-align:bottom;
}

@media (min-width: 600px)
.footer .social h2 {
}




/* ============================== Form */
input[type=text], select, textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-top: 6px; 
  margin-bottom: 16px;
  resize: vertical;
}

input.submit {
	background-color: #4CAF50;
	color: white;  padding: 12px 20px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

input.submit:hover {
  background-color: #45a049;
}

.form-container label{
	display:block;
}
.form-container textarea{
	display:block;
}

.form-container{
	width: 80%;
	margin-left:auto;
	margin-right:auto;
	text-align:left;
}
.form-container > form{
	
}



.footer-container {
	background-color: #f2f2f2;
	padding: 20px;
	text-align:center;
}

/* ============================== Footer > sitemap */

.sitemap{
    border-bottom: 1px solid #dadce0;
    padding: 50px 0 0;


}
.sitemap ul{
	list-style:none;
	
}

.sitemap .glue-zippy{
	border: 0;
	flex-basis: 25%;
	max-width: 25%;
	padding: 0 20px;
	padding-left: 0;
	box-sizing: border-box;
	margin:0;
	width:25%;
	display:inline-block;
}
.sitemap .glue-zippy h2{
	text-align:left;
}

@media (min-width: 600px){
.sitemap .glue-zippy {
	border: 0;
	flex-basis: 25%;
	max-width: 25%;
	padding: 0 20px;
	vertical-align: top;
}

}

.footer .sitemap h2 {
	border: 0;
	cursor: default;
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 1.125rem;
	line-height: 1.875rem;
	font-weight:normal;
}
.footer .sitemap .glue-zippy-content{
	max-height: none!important;
	overflow: visible;
	display: block;
}
.footer .sitemap .glue-zippy-content > div{
	padding: 0 0 18px;
	font-weight: 400;
}
.footer .sitemap .glue-zippy-content > div > ul{
	border-top: 0;
	padding-bottom: 1.875rem;
	list-style:none;
}
.footer .sitemap .glue-zippy-content > div > ul > li{
	padding: 0;
}
.footer .sitemap .glue-zippy-content > div > ul > li > a{
	color: #5f6368;
	font-family: Roboto,Arial,Helvetica,sans-serif;
	font-size: .875rem;
	letter-spacing: .01562rem;
	line-height: 2.5rem;
	margin: -12px 0;
	cursor:pointer;
	text-decoration:none;
}
.footer .sitemap .glue-zippy-content > div > ul > li > a:hover{
	color:#333;
}




.footer {
	position: relative;
	padding-bottom: 0;
	padding-top: 0;
	text-align: left;
	min-width: 500px;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}


.paps{
	font-size:9pt;
	color:#777;
	text-align:center;
}
.paps a{
	text-decoration:none;
	color:#777;
}

/* ============================== Loading */

#loading {
	width: 100%;
	height: 100%;
	z-index: 9999;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #bbb;
	filter: alpha(opacity=85);
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
	opacity: 0.85;
	margin:auto;
}
#loading-window{
	z-index: 10000;
	padding: 20px;
    background-color: #fff;
    border: 1px solid #777;
    width: 180px;
    height: 180px;
	margin: auto;
	border-radius:20px;
	text-align:center;
}
/* ============================== Popup */



.popup_text_container {
	display:block;
	position:fixed;
	background: rgba(255, 255, 255);
	z-index:11;
	width:100%;
	height:100%;
}

.popup_textarea{
	display:block;
	position:fixed;
	left: calc(0vw + 2px);
	top:  calc(0vh + 2px);
	width: calc(100vw - 4px);
	height:75vh;
	padding:10px;
}

.popup_button{
	display:block;
	position:fixed;
	font-size:12pt;
	border:2px solid #aaa;
	background-color: #fff;
	border-radius:20px;
	top: 78vh;
	width: 45vw;
	height: 30px;
}
.popup_close{
	--left:50%;
}
.popup_ok{
	left:0%;
}
.popup_button:hover{
	background-color: #eee;
	cursor:pointer;
}


@media (max-width: 599px){
	h2{
		padding-left:10px;
		padding-right:10px;
	}
	.logo img ,
	.footer{
		max-width: 100%!important;
		min-width: auto!important;
		width: 100%!important;
	}
	.content {
		text-align: left;
		min-width: auto;
		max-width: auto;
		width: 100%!important;
		margin-left: auto;


	}
	.main{
		width:100%;
	}
	.gallery-container{
		overflow:hidden;
	}

	.gallery {
		max-width: auto;
		overflow:hidden;
	}
	.button{
		display:inline-block;
		margin-top: 10px !important;
		margin-bottom: 5px !important;
		width:80%;
	}
	.logo-button{
		position:relative!important;
		height:auto;
		margin:auto;
		text-align:center;
		padding-bottom:15px;
	}
	.content .separate{
		padding:10px;
	}
	.content .separate .image-content{
		width: 65%;
		padding-left:2%;

	}
	.content .separate .image{
		width:30%;
	}
	.content-container{
		clear:both;
	}
	.sitemap .glue-zippy {
		flex-basis: auto;
		max-width: 100%!important;
		width: 100%!important;
		display: block;
		padding-right:0;
	}
	.glue-zippy h2{
		margin-left:-20px!important;
		margin-right:-20px!important;
		margin-bottom:0px!important;
		display:block;
		padding-left:20px!important;
		padding-right:20px!important;
		padding-top:10px!important;
		padding-bottom:10px!important;
		height:2rem;
		border-bottom:1px solid #bbb!important;
		background-image:url(/images/allow-bottom.svg);
		background-position: right 20px center;
		background-size:15px 15px;
		background-repeat:no-repeat

	}
	.glue-zippy h2:hover{
		background-color:#bbb;
	}
	.footer .social{
		border:0px;
		padding-top:0px;
	}
	.footer .sitemap{
		padding-top:0px;
	}
	.footer .sitemap .glue-zippy-content > div{

		padding-bottom:0px;
	}
	.glue-zippy-content ul{
		margin-left:-20px!important;
		margin-right:-20px!important;
		padding-left:20px!important;
		padding-right:20px!important;
		display:none;
		background-color:#fff;
		
	}


}