@charset "utf-8";
/* CSS Document */

/*@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
/**/
/**★★基本セット★★**/
/**/

/* html */
html {
	height: 100%;
	margin: 0px;
	padding: 0px;
}
body {
	height: 100%;
	margin: 0px;
	padding: 0px;
	background: #fff;
	font-size: 16px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;*/
	line-height: 175%;
}
a:link {
	text-decoration: none;
	color: #2654a5;
}
a:visited {
	text-decoration: none;
	color: #2654a5;
}
a:hover {
	color: #f8b500;
	text-decoration: none;
}
a:active {
	color: #99CC00
}
img {
	display: block;
	border: 0px;
}
p {
	margin: 0px;
	padding: 0px;
}
hr {
	border: none;
	border-top: 1px double #8c8c8c;
	height: 1px;
}
/* custom */
.MB0 {
	margin-bottom: 0px;
}
.TI1 {
	text-indent: 1em;
}
.TAL {
	text-align: left;
}
.TAR {
	text-align: right;
}
.TAC {
	text-align: center;
}
.TAJ {
	text-align: justify;
}
.TAJ p {
	text-align: justify;
}
.CB {
	clear: both;
}
.FL {
	float: left;
}
.FR {
	float: right;
}
.mtBlock {
	margin-top: 10px;
}
.disFlex {
	display: flex;
}
.aiBaseline {
	align-items: baseline;
}
.aiFE {
	align-items: flex-end;
}
.fwb {
	font-weight: bold;
}
.fcPink {
	color: #E08294;
}
.lh150 {
	line-height: 150%;
}
.fwn {
	font-weight: normal !important;
}
/*************************/
.contentsAll {
	padding-top: 72px;
}
/*************************/
.contentsAll_page {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1024px;
    margin: 0px auto;
    padding: 102px 30px 30px 30px;
    box-sizing: border-box;
}
/*************************/
.contentsAll_achive {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1024px;
    margin: 0px auto;
    padding: 102px 30px 30px 30px;
    box-sizing: border-box;
}
.blockTitle {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 1em;
    border-bottom: 1px solid #000e54;
    padding: 0em 1em 0em 1em;
    color: #000e54;
}
.listCategoryBlock > div {
    border-bottom: 1px dashed #555;
    padding-top: 0.75em;
    margin-top: 0.5em;
	font-size: 93.75%;
}
@media only screen and (max-width :480px) {
.contentsAll_achive {
    padding: 30px 10px;
}	
}
/*************************/
.contentsAll_others {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1200px;
    margin: 0px auto;
	padding: 72px;
}
/*************************/
.bord_cent {
	border-top: 1px solid #9e9e9e;
    width: 3.55em;
}
.titleCateBlock span {
	padding: 0em 1em;
	border-right: 1px solid #9e9e9e;
	font-size: 93.75%;
    line-height: 100%;
    color: #000e54;
}
.titleCateBlock span:last-of-type {
	border-right: 0px solid #555;
}
.contentBlock {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0px auto;
    padding: 20px;
    box-sizing: border-box;
    max-width: 1200px;
}
.contentBlock:not(.contentBlock div.recInfo) {
    font-size: 93.75%;
}
.titleCateBlock {
	display: flex;
	justify-content: center;
	padding-bottom: 0.65em;
	align-items: center;
	overflow: hidden;
}
.blockTitleArea {
	border-bottom: 1px solid #000e54;
	padding: 0em 1em;
}
@media only screen and (max-width :480px) {
.blockTitleArea {
	padding: 0em 0em;
}
}
[class*="blockTitle_"] {
	display: flex;
	flex-direction: column;
    align-items: center;
	width: fit-content;
	margin: 0px auto;
	border-bottom: 4px solid #000e54;
    padding-bottom: 0.25em;
	font-size: 24px;
    line-height: 135%;
    font-weight: bold;
    color: #000e54;
}

