:root{
	--color-kon:#0B48A0 ;
	--color-blue:#04A5E1;
	--color-green:#48CA70;
	--color-orange:#F98C2B;
	--light-gray:#E3E3E3;
	--link-blue:#0066CC;
}
@media (max-width: 60rem) {

}

.sec-key{
	max-width:940px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:2.4em;
}
@media (max-width: 767px) {
	.sec-key{
		margin-bottom:0;
	}
}
.key{
	display:flex;
	background:url(../img/key-bg.png) left top / cover no-repeat;
	padding:2.8em 0;
}
@media (max-width: 767px) {
	.key{
		background:url(../img/key-bg.png) left -100px top / cover no-repeat;
		flex-flow:column;
		padding-bottom:4.8em;
	}
}
.key-main{
	width:65%;
	padding-left:3em;
}
@media (max-width: 767px) {
	.key-main{
		width:100vw;
		padding:.4em .8em;
	}
}
.key-main-sub-title{
	margin-bottom:.6em;
	margin-left:.2em;
}
@media (max-width: 767px) {
	.key-main-sub-title{
		margin-bottom:.5em;
	}
	.key-main-sub-title img{
		width:54%;
		height:auto;
	}
}
#HOME h2.key-main-title{
	max-width:550px;
	width:100%;
	height:auto;
	margin-bottom:1em
}
@media (max-width: 767px) {
	#HOME h2.key-main-title{
		width:96%;
		margin-bottom:.8em
	}
}
.key-main-title img{
	width:100%;
	height:auto;
}
.key-main-text{
	font-size:1.2rem;
	font-weight:bold;
	color:#163E63;
	margin-left:.3em;
	margin-bottom:1.4em;
	letter-spacing:1px;	
	text-shadow: 1px 1px 2px #FFF , 1px 1px 4px #FFF;
	line-height:1.5;
}

@media (max-width: 767px) {
	.key-main-text{
		width:90%;
		font-size:1.1rem;
		color:#FFF;
		text-align:center;
		line-height:1.3;
		background:#63b4ef;
		margin-left:auto;
		margin-right:auto;
		padding:.7em .4em;
		border-radius:.4em;
		text-shadow: none;
		line-height:1.5;
	}
}
.key-main-list{
	color:#163E63;
	font-weight:bold;
	margin-left:.6em;
}
@media (max-width: 767px) {
	.key-main-list{
		width:90%;
		margin-right:auto;
		margin-left:auto;
	}
}
.key-main-list-item{
	display:flex;
	align-items:center;
	font-size:1.1rem;
}
.key-main-list-item:nth-of-type(1){
	margin-bottom:.16em;
}
@media (max-width: 767px) {
	.key-main-list-item{
		font-size:1rem;
		line-height:1.3;
	}
	.key-main-list-item:nth-of-type(1){
		margin-bottom:.6em;
	}
}

.key-main-list-item::before{
	content:"";
	display:inline-block;
	width:1rem;
	height:1rem;
	border-radius:50%;
	background:#4AAAE5;
	margin-right:.3em;
}
@media (max-width: 767px) {
	.key-main-list-item::before{
		width:.8rem;
		height:.8rem;
	}
}

.key-sub{
	display:flex;
	flex-direction:column;
	justify-content:center;
	width:35%;
	padding-right:1.4em;
	margin-top:1.6em;
}
@media (max-width: 767px) {
	.key-sub{
		display:block;
		position:relative;
		width:80%;
		margin:2.4em auto 0;
		padding-right:1.4em;
	}
	.key-sub img{
		display:none;
	}
}

@media (max-width: 570px) {
	.key-sub img{
		top:-8vh;
		right:-8vw;
	}
}
@media (max-width: 430px) {
	.key-sub img{
		top:-6vh;
		right:-8vw;
	}
}

