@charset "utf-8";
/* CSS Document */

:root {
	--text-red: #B30000;
}

body {
	width: 100%;
	background-color: #f2f2f2;
}

html,
body {
	width: 100%;
	font-family: 'Lato', sans-serif;
	/*'Ubuntu', sans-serif;*/
}

a {
	color: #2D5986;
	text-decoration: underline;
}

/* アクセシ用　フォーカス時のスタイル */
a:focus, button:focus {
  outline: 3px solid #ffcc00; /* 目立つ色に変更 */
  outline-offset: 2px;       /* 要素と線の間に隙間を作ると見やすい */
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.5); /* 二重線にして視認性を高める */
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

ul li {
	margin-bottom: .3rem;
}

a:hover {
	text-decoration: none;
}

#home {
	background-color: #2D5986;
	/*background-color: #8293b1;*/
}

#home img {
	width: 120px;
	text-align: center;
	margin-top: 6rem;
	/*margin-left: 45%;
	margin-right:45%;*/
}

#home .flex-center {
	text-align: center;
}

#contact .flex-center {
	text-align: center;
}

#home h1 {
	padding-top: .5rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	color: white;
}

#home .date {
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	color: white;
	line-height: 2rem;
	margin-bottom: 1.2rem;
}

#home .date:before,
#home .date:after {
	content: '';
	display: block;
	height: 1px;
	background: white;
	flex: 1 1 auto;
	text-align: center;
	margin-left: 15%;
	margin-right: 15%;
}

@media (max-width: 992px) {
	#home img {
		margin-top: 5rem;
	}

	#home .date {
		margin-bottom: 0.3rem;
	}

	#home .date:before,
	#home .date:after {
		margin-left: 10% !important;
		margin-right: 10% !important;
	}

	#home h1 {
		font-size: 1.4rem;
		margin-bottom: 14px;
	}
}

@media (max-width: 768px) {

	#home .date:before,
	#home .date:after {
		margin-left: 0% !important;
		margin-right: 0% !important;
	}

	#home .date:before {
		margin-bottom: 6px;
	}

	#home .date:after {
		margin-top: 6px;
	}
}

.red {
	color: var(--text-red) !important;
}

.redb {
	color: var(--text-red);
	font-weight: bold;
}

/* ------------------------------------
 title
------------------------------------  */
.ttl--h3 {
	font-size: 1.3rem;
}

.ttl--h4 {
	font-size: 1.15rem;
	color: #54565b;
}

.ttl--h5 {
	font-size: 1rem;
}

@media (max-width: 768px) {
	.ttl--h4 {
		font-size: 1rem;
	}
}

/* ------------------------------------
 icon
------------------------------------  */
/* icon--pdf */
.icon--pdf {
	display: flex;
}

.icon--pdf .icon--img {
	flex-shrink: 0;
	width: 18px;
	margin-right: 10px;
	filter: brightness(0) saturate(100%) invert(20%) sepia(51%) saturate(5632%) hue-rotate(347deg) brightness(93%) contrast(100%);
}
.icon--pdf .icon--img--large {
	flex-shrink: 0;
	width: 20px;
	margin-right: 15px;
	filter: brightness(0) saturate(100%) invert(20%) sepia(51%) saturate(5632%) hue-rotate(347deg) brightness(93%) contrast(100%);
}

.icon--pdf-size {
	font-size: 1rem;
	color: #333;
	font-weight: normal;
}

@media (max-width: 768px) {
	.icon--pdf .icon--img {
		width: 16px;
		margin-right: 8px;
	}

	.icon--pdf-size {
		font-size: 0.8rem;
	}
}

/* icon--excel */
.icon--excel {
	display: flex;
}

.icon--excel .icon--img {
	flex-shrink: 0;
	width: 18px;
	margin-right: 10px;
	filter: brightness(0) saturate(100%) invert(31%) sepia(4%) saturate(6840%) hue-rotate(101deg) brightness(102%) contrast(84%);
}
.icon--excel .icon--img--large {
	flex-shrink: 0;
	width: 20px;
	margin-right: 15px;
	filter: brightness(0) saturate(100%) invert(31%) sepia(4%) saturate(6840%) hue-rotate(101deg) brightness(102%) contrast(84%);
}
.icon--img__wrap{
	width: 30px;
	border-radius: 50%;
	aspect-ratio: 1/1 ;
	display: flex;
    align-items: center;
    justify-content: center;
}

.icon--excel-size {
	font-size: 1rem;
	color: #333;
	font-weight: normal;
}

@media (max-width: 768px) {
	.icon--excel .icon--img {
		width: 16px;
		margin-right: 8px;
	}

	.icon--excel-size {
		font-size: 0.8rem;
	}
}