[class*="blockTitle_"] > div {
    font-size: 70.83%;
    line-height: 135%;
    font-weight: normal;
    color: #000e54;
	padding-top: 0.4em;
}
.blockTitle_recr {
	border-bottom-width: 0px;
    padding-bottom: 0em;
}
.kijiBlockAreaOther2 {
	width: 100%;
	padding-top: 1.25em;
}
.recInfo {
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #dcdfeb;
    padding: 2em 1.25em;
    box-sizing: border-box;
    margin-bottom: 1.25em;
	font-size: 106.67%;
}
.recInfo p {
	display: flex;
	padding: 0em 5em;
	gap: 0em 1em;
}
.recInfo p:not(:last-child) {
	margin-bottom: 1em;
	border-bottom: 1px solid #000e54;
	padding-bottom: 1em;
}
.recInfo p strong {
	white-space: nowrap;
}
.postDate {
    display: flex;
    justify-content: flex-end;
    margin-top: 1em;
    border-top: 1px dashed #3747a9;
    padding: 0.5em 2em 1em 2em;
    font-size: 93.75%;
    box-sizing: border-box;
}
.pageTitleArea {
	display: flex;
    width: 100%;
    max-width: 1200px;
    margin: 0px auto;
    justify-content: center;
    align-items: center;
	position: relative;
	margin: 0px auto;
	overflow: hidden;
    height: 240px;
}
.pageTitlePhoto img {
	width: 100%;
	max-width: 100%;
}
.pageTitleText {
	display: flex;
	justify-content: center;
    align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: rgba(255,255,255,0.75);
	font-size: 137.5%;
	height: 37%;
}
@media only screen and (max-width :480px) {
.contentsAll {
	padding-top: 0px;
}
.pageTitleText {
	font-size: 100%;
}
.pageTitleArea {
	height: auto;
}
[class*="blockTitle_"] {
	font-size: 120%;
}
.recInfo p {
    padding: 0em 0em;
	flex-direction: column;
}
.recInfo p strong > span::before {
	content: "　";
}
.postDate {
    padding: 0.5em 0em 0.5em 0em;
}
.titleCateBlock span {
	font-size: 86.67%;
	white-space: nowrap;
}
}
/*********gototop*********/
#gototop2 {
	position: fixed;
	right: 10px;
	bottom: 10px;
	width: 60px;
	height: 60px;
	z-index: 100;
}

/**ヘッダー**************************/
#header {
	display: flex;
	width: 100%;
	height: 72px;
	position: fixed;
	background: rgba(1 19 92 / 1);
	overflow: hidden;
    box-shadow: 0px 2px 1px rgb(0 0 0 / 30%);
	font-size: 93.75%;
	line-height: 150%;
	z-index: 1000;
}
#header_inner2 {
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: left;
}
#logomark {
	margin-left: -90px;
}
/**メニューボタン******/
#submenu {
    display: block;
    position: absolute;
    bottom: 12px;
    right: 0px;
    z-index: 5000;
}
#submenu ul {
	display: flex;
	flex-direction: row;
    margin: 0px;
    padding: 0px;
}
#submenu li {
	display: flex;
	justify-content: center;
    border-left: 1px solid rgb(255, 255, 255);
    font-size: 15px;
    color: rgb(255, 255, 255);
    text-align: center;
	list-style: none;
}
#submenu li:last-child {
    border-right: 1px solid rgb(255, 255, 255);
}
#submenu li a {
	display: block;
	width: 8em;
	padding: 0em 1.25em;
	box-sizing: border-box;
    color: rgb(255, 255, 255);
}
/*スライドインメニューボタン*/
#ulAreaTop {
    display: block;
    position: fixed;
    top: 72px;
    left: 50%;
    width: 1200px;
    margin: 0px auto 0px -600px;
    z-index: 900;
	font-size: 93.75%;
	line-height: 150%;
}
#top_menu2_cont {
    display: none;
    position: absolute;
    top: -50px;
    right: 0px;
    list-style: none;
    margin: 0px;
    border: 1px solid #fff;
    border-radius: 0px 0px 6px 6px;
    padding: 0.5em 0em;
    background: rgba(255,255,255,0.9);
    z-index: 200;
    box-shadow: 0px 0px 5px 1px rgb(0 0 0 / 45%);
    opacity: 0;
}
#ulAreaTop li {
    display: flex;
    border-left: 1px solid rgb(19, 102, 178);
    padding: 0em;
}
#ulAreaTop li:first-child {
    border-left-width: 0px;
}
#ulAreaTop li > a {
    display: block;
    width: 100%;
	padding: 0em 1.5em;
	box-sizing: border-box;
	text-align: center;
}


