@charset "UTF-8";



/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/

@keyframes sdb {
  0% {
    transform: translate(0, 0);
  }
  20% {
    transform: translate(0px, 10px);
  }
  40% {
    transform: translate(0, 0);
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++    PC    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* 801px ~ */
@media screen and (min-width: 801px), print {
	



	.wrap{
		width: 1040px;
		margin: 0 auto;
	}
	
	.dot{
		position: absolute;
		width: 40px;
	}
	.dot01{
		top: 60%;
		right: 3%;
	}
	.dot02{
		top: 85%;
		left: 0%;
		width: 138px;
		z-index: 3;
	}
	.dot03{
		top: -40px;
		left: 2%;
		width: 80px;
	}
	.dot04{
		top: 0%;
		right: 0%;
	}
	.dot05{
		top: 30%;
		right: 2%;
	}
	.dot06{
		top: 50%;
		left: 0%;
	}
	.dot07{
		top: -80px;
		right: 0%;
		width: 120px;
	}
	.dot08{
		top: 8%;
		right: 0%;
	}
	.dot09{
		top: 15%;
		left: 0%;
	}
	.dot10{
		bottom: 8%;
		left: 8%;
	}
	.dot11{
		top: -40px;
		left: 0%;
		width: 120px;
	}
	.dot12{
		top: -40px;
		right: 3%;
		width: 80px;
	}
	.dot13{
		top: -40px;
		left: 0%;
		width: 120px;
	}
	.dot14{
		bottom: -40px;
		right: 3%;
		width: 80px;
	}




	/* ----- #main ------*/

	#main .main_cont{
		position: relative;
	}
		#main .main_cont .title{
			height: 99px;
			background-color: #5998ce;
			position: relative;
			text-align: center;
			color: #fff;
			font-size: 172%;
			display: table;
			width: 100%;
			line-height: 1.5;
		}
			#main .main_cont .title p{
				display: table-cell;
				vertical-align: middle;
			}
				#main .main_cont .title p span{
					display: block;
					font-size: 12px;
					font-weight: bold;
				}
		#main .main_cont .title::before{
			background-image:url("../img/sq01_l.png");
			position:absolute;
			content:"";
			display:block;
			bottom:0;
			left:0;
			width:165px;
			height:99px;
			z-index: 1;
		}
		#main .main_cont .title::after{
			background-image:url("../img/sq02_r.png");
			position:absolute;
			content:"";
			display:block;
			top: 0;
			right:0;
			width:132px;
			height:133px;
			z-index: 1;
		}
		.mainimg img {
			max-width: none;
			width: 100%
		}

	#main .maincopy{
		position: relative;
		width: 1220px;
		margin: 0 auto;
		background-color: #fff;
		padding: 60px 0;
		margin-top: -80px;
		z-index: 2;
	}
		#main .maincopy h1{
			font-size: 143%;
			text-align: center;
		}
		#main .image-box {
			padding-block-start: 45px;
			padding-inline-start: 1.2em;
			padding-inline-end: 60px;
			float: right;
			width: calc(350 / 1220 * 100%);
		}
		#main .text{
			margin-top: 40px;
			font-size: 115%;
			line-height: 200%;
			text-align: left;
			padding-inline: 60px;
		}

		#main .sign {
			font-size: 115%;
			text-align: right;
			font-weight: bold;
			margin-top: 15px;
			text-align: center;
		}

	#main .ank{
		display: flex;
		gap: 30px;
		justify-content: center;
	}
		#main .ank a{
			position: relative;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: 600;
			font-size: 15px;
			letter-spacing: 0.05em;
			line-height: 1.5;
			width: 106px;
			height: 106px;
			box-sizing: border-box;
			padding-bottom: 10px;
			background-color: #9cd4eb;
		}
		#main .ank a:hover{
			background-color: #5994ca;
			color: #fff;
		}
		#main .ank a:hover::before{
			bottom: 10px;
		}
		#main .ank a::before{
			transition: 0.3s;
			position: absolute;
			content: "";
			left: 0;
			bottom: 15px;
			right: 0;
			margin: auto;
			width: 18px;
			height: 12px;
			background-image: url(../img/ank_arrow.png);
			background-size: cover;
		}

	.main_contents {
		position: relative;
	}

	.recruitment .lead {
		margin-inline: auto;
		text-align: left;
	}
	.recruitment .cap {
		text-align: center;
	}
	.recruitment .cap.red {
		margin-block-start: 3px;
		font-size: 61%;
		color: #B40003;
		font-weight: 400;
		text-align: left;
	}
	
	
	.content .id_tit{
		font-size: 186%;
		font-weight: bold;
		text-align: center;
		background:center/ contain no-repeat url("../img/tit.png");
		height: 50px;
		line-height: 50px;
		margin: 20px auto 40px;
	}

	
	
	
	.main_contents table {
		width: 100%;
		border-collapse:collapse;
		border-spacing:0px;
	}
	.main_contents table th {
		width: 200px;
		background: #fff;
		text-align: left;
		padding: 30px;
		border-bottom: solid 1px #ddd;
		box-sizing: border-box;
	}
	.main_contents table td {
		text-align: left;
		padding: 30px;
		border-bottom: solid 1px #d6d6d6;
	}
	.main_contents table tr:last-child th,
	.main_contents table tr:last-child td {
		border-bottom: none;
	}
	
		.main_contents table td p + p {
			margin-top: 1em;
		}
		.main_contents table td .note {
			font-size: 13px;
			display: inline-block;
			text-indent: -1em;
			padding-left: 1em;
			line-height: 1.5;
			margin-top: 3px;
		}
		.main_contents table td a {
			text-decoration: underline;
			color: #5997cd;
		}
		.main_contents table td li {
			font-weight: bold;
		}
		.main_contents table td dl + dl {
			margin-top: 1.5em;
		}
		.main_contents table td dl:last-child {
			margin-bottom: 0px;
		}
			.main_contents table td dl dt {
				font-weight: bold;
				color: #5997cd;
			}
	

	.content{
		position: relative;
		padding: 80px 0 100px;
	}
	.content ul::after {
		content: none;
	}

	#requirement{
		margin-top: 80px;
		background-color: #f1f1f1;
	}

	#step {
		background-color: #f1f1f1;
	}
		#step .lead {
			text-align: center;
			font-weight: bold;
			font-size: 20px;
		}

		.step-cap {
			margin-top: 5px;
		}

		.btnarea{
			margin-top: 30px;
		}
		.btnarea_wrap{
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 20px;
		}
		.btnarea .cap,
		.btnarea + .cap{
			margin-top: .6em;
			text-align: center;
		}
		.career_btn {
			background-color: #000;
			padding: 1em;
			text-align:center;
			line-height:1.4;
			position: relative;
			cursor: pointer;
			font-size: 143%;
			width: min(100%,320px);
			color: #FFF;
			display: flex;
			justify-content: center;
			align-items: center;
			box-sizing: border-box;
			gap: 0.8em;
	}

	.career_btn::after {
		content: "";
		display: block;
		background: url(../img/icon-white.svg) no-repeat center center / contain;
		width: 0.9em;
		height: 0.9em;
	}

		@media (any-hover: hover) {
			.career_btn:hover {
				background-color: #353185;
			}
			.career_btn:hover {
				color: #FFF;
			}
		}
		.step-btn {
			margin-top: 50px;
		}
		#step .accordion-menu {
			border: 1px solid #212121;
			border-radius: 16px;
			overflow: hidden;
			background-color: #fff;
		}
		#step .accordion-menu dt {
			text-align: left;
			cursor: pointer;
			font-size: 20px;
			font-weight: bold;
			padding: 40px 110px 40px 64px;
			position: relative;
			transition: all 0.3s;
		}
		#step i {
			background-color: #212121;
			border-radius: 50%;
			height: 48px;
			width: 48px;
			position: absolute;
			right: 40px;
			top: 30%;
			transition: all 0.3s;
		}
		#step i::before,
		#step i::after {
			background-color: #fff;
			border-radius: 2px;
			content: "";
			position: absolute;
			height: 2px;
			width: 20px;
			left: 14px;
			top: 50%;
		}
		#step i::after {
			transform: rotate(90deg) translateY(-3%);
		}
		#step .accordion-menu dt.on i {
			transform: rotate(135deg);
			transform-origin: center center;
		}
		#step .accordion-menu dd {
			display: none;
			padding: 20px 60px 60px;
		}
		#step .step-content {
			display: grid;
			grid-template-columns: 1fr 504px;
			gap: 0 40px;
		}
		#step .step-item.step-item01{
			
		}
		#step .step-item.step-item02{
			grid-column: span 2;
		}
		#step .step-primary {
			font-weight: bold;
			font-size: 129%;
			color: #5994ca;
		}
		#step .step-text {
			font-weight: 600;
			margin-top: 10px;
		}
		#step .step-list {
			padding-left: 1.4em;
			position: relative;
		}
		#step .step-list::before {
			position: absolute;
			content: "";
			background-color: #5994ca;
			border-radius: 50%;
			height: 8px;
			width: 8px;
			left: 0;
			top: 0.5em;
		}
		#step .step-image {
			width: min(100%,504px);
			aspect-ratio: 520 / 230;
			align-self: center;
		}
		#step .step-image img {
			height: 100%;
			object-fit: contain;
		}
		#step .accordion-btn {
			margin-top: 60px;
		}
		#step .btnarea{
			grid-column: span 2;
		}
		#step .attention {
			background-color: #ffffff;
			padding: 40px;
			margin-top: 30px;
		}
		#step .attention-title {
			text-align: center;
		}
		#step .attention-text {
			text-align: center;
			margin-top: 15px;
		}
		#step .attention-text.attention-text--end {
			margin-top: 10px;
		}
		#step .bold {
			font-weight: bold;
		}
		#step .mail-title {
			position: relative;
			padding-left: 12px;
		}
		#step .mail-title::before {
			position: absolute;
			content: "";
			background: url(../img/mail-arrow.svg) no-repeat center center /contain;
			width: 13px;
			height: 11px;
			left: 0;
			top: 45%;
			transform: translate(-50%, -50%);
		}
		#step .attention-mail {
			margin-top: 10px;
			display: flex;
			gap: 10px;
			justify-content: center;
		}
		#step .mail-text {
			font-weight: bold;
			text-decoration: underline;
			color: #5995cb;
		}
	
	#welfare{
		background-color: #f1f1f1;
	}
		#welfare .item{
			display: flex;
			gap: 70px;
		}
			#welfare .item .box{
			}
				#welfare .item .box h3{
					color: #5994ca;
					font-size: 20px;
					letter-spacing: 0.1em;
					line-height: 1.6;
					margin-bottom: 0.5em;
				}
				#welfare .item .box ul{
					padding: 40px;
					background-color: #fff;
					display: flex;
					flex-direction: column;
					gap: 30px;
				}
					#welfare .item .box ul li{
					}
						#welfare .item .box ul li dl{
						}
							#welfare .item .box ul li dl dt{
								display: flex;
								align-items: center;
								gap: 15px;
							}
								#welfare .item .box ul li dl dt div{
									width: 36px;
								}
								#welfare .item .box ul li dl dt span{
									font-size: 20px;
									font-weight: 600;
								}
							#welfare .item .box ul li dl dd{
								margin-top: 15px;
							}
	
	#qa{
	}
		#qa .qa_list {
		}
			#qa  .qa_list li {
			}
			#qa .qa_list li + li {
				margin-top: 70px;
			}
				#qa .qa_list li .block_tit {
					font-size: 20px;
					color: #5999cf;
					font-weight: bold;
					margin-bottom: 10px;
				}
				#qa .qa_list li .accordion-menu {
				}
				#qa .qa_list li .accordion-menu dt {
					padding: 25px 0 25px 60px;
					font-size: 20px;
					font-weight: bold;
					position: relative;
					line-height: 1.4;
					cursor: pointer;
				}
				#qa .qa_list li .accordion-menu dt::before {
					position: absolute;
					top: 26px;
					left: 20px;
					content: "";
					width: 30px;
					height: 25px;
					background-image: url("../img/q.png");
					background-size: cover;
				}
				#qa .qa_list li .accordion-menu dt::after {
					position: absolute;
					top: 35px;
					right: 20px;
					content: "";
					width: 15px;
					height: 10px;
					background: url("../img/arrow.png") no-repeat;
					background-size: 15px;
					transform: rotate(180deg);
					transition: 500ms;
				}
				#qa .qa_list li .accordion-menu dt.on::after{
					transform: rotate(0deg);
					transition: 500ms;
				}
				#qa .qa_list li .accordion-menu:nth-child(odd) dt ,
				#qa .qa_list li .accordion-menu:nth-child(odd) dd {
					background-color: #f5f5f5;
				}
				#qa .qa_list li .accordion-menu dd {
					display: none;
					padding: 0px 60px 30px 60px;
					font-size: 16px;
					font-weight: 500;
				}
				#qa .qa_list li .accordion-menu dd.on {
				}
				#qa .qa_list li .accordion-menu dd a {
					text-decoration: underline;
					color: #5994ca;
					font-weight: 600;
				}
				#qa .qa_list li .accordion-menu dd span {
					font-weight: 600;
				}

	#apply{
		background-color: #f1f1f1;
	}
		#apply .lead{
			text-align: center;
			font-size: 20px;
			font-weight: 600;
			margin-bottom: 1em;
		}
		/*
		#apply a{
			display: block;
			background-color: #fff;
			text-align: center;
			width: 232px;
			margin: auto;
			padding: 20px 25px;
			border: solid 1px #5994ca;
			transition: 0.3s;
		}
		#apply a:hover{
			filter: drop-shadow(0 0 3px #5994ca);
		}
			*/
		.pc-center{
		text-align: center;
	}
	
		/* #apply a{
			display: inline-block;
			color:#5994ca;
			border-bottom: 1px solid #5994ca;
			font-weight: 600;
			padding: 0 8px;
	} */
		#apply img{
			opacity: 1 !important;
		}
		.entry-btn {
			margin-top: 50px;
			display: flex;
			width: 700px;
			margin-inline: auto;
		}
		.entry-smaller {
			font-size: 100%;
			text-align: center;
			font-weight: 600;
			margin-top: 30px;
		}

}




