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

/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}

* {
margin: 0;
padding: 0;
-webkit-margin-before: 0px;
-webkit-margin-after: 0px;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
-webkit-padding-before: 0px;
-webkit-padding-after: 0px;
-webkit-padding-start: 0px;
-webkit-padding-end: 0px;
}

/* HTML5 display-role reset for older browsers 
*/
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
a {
  text-decoration: none;
}
img {
  vertical-align: bottom;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}


/*-------------------------
common
-------------------------*/
html {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"メイリオ","Meiryo","Verdana","Osaka","ＭＳ Ｐゴシック",sans-serif;
	font-size: 62.5%;
	color: #000;
	line-height: 1.0;
}
a:focus {outline:none;}
a:link,a:visited,a:active,a:hover {color:#000;text-decoration:none;}
img{vertical-align: bottom;}
.spview{display: none;}

@media screen and (max-width: 812px){
	body{
		-webkit-text-size-adjust: 100%;
	}
}

@media screen and (max-width: 767px){
	.pcview{display: none;}
	.spview{display: block;}
}


/* -----------------------------
header 
-----------------------------*/
header{
	border-top: solid 7px #004e8d;
	overflow: hidden;
}
.header-inner{
	position: relative;
	max-width: 980px;
	height: 390px;
	margin: 0 auto;
}
.header-inner-inner{
	margin-bottom: 30px;
	padding-top: 80px;
}
.header-headline{
	width: 87.755102%;
	margin: 0 auto;
}
.header-headline img{
	width: 100%;
}
.header-officialsite{
	width: 10.204081%;
}
.header-officialsite img{
	width: 100%;
}
.header-officialsite a{
	transition: .5s;
}
.header-officialsite a:hover{
	opacity: 0.7;
	transition: .5s;
}
.header-headline span{
	position: relative;
	display: block;
	max-width: 720px;
	padding-right: calc(13.265306% + 20px);
}
.header-headline span::after{
	position: absolute;
	top: 10px;
	right: 0;
	display: inline-block;
	width: 14.795918%;
	height: 148px;
	background: url(../images/logo-20th.png) no-repeat;
	background-size: contain;
	content: "";
}
.header-headline span img{
	width: 100%;
}
.header-logo{
	position: absolute;
	top: 16px;
	left: 0;
}
.header-outline{
	position: absolute;
	left: 20px;
	bottom: 20px;
}
.header-outline-date{
	max-width: 275px;
	margin-bottom: 10px;
}
.header-outline-sponsor{
	max-width: 286px;
}
.header-entry{
	position: absolute;
	right: 20px;
	bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 48.979591%;
	padding: 20px;
	background-color: #e5eef6;
}
.header-entry-title{
	max-width: 235px;
	margin-right: 10px;
}
.header-entry-btn{
	max-width: 230px;
}
.header-entry-btn a{
	transition: .5s;
}
.header-entry-btn a:hover{
	opacity: 0.7;
	transition: .5s;
}
.header-link{
	position: absolute;
	top: 15px;
	right: 0;
}
.header-link-list-item{
	max-width: 354px;
}
.header-link-list-item a{
	transition: .5s;
}
.header-link-list-item a:hover{
	opacity: 0.7;
	transition: .5s;
}
.header-postponement{
	position: absolute;
	right: 40px;
	bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 48.979591%;
}
.header-outline img,.header-entry img,.header-link img,.header-postponement img{
	width: 100%;
}

@media screen and (max-width: 980px){
	.header-inner{
		margin: 0 3%;
		box-sizing: border-box;
	}
	.header-headline span img{
		width: 100%;
	}
	.header-outline{
		width: 31.122448%;
	}
}

@media screen and (max-width: 812px){
	.header-inner{
		height: 320px;
	}
	.header-outline{
		left: 20px;
	}
	.header-entry{
		right: 20px;
	}
}

@media screen and (max-width: 767px){
	.header-inner{
		height: auto;
	}
	.header-inner-inner{
		display: block;
		margin-bottom: 15px;
	}
	.header-headline{
		width: 100%;
		text-align: left;
	}
	.header-headline span{
		padding-right: 0;
	}
	.header-headline span::after{
		top: 20px;
		width: 12%;
		height: 130px;
	}
	.header-headline span img{
		width: 87%;
	}
	.header-outline{
		position: static;
		width: 100%;
		margin-bottom: 30px;
	}
	.header-outline-date{
		max-width: 70%;
	}
	.header-outline-sponsor{
		max-width: 70%;
	}
	.header-entry{
		position: static;
		display: block;
		width: 100%;
		margin-bottom: 30px;
		box-sizing: border-box;
	}
	.header-entry-title{
		max-width: 55%;
		margin: 0 auto 15px;
	}
	.header-entry-btn{
		max-width: 83%;
		margin: 0 auto;
	}
	.header-postponement{
		position: static;
		display: block;
		width: 100%;
		margin-bottom: 10px;
	}
	.header-link{
		position: static;
		margin-bottom: 30px;
	}
	.header-link-list-item{
		max-width: 100%;
		margin-top: 15px;
	}
}

@media screen and (max-width: 480px){
	.header-inner-inner{
		padding-top: 60px;
	}
	/*.header-headline span::after{
		top: -50px;
	}*/
	.header-logo{
		width: 40%;
	}
	.header-logo img{
		width: 100%;
	}
	.header-outline{
		margin-bottom: 20px;
	}
	.header-entry{
		margin-bottom: 20px;
	}
}


/* -----------------------------
nav 
-----------------------------*/
.navigation{
	position: relative;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}
.navigation-inner{
	width: 100%;
	list-style: none;
	overflow-x: auto;
	background-color: #221815;
}
.navigation-list{
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 980px;
	margin: 0 auto;
}
.navigation-list-item.top{
	background: #444;
	pointer-events: none;
}
.navigation-list-item a{
	display: block;
	padding: 0 40px;
	color: #fff;
	font-size: 1.5em;
	line-height: 70px;
	transition: .5s;
	white-space: nowrap;
}
.navigation-list-item a:hover {
	background-color: #444;
	transition: .5s;
}


/* -----------------------------
attention
-----------------------------*/
#attention{
	max-width: 900px;
	margin: 40px auto 60px;
	padding: 20px;
	background: #004e8d;
	/*border: solid 3px #004e8d;*/
	box-sizing: border-box;
	color: #fff;
	text-align: center;
}
#attention p{
	font-size: 2.6em;
	font-weight: bold;
	line-height: 1.875;
}

