@charset "utf-8";
/* CSS Document */

body{
	background-color: #B7F1FF;
}

main article{
	position: relative;
}
main article::before{
	content: '';
	background: url("../images/employee/parts01.png") left top / contain no-repeat;
	width: 41.67vw;/*600*/
	height: auto;
	aspect-ratio: 600 / 606;
	position: absolute;
	top: -129px;
	left: 0;
}

main article section {
	position: relative;
}
main article section::before{
	content: '';
	background: url("../images/employee/parts02.png") left top / contain no-repeat;
	width: 41.67vw;/*600*/
	height: auto;
	aspect-ratio: 600 / 843;
	position: absolute;
	top: 450px;
	right: 0;
	z-index: -1;
}

main article section{
	margin-top: 0;
}

footer#footer_wrap{
	position: relative;
}
footer#footer_wrap::before{
	content: '';
	background: url("../images/employee/parts03.png") left top / contain no-repeat;
	width: 52.08vw;/*750*/
	height: auto;
	aspect-ratio: 750 / 895;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

/*---------------------------------------------*/
/*（archive）employee*/

section#archive_employee .archives{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px 20px;
}
section#archive_employee .archives > a{
	display: flex;
	width: calc( 33.3% - 33px );
	padding: 10px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	background-color: rgba(255,255,255,0.00);
	overflow: hidden;
}
section#archive_employee .archives > a dl{
	display: flex;
	flex-direction: column;	
	height: 100%;
}
section#archive_employee .archives > a dl dt img{
	width: 100%;
	height: auto;
	aspect-ratio: 320 / 320;
	object-fit: cover;
	-webkit-border-top-left-radius: 30px;
	-webkit-border-top-right-radius: 30px;
	-moz-border-radius-topleft: 30px;
	-moz-border-radius-topright: 30px;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;	
}
section#archive_employee .archives > a dl dd{
	padding: 20px 15px;
	background-color: #fff;
	-webkit-border-bottom-right-radius: 30px;
	-webkit-border-bottom-left-radius: 30px;
	-moz-border-radius-bottomright: 30px;
	-moz-border-radius-bottomleft: 30px;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	position: relative;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
section#archive_employee .archives > a:hover{
	background-color: #fff;
	opacity: 1.0;
}
section#archive_employee .archives > a dl dd > .title {
	font-size: 2.0rem;
	color: #505050;
	line-height: 30px;
	text-align: justify;
	flex-grow: 1;
}

section#archive_employee .archives > a dl dd > .type {
	margin-top: 15px;
	margin-bottom: 25px;
}

section#archive_employee .archives > a dl dd > .label {
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	font-size: 2.0rem;
	color: #fff;
	position: absolute;
	bottom: 10px;
	right: 10px;
}
section#archive_employee .archives > a dl dd > .label.career{
	background-color: #89D99F;
	letter-spacing: -0.1em;
}
section#archive_employee .archives > a dl dd > .label.new{
	background-color: #FF9800;
	letter-spacing: 0.03em;
}

section#archive_employee .tolink{
	width: 340px;
	height: 80px;
	margin: 50px auto 0;
	display: flex;
	justify-content: center;	
}
section#archive_employee .tolink a {
    width: 100%;
}

/*---------------------------------------------*/
/*（single）employee*/

section#signle_employee .post_inn{
	overflow: hidden;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;	
}
section#signle_employee .post_inn .infomation{
	background-color: rgba(255,255,255,0.50);
	display: flex;
}
section#signle_employee .post_inn .infomation > .txts{
	width: calc( 59.7% - 190px );
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 60px 95px;
	position: relative;
}
section#signle_employee .post_inn .infomation > .txts h3.hd{
	font-size: 4.0rem;
	color: #505050;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 60px;
}
section#signle_employee .post_inn .infomation > .txts .types{
}
section#signle_employee .post_inn .infomation > .txts .types .type a{
	display: flex;
	align-items: center;
	font-size: 1.8rem;
}
section#signle_employee .post_inn .infomation > .txts .types .type a::after{
	font-family: 'Material Icons';
	content: '\e89e';
	font-size: 2.3rem;
	padding-left: 8px;
}
section#signle_employee .post_inn .infomation > .txts .types .unit a{
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	font-weight: 400;
	color: #505050;
}
section#signle_employee .post_inn .infomation > .txts .types .unit a::after{
	font-family: 'Material Icons';
	content: '\e89e';
	font-size: 2.0rem;
	padding-left: 8px;
}

