
/* CSS Document */

/*==================================================

メインイメージ

=================================================*/

.wrapper{
	background: url("../img/common/back_dot.png") left top repeat;
	position: relative;
	overflow: hidden;
	margin: auto;
	padding: 0;
}
.wrapper .backl{
	width: 35%;
	position: absolute;
	left: -20%;
	top: 10%;
}
.wrapper .backr{
	width: 35%;
	position: absolute;
	right: -20%;
	bottom: 10%;
}
.main-image{
	margin: 100px auto 0;
	position: relative;
}
.main-image .photo{
	margin: auto;
	width: 100%;
	height: auto;
}

.inner .waku{
	margin-top: -15%;
	border-radius: 30px;
	background: #fff;
	padding: 0 5% 5%;
	border: 2px solid #143180;
	position: relative;
}
.inner .waku .title{
	z-index: 1;
	position: relative;
}
.inner .waku .title_back{
	position: absolute;
	width: auto;
	height: 100px;
	top: -29px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: -1;
}
.inner .waku .title .title_back img{
	width: auto;
	height: 100%;
}
.inner .waku .title .ico{
	width: 20%;
	max-width: 160px;
	margin: -70px auto 0px;
}

.inner .waku .title h2{
	margin: 0 auto 3%;
	color: #143180;
	position: relative;
	padding: 10px 10px 20px;
	background: url("../img/common/title_line.svg") center bottom no-repeat;
	background-size: 100px;
	line-height: 1.2em;
	font-weight: 700;
	margin-bottom: 5%;
}
.inner .waku .title h2 .en,
.inner .waku .title h2 .tS{
	font-size: 0.8em;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.inner .waku .title-m h2{
	margin: 0 auto 3%;
	color: #143180;
	position: relative;
	padding: 10px 10px 20px;
	background: url("../img/common/title_line.svg") center bottom no-repeat;
	background-size: 100px;
	line-height: 1.2em;
	font-weight: 700;
	margin-bottom: 5%;
}
.main-image .Title{
	position: absolute;
	left: 0;
	right: 0;
	top: 30%;
}
.main-image .Title h2{
	color: #fff;
	font-size: 4rem;
	padding: 10px;
	font-weight: 700;
	line-height: 1.5em;
	text-align: center;
	position: relative;
}
.main-image .Title h2::after{
	content: "";
	text-align: center;
	border-bottom: 5px solid #fff;
	width: 80px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.main-image .Title .en{
	color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.5em;
	padding: 10px;
}
.main-image .main_ov{
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0;
	width: 100%;
}
.main-image .photo img,
.main-image .main_ov img{
	width: 100%;
	height: auto;
}

@media print , screen and (min-width:1px) and (max-width: 1200px) {
.main-image{
	margin: 60px auto 0;
	position: relative;
}
	
}
@media print , screen and (min-width:1px) and (max-width: 768px) {

.inner .waku{
	margin-top: -60px;
	}
.inner .waku .title_back{
	position: absolute;
	width: auto;
	height: 80px;
	top: -9px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: -1;
}
.inner .waku .title .ico{
	width: 20%;
	max-width: 160px;
	margin: -70px auto 0px;
}
	
}
@media print , screen and (min-width:1px) and (max-width: 530px) {

.inner .waku{
	margin-top: -50px;
	border-radius: 20px;
	background: #fff;
	padding: 0 15px 30px;
	border: 1px solid #143180;
	position: relative;
}
.inner .waku .title_back{
	position: absolute;
	width: auto;
	height: 40px;
	top: -9px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: -1;
}
.inner .waku .title .ico{
	width: 20%;
	max-width: 160px;
	margin: -30px auto 0px;
}
}

.student,
.features,
.profile,
.curricuram{
	margin: 5% auto 8%;
	
}


/*Features*/

.features .txt{
	width: 50%;
	padding: 20px 20px 50px;
}
.features .photo{
	width: 50%;
	padding: 20px;
}
.features h3{
	font-weight: 700;
	text-align: left;
	margin-bottom: 20px;
}
.features h3 span{
	padding: 2px 10px;
	margin-bottom: 10px;
	display: inline-block;
	color: #fff;
}
.features .feature01 h3 span{
	background: #2e83c9;
}
.features .feature02 h3 span{
	background: #ca2b7b;
}
.features .feature03 h3 span{
	background: #4abddb;
}
.features .feature04 h3 span{
	background: #a175ae;
}
.features .feature05 h3 span{
	background: #ee8fb8;
}
.feature01 {
	border-bottom:6px solid #2e83c9;
	border-right:6px solid #2e83c9;
	margin: 5% auto 5% 0;
	width: 98%;
	position: relative;
	padding-bottom: 5%;
}
.feature02{
	border-bottom:6px solid #ca2b7b;
	border-left:6px solid #ca2b7b;
	margin: 5% 0 5% auto;
	width: 98%;
	position: relative;
	padding-bottom: 5%;
}
.feature03 {
	border-bottom:8px solid #4abddb;
	border-right:8px solid #4abddb;
	margin: 5% auto;
	position: relative;
	padding-bottom: 5%;
}
.feature04 {
	border-bottom:8px solid #a175ae;
	border-left:8px solid #a175ae;
	margin: 5% auto;
	position: relative;
	padding-bottom: 5%;
}

.feature05 {
	border-bottom:8px solid #ee8fb8;
	border-right:8px solid #ee8fb8;
	margin: 5% auto;
	position: relative;
	padding-bottom: 5%;
}

.feature01 .reason,
.feature03 .reason,
.feature05 .reason{
	position: absolute;
	right: -10px;
	bottom: -10px;
	width: 15%;
	max-width: 150px;z-index: 1;
}

.feature02 .reason,
.feature04 .reason{
	position: absolute;
	left: -10px;
	bottom: -10px;
	width: 15%;
	max-width: 150px;z-index: 1;
}

.feature02 .txt,
.feature04 .txt{
	order: 2;
}
.feature02 .photo,
.feature04 .photo{
	order: 1;
}

.feature01 .illust{
	position: absolute;
	bottom: -10%;
	left: 5%;
	width: 20%;
	max-width: 150px;
}
.feature02 .illust{
	position: absolute;
	bottom: -10%;
	right: 10%;
	width: 20%;
	max-width: 150px;
}

.feature03 .illust{
	position: absolute;
	bottom: -10%;
	left: 35%;
	width: 20%;
	max-width: 150px;
}

.feature04 .illust{
	position: absolute;
	bottom: -10%;
	right: 0%;
	width: 20%;
	max-width: 150px;
}

.feature05 .illust{
	position: absolute;
	bottom: -10%;
	left: 0%;
	width: 20%;
	max-width: 150px;
}

@media print , screen and (min-width:1px) and (max-width: 960px) {

.features .txt{
	width: 50%;
	padding: 20px 10px 50px;
}
.features .photo{
	width: 50%;
	padding: 20px 10px;
}
.features h3{
	margin-bottom: 10px;
}

}
@media print , screen and (min-width:1px) and (max-width: 768px) {

.features .txt{
	width: 100%;
	padding: 20px 10px;
	order: 1;
}
.features .photo{
	width: 100%;
	padding: 20px 10px;
	order: 2;
}
	
.feature01 .illust{
	position: absolute;
	bottom: -10px;
	left: 0%;
	width: 25%;
	max-width: 150px;
}
.feature02 .illust{
	position: absolute;
	bottom: -10px;
	right: 0%;
	width: 25%;
	max-width: 150px;
}

.feature03 .illust{
	position: absolute;
	bottom: -10px;
	left: 0%;
	width: 25%;
	max-width: 150px;
}

.feature04 .illust{
	position: absolute;
	bottom: -10px;
	right: 0%;
	width: 25%;
	max-width: 150px;
}

.feature05 .illust{
	position: absolute;
	bottom: -10px;
	left: 0%;
	width: 25%;
	max-width: 150px;
}
	
.feature01 .reason,
.feature03 .reason,
.feature05 .reason{
	position: absolute;
	right: -10px;
	bottom: -10px;
	width: 25%;
	max-width: 150px;z-index: 1;
}

.feature02 .reason,
.feature04 .reason{
	position: absolute;
	left: -10px;
	bottom: -10px;
	width: 25%;
	max-width: 150px;z-index: 1;
}
	
.feature01 {
	border-bottom:4px solid #2e83c9;
	border-right:4px solid #2e83c9;
}
.feature02{
	border-bottom:4px solid #ca2b7b;
	border-left:4px solid #ca2b7b;
}
.feature03 {
	border-bottom:4px solid #4abddb;
	border-right:4px solid #4abddb;
}
.feature04 {
	border-bottom:4px solid #a175ae;
	border-left:4px solid #a175ae;
}

.feature05 {
	border-bottom:4px solid #ee8fb8;
	border-right:4px solid #ee8fb8;
}
}
@media print , screen and (min-width:1px) and (max-width: 530px) {

.feature01 .illust{
	bottom: -20px;
	left: 0%;
	width: 35%;
}
.feature02 .illust{
	bottom: -20px;
	right: 0%;
	width: 35%;
}

.feature03 .illust{
	bottom: -20px;
	left: 0%;
	width: 35%;
}

.feature04 .illust{
	bottom: -20px;
	right: 0%;
	width: 35%;
}
.feature05 .illust{
	bottom: -20px;
	left: 0;
	width: 35%;
}
	
}
/*Course*/

.content .lead{
	text-align: center;
	font-weight: 700;
	font-size: clamp(15px, 2.0vw, 20px);
	margin: 3% auto;
}
.content h3.leadp{
	text-align: center;
	font-weight: 700;
	margin: 3% auto;
	color: #ca2b7b;
}
.content div.leadp{
	text-align: center;
	font-weight: 700;
	font-size: clamp(15px, 2.0vw, 20px);
	margin: 3% auto;
	color: #ca2b7b;
}
.studentbtn{
	margin: 3% auto;
}
.courselist .width-l{
	width: 50%;
	padding: 10px;
}
.studentbtn .btns,
.courselist .width-s{
	width: 25%;
	padding: 10px;
}
.courselist .width-l a,
.courselist .width-s a,
.studentbtn .btns a{
	display: block;
	border-radius: 20px;
	overflow: hidden;
}
.studentbtn .btnll,
.studentbtn .btnlr,
.courselist .width-lt{
	width: 50%;
	padding: 20px 10px;
}
.studentbtn .btnll a,
.courselist .width-lt a{
	background: #143180;
	border-radius: 10px;
	padding: 10px;
	display: block;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
}
.studentbtn .btnlr a{
	background: #949495;
	background: #bf9ac0;
	border-radius: 10px;
	padding: 10px;
	display: block;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
}
.courselist .width-lt.cam a{
	color: #fdf264;
}
.curricurambtn{
	width: 80%;
	max-width: 500px;
	margin: 3% auto;
}

@media print , screen and (min-width:1px) and (max-width: 960px) {
	
.courselist .width-l{
	width: 50%;
	padding: 10px 5px;
}
.studentbtn .btns,
.courselist .width-s{
	width: 25%;
	padding: 10px 5px;
}
	
.studentbtn .btnll,
.studentbtn .btnlr{
	width: 50%;
	padding: 10px 5px;
}
.courselist .width-lt{
	width: 50%;
	padding: 20px 5px;
}
	
}
@media print , screen and (min-width:1px) and (max-width: 768px) {
		
.courselist .width-l{
	width: 100%;
	padding: 5px 5px;
}
.studentbtn .btns,
.courselist .width-s{
	width: 50%;
	padding: 5px 5px;
}
	
.studentbtn .btnll,
.studentbtn .btnlr,
.courselist .width-lt{
	width: 100%;
	padding: 5px 5px;
}	
}

.course-box{
	margin: 3% auto;
}

.course-box .txt{
	width: 50%;
	padding: 20px 10px;
}
.course-box .txt p{
	line-height: 1.8em;
	margin-bottom: 10px;
}
.course-box .photo{
	width: 50%;
	padding: 30px 10px;
}
.course-box .sub{
	text-align: left;
	font-size: 0.9em;
	line-height: 1.8em;
	padding: 0 20px;
	
}

.profile h4.line,
.course h4.line{
	text-align: left;
	font-weight: 700;
	padding: 2px 10px;
	border-left: 6px solid #143180;
	color: #143180;
	margin: 5% auto 0;
}
.course h5{
	text-align: left;
	font-weight: 700;
	padding: 2px 10px;
	color: #143180;
	margin: 5% auto 0;
}

.course .tab-container{
	margin: 5% auto 0;
	width: 96%;
	display: flex;
	align-items: center;
	justify-content: center;
	border-bottom: 2px solid #143180;
}
.course .tab-container .tab{
	width: 45%;
	border-radius: 10px 10px 0 0;
	border-left: 1px solid #143180;
	border-top: 1px solid #143180;
	border-right: 1px solid #143180;
	color: #8998bf;
	font-weight: 500;
	font-size: clamp(15px, 2.2vw, 22px);
}
.course .tab-container .tab.active{
	background: #143180;
	color: #fff;
}
.course .tab-container .tab{
	width: 45%;
	margin: auto;
}
.course .tab-container{
	margin: 5% auto 0;
}
.course .tabcontent{
	padding: 0 20px;
}

.course table{
	margin: 3% auto 0;
}
.course table th,
.course table td{
	text-align: center;
}
.course .time{
	width: 70%;
}
.course .icon{
	width: 30%;
	padding: 20px;
	text-align: center;
	margin: auto;
}
.course .icon img{
	max-width: 180px;
	display: block;
	margin: auto;
}

.pink_btn{
	background:#ca2b7b;
	border-radius: 10px;
	margin: 3% auto;
	width: 80%;
	max-width: 400px;
	font-size: clamp(15px, 2vw, 20px);
}

.pink_btn a{
	padding: 10px;
	color: #fff;
	text-decoration: none;
	font-weight: 500;
	display: block;
	margin: auto;
}
strong.fCol_p{
	color: #ca2b7b;
}
table td strong.fcolp{
	color: #ca2b7b;
	font-size: 1.3em;
}
.course .optionbox{
	margin: 3% auto;
}
.course .optionbox p{
	text-align: left;
	margin: 20px auto;
}
.course .optionbox p .fcolp{
	color: #ca2b7b;
}
.course .optionbox dl.option{
	display: flex;
	flex-wrap: wrap;
	border: 2px solid #143180;
}
.course .optionbox dl.option dt{
	width: 25%;
	background: #143180;
	color: #fff;
	padding: 5px 10px ;
	font-size: clamp(15px, 2vw, 20px);
}
.course .optionbox dl.option dd{
	width: 75%;
	color: #143180;
	padding: 5px 20px ;
	font-size: clamp(15px, 2.2vw, 22px);
	text-align: left;
}
.course .optionbox dl.option-l{
	display: flex;
	flex-wrap: wrap;
	border: 2px solid #143180;
}

.course .optionbox dl.option-l dt{
	width: 25%;
	background: #143180;
	color: #fff;
	padding: 5px 10px ;
	font-size: clamp(15px, 2vw, 20px);
}
.course .optionbox dl.option-l dd{
	width: 75%;
	background: #143180;
	color: #fff;
	padding: 5px 20px ;
	font-size: clamp(15px, 2.2vw, 22px);
	text-align: left;
}
.course .optionbox dl.option-l dd.wback{
	width: 100%;
	background: #fff;
	color: #111;
	padding: 5px 10px ;
	font-size: clamp(14px, 1.7vw, 17px);
}

@media print , screen and (min-width:1px) and (max-width: 960px) {
.course .optionbox dl.option dt{
	width: 35%;
}
.course .optionbox dl.option dd{
	width: 65%;
}

.course .optionbox dl.option-l dt{
	width: 35%;
}
.course .optionbox dl.option-l dd{
	width: 65%;
}
.course .tabcontent{
	padding: 0 10px;
}
}
@media print , screen and (min-width:1px) and (max-width: 768px) {
.course-box .txt{
	width: 100%;
	padding: 10px;
}
.course-box .txt p{
	line-height: 1.6em;
	margin-bottom: 10px;
}
.course-box .photo{
	width: 100%;
	padding: 10px;
}
.table-container{
	overflow-x:scroll;
}
.table-container table{
	width: 600px;
	}
	
.course .tab-container .tab{
	width: 48%;
	margin: auto;
}
	
.course .time{
	width: 100%;
}
.course .icon{
	width: 100%;
	padding: 10px;
	text-align: center;
	margin: auto;
}
	.course .optionbox dl.option dt{
	width: 100%;
}
.course .optionbox dl.option dd{
	width: 100%;
	text-align: center;
}

.course .optionbox dl.option-l dt{
	width: 100%;
}
.course .optionbox dl.option-l dd{
	width: 100%;
	text-align: center;
	background: #fff;
	color: #143180;border-bottom: 2px solid #143180;
}
	
.course .optionbox dl.option-l dd.wback{
	padding: 5px ;
}
.course .tabcontent{
	padding: 0 5px;
}
}

.campaign table th{
	width: 30%;
	text-align: left;
}
.campaign table td{
	width: 70%;
	text-align: left;
}
@media print , screen and (max-width: 768px) {
.campaign table th{
	width: 100%;
	text-align: left;
}
.campaign table td{
	width: 100%;
	text-align: left;
}
}
/*student*/

.flow h3.line,
.student h3.line{
	text-align: left;
	color: #143180;
	padding: 5px 15px;
	font-weight: 700;
	margin: 50px auto 20px;
	border-left: 6px solid #143180;
	
}
.flow h4{
	text-align: left;
	color: #143180;
	font-weight: 700;
	margin-top: 30px;
}

.student a{
	color:#143180;
	text-decoration:underline;
}
.student a.pdf{
	background: url("../img/common/pdf_ico.png") left center no-repeat;
	background-size: 18px;
	padding-left: 25px;
}

.student .wp-block-file.pdf a{
	display: block;
	text-align: left;
	color:#143180;
	text-decoration:underline;
	font-size: clamp(15px, 1.8vw, 18px);
	background: url("../img/common/pdf_ico.png") left center no-repeat;
	background-size: 18px;
	padding-left: 25px;
	margin: 10px 10px;
}

.student .schoolnews{
	width: 80%;
	margin: 3% 0 3% auto;
	position: relative;
}
.student .schoolnews .tab-container{
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.student .tab-container .tab{
	width: 35%;
	border-radius: 10px 10px 0 0;
	border-left: 1px solid #143180;
	border-top: 1px solid #143180;
	border-right: 1px solid #143180;
	color: #8998bf;
	font-weight: 500;
	font-size: clamp(13px, 1.8vw, 18px);
	margin: 0 3% 0 0;
}
.student .tab-container .tab.active{
	background: #143180;
	color: #fff;
}
.student .tab-container{
	margin: 0 auto;
}
.student .tabcontent{
	padding: 20px;
	background: #f6f7fa;
}
.student .tabcontent table,
.student .tabcontent table th,
.student .tabcontent table td{
	background: none;
	padding: 5px 20px;
	border: none;
	border-bottom: 1px solid #143180;
}

.student .fright{
	float: right;
	width: 15%;
	padding: 10px;
}
.student .fleft{
	position: absolute;
	width: 20%;
	left: -20%;
	bottom:10%;
	padding: 0px;
}
.student .bana{
	margin: 20px auto 20px 0;
	text-align: left;
}
.student .studenttel{
	display: block;
	margin: 20px auto 20px 0;
	width: 90%;
	max-width: 500px;
	color: #143180;
}
.student .studenttel a{
	padding: 5px;
	display: block;
}
.student .gbtn{
	width: 90%;
	max-width: 400px;
	margin: 20px auto 20px 0;
}
.student .gbtn a{
	background: #949495;
	background: #bf9ac0;
	border-radius: 10px;
	padding: 10px;
	display: block;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
}

.student .shidouin{
	width: 75%;
}
.student .sidouinqr{
	width: 25%;
	padding: 10px;
}

@media print , screen and (max-width: 768px) {
.student .fright{
	float: none;
	width: 20%;
	padding: 10px;
	margin: -80px 0 0 auto;
}
.student .fleft{
	position: absolute;
	width: 20%;
	left: -10%;
	bottom:0;
	padding: 0px;
}
.student .schoolnews{
	width: 95%;
	margin: 3% 0 3% auto;
	position: relative;
}
.student .tab-container .tab{
	width: 45%;
	margin: 0 3% 0 0;
	}
.student .shidouin{
	width: 70%;
}
.student .sidouinqr{
	width: 30%;
	padding: 0;
}
}

/*BtoB*/

.btob .leadcheck,
.profile .leadcheck{
	position: relative;
	display: inline-block;
	font-weight: 700;
	color: #143180;
	margin: auto 30px;
	font-size: clamp(16px, 2vw, 20px);
}
.btob .leadcheck::before,
.profile .leadcheck::before{
	content: "";
	background: url("../img/btob/point_l.svg") center center no-repeat;
	width: 20px;
	height: 100%;
	position: absolute;
	left: -20px;
	top: 5px;
	
}
.btob .leadcheck::after,
.profile .leadcheck::after{
	content: "";
	height: 100%;
	background: url("../img/btob/point_r.svg") center center no-repeat;
	width: 20px;
	position: absolute;
	right: -20px;
	top: 5px;
	
}
.btobmes{
	margin: 5% auto;
}
.btobmes .txt{
	width:50%;
	padding: 10px;
}
.btobmes .txt p{
	line-height: 1.8em;
}
.btobmes .txt .sub{
	text-align: left;
	font-size: 0.9em;
	padding: 10px;
}
.btobmes .photo{
	width:50%;
	padding: 10px;
}
.btobmes h3{
	font-weight: 700;
	text-align: left;
	margin-bottom: 10px;
}
.btobmes h3 span{
	padding: 2px 10px;
	margin-bottom: 10px;
	display: inline-block;
	color: #fff;
}
.btobmes h3 span{
	background: #ca2b7b;
}

table th.b-blue{
	background: #2e83c9;
	border-bottom: 1px solid #2e83c9;
	color:#ffffff;
}
table th.b-purple{
	background: #c698c3;
	border-bottom: 1px solid #c698c3;
	color:#ffffff;
}
table th.b-violet{
	background: #a175ae;
	border-bottom: 1px solid #a175ae;
	color:#ffffff;
}
table th.b-pink{
	background: #ca2b7b;
	border-bottom: 1px solid #ca2b7b;
	color:#ffffff;
}
table td.b-blue{
	color:#2e83c9;
	border-bottom: 1px solid #2e83c9;
	border-right: 1px solid #2e83c9;
}
table td.b-purple{
	color: #c698c3;
	border-bottom: 1px solid #c698c3;
	border-right: 1px solid #c698c3;
}
table td.b-violet{
	border-bottom: 1px solid #a175ae;
	border-right: 1px solid #a175ae;
	color:#a175ae;
}
table td.b-pink{
	border-bottom: 1px solid #ca2b7b;
	color:#ca2b7b;
	background: #f2cade;
	font-size: 1.2em;
}
table td img{
	vertical-align: middle;
}

.btob h4{
	text-align: left;
	color: #143180;
}
.btob h4.tC{
	text-align: center ;
	margin: 20px auto;
}
.btob h3.line{
	text-align: left;
	color: #143180;
	padding: 5px 15px;
	font-weight: 700;
	margin-bottom: 20px;
	border-left: 6px solid #143180;
}
.btob .reason .w30{
	width: 33.3333%;
	padding: 10px;
}
.btob .reason .w30 .point{
	font-size: clamp(16px, 2vw, 20px);
	text-align: center;
	color: #fff;
	font-weight: 700;
	padding: 10px;
	height: 75px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btob .reason .w30.pink .point{
	background: #ee8fb8;
	border-radius: 5px;
}
.btob .reason .w30.green .point{
	background: #4abddb;
	border-radius: 5px;
}
.btob .reason .w30.blue .point{
	background: #2e83c9;
	border-radius: 5px;
}

.btob .reason p{
	margin: 10px auto;
	line-height: 1.5em;
	height: 200px;
}
.btob .tokuchobox{
	/*width: 25%;*/
	width: 33.3333%;
	padding: 10px;
}
.btob .tokuchobox p{
	margin: 10px auto;
	line-height: 1.5em;
	font-size: clamp(14px, 1.6vw, 16px);
	
}
.btnsodan{
	margin: 3% auto;
	position: relative;
}
.btnsodan .ico{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 15%;
}
.btnsodan .catch{
	width: 90%;
	max-width: 600px;
	margin: 3% auto;
}
.btnsodan a{
	width: 60%;
	font-size: clamp(15px, 2.2vw, 22px);
	color: #fff;
	border-radius: 5px;
	background: #143180;
	padding: 15px 10px;
	font-weight: 700;
	text-align: center;
	max-width: 600px;
	margin: auto;
	display: block;
}


@media print , screen and (max-width: 960px) {
.btob .reason p{
	margin: 10px auto;
	line-height: 1.5em;
	height: 200px;
}
.btob .reason .w30{
	width: 33.3333%;
	padding: 10px 5px;
}
}
@media print , screen and (max-width: 768px) {

.btobmes .txt{
	width:100%;
	padding: 10px;
}
.btobmes .photo{
	width:100%;
	padding: 10px;
}
.btob .reason .w30 .point{
	height: auto;
}
.btob .reason p{
	height: auto;
}
.btob .reason .w30{
	width: 100%;
	padding: 10px;
}
.btob .tokuchobox{
	width: 50%;
	padding: 5px;
}
}
@media print , screen and (max-width: 530px) {

.btob .tokuchobox{
	width: 100%;
	padding: 5px;
}
.btnsodan a{
	width: 80%;
	}
.btnsodan .ico{
	position: relative;
	left: 2%;
	bottom: 0;
	width: 30%;
}
}

.flow table th.shiryoku{
	background: #cbd2e3;
}
.flow .attention{
	background: #eceff5;
	margin: 10px auto;
	padding: 20px;
}
.flow ul{
	margin-left: 30px;
	text-align: left;
}
.flow ul.dot li{
	list-style: disc;
	margin-bottom: 5px;
}
.flow .time{
	padding: 10px;
	line-height: 2.0em;
	font-size: 1.3em;
	text-align: left;
	font-weight: 700;
	color: #ca2b7b;
}

.flowbox .steptxt{
	width: 94%;
	padding: 10px;
}
.flowbox .steparrow{
	width: 6%;
	padding: 0 10px;
}
.flowbox .steparrow img{
	width: 30px;
}
.flowbox.stepbefore .steparrow{
	background: url("../img/flow/arrow01.svg") center bottom no-repeat;
	background-size: cover;
}
.flowbox.stepafter .steparrow{
	background: url("../img/flow/arrow02.svg") center bottom no-repeat;
	background-size: cover;
}
.flowbox.stepafter .ico,
.flowbox.stepbefore .ico{
	width: 15%;
	padding: 20px 5px 10px;
	position: relative;
	z-index: 1;
}
.flowbox.stepafter .txt,
.flowbox.stepbefore .txt{
	width: 85%;
	padding: 10px;
}
.flowbox.stepafter .txt a,
.flowbox.stepbefore .txt a{
	display: inline-block;
	color: #ca2b7b;
	text-decoration: underline;
}
.flowbox.stepbefore .txt h4{
	background: #2e83c9;
	padding: 5px 20px;
	border-radius: 5px;
	margin-bottom: 20px;
	color: #fff;
}
.flowbox.stepbefore .txt h4 span{
	display: inline-block;
	border: 1px solid #fff;
	border-radius: 5px;
	padding: 0 5px;
}
.flowbox.stepafter .txt h4{
	background: #a175ae;
	padding: 5px 20px;
	border-radius: 5px;
	margin-bottom: 20px;
	color: #fff;
}
.flowbox.stepafter .txt h5,
.flowbox.stepbefore .txt h5{
	text-align: left;
	color: #ca2b7b;
	margin: 10px auto 5px;
}.flowbox.stepbefore .txt .card{
	text-align: left;
	margin: 10px auto 10px 10px;
}
.flowbox.stepafter .ico::before,
.flowbox.stepbefore .ico::before{
	content: "";
	width: 1px;
	height: 100%;
	background: #333;
	position: absolute;
	left: 0;
	right: 0;
	top: 0%;
	margin: auto;
	z-index: -1;
}


@media print , screen and (max-width: 768px) {
.flowbox.stepafter .ico,
.flowbox.stepbefore .ico{
	width: 20%;
	padding: 20px 0 10px;
	position: relative;
	z-index: 1;
}
.flowbox.stepafter .txt,
.flowbox.stepbefore .txt{
	width: 80%;
	padding: 10px;
}
}
@media print , screen and (max-width: 530px) {

.flowbox .steptxt{
	width: 90%;
	padding: 10px;
}
.flowbox .steparrow{
	width: 10%;
	padding: 0 0px;
}
.flowbox .steparrow img{
	width: 18px;
}

.flowbox.stepafter .ico,
.flowbox.stepbefore .ico{
	width: 100px;
	text-align: center;
	margin: auto;
	padding: 30px 0 0;
	position: relative;
	z-index: 1;
}
.flowbox.stepafter .ico::before,
.flowbox.stepbefore .ico::before{
	content: none;
}
.flowbox.stepbefore .txt h4{
	margin-top: 0;
}
.flowbox.stepafter .txt h4{
	margin-top: 0;
}
.flowbox.stepafter .txt,
.flowbox.stepbefore .txt{
	width: 100%;
	padding: 0px;
}
}

/**/

.skybox,
.bluebox{
	border: 2px solid #c9c8c8;
	margin: 3% auto 5%;
	position: relative;
}
.bluebox dt{
	background: #143180;
	border-bottom: 2px solid #c9c8c8;
	padding: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.bluebox dt .ico{
	width: 15%;
	max-width: 100px;
	padding: 10px;
}
.bluebox dt h4{
	width: 85%;
	max-width: 350px;
	padding: 10px;
}
.bluebox dd{
	background: #e7eaf2;
	padding: 20px 20px 20px 12%;
	position: relative;
}
.bluebox dd .illust{
	position: absolute;
	left: 0;
	width: 12%;
	top: 5%;
}
.skybox dt{
	background: #2e83c9;
	border-bottom: 2px solid #c9c8c8;
	padding: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.skybox dt .ico{
	width: 15%;
	max-width: 100px;
	padding: 10px;
}
.skybox dt h4{
	width: 85%;
	max-width: 350px;
	padding: 10px;
}
.skybox dd{
	background: #eaf3fa;
	padding: 20px 20px 20px 12%;
}

.bluebox table,
.skybox table,
.bluebox table th,
.skybox table th,
.bluebox table th:first-child,
.skybox table th:first-child,
.bluebox table td,
.skybox table td{
	border: none;
	background: #fff;
}.bluebox table td a,
.skybox table td a{
	color: #143180;
	text-decoration: underline;
}

.curricuram .telflex{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.curricuram .telflex .mes{
	width: 30%;
	max-width: 240px;
	padding: 10px;
	color: #143180;
	font-weight: 500;
	border-left: 3px solid #143180;
	border-right: 3px solid #143180;
}
.curricuram .telflex .tel{
	width: 70%;
	padding: 10px 30px;
}
.curricuram .telflex .tel a{
	width: 90%;
	margin: 10px auto;
	display: block;
}

@media print , screen and (max-width: 960px) {
.curricuram .telflex .mes{
	width: 35%;
	max-width: 240px;
	padding: 10px;
	color: #143180;
	font-weight: 500;
	border-left: 3px solid #143180;
	border-right: 3px solid #143180;
}
.curricuram .telflex .tel{
	width: 65%;
	padding: 10px 20px;
}
}
@media print , screen and (max-width: 960px) {
.curricuram .telflex .mes{
	width: 100%;
	max-width: 100%;
	padding: 5px 10px;
	color: #143180;
	font-weight: 500;
	border-left: 3px solid #143180;
	border-right: 3px solid #143180;
	background: #143180;
	color: #fff;
}
.curricuram .telflex .tel{
	width: 100%;
	padding: 10px;
}
}
@media print , screen and (max-width: 530px) {
	
.bluebox dd,
.skybox dd{
	padding: 15px;
}
	.bluebox dd .illust{
		display: none;
	}
	
.bluebox dt .ico,
.skybox dt .ico{
	width: 20%;
	max-width: 100px;
	padding: 5px;
}
.bluebox dt h4,
.skybox dt h4{
	width: 80%;
	max-width: 350px;
	padding: 5px;
}
.bluebox table th,
.skybox table th,
.bluebox table td,
.skybox table td{
	padding: 5px 10px;
}	
}

/*Profile*/
.outline{
	margin: 3% auto;
}
.outline .txt{
	width: 60%;
	padding: 10px;
}
.outline .photo{
	width: 40%;
	padding: 10px;
}

.profile .name{
	text-align: center;
	font-weight: 700;
	font-size: clamp(15px, 2.5vw, 25px);
	margin: 10px auto;
}
.profile .map{
	margin: 3% auto 5%;
	border:1px solid #dfdfdf;
}
.profile .accessp{
	width: 40%;
	padding: 10px;
}
.profile .accesstxt{
	width: 40%;
	padding: 10px;
}
.profile .accesstxt .btn a{
	background: #143180;
	color: #fff;
	display: block;
	text-align: center;
	border-radius: 20px;
	padding: 10px;
	text-decoration: none;
	font-size: clamp(15px, 2.0vw, 20px);
	margin-bottom: 10px;
}
.privacy ul,
.privacy ol,
.privacy p{
	margin: 3% auto;
	text-align: left;
}.privacy ul li{
	list-style: circle;
}.privacy ol li{
	list-style: decimal;
	margin-left: 35px;
	margin-bottom: 10px;
}
@media print , screen and (min-width:1px) and (max-width: 768px) {
	
.outline .txt{
	width: 100%;
	padding: 10px;
}
.outline .photo{
	width: 90%;
	padding: 10px;
}
.profile .accessp{
	width: 80%;
	padding: 10px;
}
.profile .accesstxt{
	width: 80%;
	padding: 10px;
}
}
@media print , screen and (min-width:1px) and (max-width: 530px) {

.outline .photo{
	width: 100%;
	padding: 0 10px;
}
.profile .accessp{
	width: 100%;
	padding: 10px;
}
.profile .accesstxt{
	width: 100%;
	padding: 10px;
}
}
/*faq*/

h3.backbm{
	margin: 5% auto 3%;
	text-align: left;
	padding: 2px 20px;
	color: #fff;
	background: #4681c3;
	border-radius: 5px;
	font-size: clamp(15px, 2.5vw, 25px);
}

.flownav li,
.faqnav li,
.campaignnav li{
	width: 25%;
	padding: 5px;
}
.flownav li a,
.faqnav li a,
.campaignnav li a{
	display: block;
	padding: 10px 0;
	text-align: center;
	color: #fff;
	font-weight: 700;
	background: #143180;
	border-radius: 5px;
}
.Faq_box{
	margin: 0 auto 8%;
}


.Faq > dl {
	border:1px #dfdfdf;
	border-bottom-style:solid;
}

.Faq > dl > dt {
	padding:25px 40px 25px 60px;
	font-size: 1.8rem;
	line-height: 1.5em;
	text-align: left;
	font-weight: 500;
}
.Faq > dl > dt::after{
	content: "+";
	color: #1a307b;
	position: absolute;
	font-size: 2.0rem;
	right: 15px;
	top: 15px;
	width: 35px;
	height: 35px;
	line-height: 35px;
	text-align: center;
}
.Faq > dl > dt.open::after{
	content: "−";
	color: #1a307b;
	position: absolute;
	font-size: 2.0rem;
	right: 15px;
	top: 15px;
	width: 35px;
	height: 35px;
	line-height: 35px;
	text-align: center;
}
.Faq > dl > dt:hover {
	cursor:pointer;
}

.Faq > dl > dd {
	padding:40px;
	display:none;
	text-align: left;
	background: #f5f5f5;
}
.Faq > dl > dd strong{
	color: #e74471;
}
.Faq > dl > dd a{
	font-weight: 500;
}

.Faq > dl > dt,
.Faq > dl > dd {
	position:relative;
}


.Faq > dl > dt span {
	position:absolute;
	left:5px;
	top:20px;
	color:#fff;
	background: #1a307b;
	padding: 5px 10px 8px;
	font-size: 1.3em;
	border-radius: 50px;
}
@media print , screen and (min-width:1px) and (max-width: 768px) {

.flownav li,
.faqnav li,
.campaignnav li{
	width: 50%;
	padding: 5px;
}
.Faq > dl > dt {
	padding:20px 50px 20px 60px;
	line-height: 1.4em;
	font-size: 1.6rem;
}
	
.Faq > dl > dt::after{
	right: 10px;
	top: 15px;
	font-size: 1.8rem;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
}
.Faq > dl > dt.open::after{
	right: 10px;
	top: 15px;
	font-size: 1.8rem;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
}
	
.Faq > dl > dd {
	padding:30px 30px 30px 30px;
	display:none;
	line-height: 1.6em;
}
.Faq > dl > dt span {
	position:absolute;
	left:5px;
	top:15px;
}
}
@media only screen and (min-width:1px) and (max-width: 480px) {

.Faq > dl > dt {
	padding:20px 45px 20px 60px;
	font-size: 1.5rem;
}	
.Faq > dl > dd {
	padding:20px;
}
}

/* form */


.form-style {
	
}
.form-style input {
	font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
.form-style input[type="checkbox"] {
	margin: 0 0.5em;
}
.form-style input[type="text"],
.form-style textarea {
	color: #000!important;
	border: 1px solid #b7bfd4;
	background: #FFF;
	margin: 10px 10px 10px 0;
	padding: .5em 1em;
	
	/* animation */
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.form-style textarea {
	display: block;
	margin-bottom: 0;
}
.form-style input[type="text"]:focus,.form-style textarea:focus {
	border: 1px solid #b7bfd4;
	background: #FFF;
	outline: 0;
}

.form-style #checkbox label{
	display: inline-block;
	margin-right: 20px;
}
.form-style input[type="number"] {
	border: 1px solid #b7bfd4;
	background: #FFF;
	margin: 10px 10px 10px 0;
	padding: 3px;
}
.form-style input[type="radio"] {
	margin-left: 2px;
	margin-right: 6px;
}
.form-style select::-ms-expand {
	display: none;
}
.form-style select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	line-height: 1.1em;
	border: 1px solid #b7bfd4;
	background-image: url(../img/common/arrow_u.png);
	background-repeat: no-repeat;
	background-size: 10px 7px;
	background-position: right 10px center;
	background-color: #FFF;
	padding: 7px 30px 7px 10px;
	margin: 10px 10px 10px 0;
}
.form-style select:focus {
	border: 1px solid #8cbbd2;
	outline: 0;
}
.form-style dl{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.form-style dl dt{
	width: 20%;
	font-size: 0.9em;
}

.form-style dl dd{
	width: 80%;
}

.formwidth-ss {
	width: 100px;
}
.formwidth-s {
	width: 15%;
}
.formwidth-ms {
	width: 25%;
}
.formwidth-m {
	width: 60%;
}
.formwidth-l {
	width: 80%;
}
.regi-buttun {
	text-align: center;
	margin: 3% 0 0;
}

.entry-area {
	width: 550px;
	margin: 60px auto 0;
}

/* ボタン */

.add-bu {
	font-size: 1.5rem!important;
	-webkit-appearance: none;
	cursor: pointer;
	text-align: center;
	color: #FFF;
	background: #333;
	border-radius: 6px;
    margin-left: .5em;
	padding: 5px 1em;
}

.button-rd {
	border: 3px solid #143180;
	background: #143180;
	border-radius: 30px;
	color: #fff;
}
.button-rd:hover {
	color: #143180;
	background: #FFF;
}
.button-gr {
	border: 3px solid #dfdfdf;
	background: #dfdfdf;
	border-radius: 30px;
	color: #333;
}
.button-gr:hover {
	color: #CCC;
	background: #FFF;
	color: #333;
}

[class^="button-"] {
	width: 46%;
	display: block;
	-webkit-appearance: none;
	cursor: pointer;
	float: left;
	font-size: clamp(1.4rem, 1.6vw, 1.6rem);
	text-align: center;
	padding: 4% 0;
	margin: 0 2%;
	border-radius: 30px;
	font-weight: 500;
}

#submit[disabled] { 
	cursor: default;
	background: #CCC;
	border: 3px solid #CCC;
}
#submit[disabled]:hover {
	color: #FFF;
}

/* cf */

.entry-area:after {
    content:" ";
    display:block;
    clear:both;
}


@media only screen and (max-width: 768px) {
	
    .attention {
        margin-bottom: 4%;
        padding: .5em 1em;
    }
	.title-s {
		font-size: clamp(1.6rem, 1.8vw, 1.8rem);
		margin-bottom: 6%;
	}
	.contact-att-send {
		width: 100%;
		padding: 5%;
	}
	.contact-att-send p strong {
		font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	}
    
    .contact-item {
        width: 100%;
        border-bottom: none;
        padding: 0;
    }
    .contact-item dl {
        border-bottom: 1px solid #CCC;
        padding: 3% 0;
    }
    .contact-item dt {
        font-size: clamp(1.4rem, 1.6vw, 1.6rem);
        margin-bottom: 3%;
    }
    .contact-item dt span {
        font-size: 1.3rem;
    }
    .contact-item dd ul {
       text-align: left;
    }
    .contact-item dd ul li {
        width: 100%;
        display: inline-block;
        padding: 2px 0;
    }
    .contact-item dl.helf {
        width: 100%;
    }
    
    
	.entry-area {
		width: 100%;
		margin: 8% auto 0;
	}
	.form-style input[type="text"],.form-style textarea {
		padding: .4em .7em;
	}
	.formwidth-m,.formwidth-l {
		width: 98%;
	}
	.formwidth-s {
		width: 4.5em;
	}
	.formwidth-ss {
		width: 100px;
	}
    [class^="button-"] {
		width: 50%;
        font-size: 1.3rem!important;
		margin: 0 auto;
		
    }
	
.form-style dl dt{
	width: 100%;
	font-size: 0.9em;
	padding: 0;
	margin: 0;
}

.form-style dl dd{
	width: 100%;
	margin: 0;
}
	
}

/*recruit*/

.recruit{
	margin: 3% auto 5%;
	position: relative;
}
.recruit .point_q{
	width: 80%;
	margin: 0 auto 0 1%;
}
.recruit .point_a{
	width: 80%;
	margin: -5% 1% 0 auto;
}

.recruit .voice_btn.btn01 .catch{
	position: absolute;
	width: 50%;
	bottom: 10%;
	left: 5%;
}
.recruit .voice_btn.btn02 .catch{
	position: absolute;
	width: 50%;
	top: 10%;
	right: 5%;
}
.recruit .voice_btn.btn03 .catch{
	position: absolute;
	width: 50%;
	top: 10%;
	left: 5%;
}

.recruit .voice_btn{
	margin: 5% auto 10px;
	position: relative;
}
.recruit .challenge{
	width: 80%;
	max-width: 400px;
	margin: -5% auto 3%;
	position: relative;
	z-index: 1;
}

.kikkake{
	position: relative;
	margin: 5% auto;
}
.kikkake .illust{
	position: absolute;
	width: 25%;
	right: 0;
	bottom:0%;
}
.kikkake .txt{
	padding: 20px;
	text-align: left;
}
.kikkake .txt h2{
	font-weight: 900;
	text-align: left;
	color: #143180;
	letter-spacing: 0;
	margin-bottom: 20px;
}
.recruit .img{
	margin: 3% auto;
}
.recruit h3.line{
	text-align: left;
	color: #143180;
	padding: 5px 15px;
	font-weight: 700;
	margin: 50px auto 20px;
	border-left: 6px solid #143180;
}
.reason-l{
	width: 58%;
	padding: 10px;
}
.reason-l .reason02{
	margin-bottom: 12px;
}
.reason-m{
	width: 42%;
	padding: 10px;
}
.reason-s{
	width: 33.3333%;
	padding: 10px;
}
.reason-s img{
	border-radius: 10px;
}

.recruitabout .txt{
	width: 55%;
	padding: 0px;
}
.recruitabout .txt .illust{
	width: 35%;
	margin: 20px 0 auto auto;
}
.recruitabout .photo{
	width: 45%;
	padding: 0px;
}
.road01,
.road02,
.road03,
.road04{
	width: 22%;
}
.road01 img,
.road02 img,
.road03 img,
.road04 img{
	width: 100%;
}
.road01 p,
.road02 p,
.road03 p,
.road04 p{
	line-height: 1.5em;
	font-size: clamp(14px, 1.6vw, 16px);
	padding: 10px;
}
.road01{
	background: #fdf0f6;
	border-radius: 10px;
}
.road02{
	background: #e0f4f9;
	border-radius: 10px;
}
.road03{
	background: #f4eaf3;
	border-radius: 10px;
}
.road04{
	background: #faeaf2;
	border-radius: 10px;
}
.recruitroad .arrow{
	width: 4%;
	padding: 8px;
	display: flex;
	align-items: center;
}
.pointbox{
	margin: 3% auto;
}
.pointbox .pointt{
	width: 50%;
	padding: 10px;
}
.pointbox .pointt p{
	line-height: 2em;
}
.pointbox .pointp{
	width: 50%;
	padding: 10px;
}

.pointbox.point01 .pointt .en{
	border-bottom: 3px dotted #ca2b7b;
	text-align: left;
	padding: 10px 20px;
}
.pointbox.point01 .pointt .en img{
	width: 50%;
	max-width: 150px;
}
.pointbox.point01 h4{
	color: #ca2b7b;
	text-align: left;
	font-weight: 700;
	margin: 3% auto;
}


.pointbox.point02 .pointt{
	order: 2;
}
.pointbox.point02 .pointp{
	order: 1;
}
.pointbox.point02 .pointt .en{
	border-bottom: 3px dotted #2e83c9;
	text-align: left;
	padding: 10px 20px;
}
.pointbox.point02 .pointt .en img{
	width: 50%;
	max-width: 150px;
}
.pointbox.point02 h4{
	color: #2e83c9;
	text-align: left;
	font-weight: 700;
	margin: 3% auto;
}

.pointbox.point03 .pointt .en{
	border-bottom: 3px dotted #a175ae;
	text-align: left;
	padding: 10px 20px;
}
.pointbox.point03 .pointt .en img{
	width: 50%;
	max-width: 150px;
}
.pointbox.point03 h4{
	color: #a175ae;
	text-align: left;
	font-weight: 700;
	margin: 3% auto;
}

.voice01,
.voice02,
.voice03 {
	margin: 5% auto;
}
.voicebox .voicep{
	width: 40%;
	padding: 10px;
}
.voicebox .voicet{
	width: 60%;
	padding: 10px;
}
.voicebox.voice01 .voicet h4{
	color: #143180;
	font-weight: 700;
	text-align: left;
	margin-bottom: 20px;
}
.voicebox .work{
	text-align: left;
	font-weight: 700;
}
.voicebox.voice01 .work{
	border-bottom: 2px solid #143180;
}
.voicebox.voice01 .work strong{
	display: inline-block;
	padding: 5px 10px;
	font-size: 1.2em;
	color: #fff;
	background: #143180;
	font-weight: 700;
	margin-right: 20px;
}
.voicebox.voice02 .work{
	border-bottom: 2px solid #ca2b7b;
}
.voicebox.voice02 .voicet h4{
	color: #ca2b7b;
	font-weight: 700;
	text-align: left;
	margin-bottom: 20px;
}
.voicebox.voice02 .work strong{
	display: inline-block;
	padding: 5px 10px;
	font-size: 1.2em;
	color: #fff;
	background: #ca2b7b;
	font-weight: 700;
	margin-right: 20px;
}
.voicebox.voice03 .work{
	border-bottom: 2px solid #4abddb;
}
.voicebox.voice03 .voicet h4{
	color: #4abddb;
	font-weight: 700;
	text-align: left;
	margin-bottom: 20px;
}
.voicebox.voice03 .work strong{
	display: inline-block;
	padding: 5px 10px;
	font-size: 1.2em;
	color: #fff;
	background: #4abddb;
	font-weight: 700;
	margin-right: 20px;
}

.voicebox .voicet p{
	padding: 20px 10px;
	line-height: 1.8em;
}
.voicebox .voice_ico{
	width: 15%;
	padding: 20px;
	text-align: center;
}
.voicebox .voice_fukidasi{
	width: 80%;
  position: relative;
  display: inline-block;
  margin: 10px 0 10px 15px;
  padding: 15px 10px;
  color: #555;
  background: #ffffff;
	border-radius: 10px;
	display: flex;
	align-items: center;
}
.voicebox .voice_fukidasi:before {
  content: "";
  position: absolute;
  top: 20%;
  left: -30px;
  margin-top: 0;
  border: 15px solid transparent;
  border-right: 15px solid #e0edff;
}

.voicebox.voice01 .voice_fukidasi{
	background: #eff1f6;
}
.voicebox.voice01 .voice_fukidasi:before {
  border: 15px solid transparent;
  border-right: 15px solid #eff1f6;
}
.voicebox.voice01 .voice_fukidasi{
	border-right: 4px solid #143180;
	border-bottom: 4px solid #143180;
}
.voicebox.voice02 .voice_fukidasi{
	background: #fef7fa;
}
.voicebox.voice02 .voice_fukidasi:before {
  border: 15px solid transparent;
  border-right: 15px solid #fef7fa;
}
.voicebox.voice02 .voice_fukidasi{
	border-right: 4px solid #ca2b7b;
	border-bottom: 4px solid #ca2b7b;
}
.voicebox.voice03 .voice_fukidasi{
	background: #f2fafc;
}
.voicebox.voice03 .voice_fukidasi:before {
  border: 15px solid transparent;
  border-right: 15px solid #f2fafc;
}
.voicebox.voice03 .voice_fukidasi{
	border-right: 4px solid #4abddb;
	border-bottom: 4px solid #4abddb;
}
.voicebox .voice_fukidasi p{
	line-height: 1.6em;
	font-weight: 700;
}
.voicebox.voice01 .voice_fukidasi p{
	line-height: 1.6em;
	font-weight: 700;
	color: #143180;
}
.voicebox.voice02 .voice_fukidasi p{
	line-height: 1.6em;
	font-weight: 700;
	color: #ca2b7b;
}
.voicebox.voice03 .voice_fukidasi p{
	line-height: 1.6em;
	font-weight: 700;
	color: #4abddb;
}

.message{
	margin: 3% auto 5%;
	position: relative;
}
.message .illust{
	position: absolute;
	left: 5%;
	bottom: 0;
	width: 12%;
}
.message .photol{
	position: absolute;
	left: 0%;
	top: 25%;
	width: 15%;
	
}
.message .photor{
	position: absolute;
	right: 0%;
	top: 35%;
	width: 15%;
	
}
.message .catch{
	width: 80%;
	max-width: 500px;
	margin: 20px auto;
}
.message p{
	font-weight: 700;
	margin: 5% auto;
	text-align: center;
}

.recruit .entrybtn{
	width: 80%;
	max-width: 400px;
	margin: auto;
}

@media only screen and (min-width:1px) and (max-width:960px) {
.reason-l{
	width: 58%;
	padding: 5px;
}
.reason-l .reason02{
	margin-bottom: 8px;
}
.reason-m{
	width: 42%;
	padding: 5px;
}
.reason-s{
	width: 33.3333%;
	padding: 5px;
}
.pointbox .pointt{
	width: 50%;
	padding: 10px 5px;
}
.pointbox .pointp{
	width: 50%;
	padding: 10px 5px;
}
}
@media only screen and (min-width:1px) and (max-width:768px) {

.kikkake .illust{
	position: absolute;
	width: 30%;
	right: 0;
	bottom:inherit;
	top: -20px;
}
.reason-l{
	width: 100%;
	padding: 5px;
}
.reason-l .reason02{
	margin-bottom: 8px;
}
.reason-m{
	width: 100%;
	padding: 5px;
}
.reason-s{
	width: 50%;
	padding: 5px;
}
.recruit .voice_btn.btn01 .catch{
	position: absolute;
	width: 65%;
	bottom: 10%;
	left: 2%;
}
.recruit .voice_btn.btn02 .catch{
	position: absolute;
	width: 65%;
	top: 10%;
	right: 2%;
}
.recruit .voice_btn.btn03 .catch{
	position: absolute;
	width: 65%;
	top: 10%;
	left: 2%;
}
.recruitabout .txt{
	width: 100%;
	padding: 0px;
}
.recruitabout .txt .illust{
	width: 35%;
	margin: 20px 0 auto auto;
}
.recruitabout .photo{
	width: 100%;
	padding: 0px;
}	
.road01,
.road02,
.road03,
.road04{
	width: 42%;
	margin: 10px auto;
}
.recruitroad .arrow{
	width: 6%;
	padding: 5px;
	display: flex;
	align-items: center;
}
.pointbox .pointt{
	width: 100%;
	padding: 10px;
	order: 1;
}
.pointbox .pointp{
	width:100%;
	padding: 10px;
	order: 2;
}
.pointbox.point02 .pointt{
	order: 1;
}
.pointbox.point02 .pointp{
	order: 2;
}
	
.pointbox .pointt .en img{
	width:  80px;
}
	
.voicebox .voicep{
	width: 100%;
	padding: 10px;
}
.voicebox .voicet{
	width: 100%;
	padding: 10px;
}
	
.voicebox .voice_ico{
	width: 25%;
	padding: 30px 5px;
	text-align: center;
}
.voicebox .voice_fukidasi{
	width: 70%;
  position: relative;
  display: inline-block;
  margin: 10px 0 10px 15px;
  padding: 15px 10px;
  color: #555;
  background: #ffffff;
	border-radius: 10px;
	display: flex;
	align-items: center;
}
.message .photoflex
	{
		display: flex;
		justify-content: center;
		align-items: center;
	}
.message .photol{
	position: relative;
	left: inherit;
	top: inherit;
	width: 40%;
	padding: 10px;
	
}
.message .photor{
	position: relative;
	right: inherit;
	top: inherit;
	width: 30%;
	padding: 10px;
	
}
.message .illust{
	position: absolute;
	left: 0%;
	bottom: -20px;
	width: 15%;
}
	
}


.newsnav{
	display: flex;
	flex-wrap: wrap;
	margin: 2% auto;
}

.year {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.year::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #28a2dd;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.year select {
    appearance: none;
   /* min-width: 230px;*/
	min-width: 200px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em .8em;
    border: 1px solid #28a2dd;
    border-radius: 25px;
    background-color: #fff;
    color: #001e57;
    font-size: 1em;
    cursor: pointer;
}

.news ul.cat{
	display: flex;
	text-align: center;
	margin: auto;
	border: 1px solid #28a2dd;
	background: #fff;
	border-radius: 50px;
	width: 70%;
}
.news ul.cat li{
	width: 33.3333%;
}
.news ul.cat li a{
	color: #28a2dd;
	background: none;
	width: 50%;
	display: block;
	text-align: center;
	text-decoration: none;
	width: 100%;
	padding: 10px;
	font-weight: 500;
}
.news ul.cat li.active a,
.news ul.cat li.current-cat a{
	color: #fff;
	background: #28a2dd;
	border-radius: 50px;
}



.newsbox{
	width: 48%;
	margin: 20px 1%;
	background: #fff;
	border:1px solid #bfd2d8;
	border-radius: 10px;
	padding: 20px;
	text-align: left;
}
.newsbox a{
	display: block;
}
.newswaku{
	width: 98%;
	margin: 20px 1%;
	background: #fff;
	border:1px solid #bfd2d8;
	border-radius: 10px;
	padding: 50px 50px;
	text-align: left;
}
.newsbox a{
	color: #333;
	text-decoration: none;
}
.newswaku h3{
	padding: 10px;
	border-bottom:1px solid #28a2dd;
	margin-bottom: 30px;
}
.newswaku .date{
	padding: 0 10px;
}
.newsbox .date{
	color: #28a2dd;
	font-weight: 500;
	margin-bottom: 10px;
}
.newsbox .date .cat{
	display: inline-block;
	background: #fff;
	margin: 0 10px;
	border-radius: 30px;
	padding: 0 20px;
}
.newsbox h3{
	display: inline;
	padding: 5px 0;
	text-align: left;
	border-bottom: 2px dashed #fff;
	font-size: 1.6rem;
	line-height: 2.2em;
}
.newsbox .photo{
	margin: 10px auto;
}
.news h3.title{
	color: #3962b7;
	border-bottom:2px solid #61c1f9;
	position: relative;
	font-size: 2.5rem;
	padding: 5px ;
	font-weight: 700;
}
.news h3.title::after{
	content: "";
	left: 0;
	right: 0;
	bottom: -2px;
	margin: auto;
	position: absolute;
	width: 220px;
	border-bottom:2px solid #28a2dd;
}
.news .date{
	color: #28a2dd;
}
.newscontent{
	margin: 5% auto;
	padding: 20px 10px;
}

@media only screen and (max-width: 960px) {
.newsbox{
	width: 31.333%;
	padding: 10px;
}
.newsbox h3{
	font-size: 1.6rem;
}
.newswaku{
	padding: 30px;
}
}
@media only screen and (max-width: 768px) {
.newsbox{
	width: 48%;
	margin: 10px 1%;
	padding: 10px;
}
.newsbox h3{
	font-size: 1.5rem;
}
.news h3.title{
	font-size: 1.8rem;
}
.newswaku{
	padding: 20px;
}
.year {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.news ul.cat{
	width: 100%;
	margin: 10px 0;
}
	
}

@media only screen and (max-width: 480px) {
.newsbox h3{
	font-size: 1.3rem;
}
.newsbox{
	width: 98%;
	margin: 10px 1%;
}
}

.news_main{
	width: 80%;
	padding: 0 20px 20px 20px;
}
.news_main .news_content{
	padding: 3% 10px 8%;
}
.news_main table .cat{
	font-size: 1.3rem;
	text-align: center;
	width: 150px;
	line-height: 1.5em;
	letter-spacing: 0;
	margin: 0 10px 0 0;
	color: #1b317b;
	border:1px solid #1b317b;
	border-radius: 5px;
	display: inline-block;
}
.news_main table td a{
	color: #333;
}
.news_main table td a:hover{
	color: #1b317b;
}
.news_main .date{
	text-align: right;
	margin: 0 0 0 auto;
	padding: 10px;
}

.news_main .news_content a{
	text-align: left;
	font-size: clamp(13px, 1.6vw, 16px);
}

.news_main .news_content a[href*=".pdf"]{
	padding-left: 30px;
	margin: 10px 0;
	text-align: left;
	background: url("../img/common/ico_pdf.svg") left center no-repeat;
	background-size: 25px;
}

.news_main .news_content p{
	margin-bottom: 3%;
}
.news_nav{
	width: 20%;
	padding: 15px 10px 10px;
	background: #f3f3f3;
}
.news_nav h4{
	text-align: left;
	color: #4261b1;
	font-size: 1.6rem;
}
.news_nav ul{
	margin: 10px auto 30px;
}
.news_nav ul li{
	text-align: left;
}
.news_nav ul li a{
	color: #333;
	font-size: 1.4rem;
	line-height: 1.5em;
	padding: 5px 5px 5px 10px;
	text-decoration: none;
}
.news_nav ul li a:hover{
	color: #4261b1;
}


.news_fnav{
	margin: 3% auto 5%;
}
.news_fnav ul{
	display: flex;
	justify-content: space-between;
}
.news_fnav ul li a{
	color: #333;
	font-size: 1.5rem;
	text-decoration: none;
}
.news_fnav ul li.back a{
	display: block;
	position: relative;
	padding-right: 25px;
}
.news_fnav ul li.next a{
	display: block;
	position: relative;
	padding-left: 25px;
}

.news_fnav ul li.back a::before,
.news_fnav ul li.back a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.news_fnav ul li.next a::before,
.news_fnav ul li.next a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0px;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.news_fnav ul li.back a::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #333;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_fnav ul li.back a::after{
	right: 8px;
	box-sizing: border-box;
	width: 5px;
	height:5px;
	border: 5px solid transparent;
	border-right: 5px solid #fff;
}
.news_fnav ul li.next a::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #333;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_fnav ul li.next a::after{
	left:8px;
	box-sizing: border-box;
	width: 5px;
	height:5px;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
}


.news_fnav ul li a:hover{
	color: #4261b1;
}
.news_fnav ul li.back a:hover::before{
	background: #4261b1;
}
.news_fnav ul li.next a:hover::before{
	background: #4261b1;
}

.news_fnav ul li.tolist a{
	display: block;
	border: 1px solid #333;
	border-radius: 15px;
	padding: 5px 30px;
}
.news_fnav ul li.tolist a:hover{
	border: 1px solid #4261b1;
	color: #4261b1;
}
.news_main .photo{
	width: 40%;
	padding: 20px;
}
.news_main .txt{
	width: 60%;
	padding: 20px;
}

@media only screen and (min-width:1px) and (max-width: 1020px) {
	
.news_nav ul li a{
	color: #333;
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1.5em;
}
}

@media only screen and (min-width:1px) and (max-width: 960px) {

.news_main{
	width: 100%;
	padding: 10px;
}
.news_nav{
	width: 100%;
	padding: 10px 10px;
}
.news_nav ul{
	display: flex;
	flex-wrap: wrap;
}
.news_nav ul li{
	width: 50%;
	text-align: center;
}
	
.news_main table .cat{
	margin: 5px 0;
	width: 160px;
	display: block;
}
	
}
@media only screen and (min-width:1px) and (max-width: 768px) {
.news_main table.resp th{
	padding: 5px 10px !important;
	border-bottom: none !important;
	}
}

@media only screen and (min-width:1px) and (max-width: 680px) {


.news_fnav ul li a{
	color: #333;
	font-size: 1.4rem;
}
.news_main .photo{
	width: 80%;
	padding: 20px;
	margin: auto;
}
.news_main .txt{
	width: 100%;
	padding: 10px;
}
}

@media only screen and (min-width:1px) and (max-width: 480px) {

.news_fnav ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.news_fnav ul li.tolist{
	width: 80%;
	margin: 20px 10%;
	order: 3;
	text-align: center;
	}
.news_fnav ul li.back{
	width: 120px;
	order: 1;
	text-align: center;
	}
.news_fnav ul li.next{
	width: 120px;
	order: 2;
	text-align: center;
	}
	
}



.tab-container {
  display: flex;
  flex-wrap: wrap;
}
.tab-container {
    margin: 0 0 15px;
}
.tab {
	padding: 10px;
}
.tabcontent {
  display: none;
}
.tabcontent.show {
  display: block;
}