/* icon--link */
.icon--link .icon--img {
	flex-shrink: 0;
	width: 18px;
	margin-left: 6px;
}

/* icon--link */
.icon--link2 .icon--img {
	flex-shrink: 0;
	width: 6px;
	margin-left: 6px;
}

/* icon--blank */
.icon--blank .icon--img {
	flex-shrink: 0;
	width: 14px;
	margin-left: 8px;
	margin-bottom: 5px;
}

/* icon color change */
.icon--img.white {
	filter: brightness(0) saturate(100%) invert(100%) sepia(99%) saturate(2%) hue-rotate(62deg) brightness(111%) contrast(100%);
}

.icon--img.black {}

.icon--img.blue {
	filter: brightness(0) saturate(100%) invert(39%) sepia(7%) saturate(4245%) hue-rotate(169deg) brightness(90%) contrast(92%);
}

a:hover .hover--blue {
	filter: brightness(0) saturate(100%) invert(39%) sepia(7%) saturate(4245%) hue-rotate(169deg) brightness(90%) contrast(92%);
}

/* icon--circle */
.icon--circle {
	display: flex;
	align-items: center;
}

.icon--circle::before {
	flex-shrink: 0;
	content: '';
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #2D5986;
	margin-right: 4px;
}









.emphasized {
	font-weight: bold;
	font-size: 1.5rem;
}

.emphasized3 {
	font-weight: bold;
	font-size: 1.4rem;
}

.btn-largeLink {
	max-width: 880px;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
	font-weight: bold;
	border: solid 3px var(--text-red);
	border-radius: 5px;
	text-align: center;
	color: var(--text-red);
}

.btn-largeLink a {
	display: block;
	padding: 2rem;
	color: var(--text-red);
	font-size: 1.3rem;
	text-decoration: none;
	transition: all linear 0.3s;
}

.btn-largeLink a:hover {
	background-color: #fff2f2;
}

.btn-largeLink--txt::before {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-top: 15px solid var(--text-red);
	border-bottom: 0;
	margin-right: 10px;
}

.btn-largeLink--title {
	display: block;
	text-decoration: underline;
	transition: all linear 0.3s;
}

.btn-largeLink a:hover .btn-largeLink--title {
	text-decoration: none;
}

.btn-largeLink--sup {
	display: block;
	font-size: 1rem;
}

@media (max-width: 991px) {
	.btn-largeLink a {
		font-size: 1rem;
		padding: 1rem;
	}

	.btn-largeLink--sup {
		font-size: 0.8rem;
	}
}




.area-content {
	background: white;
	padding: 40px;
	width: 90%;
	margin: 0 auto;
	border-radius: 10px;
}

.lg img {
	width: 80%;
}

.title {
	font-size: 1rem !important;
}

@media (max-width: 991px) {
	.title {
		font-size: .7rem;
	}
}


#summary a {
	color: #2D5986;
	text-decoration: underline !important;
}

#summary a:hover {
	color: #2a4474 !important;
}

#summary p a:hover {
	color: #2a4474 !important;
}

#application a {
	/*color: #2D5986!important;*/
	text-decoration: underline;
}

#application a:hover {
	color: #2a4474;
}

.to-app {
	padding: 3rem;
	background-color: #f2f2f2;
}

.to-ap {
	padding: 1.5rem;
}

.to-ap p {
	padding: 1.5rem;
	text-align: center;
}

.to-ap a {
	/*color: #2D5986!important;*/
	text-decoration: underline !important;
}

.to-ap a:hover {
	color: #2a4474 ;
}

#howto .indent a:hover {
	color: #2a4474 !important;
}

#faq .accordion-item a {
	color: #2D5986;
	text-decoration: underline;
}

#faq .accordion-item a:hover {
	color: #2a4474 !important;
}

.to-app-btn {
	padding: 2rem 5rem;
	background-color: #2D5986 !important;
	text-align: center;
	color: white !important;
	font-weight: bold;
	font-size: 1.3rem;
}

@media(max-width:991px) {
	.to-app {
		padding: 2rem 0.6rem;
		background-color: #f2f2f2;
	}

	.to-app-btn {
		padding: 2rem;
	}
	.to-ap{
		padding: 0;
	}
	.to-ap p{
		padding: 0;
	}
	.to-app-btn{
		font-size: 1.2rem;
		padding: 1rem 0.8rem;
	}
}

.to-app-btn:hover {

	background-color: #2a4474 !important;
}

.menu-to-app-btn {
	background-color: #2D5986 !important;
	text-align: center;
	margin-left: .5rem;
	border-radius: 10px;
}

.menu-to-app-btn a {
	color: white !important;
	font-weight: bold;
	font-size: .85rem;
	border-radius: 10px;
	width: 100%;
}