section#signle_employee .post_inn .infomation > .images{
	width: calc( 100% - 59.7% );
	  aspect-ratio: 498 / 355;
	  overflow: hidden;	
}
section#signle_employee .post_inn .infomation > .images > img{
 width: 100%;
  height: 100%;
  object-fit: cover;
}

section#signle_employee .post_inn .infomation > .txts .label{
	position: absolute;
	bottom: 20px;
	right: 30px;
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	font-size: 2.0rem;
	color: #fff;
}
section#signle_employee .post_inn .infomation > .txts .label.career{
	background-color: #89D99F;
	letter-spacing: -0.1em;
}
section#signle_employee .post_inn .infomation > .txts .label.new{
	background-color: #FF9800;
	letter-spacing: 0.03em;
}

/**/

section#signle_employee .post_inn .qanda{
	width: calc( 100% - 190px );
	margin: 0 auto;
	padding: 50px 95px;
	background-color: #fff;
}

section#signle_employee .post_inn .qanda > ol{
	display: flex;
	flex-direction: column;
	gap: 50px 0;
	counter-reset: listnum;
	list-style-type: none;
}
section#signle_employee .post_inn .qanda > ol li dl dt{
	color: #4976C6;
}
section#signle_employee .post_inn .qanda > ol li dl dt p{
	font-size: 2.0rem;
	letter-spacing: 0.03em;
	line-height: 40px;
	position: relative;
}
section#signle_employee .post_inn .qanda > ol li dl dt p::before{
	counter-increment: listnum;
	content: "Q" counter(listnum); /* 半角スペースを入れて""の中にピリオドを追加 */
	padding-right: 15px;
	font-family: "Barlow", sans-serif;
	font-size: 6.0rem;
	font-weight: 300;
	font-style: italic;
	letter-spacing: 0.03em;
	line-height: 40px;
}
section#signle_employee .post_inn .qanda > ol li dl dd{
	margin-top: 25px;
	font-weight: 400;
	color: #505050;
	line-height: 30px;
}

section#signle_employee .tolink{
	max-width: 340px;
	margin: 50px auto 0;
	display: flex;
	flex-direction: column;
	gap: 50px 0;
}
section#signle_employee .tolink a {
    width: 100%;
	height: 80px;
}
section#signle_employee .tolink a.toarchive {
    font-size: 2.8rem;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
	font-style: normal;
}

/*---------------------------------------------*/
/*archive_event*/

section#archive_event .anchor_menu{
	background-color: #fff;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	padding: 30px 50px;
	margin-bottom: 50px;
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
section#archive_event .anchor_menu > dl{
	display: flex;
	align-items: center;
}
section#archive_event .anchor_menu > dl dt{
	width: 15%;
    font-size: 2rem;
    font-weight: 500;
    color: #4976C6;
    line-height: 1.35;
    letter-spacing: 0.6px;
}
section#archive_event .anchor_menu > dl dd{
	width: 85%;
}
section#archive_event .anchor_menu > dl.dt_long dt{
	width: 25%;
}
section#archive_event .anchor_menu > dl.dt_long dd{
	width: 75%;
}

section#archive_event .anchor_menu > dl dd ul{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
section#archive_event .anchor_menu > dl dd ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	/**/
	width: calc(100% - 20px);
    min-width: 235px;
	height: 40px;
    padding: 0 10px;
    align-items: center;
    border: 1px solid #4976C6;
    box-sizing: border-box;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    color: #4976C6;
    background: rgba(255, 152, 0, 0.00);	
}
section#archive_event .anchor_menu > dl:first-of-type dd ul li a::after{
  font-family: "Material Symbols Outlined"; 
  content: "arrow_cool_down";
  font-variation-settings:
    'FILL' 0,
    'wght' 400,
    'GRAD' 0,
    'opsz' 24;/* 可変軸も設定可能 */
  font-size: 24px;/* アイコンサイズ */
  display: inline-block;
  line-height: 1;
}

/**/

