@charset "UTF-8";



#menu,
#closeMenu {
	display: block;
	position: absolute;
	width: 7.733333vw;
	height: 7.733333vw;
	right: 1.866667vw;
	top: 2.133333vw;
}
#menu {
	background: url(/series/images/bttn_open_sp.svg) center top / cover no-repeat;
	opacity: 1;
	transition: opacity .4s;
}
#menu.open {
	opacity: 0;
	transition: opacity .2s;
}

#closeMenu {
	background: url(/series/images/bttn_close_sp.svg) center top / cover no-repeat;
}

#menu img,
#closMenu img {
	display: none;
}
#closeMenu:focus,
#menu:focus {
	outline: none;
}

.headerArea {
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	width: 100%;
	padding-top: 12%;
	background: -webkit-linear-gradient(0deg, rgba(245, 243, 231, .95) 0%, rgba(197, 225, 230, .95) 100%);
	background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0, rgba(245, 243, 231, .95)), color-stop(1, rgba(197, 225, 230, .95)));
	background: linear-gradient(90deg, rgba(245, 243, 231, .95) 0%, rgba(197, 225, 230, .95) 100%);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.22);
	border-top: 3px solid #172671;
	z-index: 2
}

@media (orientation: landscape) {
	.headerArea {
		position: absolute;
	}
}

.headerArea .inner {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.headerArea .inner .logo {
	align-items: flex-start;
	display: flex;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.headerArea .the20th {
	display: block;
	width: 13.333333%;
	margin-left: 3.6%;
}

.headerArea .mainLogo {
	display: block;
	width: 33.733333%;
	margin-left: 2.133333%;
	padding-top: 4.4%;
}




#gNavi {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: auto;
	height: 100vh;
	background-color: rgba(27, 94, 105, .95);
	z-index: 100;
	overflow: hidden;
	overflow-y: scroll;
}
#gNavi .row {
	padding-top: 21.333333vw;
	margin-bottom: 14.666667vw;
}

#gNavi ul.links>li {
	display: block;
	width: 100%;
}
#gNavi ul.links>li>a,
#gNavi .links>li>.subTrigger {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 90%;
	margin-left: 10%;
	padding: 7.066667vw 0 7.066667vw .25em;
	font-size: 4.666667vw;
	line-height: 0;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	border-bottom: 2px solid #769ea5;
}
#gNavi .links>li>.subTrigger {
	cursor: pointer;
}

#gNavi ul.links>li.current>a,
#gNavi .links>li.current>.subTrigger {
	background-color: #769ea5;
}

#gNavi ul.links>li.sub>.subTrigger::after {
	content: '\e876';
	position: absolute;
	display: inline-block;
	top: 50%;
	right: 10%;
	font-family: 'Linearicons-Free';
	transform: rotate(0deg) translateY(-50%);
	transition: transform .2s
}
#gNavi ul.links>li.sub.open>.subTrigger::after {
	transform: rotate(90deg) translateY(-50%);
	transition: transform .2s
}
#gNavi ul.sublinks li {
	display: block;
	width: 90%;
	margin-left: 10%;
	border-bottom: 2px solid #769ea5;
}
#gNavi ul.sublinks li a {
	display: block;
	box-sizing: border-box;
	padding: 7.066667vw 0 7.066667vw 1.25em;
	font-size: 4.666667vw;
	line-height: 0;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
}

#gNavi ul.sublinks li.current a {
	background-color: #769ea5;
}

#gNavi .small {
	display: block;
	font-size: 2.933333vw;
	font-weight: normal;
	margin-top: -0.75vw;
	margin-bottom: 5.5vw;
}
#gNavi .small2 {
	display: block;
	font-size: 2.933333vw;
	font-weight: normal;
	margin-top: 5.5vw;
	margin-bottom: -0.75vw;
}
#gNavi .small3 {
	font-size: 75%
}
.sub .flyouts {
	display: block;
	overflow: hidden;
	max-height: 0;
	transition: max-height .2s linear
}
.sub.open .flyouts {
	max-height: 500px;/*サブメニューの項目数が増えたら変更する*/
}




footer {
	background-color: #172671;
	bottom: 0;
	color: #fff;
	left: 0;
	margin-top: 18.133333%;
	position: absolute;
	width: 100%;
}

footer .inner {
	box-sizing: border-box;
	padding: 5.6% 0;
	position: relative;
	width: 100%;
}

footer .inner .back2top {
	display: block;
	font-family: 'Linearicons-Free';
	font-size: 11.733333vw;
	height: 11.733333vw;
	position: absolute;
	right: 4.8%;
	text-decoration: none;
	top: -29.2%;
	width: 11.733333%;
	overflow: hidden;
}
footer .inner .back2top::before {
	content: "\e877"
}
footer .inner .back2top i {
	visibility: hidden;
	font-size: calc(9/640*100vw);
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 0
}


footer .inner .footerNav {
	display: none
}


footer .inner .address {
	text-align: center
}

footer .inner .address img {
	width: 40.533333%;
	height: auto;
	margin-bottom: 3.466667%;
}

footer .inner .address dl {
	line-height: 1.75
}

footer .inner .address dt {
	font-size: 3.066667vw
}

footer .inner .address dd {
	font-size: 2.666667vw
}

footer .inner .address .phone {
	display: flex;
	font-size: 4.933333vw;
	font-weight: bold;
	justify-content: center;
	margin-bottom: 10%;
	margin-top: 5%;
}

footer .inner .address .phone .tel,
footer .inner .address .phone .fax {
	display: block;
	padding-left: 10vw;
	position: relative;
}

footer .inner .address .phone .tel::before {
	background: url(../images/ico_tel.svg) left top / cover no-repeat;
	content: '';
	display: block;
	height: 9vw;
	left: 0;
	position: absolute;
	top: -35%;
	width: 9vw;
}

footer .inner .address .phone .fax {
	margin-left: 3.5%;
}

footer .inner .address .phone .fax::before {
	background: url(../images/ico_fax.svg) left top / cover no-repeat;
	content: '';
	display: block;
	height: 9vw;
	left: 0;
	position: absolute;
	top: -35%;
	width: 9vw;
}

footer .inner .address a {
	color: #fff;
	text-decoration: none;
}

footer .inner .copyright {
	font-size: 2.666667vw;
	line-height: 1;
	text-align: center;
}