/**ヘッターライト画像******/
#header_bgRight {
    display: block;
    position: absolute;
    top: 0%;
    right: 0%;
    width: 260px;
    height: 72px;
    margin-right: -102px;
    background: url(../images/header/kumo4.png) no-repeat 0% 100%;
    /*z-index: 4500;*/
    opacity: 0.65;
}

/**SPメニューボタン*********/
#title_siteSP {
	display: none;
	margin-bottom: 20px;
}
#spMenuBt {
	display: none;
}
#menuArea {
	display: none;
}

@media only screen and (max-width :480px) {
#header {
	height: auto;
}
#submenu {
	display: none;
}
#header_bgRight {
	display: none;
}
#header_inner2 {
    max-width: unset;
}
#logomark {
    margin-left: 0px;
}
#logomark img {
	width: 100%;
    height: auto;
    margin-left: -15%;
}
}
@media only screen and (max-width :480px) {
/*****/
#spMenuBt {
	display: flex;
	/*position: absolute;*/
	position: fixed;
	top: 0px;
	right: 0px;
	flex-direction: column;
	justify-content: center;
	width: 60px;
	height: 60px;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	padding: 15px;
	box-sizing: border-box;
	background: #359ed1;
	z-index: 5000;
}
#spMenuBt > div {
	display: block;
	width: 100%;
	height: 1px;
	margin: 4px 0px;
	background: #fff;
}
#spMenuBt > div.barTop {
	display: block;
	transform: translateY(0) rotate(45deg);
	margin-top: 3px;
}
#spMenuBt > div.barBottom {
	display: block;
	transform: translateY(0) rotate(-45deg);
	margin-top: -5px;
}
/*****/
#menuArea {
	display: block;
	width: 100%;
	height: 2500px;
	margin: 0px 0px 0px 1000px;
	padding: 70px 10px 10px 10px;
	position: fixed;
	background: rgba(255,255,255,1);
	overflow-y: auto;
	z-index: 4000;
	box-sizing: border-box;
}
#menuArea ul {
	display: block;
	flex-direction: column;
	width: 100%;
	margin: 0px;
	padding: 0px;
}
#menuArea ul li {
	display: block;
	border-right: 0px solid #182A88;
	border-bottom: 1px solid #182A88;
	padding: 0.5em 1em;
	text-align: left;
	position: relative;
}
#btMenu {
    display: flex;
    justify-content: center;
    background: #c7dced;
    border-radius: 5px;
}

}
/*********front page*********/
/*********************************/
section#main_img {
	display: flex;
	justify-content: center;
	padding-top: 72px;
	background: rgba(21,31,84,1);
}
@media only screen and (max-width :480px) {
section#main_img {
	padding-top: 0px;
}
}
#logo45 {
	display: block;
	position: absolute;
	top: 5%;
	left: 3%;
	width: 9%;
	line-height: 100%;
	opacity: 1;
}
#logo45_img {
	width: auto;
	max-width: 120px;
}
#slideGalley {
	display: flex;
	width: 100%;
	max-width: 1200px;
	overflow: hidden;
	position: relative;
}
#galleyPhotoBlock {
	display: flex;
	flex-direction: row;
	width: 100%;
	max-width: 1200px;
	overflow: hidden;
	position: relative;
}
#galleyPhotoBlock > div:first-child {
	width: 480px;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