.key-sub-img{
	max-width:410px;
	width:100%;
	height:auto;
}
.key-sub-link{
	display:block;
	max-width:260px;
	width:100%;
	margin-top:-.5em;;
	margin-left:auto;
	margin-right:auto;
	font-size:1.2rem;
	padding-top:.6em;
	padding-bottom:.6em;
	background-image: linear-gradient(175deg, #ffffff, #eeeeee);
	border:solid 2px #3393EB;
	border-radius:.4em;
	box-shadow: 0 2px 4px 1px #b4bec9;
	transition:.4s box-shadow !important;
	text-align:center;
}
.key-sub-link:hover{
	text-decoration:none;
}
@media (max-width: 767px) {
	.key-sub-link{
		max-width:96%;
		font-size:1.1rem;
		padding:.8em .3em;
		line-height:1.3;
		text-align:left;
		position:absolute;
		left:0;
		right:0;
		z-index:2;
	}
}
.key-sub-link:hover{
	box-shadow: 0 1px 2px 0px #8494a6;
}
.key-sub-link-text{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:.4em;
}
@media (max-width: 767px) {
	.key-sub-link-text{
		font-weight:bold;
		color:var(--color-kon);
	}
}
.key-sub-link-text::before{
	content:"";
	display:block;
	width:23px;
	height:14px;
	background:url(../img/ico-hito.svg) center / cover no-repeat;
}
.key-sub-link-text::after{
	content:"";
	display:block;
	width:20px;
	height:9px;
	background:url(../img/ico-arrow.svg) center / cover no-repeat;
}
.t-underline{
	background: linear-gradient(transparent 70%, #FFF5A7 30%);
}
@media (max-width: 960px) {
	.key-main-text-sp-fix{
		color:#163E63;
	}
}
@media (max-width: 767px) {
	.key-main-text-sp-fix{
		color:#FFF;
		background: linear-gradient(transparent 80%, #91deff 20%);
	}
}

.shuzen-banner{
	margin:1em 0 1.7em;
}
@media (max-width: 960px) { 
	.shuzen-banner{
		margin-top:1.9em;
		text-align:center;
	}
}
.shuzen-banner-sp{
	display:none;
}
.shuzen-banner-link{
	display:inline-block;
	transition:.4s opacity , box-shadow .4s ;
	box-shadow: 0 0px 3px 3px #e7e9e8;
}
.shuzen-banner-link:hover{
	opacity:.8;
	box-shadow: 0 0px 1px 0 #939594;
}

@media (max-width: 767px) {
	.shuzen-banner{
		display:none;
		width:100%;
	}
	.shuzen-banner-sp{
		display:block;
		margin:1.8em 2.5vw;
	}
	.shuzen-banner-link{
		display:block;
		width:100%;
		box-shadow: 0;
	}
	.shuzen-banner-link-img{
		width:100%;
		height:auto;
	}
}
@media (max-width: 960px) {
	#INFORMATION h2.top-infomation-title{
		width:auto;
		margin-left:2.5vw;
		margin-right:2.5vw;
	}
}

#UMEMBERS div.cbox.cbox-fix{
	margin-top:0;
}
#UMEMBERS div.csbox.csbox-fix{
	margin-right:20px;
}
@media (max-width: 767px) {
	#UMEMBERS div.csbox.csbox-fix{
		margin-right:0;
	}
}
#UMEMBERS div.bbox.bbox-fix{
	width:100%;
}

.faq-wrap .lead{
	font-weight:bold;
	margin-bottom:2.6em;
	text-align:center;
	background:#DEF0FB;
	border-radius:.4em;
}

.faq{
	max-width:620px;
	margin-left:auto;
	margin-right:auto;
}

.faq-que{
	display:flex;
	align-items: center;
	font-size:1rem;
	font-weight:bold;
	color:var(--color-blue);
	background:#F6F6F6;
	padding:.6em 1.6em .6em .5em ;
	border-radius:.4em;
	position:relative;
	line-height:1.3;
	margin-top:1.4em;
	margin-bottom:1.4em;
	max-width:655px;
	width:100%;
	box-sizing: border-box;
	cursor:pointer;
}
@media (max-width: 767px) {
	.faq-que{
		padding:.4em 2.4em .4em .5em ;
	}
}
.faq-que span{
	color:var(--color-blue);
}
.faq-que::before{
	content:"Q";
	display:inline-block;
	background:#FFF;
	border-radius:.4em;
	display:flex;
	align-items: center;
	justify-content: center;
	width:2em;
	height:2em;
	margin-right:.4em;
}
.faq-que-text{
	display:inline-block;
	width:90%;
	font-size:1.2em;
}
@media (max-width: 767px) {
	.faq-que-text{
		font-size:1em;
	}
}
.faq-ans{
	max-width:655px;
	width:100%;
	padding:0 .8em .8em;
	margin-top:-.6em;
	line-height:1.5;
	font-size:.9rem;
	box-sizing: border-box;
}



.information-top-title{
	display:flex;
	align-items:center;
	gap:.4em;
	background:var(--color-kon);
	font-size: min(4.5vw, 1.1rem);
	color:#FFF;
	margin:1.6em 0 .8em;
	padding:.8em;
}
.information-top-title::before{
	content:"";
	display:block;
	width:1.1em;
	height:1.1em;
	background:url(../img/ico-info.svg) left center / cover no-repeat;
}

.dpinfo{
	display:flex;
	justify-content:space-between;
	padding:.8em .8em .7em ;
	border-bottom:solid  1px var(--light-gray);
}
@media (max-width:767px){
	.dpinfo{
		flex-flow:column;
		gap:.2em;
	}
}

.information-outline{
	margin-top:.2em;
	font-size:.9rem;
	line-height:1.3;
}