@media screen and (max-width: 900px){
	#attention{
		margin: 40px 6% 60px;
	}
}

@media screen and (max-width: 767px){
	#attention p{
		font-size: 1.8em;
	}
}


/* -----------------------------
news
-----------------------------*/
#news{
	max-width: 840px;
	margin: 40px auto;
	padding: 30px;
	border: solid 1px #004e8d;
}
.news-title{
	margin-bottom: 20px;
	text-align: center;
}
.news-heading{
	margin: 0;
	padding: 0 1em;
	background: none;
	color: #004e8d;
	font-size: 2.0em;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}
.news-catch{
	display: block;
	margin-top: 5px;
	color: #004e8d;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}
.news-contents{
}
.news-contents p{
	margin-top: 1em;
	font-size: 1.6em;
	line-height: 1.6;
}
.news-contents p.note{
	font-size: 1.4em;
	padding-left: 1em;
	text-indent: -1em;
}
.news-contents p a{
	color: #0094d9;
}
.news-subheading{
	margin: 30px 0 10px;
	padding: 15px;
	background: #e5eef6;
	border-top: solid 1px #004e8d;
	border-bottom: solid 1px #004e8d;
	color: #004e8d;
	font-size: 1.8em;
	font-weight: bold;
	text-align: center;
}
.news-event-title{
	margin-bottom: 20px;
	font-size: 1.6em;
	font-weight: bold;
}
.news-event-detail{
	display: flex;
	flex-wrap: wrap;
	margin: 10px 0;
}
.news-event-detail dt{
	width: 9em;
	font-size: 1.6em;
	line-height: 1.5;
}
.news-event-detail dd{
	width: calc(100% - 9em);
	margin-bottom: 5px;
	font-size: 1.6em;
	line-height: 1.5;
}

@media screen and (max-width: 900px){
	#news{
		margin: 40px 6%;
	}
}

