@charset "utf-8";

/*==========================================
 General
===========================================*/
html {
	font-size: 62.5%;
	-webkit-overflow-scrolling: touch;
	height: 100%
}
body {
	margin: 0;
	padding: 0;
	width: 100%;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	-webkit-overflow-scrolling: touch;
	min-width: 1024px;
	font-size: 1.6rem;
	background:#fff;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@media only screen and (max-width: 1024px) {
	body {
	min-width:auto;
	}
}

a {
	color: #e7380d;
	text-decoration: none;
}
a:link {
	color: #e7380d;
}
a:visited {
	color: #e7380d;
}
a:hover {
	color: #e7380d;
	text-decoration: underline;
}
a:active {
	color: #e7380d;
}

p {
	font-size: 1.6rem;
	text-align: left;
	color: #002063;
	line-height: 180%;
}

p.center {
	text-align: center;
}

.center{
	text-align:center;
}

/*==========================================
te
===========================================*/

h1 {
	width:100%;
	padding-top:100px;
	display: inline-block;
	text-align: center;
	letter-spacing:0.1em;
	font-size: 3rem;
	color:#e34818;
	margin-bottom: 60px;
	font-weight: bold;
}

h2 {
	font-size: 2rem;
	letter-spacing: 0.05em;
	font-weight: bold;
	text-align: center;
	color: #002063;
	margin-bottom: 30px;
	display:inline-block;
	padding-bottom:10px;
	line-height: 1.5;
	width : 100%;
}

/*==========================================
 header
===========================================*/
header.fixed {
	top: 0px;
	position:fixed;
	float:none;
	background: #fff!important;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	display: block;
}

/*==========================================
 footer
===========================================*/

footer{
	width:100%;
	box-sizing:border-box;
	padding:30px 0 30px 0;
	margin:0 auto;
	text-align:center;
	background:#fff;
	}

#footInner #copyright{
	color:#000;
	font-size:1.3rem;
}

/* top main image
================================================== */
#topVisualWrapper {
	width: 100%;
	position:relative;
	height:auto;
	max-width:1980px;
	margin:0 auto;
}
#topVisualWrapper img.bg {
	width: 100%;
	height:auto;
	vertical-align:bottom;
}
#topVisualWrapper.fixed {
    padding-top: 60px;
}

/*==========================================
 Contents
===========================================*/

#contentsArea{
	width:100%;
	padding-top:0;
	background:#fff;
}

#contentsArea .w980{
	width:980px;
	padding:0 20px;
	margin:0 auto;
	padding-bottom:60px;
}

#contentsArea section p{
	width:100%;
	line-height:180%;
	color:#002063;
	font-size:1.8rem;
	font-weight:normal;
}
@media only screen and (max-width: 784px) {
	#contentsArea section p{
		font-size:1.4rem;
	}
}

#contentsArea section img{
	width:100%;
	height:auto;
}

.fixed-bg > div {
	width:100%;
	height:100%;
}

.fixed-bg-1{
	background-image: url(./images/top-bg-lt.png), url(./images/top-bg-rt.png), url(./images/top-bg-rb.png);
	background-position: left top, right top, right bottom;
	background-size: auto 80%, 40% auto, 30% auto;
	background-repeat: no-repeat, no-repeat, no-repeat;
	margin-bottom: 30px;
}
@media only screen and (max-width: 784px) {
	.fixed-bg-1{
		background-size: auto 65%, 0 0, 65% auto;
		margin-bottom: 15px;
	}
}

@media screen and (max-width: 1024px) {
	#contentsArea .w980{
		width:auto;
	}
}
@media screen and (max-width: 480px) {
	#contentsArea .w980{
		padding:0 15px 40px 15px;
	}
}

/* ------------------------------------------------------------
	Clearfix
------------------------------------------------------------ */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}

#enter {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#enter>div {
	width: 25%;
	padding: 2%;
	margin: 0 2% 4% 2%;
	box-shadow: 0 0 10px rgb(102 102 102 / 5%);
}
#enter>div:last-child {
	margin: 0 2%;
}
@media only screen and (max-width: 784px) {
	#enter>div {
		width: 50%;
		padding: 2%;
	}
}
#enter>div a{
	display: block;
	transition: 0.5s all;
}
#enter>div a:hover{
	transform: scale(1.1,1.1);
	transition: 0.5s all;
}

footer a {
	display: block;
	width: 15%;
	margin: 2rem auto;
}
footer img {
	width: 100%;
	transition: 0.5s all;
}
footer img:hover {
	opacity: 0.5;
}

/* JavaScript Switch Classes */
.js-image-switch {
    /* Used in img-switch.js */
}