.dpinfo-date{
	font-weight:bold;
	color:#717171;
	font-size:.8rem;
	letter-spacing:.1em;
	line-height:1.4;
	width: 12em;
	white-space: nowrap;
}
@media (max-width:767px){
	.dpinfo-date{
		width:100%;
		margin-bottom:.2em;
	}
}
.dpinfo-content{
	font-size:1rem;
	line-height:1.4;
	margin-top:-.18em;
	width:88%;
}
@media (max-width:767px){
	.dpinfo-content{
		width:100%;
	}
}
.top-information-wrap{
	max-width:720px;
	width:100%;
	margin-bottom:1.6em;
	padding:.8em;
	box-sizing: border-box;
}
@media (max-width:960px){
	.top-information-wrap{
		max-width:94vw;
		margin: 0 auto;
		padding:0 .4em;
	}
}
.information-more-link{
	margin-top:1.2em;
	text-align: right;
}
.information-more-link a{
	position: relative;
	display: inline-block;
	padding: 0 1.2em;
	border-radius: 8px;
	font-size: .9rem;
	font-weight:bold;
	color: var(--link-blue);
	text-decoration: none;
	transition: .4s all;
	letter-spacing:.08em;
}
.information-more-link a::before {
	content: '';
	position: absolute;
	top:0;
	bottom: 0;
	right:0;
	width: 1em;
	height: 1em;
	margin: auto;
	border-radius: 20px;
	background-color:var(--color-kon);
	transition: .4s all;
}
.information-more-link a::after {
	content: '';
	position: absolute;
	top:0;
	bottom:0;
	right: .24em;
	width: 0;
	height: 0;
	margin: auto;
	border-top: 3px solid transparent;
	border-right: 0 solid transparent;
	border-left: 5px solid #ffffff;
	border-bottom: 3px solid transparent;
	box-sizing: border-box;
}
.information-more-link a:hover{
	color:var(--color-orange);
}
.information-more-link a:hover::before{
	background-color:var(--color-orange);
}
.info-link{
	text-decoration:none !important;

}

.display-item-image{
	margin-top:1.6em;
	max-width:400px;
	width:100%;
	height:auto;
}
@media (max-width:960px){
	.display-item-image{
		margin-top:.4em;
	}
}
.display-item-image img{
	width:100%;
}

.display-item-pdf{
	margin-top:1.6em;
}

.caution-mov{
	max-width:720px;
	width:100%;
	margin:5em auto;
}
@media (max-width:767px){
	.caution-mov{
		padding: 0 min(5vw, 1rem) 2.5vw;
		margin:2.4em auto;
	}
}

.caution-mov-title{
	display:flex;
	gap:.2em;
	justify-content:center;
	align-items:center;
	font-size:1.4rem;
	border-top:solid 2px #A79373;
	border-bottom:solid 1px #A79373;
 	background-image: linear-gradient(#f7f7f7, #ffffff);
	padding:.6em 0 .7em;
	margin-bottom:.8em;
	text-align:center;
	line-height:1;
}
@media (max-width:767px){
	.caution-mov-title{
		font-size:1.1rem;
		background-color: transparent;
	}
}
.caution-mov-title::before{
	content:"";
	display:block;
	width:1em;
	height:1em;
	background:url(../img/alert.svg) left center / cover no-repeat;
}
@media (max-width:767px){
	.caution-mov-title::before{
		width:.9em;
		height:.9em;
	}
}
.caution-mov-text{
	font-size:1rem;
	text-align:center;
	margin-bottom:1.1em;
}
@media (max-width:767px){
	.caution-mov-text{
		font-size:.9rem;
		line-height:1.3;
	}
}
.youtube {
  position: relative;
  max-width:640px;
  width: 100%;
  padding-top: 56.25%;
  margin:0 auto;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.btn-caution{
	font-size:1rem;
}

.btn-caution-link{
	display:block;
	width:15em;
	background:#CC0000;
	color:#FFF !important;
	border-radius:.4em;
	text-align:center;
	padding:.8em;
	margin:2em auto;
	transition:background-color .4s , box-shadow .4s;
	box-shadow: 0 0px 6px 0 #888a89;
}
@media (max-width:767px){
	.btn-caution-link{
		width:90%;
		line-height:1.3;
	}
}
.btn-caution-link:hover{
	background:#e60000;
	text-decoration:none;
	box-shadow: 0 0px 2px 0 #585a59;
}

.t-none{
	display:none;
}
.t-toggle-fade{
	animation: fadeIn .5s ease-in-out; 
}
@keyframes fadeIn {
  from {
    opacity: 0; /* 初期状態は透明 */
  }
  to {
    opacity: 1; /* 完全に表示された状態 */
  }
}
.t-toggle-fade{
	animation: fadeIn .5s ease-in-out; 
}
.ico-plus,
.ico-minus{
	display:inline-block;
	width:1.1em;
	height:1.1em;
	position:absolute;
	right:.8em;
}
.ico-plus{
	background:url(../img/ico-plus.svg) left center / cover no-repeat;
}
.ico-minus{
	background:url(../img/ico-minus.svg) left center / cover no-repeat;
}

.t-link-tel{
	pointer-events: none;
	color:inherit;
}
.t-sp-br{
	display:none;
}

@media (max-width: 960px) {
	.t-pc-br{
		display:none;
	}
}

@media (max-width: 767px) {
	.t-link-tel{
		color:#0066CC;
		text-decoration:underline;
		pointer-events: auto;
	}
	.t-sp-br{
		display:inline;
	}
	.t-ryaku{
		display:inline-block;
		width: 120px; /* 省略せずに表示するサイズを指定 */
	    white-space: nowrap;
	    overflow: hidden;
	    text-overflow: ellipsis;
	}
}