@media screen and (max-width: 767px){
	#news{
		padding: 20px;
	}
	.news-event-detail{
		display: block;
	}
	.news-event-detail dt{
		width: 100%;
		padding: 2px 10px;
		background: #efefef;
		box-sizing: border-box;
	}
	.news-event-detail dd{
		width: 100%;
		margin-bottom: 10px;
	}
}


/* -----------------------------
about
-----------------------------*/
#about{
}
.about-inner{
	max-width: 830px;
	margin: 40px auto 0;
	padding: 30px 0 20px 30px;
	border-left: solid 40px #004e8d;
}
.about-heading{
	margin-bottom: 30px;
	font-size: 2.6em;
	font-weight: bold;
	line-height: 1.46;
}
.about-heading span{
	display: block;
	color: #0081c7;
	font-size: 0.769em;
}
.about-text p{
	margin-bottom: 1em;
	font-size: 1.6em;
	line-height: 1.875;
}

@media screen and (max-width: 900px){
	#about{
		padding: 0 6%;
		box-sizing: border-box;
	}
	.about-inner{
		border-left: solid 30px #004e8d;
	}
	.about-heading br.pcview{
		display: none;
	}
}

@media screen and (max-width: 480px){
	.about-inner{
		padding: 15px 0 10px 15px;
		border-left: solid 10px #004e8d;
	}
}


/* -----------------------------
point
-----------------------------*/
#point{
	padding: 30px 0 30px;
}
#point > section{
	padding: 30px 0;
}
.point-inner{
	max-width: 900px;
	margin: 0 auto;
}
.point-heading{
	margin-bottom: 30px;
	padding-bottom: 10px;
	border-bottom: solid 2px #004e8d; 
	color: #004e8d;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 1.2;
}
.point-heading-sub{
	margin-bottom: 10px;
}
.point-text{
	margin-bottom: 30px;
	font-size: 1.6em;
	line-height: 1.875;
}
.point-note{
	margin-top: 30px;
	font-size: 1.3em;
	color: #666;
	line-height: 1.5;
}

.point01-img{
	max-width: 650px;
	margin: 0 auto;
}
.point01-img img,
.point01-img-list-item img{
	width: 100%;
}
.point02-img{
	max-width: 600px;
	margin: 0 auto;
}
.point02-img img{
	width: 100%;
}
.point03-img{
	max-width: 830px;
	margin: 0 auto;
}
.point03-list{
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	justify-content: space-between;
}
.point03-list-item{
	width: 31.807228%;
	margin-bottom: 19px;
}
.point03-list-item img{
	width: 100%;
	vertical-align: bottom;
}
.point04-img{
	max-width: 830px;
	margin: 0 auto;
}
.point04-img img{
	width: 100%;
}
.point04-img-list-item{
	margin-bottom: 30px;
}
.point04-img-list-item:last-child{
	margin-bottom: 0;
}
.point04-list-item img,
.point04-img-list-item img{
	width: 100%;
	vertical-align: top;
}
.point05-img{
	max-width: 830px;
	margin: 0 auto;
}
.point05-list{
	display: flex;
	justify-content: space-between;
}
.point05-list-item:nth-child(1){
	max-width: 32.530120%;
}
.point05-list-item:nth-child(2){
	max-width: 28.915662%;
}
.point05-list-item:nth-child(3){
	max-width: 33.253012%;
}
.point05-list-item img{
	width: 100%;
	vertical-align: top;
}

@media screen and (max-width: 900px){
	.point-inner{
		padding: 0 6%;
		box-sizing: border-box;
	}
	.point01-img,.point01-img-list,.point02-img,.point03-img,.point04-img,.point05-img{
		padding: 0 6%;
	}
}