section#archive_event .posts{
	display: flex;
	flex-direction: column;
	gap: 50px 0;
}
section#archive_event .post_inn{
	background-color: #fff;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	padding: 60px 155px;
}
section#archive_event .post_inn > .labels{
	display: flex;
	gap: 0 15px;
}
section#archive_event .post_inn > .labels > div{
	min-width: 110px;
	height: 30px;
	padding: 0 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	background-color: gray;
	font-family: "M PLUS 2", sans-serif;
	font-size: 1.5rem;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
section#archive_event .post_inn > .labels > div.event{
	background-color: #B7F1FF;
	color: #0099FF;
}
section#archive_event .post_inn > .dates{
	margin-top: 18px;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	color: #4976C6;
}
section#archive_event .post_inn > h3.hd{
	margin-top: 47px;
	font-size: 4.0rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 60px;
	color: #505050;
}
section#archive_event .post_inn > .catch{
	margin-top: 48px;
	font-size: 2.5rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	color: #009FE8;
}
section#archive_event .post_inn .contentstxt{
	margin-top: 48px;
}
section#archive_event .post_inn .contentstxt ul{
	font-weight: 400;
	color: #505050;
	letter-spacing: 0.03em;
	line-height: 30px;
	text-align: justify;
	display: flex;
	flex-direction: column;
	gap: 15px 0;
}
section#archive_event .post_inn .contentstxt ul li{
	font-weight: 400;
	color: #505050;
	letter-spacing: 0.03em;
	line-height: 30px;
	text-align: justify;
	position: relative;
	padding-left: 20px;
}
section#archive_event .post_inn .contentstxt ul li::before {
    content: '●';
    color: #009FE8;
	position: absolute;
	top: 0;
	left: 0;
}

section#archive_event .post_inn .img_block{
	margin-top: 48px;
}

section#archive_event .tolink{
	max-width: 340px;
	margin: 50px auto 0;
	display: flex;
	flex-direction: column;
	gap: 50px 0;
}
section#archive_event .tolink a {
    width: 100%;
	height: 80px;
}

/**/

section#archive_event .his_table {
  width: 100%;
  margin: 50px auto 0;
}
section#archive_event .his_table table {
  width: 100%;
  border-top: 1px solid rgba(41, 166, 221, 0.5);
  border-left: 1px solid rgba(41, 166, 221, 0.5);
  box-sizing: border-box;
}
section#archive_event .his_table table tr td {
  border-bottom: 1px solid rgba(41, 166, 221, 0.5);
  border-right: 1px solid rgba(41, 166, 221, 0.5);
  box-sizing: border-box;
}
section#archive_event .his_table table tr td:first-child {
  width: 170px;
  background: #f0fcff;
  vertical-align: top;
}
section#archive_event .his_table table tr td:last-child {
  width: calc( 100% - 170px );
}
section#archive_event .his_table table tr td div {
  padding: 25px 15px;
  letter-spacing: 0.1em;
  color: #4d4d4d;
}
section#archive_event .his_table table tr td:first-child div {
  color: #0071b7;
}
section#archive_event .link_tit {
  margin: 50px auto 0;
  text-align: center;
  line-height: 26px;
  letter-spacing: 2px;
  color: #009FE8;
  color: rgb(0, 159, 232);
}
section#archive_event .link_tit img {
  width: 35px;
  margin: 10px;
}

section#archive_event .link_btn {
  min-width: 340px;
  margin: 20px auto 0;
}
section#archive_event .link_btn a {
	display: flex;
	align-items: center;
	width: fit-content;
	height: 80px;
	margin-left: auto;
	margin-right: auto;
	background: #fff;
	box-shadow: 0px 0px 13px 4px rgba(42, 66, 81, 0.17);
	box-sizing: border-box;
	padding: 15px 30px;
	position: relative;
}
section#archive_event .link_btn a p {
  letter-spacing: 0.1em;
  padding-bottom: 10px;
  border-bottom: 1px solid #aeaeae;
  position: relative;
  transition: all 0.3s ease-in-out;
}
section#archive_event .link_btn a p::before {
  content: '';
  display: inline-block;
  background: #29a6dd;
  width: 100px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
section#archive_event .link_btn a p::after {
  content: '';
  display: inline-block;
  background: url(../images/employee/link_ico01.png)no-repeat;
  background-size: contain;
	        background-position: center;
  width: 41px;
  height: 10px;
	padding-left: 20px;
  /*
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
  */
}

/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
/*---------------------------------------------*/