.menu-to-app-btn a:hover {
	background-color: #2a4474 !important;
	color: white !important;
	border-radius: 10px;
}


.address {
	padding: 1.5rem;
	border: solid 1px #616368;
}


@media(min-width:992px) {
	.npc {
		display: none !important;
	}

}

@media(max-width:991px) {
	.nsp {
		display: none !important;
	}

	.area-content {
		background: white;
		padding: 2rem 0.4rem;
		width: 100%;
		margin: 0 auto;
		border-radius: 10px;
	}

}


/* news */


/*#news:after{
	position: absolute;
	z-index: -1;
	content:'';
	top:10px;
	left:-30%;
	width:150%;
	height: 550px;
	background: #DEF0E7;
	transform: rotate(-5deg);
}*/

#news .area-content {
	background: #fff;
	padding: 40px;
	width: 70%;
	margin: 0 auto;
	border-radius: 10px;
}

#news h2 {
	/*color: #fff;	*/
}

#news li a {
	transition: all 0.3s;
}

#news li a:hover {
	color: #666;
}

#news article {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	border-bottom: 1px solid #CCC;
}

#news article time {
	padding: 0 2em 0 0;
	color: #666;
	font-size: 0.8rem;
}

#news article h3 {
	font-size: 1rem;
	line-height: 1.5rem;
}

.call-list__item {
	text-align: center;
}

.call {
	display: inline-block;
	font-size: 3rem;
	font-weight: bold;
	color: inherit;
	text-align: center;
}

@media (max-width: 768px) {
	.call {
		font-size: 2rem;
	}
}

.ol-list{
	list-style-type: none; /* 数字を消す */
}

#contact a:hover {
	color: #616368 !important;
}

#contact p {
	text-align: center !important;
}

#contact li {
	text-align: center !important;
}


#footer p {
	color: white !important;
	text-align: center;
	margin-top: 1rem;
}

#footer p a,
#footer a:hover {
	color: white !important;
}

#footer .policy {
	font-size: .8rem;
	margin: 2rem;

}

.to-qa {
	text-align: center;
}

.to-qa p {
	padding: 2rem 0 0;
	font-weight: bold;
}

.to-qa-btn {
	padding: 2rem 5rem;
	/*background-color: #2D5986!important;*/
	color: #242F51;
	font-weight: bold;
	border: solid 3px #242F51;
	font-size: 1.3rem;
}

.to-qa-btn a {
	color: #242F51;
	text-decoration: none !important;
}

.to-qa-btn:hover {
	color: #242F51 !important;
	background-color: #e9f0fa !important;
}

@media (max-width: 991px) {
	.to-qa-btn {
		padding: 1rem;
		font-size: 1rem;
	}
}



.to-summary-btn {
	padding: 2rem;
	font-weight: bold;
	border: solid 3px var(--text-red);
	border-radius: 5px;
	text-align: center;
	color: var(--text-red);
}


.to-summary-btn a {
	color: red !important;
}

.to-summary-btn a:hover {
	color: red !important;
}

.indent {
	margin-left: 1em;
	padding-left: 1em;
	text-indent: -1em;
	margin-top: -0.7em;
}

.indent1 {
	margin-left: 1em;
}

.indent-area {
	padding-left: 1rem;
	text-indent: 1em;
}

.indent1 li {
	margin-left: 1em;
}

.indent2 {
	margin-left: 2em;
}

.indent3 {
	margin-left: 3em;
}

.indent4 {
	margin-left: 4em;
}

.indent7 {
	margin-left: 7em;
}

.indent4-area {
	padding-left: 7rem;
	text-indent: -3rem;
}

.btn-notice {
	text-align: center;
	color: var(--text-red);
	font-weight: bold;
	margin-bottom: -1rem;
}

.btn-notice02 {
	text-align: center;
	color: var(--text-red);
	font-weight: bold;
	margin-top: -1.5rem;
}

.btn-notice02 a {
	color: var(--text-red) !important;
}

.no {
	text-align: right;
}

.lb-nav a.lb-next {
	display: none !important;
}

.lb-nav a.lb-prev {
	display: none !important;
}

.lb-data .lb-number {
	display: none !important;
}

#application .notice .redb a {
	color: red !important;
}

#application .notice .redb a:hover {
	color: var(--text-red) !important;
}





.to-app .indent a {
	color: #2D5986;
	text-decoration: underline;
}

.to-app .indent a:hover {
	color: #2a4474 !important;
}

.to-app .indent a:hover {
	color: #2a4474 !important;
}

a.add:hover {
	/*color: #1e00c7;*/
	text-decoration: underline !important;
	color: #2a4474 !important;

}