@media screen and (max-width: 767px){
	.point03-list-item{
		width: 48%;
		margin-bottom: 20px;
	}
	.point05-list{
		display: block;
	}
	.point05-list-item:nth-child(1),
	.point05-list-item:nth-child(2),
	.point05-list-item:nth-child(3){
		max-width: 100%;
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 480px){
	.point03-list{
		display: block;
	}
	.point03-list-item{
		width: 100%;
		margin-bottom: 10px;
	}
}


/* -----------------------------
seminar
-----------------------------*/
#seminar::before{
	display: block;
	content: '';
	width: 50%;
	height: 4px;
	background: #000;
}
#seminar::after{
	display: block;
	width: 100%;
	height: 200px;
	background: url(../images/bg-seminar.jpg) no-repeat left top;
	background-size: cover;
	content: "";
}
#seminar .img{
	margin-top: 0;
}
.seminar-inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 0;
}
.seminar-heading{
	margin-bottom: 25px;
	padding-left: 20px;
	color: #0081c7;
	border-left: solid 10px #004e8d;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 1.2;
}
.seminar-heading::before{
	display: block;
	width: 243px;
	height: 46px;
	margin-bottom: 15px;
	content: "";
	background: url(../images/ttl-seminar.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.seminar-heading-sub{
	margin: 0 35px 10px;
	color: #004e8d;
	font-size: 2.0em;
	font-weight: bold;
}
.seminar-note{
	margin: 0 35px 20px;
	color: #666;
	font-size: 1.3em;
	line-height: 1.5;
}
.seminar-text{
	margin-bottom: 30px;
	font-size: 1.6em;
	line-height: 1.875;
}
.seminar-img{
	max-width: 830px;
	margin: 0 auto;
}
.seminar-img img,
.seminar-img-list-item img{
	width: 100%;
}

@media screen and (max-width: 900px){
	.seminar-inner{
		padding: 60px 6%;
		box-sizing: border-box;
	}
	.seminar-img,.seminar-img-list{
		padding: 0 6%;
	}
}

@media screen and (max-width: 767px){
	.seminar-heading-sub{
		margin: 0 0 10px;
	}
	.seminar-note{
		margin: 0 0 20px;
	}
}

@media screen and (max-width: 480px){
	#seminar::after{
		height: 150px;
	}
	.seminar-heading::before{
		width: 211px;
		height: 40px;
	}
}


/* -----------------------------
outline
-----------------------------*/
#outline{
}
.outline-inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 0 40px;
}
.outline-heading{
	margin-bottom: 40px;
	padding-left: 20px;
	color: #0081c7;
	border-left: solid 10px #004e8d;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 1.2;
}
.outline-heading::before{
	display: block;
	width: 204px;
	height: 46px;
	margin-bottom: 15px;
	content: "";
	background: url(../images/ttl-outline.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.outline-heading-sub{
	padding: 10px 10px;
	background: #004e8d;
	color: #fff;
	font-size: 2.4em;
	line-height: 1.3;
	text-align: center;
}
.outline-list{
	width: 100%;
	margin-bottom: 35px;
}
.outline-list tr{
	border-bottom: 1px solid #cacaca;
}
.outline-list th{
	width: 30%;
	padding: 20px 30px 20px 10px;
	color: #004e8d;
	font-size: 1.6em;
	text-align: right;
	vertical-align: middle;
}
.outline-list td{
	width: 70%;
	padding: 20px 30px 20px 10px;
	font-size: 1.6em;
	line-height: 1.875;
}
.outline-box{
	max-width: 895px;
	padding-right: 95px;
	border: solid 2px #000;
	box-shadow: 5px 4px 0 #000;
}
.outline-btn{
	position: relative;
	max-width: 420px;
	margin: 50px auto;
}
.outline-btn a{
	display: block;
	background: #000;
	color: #fff;
	font-size: 2.0em;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	transition: .5s;
}
.outline-btn a::after{
	position: absolute;
	top: 50%;
	right: -95px;
	content: "";
	display: inline-block;
	width: 95px;
	height: 135px;
	background: url(../images/outline-btn-thumb.png)no-repeat;
	background-size: contain;
	border: solid 1px #efefef;
	transform: translateY(-50%);
}
.outline-btn a:hover{
	opacity: 0.7;
	transition: .5s;
}
.outline-btn a span::after{
	position: relative;
	top: 1px;
	padding-left: 5px;
	content: url(../images/icon-pdf-wh.png);
}

@media screen and (max-width: 900px){
	.outline-inner{
		padding: 60px 6% 40px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px){
	.outline-heading::before{
		width: 177px;
		height: 40px;
	}
	.outline-list th{
		display: block;
		width: 100%;
		padding: 20px 0 10px 0;
		text-align: left;
	}
	.outline-list td{
		display: block;
		width: 100%;
		padding: 0 0 20px 0;
	}
	.outline-box{
		width: 100%;
		padding-right: 70px;
		border: none;
		box-shadow: none;
		box-sizing: border-box;
	}
	.outline-btn{
		margin: 50px auto 0;
	}
	.outline-btn a::after{
		right: -70px;
		width: 70px;
		height: 99px;
	}
}

@media screen and (max-width: 360px){
	.outline-btn a{
		font-size: 1.6em;
	}
}


/* -----------------------------
plan
-----------------------------*/
#plan{
}
.plan-inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 0 60px;
}
.plan-heading{
	margin-bottom: 30px;
	padding-left: 20px;
	color: #0094d9;
	border-left: solid 10px #004e8d;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 1.2;
}
.plan-heading::before{
	display: block;
	width: 122px;
	height: 45px;
	margin-bottom: 15px;
	content: "";
	background: url(../images/ttl-plan.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.plan-text{
	margin-bottom: 30px;
	font-size: 1.6em;
	line-height: 1.875;
}
.plan-img{
	max-width: 830px;
	margin: 0 auto;
}
.plan-img-list-item{
	margin-bottom: 20px;
}
.plan-img-list-item:last-child{
	margin-bottom: 0;
}
.plan-img img,
.plan-img-list-item img{
	width: 100%;
}

@media screen and (max-width: 900px){
	.plan-img,.plan-img-list{
		padding: 0 6%;
	}
	.plan-inner{
		padding: 40px 6% 60px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 480px){
	.plan-heading::before{
		width: 108px;
		height: 40px;
	}
}


/* -----------------------------
schedule
-----------------------------*/
#schedule{
}
#schedule::before{
	display: block;
	content: '';
	width: 50%;
	height: 4px;
	background: #000;
}
.schedule-inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 0;
}
.schedule-heading{
	margin-bottom: 30px;
	padding-left: 20px;
	color: #0094d9;
	border-left: solid 10px #004e8d;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.2;
}
.schedule-heading::before{
	display: block;
	width: 261px;
	height: 46px;
	margin-bottom: 15px;
	content: "";
	background: url(../images/ttl-schedule.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.schedule-list{
	width: 90%;
	margin: 0 auto;
}
.schedule-list tr{
	border-bottom: 1px solid #555;
}
.schedule-list tr:first-child{
	border-top: 1px solid #555;
}
.schedule-list th{
	width: 45%;
	padding: 20px 50px 20px 0;
	background: #ededed;
	font-size: 1.8em;
	text-align: right;
} 
.schedule-list td{
	padding: 20px 0 20px 50px;
	background: #fff;
	font-size: 1.8em;
}

@media screen and (max-width: 900px){
	.schedule-inner{
		padding: 60px 6%;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px){
	.schedule-list{
		width: 100%;
	}
	.schedule-list tr{
		border-bottom: none;
	}
	.schedule-list tr:first-child{
		border-top: none;
	}
	.schedule-list th{
		display: block;
		width: 100%;
		padding: 20px 10px;
		box-sizing: border-box;
		text-align: left;
	}
	.schedule-list td{
		display: block;
		width: 100%;
		padding: 20px 10px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 480px){
	.schedule-heading::before{
		width: 227px;
		height: 40px;
	}
}


/* -----------------------------
application
-----------------------------*/
#application{
	position: relative;
}
#application::before{
	position: absolute;
	right: 0;
	display: block;
	content: '';
	width: 50%;
	height: 4px;
	background: #000;
}
.application-inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 0;
}
.application-heading{
	margin-bottom: 30px;
	padding-left: 20px;
	color: #0094d9;
	border-left: solid 10px #004e8d;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 1.2;
}
.application-heading::before{
	display: block;
	width: 319px;
	height: 56px;
	margin-bottom: 15px;
	content: "";
	background: url(../images/ttl-application.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.application-text{
	margin-bottom: 30px;
	font-size: 1.6em;
	line-height: 1.875;
}
.application-btn{
	max-width: 590px;
	margin: 40px auto 30px;
}
.application-btn a{
	display: block;
	background: #c50000;
	color: #fff;
	font-size: 3.0em;
	font-weight: bold;
	line-height: 80px;
	text-align: center;
	transition: .5s;
}
.application-btn a:hover{
	opacity: 0.7;
	transition: .5s;
}
.application-btn-close{
	width: 590px;
	margin: 40px auto 30px;
	background: #787878;
	color: #efefef;
	font-size: 30px;
	font-weight: bold;
	line-height: 80px;
	text-align: center;
}
.application-deadline{
	margin-bottom: 50px;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.857;
	text-align: center;
}
.application-deadline span{
	display: block;
	margin-top: 5px;
	font-size: 0.778em;
	font-weight: normal;
}

@media screen and (max-width: 900px){
	.application-inner{
		padding: 60px 6%;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px){
	.application-deadline span{
		text-align: left;
	}
	.application-btn-close{
		width: 100%;
	}
}

@media screen and (max-width: 480px){
	.application-heading::before{
		width: 256px;
		height: 45px;
	}
}


/* -----------------------------
download
-----------------------------*/
.download-heading,
.inquiry-heading{
	margin-bottom: 30px;
	padding: 10px 10px; 
	background-color: #004e8d;
	color: #fff;
	font-size: 2.2em;
	line-height: 1.2;
	text-align: center;
}
.download-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 768px;
	margin: 0 auto 30px;
}
.download-list-item{
	margin-bottom: 30px;
	width: 26.302083%;
	text-align: center;
}
.download-list-item a{
	color: #000;
}
.download-list-item a::after{
	position: relative;
	top: 3px;
	padding-left: 5px;
	content: url(../images/icon-pdf-bk.png);
}
.download-list-item a.close{
	opacity: .6;
	pointer-events:none
}
.download-list-item img{
	width: 100%;
	margin-bottom: 10px;
	border: solid 1px #dedede;
}
.download-list-item span{
	font-size: 1.6em;
	line-height: 1.5;
}

@media screen and (max-width: 900px){
	.download-list{
		padding: 0 6%;
	}
}

@media screen and (max-width: 767px){
	.download-list-item{
		width: 45%;
	}
}


/* -----------------------------
inquiry
-----------------------------*/
.inquiry-text{
	font-size: 1.6em;
	line-height: 1.875;
	text-align: center;
}
.inquiry-text a{
	color: #0094d9;
}
.inquiry-mail{
	margin: 25px 0;
	padding: 20px;
	border: solid 4px #dedede;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}
.inquiry-mail a{
	color: #333;
	font-size: 1.375em;
}

@media screen and (max-width: 767px){
	.inquiry-text{
		text-align: left;
	}
}

@media screen and (max-width: 320px){
	.inquiry-mail{
		font-size: 1.4em;
	}
}


/*-------------------------
ページトップへ戻る
-------------------------*/
#gotop{
	position: fixed;
	right: 30px;
	bottom: 50px;
	transition: .5s;
}
#gotop.show{opacity:1;}
#gotop:hover{opacity: 0.7;}

@media screen and (max-width: 767px){
	#gotop{
		right: 0;
		bottom: 0;
	}
}


/*-------------------------
footer
-------------------------*/
footer{
	border-top: 1px solid #ccc;
}
.footer-inner{
	display: flex;
    justify-content: space-between;
	max-width: 900px;
	margin: 0 auto;
	padding: 30px 0 40px;
	box-sizing: border-box;
}
.footer-img{
	display: inline-block;
	width: 120px;
	margin-right: 20px;
}
.footer-img img{
	width: 100%;
}
.footer-text{
	font-size: 1.3em;
	line-height: 1.4;
}
.footer-text a:hover{
	text-decoration: underline;
}

@media screen and (max-width: 900px){
	.footer-inner{
		padding: 30px 6% 40px;
	}
}

@media screen and (max-width: 767px){
	.footer-inner{
		display: block;
	}
	.footer-text{
		float: none;
		margin: 10px 0 0;
	}
}