#galleyPhotoBlock > div:last-child {
	width: 715px;
	border-right: 1px solid #fff;
}
#galleyPhotoBlock img {
	width: 100%;
	height: auto;
}
/*********/
#topImgCaption {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	padding: 0.25em 0em;
	font-size: 81.25%;
}
/*****理念****/
.philosophyAera {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	padding-bottom: 1.5em;
}
.textPhilTitle {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	color: #2d69ab;
	line-height: 150%;
	font-size: 22pt;
	letter-spacing: 0.1em;
	padding-bottom: 0.65em;
	text-align: center;
}
.textPhilosophy {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	font-size: 18px;
	line-height: 175%;
}
.textPhilosophy p {
	margin: 0px;
	padding: 0px;
}
/*****50周年****/
#his50Area {
	display: block;
	margin-bottom: 3em;
	background: #dae3f3;
	padding: 0px 10px;
	box-sizing: border-box;
}
#his50AreaInn {
	display: flex;
	flex-direction: row;
	justify-content: center;
	background: #dae3f3;
}
#his50TextLead {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 1.25em 0em;
}
#his50TextLead > div:first-child {
	display: flex;
	justify-content: center;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-size: 22pt;
	color: #001f5f;
	letter-spacing: 0.125em;
	text-align: center;
	line-height: 150%;
}
#his50TextLead > div:last-child {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	font-size: 18px;
	gap: 20px;
}
#his50TextLead p {
	margin: 0px;
	padding: 0px 0px 1em 0px;
	line-height: 175%;
}
#his50Logo {
	display: flex;
	justify-content: center;
	width: 190px;
	height: 190px;
	box-sizing: border-box;
	background: #2d5a32;
	flex-direction: column;
	align-items: center;
	font-size: 77.8%;
	line-height: 135%;
	overflow: hidden;
}
#his50Logo:hover {
	opacity: 0.75;
}
#his50Logo a {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 15px;
	box-sizing: border-box;
	height: 100%;
	color: #fff;
}
#his50Logo > a > div {
	display: flex;
	height: 100%;
	justify-content: center;
}
#his50Logo > a > div:last-child {
	margin-top: -36px;
}
#his50Logo img {
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
}
/**whatsnew**/
.whatsnewArea {
	display: flex;
	width: 100%;
	max-width: 1200px;
	margin: 10px auto;
	font-size: 87.5%;
	line-height: 155%;
}
.whatsnewTitle {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	min-width: 6.5em;
	padding: 15px;
	background: rgba(21,31,84,1);
	color: #fff;
}
.whatsnewTitle > div:first-child {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}
.whatsnewTitle > div:not(:first-child) {
	display: block;
	position: absolute;
	width: 25px;
	height: 25px;
	border: 1px solid rgb(255 255 255 / 0.35);
}
.whatsnewTitle > div:nth-child(2) {
	top: 15px;
	left: 15px;
	border-right-width: 0px;
	border-bottom-width: 0px;
}
.whatsnewTitle > div:nth-child(3) {
	top: 15px;
	right: 15px;
	border-left-width: 0px;
	border-bottom-width: 0px;
}
.whatsnewTitle > div:nth-child(4) {
	bottom: 15px;
	left: 15px;
	border-right-width: 0px;
	border-top-width: 0px;
}
.whatsnewTitle > div:nth-child(5) {
	bottom: 15px;
	right: 15px;
	border-left-width: 0px;
	border-top-width: 0px;
}
.whtatnewList {
	width: 100%;
	padding: 15px 15px 0px 15px;
	background-color: #dae3f3;
	box-sizing: border-box;
}
.whtatnewList ul {
	list-style: none;
	margin: 0px;
	padding: 0px;
}
.whtatnewList ul li {
	display: flex;
	flex-direction: row;
	gap: 0em 1em;
	margin-bottom: 0.5em;
	border-bottom: 1px dotted #868eba;
	padding-bottom: 0.5em;
}
.whtatnewList ul li:last-child {
	border-bottom-width: 0px;
}
.whtatnewList ul li div {
	white-space: nowrap;
	min-width: 8em;
}
.info50page {
	display: flex;
	margin-bottom: 0.75em;
	border-bottom: 1px solid #868eba;
	padding-bottom: 0.5em;
	gap: 1em;
}
.info50page div {
	min-width: 8em;
}
/**取組**********/
#tabmenuArea {
	display: block;
	width: 100%;
	margin: 0px auto;
	padding: 0px;
	background: #fff;
}
#tabmenuAreaInner {
	display: block;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	padding: 24px 0px;
	background: #fff;
}
#torikumiTitle {
	display: none;
	padding-bottom: 12px;
	color: #2d69ab;
	line-height: 150%;
	font-size: 28px;
	/* letter-spacing: 0.1em; */
    text-align: center;
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
}
#tabArea1 {
	display: block;
	margin-bottom: 10px;/* border: 1px solid #555; */
}
.tabArea1inn {
	display: table;
	width: 100%;
	border-bottom: 1px solid #c1c1c1;
}
#tabLeft1, #tabLeft2 {
	margin-left: 0px;
}
.tabStyleA {
	display: block;
	position: relative;
	margin: 0px;
	padding: 0em 1em 0em 14px;
	font-size: 16px;
	font-weight: normal;
	font-family: メイリオ, Meiryo;
	color: #fff;
	background: #fff;
}
.tabStyleA span {
	border-bottom: 4px solid #3b59a4;
	padding-top: 2px;
	padding-right: 0.5em;
	padding-left: 0.5em;
	color: #3b59a4;
}
.torikumiA1 {
	display: block;
	width: 33%;
	margin: 0px;
	padding: 14px 0em 1em 1em;
	box-sizing: border-box;
	line-height: 150%;
}
div[class*="torikumi"] > div[class*="listTitle"] {
	display: flex;
	position: relative;
	margin: 0px 0px 6px 0px;
	border-bottom: 2px solid #91A3C9;
	padding-bottom: 6px;
	font-size: 93.75%;
	font-weight: normal;
	font-family: メイリオ, Meiryo;
	color: #474747;
	flex-direction: row;
	justify-content: space-between;
}
.listTitleCate {
	display: table;
}
.listTitleBt {
	display: block;
	position: relative;
	margin: 0px;
	padding-right: 0em;
	text-align: right;
	font-size: 14.4px;
	clear: none;
}
.torikumiA1 ul {
	margin: 0px;
	padding: 0px;
}
.torikumiA1 li {
	list-style: none;
	margin-bottom: 0.25em;
	border-bottom: 1px dashed #888;
	padding-bottom: 0.25em;
	font-size:87.5%;
	white-space: nowrap;
}
.btLinkBumon2 a:link, .btLinkBumon2 a:visited {
	display: inline;
	border-radius: 3px;
	padding: 0.5em 1em 0.5em 1em;
	background: rgba(19,102,178,0.5);
	color: #fff;
	font-size: 13px;
	line-height: 100%;
	font-family: "ＭＳ ゴシック";
}
.btLinkBumon2 a:hover {
	display: inline;
	border-radius: 3px;
	padding: 0.5em 1em 0.5em 1em;
	background: rgba(0,102,204,1);
	color: #fff;
	font-size: 13px;
	line-height: 100%;
	font-family: "ＭＳ ゴシック";
}
.tabBox {
	display: flex;
}
/**サークルエリア*********/
#circleArea {
	display: block;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	padding: 24px 0px;
	background: #fff;
	text-align: center;
	padding: 0px 10px;
    box-sizing: border-box;
}
#circleTitle {
	margin-bottom: 18px;
	font-size: 28px;
	color: #555;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic";
}
#circleSubTitle {
	padding-bottom: 30px;
	font-size: 18px;
	color: #555;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic";
}
#circleImage {
	display: flex;
	justify-content: center;
	margin-bottom: 2em;
}
/****部署****/
.depInfoAll > div:nth-child(2n+1) {
	background: #d0e8fd;
}
.depInfoArea {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 10px 0px;
	background: #f0f5fa;
	box-sizing: border-box;
}
.depInfoLR {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	padding: 20px 0px 20px 0px;
	gap: 20px;
}
.depInfoL {
	min-width: 680px;
}
.depNameBlock {
	display: flex;
}
.depInfoR {
	display: flex;
	gap: 20px;
}
.depNameBlock {
	display: flex;
	flex-direction: column;
	border-left: 5px solid rgba(19,102,178,0.5);
	padding-left: 0.8em;
}
.depNameBlock > div:first-child {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 18em;
}
.depName {
	font-size: 21px;
}
.depNameE {
	color: rgba(19, 102, 178, 0.75);
	font-size: 18px;
	font-family: serif;
}
.depText {
	display: block;
	padding: 0.5em 0em;
	font-size: 93.75%;
}
.depImg {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}
.depImg > div {
	display: block;
	position: relative;
	width: 100%;
	max-width: 240px;
	min-width: 240px;
}
.depImg > div > img {
	width: 100%;
	height: auto;
}
.depImg span {
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	background: rgba(0, 0, 0, 0.65);
	color: rgb(255, 255, 255);
	font-size: 12px;
	text-align: center;
}
.textCategoryName {
	display: block;
	margin-top: 1em;
	margin-bottom: 5px;
	border-bottom: 1px solid rgba(19, 102, 178, 0.5);
	padding: 0.25em 1em;
	font-size: 87.5%;
	color: rgba(19, 102, 178, 1);
}
.depList {
	margin: 0px;
	padding: 0em 1em;
}
.depList li {
	padding: 0em 2em 0em 0em;
	list-style: none;
	float: left;
	font-size: 87.5%;
}
/****バナー画像****/
.bannerImg img {
	width: 100%;
	max-width: 380px;
	transition: opacity 0.15s ease;
}
.bannerImg img:hover {
	opacity: 0.5;
}
/****過去のニュースボタン****/
.news_his {
	display: flex;
	justify-content: flex-end;
    padding-bottom: 0.5em;
	margin-top: 0.75em;
    border-top: 1px dotted #868eba;
    padding-top: 0.5em;
}
/*******************************************/
@media only screen and (max-width: 456px) {
#header {
	position: relative;
}
#logo45 {
    width: unset;
	left: 5%;
}
#logo45_img {
    max-width: 50%;
}
#galleyPhotoBlock {
    flex-direction: column;
}
#galleyPhotoBlock > div:first-child {
	width: 100%;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
	box-sizing: border-box;
}
#galleyPhotoBlock > div:last-child {
	width: 100%;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
	box-sizing: border-box;
}
#topImgCaption {
	display: none;
}
.philosophyAera {
	padding-top: 20px;
	padding-right: 10px;
	padding-left: 10px;
	box-sizing: border-box;
}
#his50TextLead > div:last-child {
	flex-direction: column;
	align-items: center;
	gap: 0px;
}
.whatsnewArea {
	flex-direction: column;
}
.whtatnewList ul li {
	flex-direction: column;
}
.whtatnewList ul li div {
	white-space: unset;
}
.info50page {
	gap: 0em;
	flex-direction: column;
}
.torikumiA1 {
	width: 100%;
	padding: 15px 10px;
}
.torikumiA1 li {
	white-space: unset;
}
.tabArea1inn {
	margin-bottom: 20px;
}
.tabBox {
	flex-direction: column;
}
.depInfoL {
	min-width: unset;
}
.depInfoLR {
	flex-direction: column;
}
.depImg {
	flex-direction: column;
}
#circleImage img {
	width: 100%;
}
.depNameBlock > div:first-child {
    width: 100%;
}
.depInfoArea {
	padding: 10px 10px;
}
.depImg > div {
	max-width: 100%;
}
.bannerImg img {
	max-width: unset;
}
}
/*********footer*********/
.footerArea {
	display: block;
	padding: 20px 10px;
	background: #000e54;
	color: #fff;
	font-size: 87.5%;
}
.footerAreaInn {
	display: flex;
	flex-direction: column;
	max-width: 1200px;
	margin: 0px auto;
}
.footerAreaInn .textContents {
	display: flex;
	justify-content: center;
	margin: 0em 0em 1em 0em;
	padding: 0.25em 1em;
	background: #959bb9;
}
.footerAreaInn .listBlock {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1.25em;
	flex-basis: auto;
	flex-grow: 1;
}
.footerAreaInn .listBlock > div {
	display: flex;
	flex-direction: column;
	flex-basis: auto;
	flex-grow: 1;
	/*min-width: 20%;*/
	/*add*/
	flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
}
.footerAreaInn .listBlock > div > p {
	margin-bottom: 3px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding-bottom: 3px;
}
.listBlock2 {
	padding-top: 1.25em;	
}
.footerAreaInn .listBlock2 > div:last-of-type li {
	margin-bottom: 3px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding-bottom: 3px;
}
.footerAreaInn ul {
	list-style: none;
	margin: 0px;
	padding: 0px;
}
.footerAreaInn ul a:link {
	color: rgb(255 255 255 / 0.5);
}
.footerAreaInn ul a:visited {
	color: rgb(255 255 255 / 0.5);
}
.footerAreaInn ul a:hover {
	color: rgb(255 255 255 / 1);
}