html { overflow: auto; background-image: url('/_image/background.jpg'); background-size: cover; background-attachment: fixed; background-position: center center; }
h1.title, h2.title, h3.title { color: #00265c; }
div.box { color: #3a3a3a; }
div.content strong { color: #2b2b2b; font-weight: 600; }
div.content b { color: #2b2b2b; font-weight: 500; }
a[href] { color: #b00809; }
a:not([href]) { cursor: default; }
p.moreDetails { font-size: 16px!important; }

div.box.is-wrapper {
	margin: 30px auto;
	max-width: 1200px;
	background: #fff7c3dd;
	border-radius: 25px;
	box-shadow: 0px 0px 10px 3px rgba(0, 0, 0, .3);
	}

header.header a { display: flex; align-items: center; border-bottom: 1px solid #00265c; padding-bottom: 25px; margin-bottom: 25px; }
header.header div.logo { min-width: 200px; height: 185px; background: url('/_image/logo.png'); background-size: cover; margin-right: 30px; }
header.header h1.title { font-size: 55px; margin: 0; }
mark, p.mark { color: #b00809; background: transparent; }

section.section div.content p { font-size: 22px; text-align: justify; margin-bottom: .5rem; }
section.section div.content div.is-document p { font-size: 16px; }
section.section div.content div.is-document h4 { margin: 10px 0 5px; }

article.media div.media-content { overflow: visible; }
article.management-item { column-gap: 20px; }
article.management-item + article.management-item { border: none; padding-top: 0; margin-top: 1.5rem; }
article.management-item figure.image { margin: 0; width: 200px; height: 200px; background-size: cover; background-position: center; border-radius: 25px; }
article.management-item div.media-content { text-align: left; display: flex; flex-direction: column; height: 200px; justify-content: center; }
article.management-item div.media-content p { font-size: 20px; margin: 0; }
article.management-item div.media-content h4 { margin-bottom: 10px; }

div.is-direction figure { margin-left: 1em; margin-right: 1em; }
div.is-direction a { display: block; width: 200px; margin: auto; }
div.is-direction a img { border-radius: 25px; }

article.project-item { column-gap: 20px; }
article.project-item + article.project-item { border: none; padding-top: 0; margin-top: 1.5rem; }
article.project-item figure.image { margin: 0; width: 200px; height: 250px; background-size: cover; background-position: center; border-radius: 25px; }
article.project-item div.media-content { text-align: left; display: flex; flex-direction: column; height: 250px; justify-content: center; }
article.project-item div.media-content p { font-size: 20px; margin: 0; }
article.project-item div.media-content h4 { margin-bottom: 10px; }
article.project-item footer { text-align: right; }

figure.is-qr { margin: 10px 0 0!important; }
figure.is-qr img { width: 250px; margin: auto; border-radius: 10px; }

a.button.is-support { border-color: #b00809; color: #b00809; font-size: 25px; background: transparent; }
a.button.is-support:hover { background-color: #b00809; border-color: #b00809; color: #fff; }

figure.image.is-project-image { margin: 0 20px 3px 0; width: 300px; height: 400px; background-size: cover; background-position: center; border-radius: 25px; float: left; }
div.content blockquote { font-size: 18px; border-left-color: #b00809; background: #b0080930; clear: both; }

div.content div.is-contact-block p { font-size: 18px; text-align: left; }
article.documents-item { align-items: center; }
article.documents-item a[href] { color: #363636; }
article.documents-item + article.documents-item { border-top-color: #5f5f5f80; }

section.is-footer { padding-top: 0; padding-bottom: 0; }
footer.footer { margin: 0 auto 0; padding: 10px 0; display: flex; align-items: center; background: transparent; justify-content: space-between; border-top: 1px solid #00265c; }
footer.footer aside { display: flex; align-items: center; }
footer.footer aside a.logo  { background: url('/_image/logo.png'); }
footer.footer aside a.logo:not([href])  { cursor: help!important; }
footer.footer aside a.vlogo { background: url('/_image/vlogo.png'); cursor: help!important; }
footer.footer aside a.alogo { background: url('/_image/alogo.png'); }
footer.footer aside a.logo, footer.footer aside a.alogo, footer.footer aside a.vlogo { background-size: contain; background-repeat: no-repeat; width: 85px; height: 100px; }
footer.footer aside a.vlogo { width: 70px; background-position: center; }
footer.footer aside a.logo { background-position-y: 20px; width: 87px; height: 102px; }
footer.footer div.copyright { padding: 15px 0; text-align: right; }

a.scroll-to-top {
	opacity: 0; visibility: hidden;
	width: 48px; height: 48px;
	display: flex;
	align-items: center; justify-content: center;
	transition: 0.5s all ease;
	position: fixed;
	bottom: 24px; right: 24px;
	z-index: 999;
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
	}
a.scroll-to-top.is-active { visibility: visible; opacity: .6; }
a.scroll-to-top.is-active:hover { opacity: 1; }
a.scroll-to-top svg { display: block; width: 24px; height: 24px; transition: all 0.3s; }

#cookie_note {
	display: none; position: fixed;
	left: 20px; bottom: 20px;
	width: 400px;
	padding: 8px 10px;
	background-color: #fff;
	box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .7);
	z-index: 10;
	font-size: 14px;
	line-height: 18px;
	border-radius: 6px;
	}
#cookie_note.show { display: flex; align-items: flex-end; flex-direction: column; }
#cookie_note p { color: black; margin-bottom: 3px; }
#cookie_note div { display: flex; justify-content: space-evenly; width: 200px; }
#cookie_note div a { cursor: pointer; }
#cookie_note div a:hover { color: #363636; }

/*
	section.section div.content p { font-size: 20px; }
	*/

@media screen and (max-width: 1300px) {
	div.box.is-wrapper { max-width: 1000px; }
	header.header h1.title { font-size: 50px; }
	header.header div.logo { min-width: 150px; height: 139px; }
	}
@media screen and (max-width: 1000px) { div.box.is-wrapper { margin: 0; border-radius: 0; } }
@media screen and (max-width: 940px) { header.header h1.title { font-size: 45px; } section.section div.content p { font-size: 18px; line-height: 22px; } }
@media screen and (max-width: 870px) { header.header h1.title { font-size: 40px; } }
@media screen and (max-width: 800px) {
	header.header h1.title { font-size: 35px; }
	section.section div.content p { font-size: 16px; line-height: 20px; }
	div.content h3.title { font-size: 22px; }
	div.content blockquote { font-size: 14px; }
	}
@media screen and (max-width: 735px) { header.header h1.title { font-size: 35px; } header.header div.logo { min-width: 125px; height: 116px; margin-right: 15px; } }
@media screen and (max-width: 700px) {
	header.header h1.title { font-size: 30px; }
	header.header div.logo { min-width: 125px; height: 116px; margin-right: 15px; }
	div.is-direction a { width: 175px; }
	}
@media screen and (max-width: 680px) {
	article.management-item, article.project-item { flex-direction: column-reverse; align-items: center; }
	article.management-item div.media-content, article.project-item div.media-content { display: block; height: auto; margin-bottom: 10px; }
	}
@media screen and (max-width: 650px) {
	section.section { padding: 15px; }
	header.header a { flex-direction: column; }
	header.header div.logo { margin-right: 0; }
	header.header h1.title { text-align: center; }
	section.is-footer { padding-bottom: 0; }
	footer.footer { flex-direction: column; }
	footer.footer div.copyright { text-align: center; margin-bottom: 0; padding-bottom: 0; }
	}
@media screen and (max-width: 530px) {
	section.section div.content h2.title { font-size: 1.5em; }
	section.section div.content p { text-align: left; }
	div.is-direction a { width: 150px; }
	div.is-direction a h4.title { font-size: 1em; }
	header.header h1.title { font-size: 25px; }
	}
@media screen and (max-width: 500px) { a.button.is-support { font-size: 20px; } }
@media screen and (max-width: 460px) { div.is-direction a { width: 200px; } div.is-direction a h4.title { font-size: 1.5em; } }
@media screen and (max-width: 450px) { #cookie_note { width: calc(100% - 40px); } }
@media screen and (max-width: 420px) { a.button.is-support { font-size: 16px; } }
@media screen and (max-width: 400px) { header.header h1.title { font-size: 22px; } }
@media screen and (max-width: 350px) {
	a.button.is-support { font-size: 14px; padding: 5px; }
	figure.image.is-project-image { width: 100%; }
	}
