@charset "utf-8";

/*:::::::: desktop :::::::*/

/****** fade script ******/

	.fade-in {
	opacity: 0;
	transition-duration: 500ms;
	transition-property: opacity, transform;
  }
  
  .fade-in-up {
	transform: translate(0, 50px);
  }
  
  .fade-in-down {
	transform: translate(0, -50px);
  }
  
  .fade-in-left {
	transform: translate(-50px, 0);
  }
  
  .fade-in-right {
	transform: translate(50px, 0);
  }
  
  .scroll-in {
	opacity: 1;
	transform: translate(0, 0);
  }
  

/****** /fade script end ******/

.fadein {
	opacity: 0;
	bottom: -20px;
	position: relative;
	transition-duration: 0.2s;
}

.fadein.active {
  opacity: 1;
  bottom: 0;
}

/* common */

:root {
	--main_font_color: #000;
	--main_key_color:#172A88;
	--sub_key_color:#F43B47;	
	--link_color:#006DD2;
	--social_s:#FF4F81;	
	--stem:#11862F;
	--law:#666699;
	--eco:#2c7fc3;
	--comm:#07a363;
	--sci:#ff5500;
	--let:#e53e65;
	--policy:#009ba3;
	--gm:#183267;	
	--itl:#171c21;			
	--font_xl: 2.0em;
	--font_ll: 1.5em;	
	--font_l: 1.125em;
	--font_m: 1.0em;
	--font_s: 0.875rem;
	--font_ss: 0.750rem;
	--main_gradients:linear-gradient(#F43B47, #453A94);
	/* --main_gradients:linear-gradient(to top, #f43b47 0%, #453a94 100%);*/
    --font-min:  "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;   
    }

.txt_s {
	font-size: var(--font_s);
}

.txt_l {
	font-size: var(--font_l);
}

.txt_bl {
	color: var(--main_key_color) !important;
}

.bg_bl {
	background-color: #F2F9FF;
}

.mt01 {
	margin-top:60px;
}

.radius {
	border-radius:30px ;
}

.career_support2025_wrap .red {
	color:#FF0B00;
}

.link_bt_s:hover {
	/*opacity: 0.8;*/
	/*
	transform: scale(1.1,1.1);
	transition:1s all;
	*/
}


.link_bt_l {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 360px;
    margin-top:30px;
    padding: .6em 2em;
    border: 1px solid var(--link_color);
    border-radius: 25px;
    background-color: var(--link_color);
    color: #fff !important;
    font-size: var(--font_m);
}

.link_bt_l::after {
    transform: rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.link_bt_l:hover {
    background-color: #fff;
    color: var(--link_color) !important;
	opacity: 1.0 !important;	
}

.link_bt_l:hover::after {
    border-top: 2px solid var(--link_color);
    border-right: 2px solid var(--link_color);	
}

.cont_lead {
	/*font-size: var(--font_l);*/
	/* font-weight: bold; */
}

.foot_link_bt {
    width: 100%;
    max-width: 1040px;
	margin:auto;
    display: flex;
}

.foot_link_bt li {
    width: 50%;
    margin-right: 10px;
    padding: 10px;
    border: 2px solid var(--main_key_color);
    text-align: center;
    font-weight: bold;
	background-color: #fff;
}

.foot_link_bt li a {
    color:var(--main_key_color);
    display: block;
}

.foot_link_bt li br {
	display: none;
}

.sp_only {
	display: none;
}	


/******************* contents  *******************/

#support_head,
#koumuin_head {
	width: 100%;
	padding: 10px 0 15px;
	background-color:var(--main_key_color);
	color: #fff;
	text-align: center;
}

#support_head h1 span {
	font-family: 'Affogato-Bold';
	font-size: 1.8em;
	font-weight: normal;	
}

#support_head h1 {
	font-size:var(--font_m) ;
	font-weight: bold;
	line-height: 1.2;
}

/******* main visual  *******/

#mv {
	background: #fff url(/common_d/connect/support/public/img/hakumon.jpg) no-repeat center center / cover;
	height: 500px;
}

.career_parent {
	width:70%;
	padding:60px;
	margin:auto;
	max-width:1200px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
}

.career_parent div {
	padding:10px;
	text-align: center;	
}

.career_parent div img {
	width:100%;
}
    
.div1 {
    grid-row-start: 1;

}
.div2 {
    grid-row-start: 1;
}
.div3 {
    grid-row-start: 2;	
}
.div4 {
    grid-row-start: 2;
}

/******* /main visual  *******/