/* ++++++++++++++++++++++++++++++++++++++++++++++    sp    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* ~ 800px */
@media only screen and (max-width: 800px) {
	
	
	.wrap{
		margin-bottom: 10%;
	}


	.dot{
		position: absolute;
		width: 20px;
	}
	.dot01{
		top: 60%;
		right: 3%;
		z-index: 3;
		display: none;
	}
	.dot02{
		top: 55%;
		left: 0%;
		width: 69px;
		z-index: 3;
		display: none;
	}
	.dot03{
		top: -20px;
		left: 2%;
		width: 40px;
	}
	.dot04{
		top: 0%;
		right: 0%;
	}
	.dot05{
		top: 30%;
		right: 2%;
	}
	.dot06{
		top: 50%;
		left: 0%;
	}
	.dot07{
		top: -40px;
		right: 0%;
		width: 60px;
	}
	.dot08{
		top: 10%;
		right: 0%;
	}
	.dot09{
		top: 20%;
		left: 0%;
	}
	.dot10{
		bottom: 6%;
		left: 8%;
	}
	.dot11{
		top: -20px;
		left: 0%;
		width: 60px;
	}
	.dot12{
		top: -20px;
		right: 3%;
		width: 40px;
	}
	.dot13{
		top: -40px;
		left: 0%;
		width: 60px;
	}
	.dot14{
		bottom: -20px;
		right: 3%;
		width: 40px;
	}


	
	/* ----- #main ------*/

	#main .main_cont{
		position: relative;
	}
		#main .main_cont .title{
			background-color: #5998ce;
			position: relative;
			text-align: center;
			color: #fff;
			font-size: 140%;
			padding: 3% 0;
			display: table;
			width: 100%;
		}
			#main .main_cont .title p{
				display: table-cell;
				vertical-align: middle;
			}
				#main .main_cont .title p span{
					display: block;
					font-size: 12px;
					font-weight: bold;
					display: none;
				}
		.mainimg img {
			max-width: none;
			width: 100%
		}

	#main .maincopy{
		position: relative;
		margin: 0 auto;
		width: 90%;
		background-color: #fff;
		padding: 20px 0;
		text-align: justify;
		z-index: 2;
	}
		#main .maincopy h1{
			font-size: 115%;
			margin-bottom: 3%;
		}
		#main .maincopy > img {
			/* padding-block-start: 3px;
			padding-inline-end: .8em;
			float: right;
			width: 45% */
		}
		#main .image-box {
			margin-top: 20px;
		}

	#main .ank{
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
	}
		#main .ank a{
			position: relative;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: 600;
			letter-spacing: 0;
			line-height: 1.5;
			width: 90px;
			height: 90px;
			box-sizing: border-box;
			padding-bottom: 15px;
			background-color: #9cd4eb;
		}
		#main .ank a::before{
			position: absolute;
			content: "";
			left: 0;
			bottom: 12px;
			right: 0;
			margin: auto;
			width: 16px;
			height: 10px;
			background-image: url(../img/ank_arrow.png);
			background-size: cover;
		}

	.main_contents {
		position: relative;
	}
	.recruitment .lead {
		margin-inline: auto;
		text-align: center;
	}
	.recruitment .cap {
		text-align: center;
	}
	.recruitment .cap.red {
		margin-block-start: 3px;
		font-size: 75%;
		color: #B40003;
		font-weight: 400;
		text-align: left;
	}
		#main .sign {
			margin-top: 10px;
			font-size: 88%;
			text-align: right;
			font-weight: bold;
		}
	
	
	.content .id_tit{
		font-size: 152%;
		font-weight: bold;
		text-align: center;
		background:center/ contain no-repeat url("../img/tit.png");
		line-height: 42px;
		margin: 0 auto 35px;
		box-sizing: border-box;
		position: relative;
		letter-spacing: 4px;
	}

	
	
	
	.main_contents table {
		width: 100%;
		border-collapse:collapse;
		border-spacing:0px;
	}
	.main_contents table th {
		width: 100%;
		display: block;
		background: #fff;
		text-align: left;
		padding: 10px;
		box-sizing: border-box;
	}
	.main_contents table td {
		width: 100%;
		display: block;
		text-align: left;
		padding: 10px 10px 18px !important;
		box-sizing: border-box;
	}
	.main_contents table tr:last-child th,
	.main_contents table tr:last-child td {
		border-bottom: none;
	}
	
		.main_contents table td p + p {
			margin-top: 1em;
		}
		.main_contents table td .note {
			font-size: 13px;
			display: inline-block;
			text-indent: -1em;
			padding-left: 1em;
			line-height: 1.5;
			margin-top: 3px;
		}
		.main_contents table td a {
			text-decoration: underline;
			color: #5997cd;
		}
		.main_contents table td li {
			font-weight: bold;
		}
		.main_contents table td dl + dl {
			margin-top: 1.5em;
		}
		.main_contents table td dl:last-child {
			margin-bottom: 0px;
		}
			.main_contents table td dl dt {
				font-weight: bold;
				color: #5997cd;
			}
	

	.content{
		position: relative;
		padding: 60px 0 60px;
	}
	.content ul::after {
		content: none;
	}

	#requirement{
		margin-top: 60px;
		background-color: #f1f1f1;
	}

	#step {
		background-color: #f1f1f1;
	}
		#step .lead {
			font-weight: bold;
			font-size: 115%;
		}
		.step-cap {
			margin-top: 5px;
		}
		.btnarea{
			margin-top: 30px;
		}
		.btnarea_wrap{
			display: flex;
			justify-content: center;
			align-items: center;
			flex-wrap: wrap;
			gap: 10px;
		}
		/* .btnarea .cap,
		.btnarea + .cap{
			margin-top: 1em;
		} */
		.btnarea .cap, .btnarea + .cap{
  	margin-block-start: .6em;
	  text-align: center
	}
		.career_btn {
			margin-inline: auto;
			background-color: #000;
			padding: 1em;
			text-align:center;
			line-height:1.4;
			position: relative;
			cursor: pointer;
			font-size: 129%;
			width: min(100%,350px);
			color: #FFF;
			display: flex;
			justify-content: center;
			align-items: center;
			box-sizing: border-box;
			gap: 0.8em;
	}

	.career_btn::after {
		content: "";
		display: block;
		background: url(../img/icon-white.svg) no-repeat center center / contain;
		width: 0.9em;
		height: 0.9em;
	}

	@media (any-hover: hover) {
		.career_btn:hover {
			background-color: #353185;
		}
		.career_btn:hover a {
			color: #FFF;
		}
	}

	.step-btn {
			margin-top: 25px;
		}
		#step .accordion-menu {
			border: 1px solid #212121;
			border-radius: 16px;
			overflow: hidden;
			background-color: #fff;
		}
		#step .accordion-menu dt {
			width: fit-content;
			text-align: left;
			cursor: pointer;
			font-size: 20px;
			font-weight: bold;
			padding: 20px 70px 20px 20px;
			position: relative;
			transition: all 0.3s;
			font-size: 115%;
			line-height: 1.5;
		}
		#step i {
			background-color: #212121;
			border-radius: 50%;
			height: 36px;
			width: 36px;
			position: absolute;
			right: 20px;
			top: 35%;
			transition: all 0.3s;
		}
		#step i::before,
		#step i::after {
			background-color: #fff;
			border-radius: 2px;
			content: "";
			position: absolute;
			height: 2px;
			width: 18px;
			left: 8px;
			top: calc(50% - 1px);
		}
		#step i::after {
			transform: rotate(90deg) translateY(-30%);
		}
		#step .accordion-menu dt.on i {
			transform: rotate(135deg);
			transform-origin: center center;
		}
		#step .accordion-menu dd {
			display: none;
			padding: 0px 20px 40px 20px;
		}
		#step .step-content {
			display: grid;
			justify-content: center;
			align-items: center;
		}
		#step .step-item {
			width: 100%;
		}
		#step .step-primary {
			font-weight: bold;
			font-size: 115%;
			color: #5994ca;
			margin-top: 20px;
		}
		#step .step-text {
			font-weight: 600;
			margin-top: 10px;
		}
		#step .step-list {
			padding-left: 1.2em;
			position: relative;
		}
		#step .step-list::before {
			position: absolute;
			content: "";
			background-color: #5994ca;
			border-radius: 50%;
			height: 8px;
			width: 8px;
			left: 0;
			top: 0.5em;
		}
		#step .step-image {
			aspect-ratio: 520 / 230;
			margin-inline: auto;
		}
		#step .step-image img {
			height: 100%;
			object-fit: contain;
		}
		#step .accordion-btn {
			margin-top: 30px;
		}
		#step .step-smaller {
			font-size: 72%;
			text-align: center;
			font-weight: 600;
			margin-top: 10px;
		}
		#step .attention {
			background-color: #ffffff;
			padding: 30px;
			margin-top: 20px;
		}
		#step .attention-title {
			text-align: center;
		}
		#step .attention-text {
			text-align: left;
			margin-top: 15px;
		}
		#step .attention-text.attention-text--end {
			margin-top: 15px;
		}
		#step .bold {
			font-weight: bold;
		}
		#step .mail-title {
			display: inline-flex;
			align-items: center;
			gap: 6px;
		}
		#step .mail-title::before {
			position: static;
			transform: none;
			flex-shrink: 0;
			content: "";
			background: url(../img/mail-arrow.svg) no-repeat center center / contain;
			width: 13px;
			height: 11px;
			display: inline-block;
		}
		#step .attention-mail {
			margin-top: 15px;
			display: flex;
			flex-direction: column;
			align-items: center;
		}
		#step .mail-text {
			font-weight: bold;
			text-decoration: underline;
			color: #5995cb;
			text-align: center;
			display: block;
		}

	
	#welfare{
		background-color: #f1f1f1;
	}
		#welfare .item{
			display: flex;
			flex-direction: column;
			gap: 30px;
		}
			#welfare .item .box{
			}
				#welfare .item .box h3{
					color: #5994ca;
					font-size: 18px;
					letter-spacing: 0.1em;
					line-height: 1.6;
					margin-bottom: 0.5em;
				}
				#welfare .item .box ul{
					padding: 20px;
					background-color: #fff;
					display: flex;
					flex-direction: column;
					gap: 20px;
				}
					#welfare .item .box ul li{
					}
						#welfare .item .box ul li dl{
						}
							#welfare .item .box ul li dl dt{
								display: flex;
								align-items: center;
								gap: 10px;
							}
								#welfare .item .box ul li dl dt div{
									width: 30px;
								}
								#welfare .item .box ul li dl dt span{
									font-size: 18px;
									font-weight: 600;
								}
							#welfare .item .box ul li dl dd{
								margin-top: 10px;
							}
	
	#qa{
	}
		#qa .qa_list {
		}
			#qa  .qa_list li {
			}
			#qa .qa_list li + li {
				margin-top: 40px;
			}
				#qa .qa_list li .block_tit {
					font-size: 18px;
					color: #5999cf;
					font-weight: bold;
					margin-bottom: 10px;
				}
				#qa .qa_list li .accordion-menu {
				}
				#qa .qa_list li .accordion-menu dt {
					padding: 20px 40px 20px 45px;
					font-size: 16px;
					font-weight: bold;
					position: relative;
					line-height: 1.4;
					cursor: pointer;
				}
				#qa .qa_list li .accordion-menu dt::before {
					position: absolute;
					top: 20px;
					left: 15px;
					content: "";
					width: 24px;
					height: 20px;
					background-image: url("../img/q.png");
					background-size: cover;
				}
				#qa .qa_list li .accordion-menu dt::after {
					position: absolute;
					top: 25px;
					right: 20px;
					content: "";
					width: 15px;
					height: 10px;
					background: url("../img/arrow.png") no-repeat;
					background-size: 15px;
					transform: rotate(180deg);
					transition: 500ms;
				}
				#qa .qa_list li .accordion-menu dt.on::after{
					transform: rotate(0deg);
					transition: 500ms;
				}
				#qa .qa_list li .accordion-menu:nth-child(odd) dt ,
				#qa .qa_list li .accordion-menu:nth-child(odd) dd {
					background-color: #f5f5f5;
				}
				#qa .qa_list li .accordion-menu dd {
					display: none;
					padding: 0px 30px 15px 45px;
					font-size: 14px;
					font-weight: 500;
				}
				#qa .qa_list li .accordion-menu dd.on {
				}
				#qa .qa_list li .accordion-menu dd a {
					text-decoration: underline;
					color: #5994ca;
					font-weight: 600;
				}
				#qa .qa_list li .accordion-menu dd span {
					font-weight: 600;
				}

	#apply{
		background-color: #f1f1f1;
	}
		#apply .lead{
			text-align: center;
			font-size: 15px;
			font-weight: 600;
			margin-bottom: 1em;
		}
		/*
		#apply a{
			display: block;
			background-color: #fff;
			text-align: center;
			width: min(50%,232px);
			margin: auto;
			padding: 15px 15px;
			border: solid 1px #5994ca;
			transition: 0.3s;
		}
		#apply a:hover{
			filter: drop-shadow(0 0 3px #5994ca);
		}
			*/
			/* #apply a{
			display: inline-block;
			color:#5994ca;
			border-bottom: 1px solid #5994ca;
			font-weight: 500;
			padding: 0 2px;
	} */
	.pc-center{
		text-align: left;
	}
		#apply img{
			opacity: 1 !important;
		}

		.entry-btn {
			margin-top: 50px;
			display: grid;
			gap: 20px;
			margin-inline: auto;
		}
		.d-inline-block {
			display: inline-block;
		}
		
		.entry-smaller {
			font-size: 86%;
			text-align: center;
			font-weight: 600;
			margin-top: 20px;
		}

}