h2.komuin_ttl {
	color: var(--main_key_color);
    /*font-family: var(--font-min);*/
    font-weight: bold;
    font-size: 30px;
    text-align: center;
    margin-top: 40px;
	position: relative;
	span{
		font-size: 1.4em;
		background: linear-gradient(transparent 60%, #ffd700 60%);	
		margin-left: 50px;
	}
	img {
		position: absolute;
		top:-10px;
		height: 60px;
	}
}

.program_acco_area {
	/* width:90%;
	max-width:1100px; */
	/*margin:45px auto 0;*/
}


/************ VOICE ************/

.program_tit li {
	/* margin-right:1rem; 
	font-size: var(--font_s); */
	/*line-height: 2.0;*/
}

.voice_ttl {
    color: var(--main_key_color);
    font-weight: bold;
    font-size: var(--font_l);
    text-align: center;
	margin-bottom: 45px;
}

.voice_ttl::before {
    display: block;
    font-weight: 700;
    font-size: 4em;
    line-height: 1.5;
    letter-spacing: .02em;
    content: attr(data-label);
	background-color: var(--sub_key_color);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.career_ttl {
	width:100%;
	display: flex;	
	align-items: center;
	margin-bottom: 1.5em;
	font-size: 1.25em;
}

.career_ttl dt,
.career_ttl dd {
	padding: 4px 0;
	color: #fff;
}


.career_ttl dt {
	background-color: var(--sub_key_color);
	width:100px;
	text-align: center;
	font-weight: normal;	
}

.career_ttl dd {
	width: calc(100% - 100px);
	background-color: var(--main_key_color);
	margin:0;	
	padding-left: 1em;	
}

.voice_cont_wrap_l,
.voice_cont_wrap_r {
	width:100%;
	display: flex;
	justify-content: space-between;
	margin-bottom:60px;
}

.voice_cont_wrap_r {
	flex-direction: row-reverse;
}

.voice_cont_col01 {
	width:65%;
}

.voice_cont_col02 {
	width:33%;
}

.voice_course {
	display: inline;
	color:var(--main_key_color) !important;
	background-color: #fff;
	font-weight:bold;
	padding:3px 20px;
	/* border-radius: 30px; */
	border: var(--main_key_color) solid 1px;
}

.voice_qa dt {
	color: var(--main_key_color);
	font-size: var(--font_l);
	font-weight: bold;
	margin-bottom:0.5em;
}

.voice_qa dt span {
	color:var(--sub_key_color);
}

.voice_qa dt {
	margin-top:30px;
}

.voice_cont_col02 li:first-child img {
	border-radius: 30px 0 30px 0;
	width:100%;
}

.voice_cont_col02 li:nth-child(2) {
	font-size: var(--font_s);
	margin-top:1em;
}

.voice_cont_col02 li:last-child {
	font-weight: bold;
}

.voice_cont_col02 li:last-child span {
	font-size: var(--font_s);
	margin-left:0.5em;
	font-weight: normal;	
}

/************ /VOICE ************/


/************ 公務員の中央 ************/

.koumuin2025_wrap .inner,
.koumuin_head_bottom {
    width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 0;
}

.koumuin_head_bottom {
	margin-top:45px;
}

.jisseki {
	display: flex;
}

p.jisseki_txt {
	white-space : nowrap;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
	border-right: #000 dotted 2px;
	padding: 0 20px;
	span {
		font-size: 48px;
		color: var(--main_key_color);
	}
	span.txts {
		font-size: 12px;
		font-weight: 400;
		color: #000;
	}
}

p.jisseki_txt:first-child {
	border-left: #000 dotted 2px;
}

.jisseki .jisyu {
	display: flex;
	align-items: flex-start;

	img {
		width: 250px;
		height: auto;
		border-radius: 10px;
	}	
}

p.jisyu_txt {
	font-size: 14px;
	margin: 0 20px;
	line-height: 1.4;
		span {
			font-weight: 600;
			font-size: 48px;
			color: var(--main_key_color);
		}
		.fs20 {
			font-size: 20px;
			color: #000;
		}
}

h3.target_fac {
	margin-top: 20px;
	font-size: 2em;
	color: var(--main_key_color);
	font-weight: 500;
	span {
		color: #fff;
		padding: 0 10px 5px;
	}
	.bg_bun {
		background-color: var(--let);
	}
	.bg_ri {
		background-color:#07a363;
	}
}


.koumuin_lead {
	/*font-family: var(--font-min);*/
	color:#000;
	font-size: 20px;
	margin: 45px auto 0;
	width: 90%;
	max-width: 1200px;
}

.mezasou_area {
	width: 100%;
}

.mezasou_area {
	margin-top: 15px;
	padding-top: 30px;
	border-top: 2px dotted #000;
    
}

.mezasou_area ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.mezasou_area li:first-child {
	width:63%;
}

.mezasou_area li:last-child {
	width:33% ;
}

.mezasou_area li:last-child img {
	width: 100%;
	border-radius: 30px;
}

.mezasou_area .pickup {
	display: inline-block;
	font-weight: 600;
	color: #fff;
	background-color:var(--main_key_color);
	padding: 05px 20px 5px;
	margin-bottom: 10px;
	border-radius: 20px;
}


.step01,
.step02,
.step03,
.step04 {
	width:100%;
	margin:auto;
}

.step01,
.step02,
.step03 {
	margin-bottom: 60px;
}

.step_tit {
  font-weight: bold;
  padding: 8px 16px;
  color: #fff;
  font-size: var(--font_ll);
  font-weight: bold;
  background-color: var(--let);
  -webkit-clip-path: polygon(0% 0%, 99% 0%, 100% 50%, 99% 100%, 0% 100%);
  clip-path: polygon(0% 0%, 99% 0%, 100% 50%, 99% 100%, 0% 100%);
  margin-bottom: 30px;
}

.step_txt {
	color: var(--main_key_color);
    font-weight: bold;
    font-size: 1.3em;
	margin-bottom: 10px;
}


.table_area {
	width: 90%;
	margin: 0 auto 60px;
}

.table_wrap {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.table_col01,
.table_col02 {
	width: 48%;
}

/** table **/

.koumuin_tbl caption {
	font-weight: bold;
	text-align: left;
	font-size: var(--font_m);
	color: var(--main_key_color);
	margin-bottom:0.5em;
}

.koumuin_tbl caption span {
	font-size: var(--font_ss);
	margin-left: 0.5em;
	font-weight: normal;
}

.koumuin_tbl thead {
	background-color: var(--main_key_color);
	color: #fff;
}


.tbl_bg {
	background-color:#F1F9F9;	
} 

.tbl_item {
	text-align: left;
	background-color:#F1F9F9;	
}

.koumuin_tbl{
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: var(--font_s);
	width: 100%;
}

.koumuin_tbl td {
	border-bottom: 1px solid #666;
	border-collapse: collapse;
	text-align: center;
}

.koumuin_tbl th {
	border-bottom: 1px solid #666;
	border-collapse: collapse;
	font-weight: normal;
}

.koumuin_tbl td, th {
	padding: 8px;
	/* width: 30px;
	height: 25px; */
}
.koumuin_tbl th {
	/* background: #F1F9F9; */
}

.tbl_note {
	font-size: var(--font_ss);
}


/** /table **/


.seminar_flow_wrap {
	margin: 50px 0 45px;
}

.seminar_col_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.seminar_col01 {
	width:70%;
}

.seminar_col02 {
	width:30%;
	margin-left: 20px;
}

.seminar_col02 li {
	margin-bottom: 1em;
}

.seminar_col02 li:last-child {
	margin-bottom: 0;
}

.seminar_col02 li img {
	width: 100%;
	/* border-radius: 30px; */
}

.seminar_w_wrap {
	border-top: #000 2px dotted;
	padding-top: 20px;
	margin-top: 20px;
}

.seminar_col01 dl,
.seminar_w_wrap dl {
	width:100%;
	margin:0 0 1.5em 0;
	padding: 0;
}

.seminar_col01 dt,
.seminar_w_wrap dt {
    position: relative;
    display: block;
    padding: 0.2em 0 0.2em 1.2em;
	color: var(--main_color);
	font-weight: bold;
	font-size: var(--font_l);
}

.seminar_col01 dt::before,
.seminar_w_wrap dt::before {
    position: absolute;
    top: 0.6em;
    left: 0;
    display: block;
    width: 0.8em;
    height: 0.8em;
    border-radius: 50%;
    background: var(--main_key_color);
    content: "";
}

.seminar_col01 dd,
.seminar_w_wrap dd {
	margin:0;
	padding: 0;
}

ul.seminar_flexbox {
	display: flex;
	justify-content: space-between;
}

ul.seminar_flexbox li {
	width: 100%;
	white-space: nowrap;
	border-left: #000 dotted 2px;
	text-align: center;
	font-weight: 600;
	padding: 0 10px;
	line-height: 1.4;
	span {
		font-size: 3.0em;		
		color:  var(--main_key_color);
	}
}
ul.seminar_flexbox li:last-child {
	border-right: #000 dotted 2px;
}


.ri_cont_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	margin-bottom: 60px;
}

.ri_cont01 {
	width: 40%;
}

.ri_cont02 {
	width: 60%;
	padding-left: 30px;
}

.ri_cont01 dt {
    color: var(--main_key_color);
    font-weight: bold;
    font-size: 1.3em;
	margin-bottom:10px;
}

.ri_cont01 dd {
	margin-bottom: 20px;
}

.ri_cont01 dd.ri_wariai {	
    text-align: center; 
	margin: 0 auto;
}

.ri_cont01 dd.ri_wariai p {
	display: inline-block;
	padding: 0 20px;
	text-align: center;
	font-weight: 600;  
    line-height: 1.4;
    border-left: #000 dotted 2px;
	border-right: #000 dotted 2px;
	span {
        font-size: 3.0em;
        color: var(--main_key_color);
    }
}

.ri_cont02 img {
	width: 100%;
}

/************ /公務員の中央 ************/



/********** フロー　**********/


.seminar_flow {
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*flex-wrap: wrap;*/
  justify-content: center;
  gap: 60px;
  color: var(--main_key_color);
}

.seminar_flow > li {
  list-style-type: none;
  width: 20%;
  display: flex;
}

.seminar_flow > li dl {
  padding: 20px;
  margin: 0;
  border: 3px solid var(--main_key_color);
  position: relative;
  background-color: #fff;
  line-height: 1.8;
}

.seminar_flow > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid var(--main_key_color);
  border-right: 4px solid var(--main_key_color);
  position: absolute;
  top: calc(50% - 14px);
  left: -45px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.seminar_flow > li dl dt {
  font-size: var(--font_l);
  font-weight: bold;
  color: var(--main_key_color);
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
  margin-bottom: 10px;
  text-align: center;
}

.seminar_flow > li dl dd {
  margin-left: 0;
  font-size: var(--font_s);
}

@media(max-width: 767px){
  .seminar_flow {
    gap: 20px;
  }
  .seminar_flow > li {
    max-width: unset;
    display: block;
  }
  .seminar_flow > li:not(:first-child) dl::before {
    display: none;
  }
}

/********** /フロー　**********/



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
tab ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/

@media (min-width: 768px) and (max-width: 1023px) {

#mv {
	height: 400px;
}

.career_parent {
    width: 90%;
}

.koumuin_lead {
	font-size: 1.0em;
}

.koumuin_head_bottom {
    margin-top: 30px;
}

.jisseki {
	flex-wrap: wrap;
	justify-content: center;
}


p.jisseki_txt {
	margin-bottom: 20px;
}

.table_area  {
	width: 95%;
}

h3.target_fac {
	position: relative;
    padding-left: 190px;
	font-size: 1.6em;
	line-height: 1.4;
	span {
		position: absolute;
        left: 0px;
	}
}

.seminar_flow > li dl {
	padding: 10px;
}

.ri_cont01 {
    width: 50%;
}

.ri_cont02 {
    width: 50%;
    padding-left: 20px;
}


/* tab end */
}


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
mobile ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/

@media (max-width: 767px) {

#mv {
	height: 100%;
}

.sp_only {
	display: inline-block;
}	

.foot_link_bt {
    display: block;
}

.foot_link_bt li {
    width: 100%;
    margin: 0 auto 1rem;
    border: 2px solid var(--main_key_color);
}

.foot_link_bt li br {
	display: block;
}

.foot_link_bt li:last-child {
    margin-bottom: 0;	
}

/***** キャリアサポート *****/

.career_parent {
    width: 80%;
    padding: 10px 8px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	gap: 0;
}

.div1 {
    grid-row-start: 1;

}
.div2 {
    grid-row-start: 2;
}
.div3 {
    grid-row-start: 3;	
}
.div4 {
    grid-row-start: 4;
}

.career_parent div {
    padding: 2px;
    text-align: center;
}

.jisseki {
	flex-direction: column;
}

p.jisseki_txt {
	border-right: none;
    border-bottom: #000 dotted 2px;
    padding: 10px;
}

p.jisseki_txt:first-child {
    border-left: none;
    border-top: #000 dotted 2px;
}

.jisseki .jisyu {
	flex-direction: column;
	padding-top: 20px 20px 0;
}

p.jisyu_txt {
	margin: 10px auto;
}

p.jisyu_txt span {
	vertical-align: middle;
}

.jisseki .jisyu img {
	width: 90%;
	margin: 0 auto;
}

h3.target_fac {
	margin-top: 10px;
    font-size: 1.8em;
    line-height: 1.4;
	span {
		padding: 5px 10px 5px;
        display: inline-block;
        margin-bottom: 5px;
	}
}

.voice_area {
    margin-top: 45px;
}



/***** 公務員 *****/

.koumuin_lead {
	font-size: var(--font_m);
	margin: 30px auto 0;
}

.koumuin_head_bottom {
    margin-top: 30px;
}


.table_wrap {
    display: block;
}

.table_col01, 
.table_col02 {
    width: 100%;
}

.table_col02 {
	margin-top: 30px;
}


.mezasou_area ul, .koumin_col_area ul {
    width: 100%;
    display: block;
}

.mezasou_area li:first-child {
    width: 100%;
}

.link_bt_l {
    margin: 30px auto;
	width: 90%;
}

.mezasou_area li:last-child {
    width: 90%;
	margin: 0 auto;
}

.koumin_col_area li:first-child {
    width: 100%;
	text-align: center;
}


.table_area {
	width: 100%;
	margin: 0 auto 45px;
}

.koumuin_tbl {
    border-spacing: 0;
    font-size: 12px;
    width: 100%;
}

.step01, .step02, .step03 {
    width: 100%;
    margin: 0 auto 45px;
}

.step04 {
    width: 100%;
    margin: 0 auto;
}

.step_tit {
    font-size: var(--font_l);
    -webkit-clip-path: polygon(0% 0%, 99% 0%, 100% 50%, 99% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 96% 0%, 100% 50%, 96% 100%, 0% 100%);
    margin-bottom: 1.5em;
}

.seminar_col_wrap {
    width: 100%;
    display: block;
}

.seminar_col01 {
    width: 100%;
}

.step_txt {
	line-height: 1.6;
}

.seminar_col01 dl {
    margin: 0 0 0.5em 0;
}

.seminar_col01 dt {
    font-size: var(--font_m);
}

.seminar_col01 dd, .seminar_w_wrap dd {
    line-height: 1.6;
}

ul.seminar_flexbox {
	flex-direction: column;
	align-items: center;
}

ul.seminar_flexbox li {
	width: 80%;
	padding:10px;
    line-height: 1.2;
	border-left: none;
	border-top: #000 dotted 2px;
}
ul.seminar_flexbox li:last-child {
    border-right: none;
	border-bottom: #000 dotted 2px;
}

.seminar_col02 {
    width: 90%;
    margin:1em auto 0;
}

.ri_cont_wrap {
    width: 100%;
    display: block;
    margin-top: 45px;
    margin-bottom: 45px;
}

.ri_cont01 {
    width: 100%;
}


.ri_cont02 {
	width: 100%;
	padding-left: 0;
}

.ri_cont02 img {
    width: 100%;
    display: block;
    margin: auto;
	padding-top: 20px;
}

.voice_cont_wrap_l, .voice_cont_wrap_r {
    width: 100%;
    display: block;
    margin-bottom: 45px;
}

.career_ttl {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 1.5em;
    font-size: 14px;
}

.career_ttl dt {
    width: 70px;
}

.career_ttl dd {
    width: 100%;
}

.voice_qa dt {
    font-size: var(--font_m);
}

.voice_qa dt {
    margin-top: 15px;
}

.voice_cont_col01 {
    width: 100%;
}

.voice_cont_col02 {
    width: 100%;
}

.voice_cont_col02 li:first-child img {
	display: block;
    width: 90%;
	margin:1em auto 0;
}

.seminar_flow {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.seminar_flow {
  padding-left: 0;
}

.seminar_flow > li {
  list-style-type: none;
  padding: 10px;
  width:100%;
}


.seminar_flow > li:not(:last-child) {
  margin-bottom: 30px;
  position: relative;
}

.seminar_flow > li:not(:last-child)::after {
  content: '';
  position: absolute;
  border: 10px solid transparent;
  width: 0;
  height: 0;
  bottom: -38px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-top-color: var(--main_key_color);
}

.seminar_flow > li dl dt {
  border-bottom: 1pt dashed var(--main_key_color);
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}

.seminar_flow > li dl dd {
    font-size: var(--font_m);
}

.seminar_col01 dt::before {
    top: 0.8em;
}


.seminar_flow > li dl dd {
  margin: 0;
}

.seminar_flow_wrap {
    margin: 20px 0 40px;
}

.voice_ttl {
    font-size: var(--font_m);
    margin-bottom: 30px;
}

.voice_ttl::before {
    font-size: 3em;
    line-height: 1.2;
}

/* mobile end */
}


