@charset "utf-8";


/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	For SmartPhone
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* ///////////////////////////////////////////////////// */
/* ============================================ */
/* ------------------------------------ */

@media screen and (max-width:767px){
	/* ============================================ */
	/* ============================================ */
	.block > .inner .jobdescBox{
		margin-top:4%;
	}
	.block > .inner .jobdescBox li{
		padding:1em 0.5em;
		color:#333;
		border-top:0.5px solid #333;
		position:relative;
	}
	.block > .inner .jobdescBox li:last-child{
		border-bottom:0.5px solid #333;
	}
	.block > .inner .jobdescBox li.new::before{
		content:"⚫︎New";
		display:flex;
		padding:0 0.2em 0.2em;
		font-size:3.2vw;
		color:#f00;
		position:absolute;
		top:0.15em;
		left:-0.3em;
	}
	/* ------------------------------------ */
	.block > .inner .jobdescBox li .txtBox{
		width:100%;
	}
	.block > .inner .jobdescBox li .txtBox h4{
		font-size:4.2vw;
		font-weight:500;
		line-height:1.4;
	}
	.block > .inner .jobdescBox li .txtBox h4 span{
		display:inline-block;
		padding-left:0.35em;
		font-size:3.9vw;
		font-weight:400;
	}
	.block > .inner .jobdescBox li .txtBox p{
		margin-top:1%;
		font-size:3.5vw;
		line-height:1.3;
	}
	/* ------------------------------------ */
	.block > .inner .jobdescBox li .btnBox{
		margin-top:3%;
		display:flex;
		justify-content:end;
	}
	.block > .inner .jobdescBox li .btnBox a{
		display:flex;
		justify-content:center;
		align-items:center;
		width:max-content;
		padding:4% 5%;
		margin-left:3%;
		font-size:3.3vw;
		color:#333;
		border:1px solid #333;
	}
	.block > .inner .jobdescBox li .btnBox a:first-child{
		margin-left:0;
	}
	.block > .inner .jobdescBox li .btnBox a span{
		display:inline-block;
		padding-left:0.25em;
	}

	/* ------------------------------------ */
	/* ------------------------------------ */
	.block.second > .inner .tabContBox{
		margin-top:4%;
	}
	.block.second > .inner .tabContBox ul.tabMenu{
		display:flex;
		padding:0 0.7em;
		border-bottom:1px solid #333;
	}
	/* ------------------------------------ */
	.block.second > .inner .tabContBox ul.tabMenu li{
		display:flex;
		justify-content:center;
		align-items:center;
		color:#333;
		border-top:1px solid #333;
		border-right:1px solid #333;
		border-left:1px solid #333;
		position:relative;
		cursor:pointer;
	}
	.block.second > .inner .tabContBox ul.tabMenu li:first-child{
		width:57%;
		margin-left:0;
	}
	.block.second > .inner .tabContBox ul.tabMenu li:last-child{
		width:40%;
		margin-left:3%;
	}
	.block.second > .inner .tabContBox ul.tabMenu li::before{
		content:"";
		display:block;
		width:calc(100% + 4px);
		height:10px;
		background-color:#fff;
		position:absolute;
		left:50%;
		transform: translateX(-50%);
		bottom:0px;

		transition:all 0.2s ease-in-out;
	}
	.block.second > .inner .tabContBox ul.tabMenu li.act::before{
		content:"";
		display:block;
		width:100%;
		height:4px;
		background-color:#fff;
		position:absolute;
		left:50%;
		transform: translateX(-50%);
		bottom:-2px;
	}
	.block.second > .inner .tabContBox ul.tabMenu li p{
		font-size:4.2vw;
		padding:4% 0;
		font-weight:400;
		text-align:center;
		line-height:1.1;
		transition:all 0.2s ease-in-out;
		transform:scale(1);
	}

	.block.second > .inner .tabContBox ul.tabMenu li.act p{
		transform:scale(1.05);
		font-weight:500;
	}
	/* ------------------------------------ */
	.block.second > .inner .tabContBox .tabCont{
		width:97%;
		margin:8% auto 0;
	}
	.block.second > .inner .tabContBox .tabCont{
		display:none;
	}
	.block.second > .inner .tabContBox .tabCont.show{
		display:block;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl{
		text-align:center;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl.second{
		margin-top:10%;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl p{
		font-size:4.2vw;
	}

}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	For Desktop & Tablet
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* ///////////////////////////////////////////////////// */
/* ============================================ */
/* ------------------------------------ */

@media screen and (min-width:768px){
	/* ============================================ */
	.block > .inner .jobdescBox{
		margin-top:35px;
	}
	.block > .inner .jobdescBox li{
		display:flex;
		justify-content:space-between;
		align-items:center;
		padding:1.2em 0.5em;
		color:#333;
		border-top:0.5px solid #333;
		position:relative;
	}
	.block > .inner .jobdescBox li:last-child{
		border-bottom:0.5px solid #333;
	}
	.block > .inner .jobdescBox li.new::before{
		/*font-family: "Material Symbols Outlined";
		content:"\e05e";*/
		content:"⚫︎New";
		display:flex;
		padding:0 0.2em;
		font-size:clamp(0.9rem, 1.2vw, 1.1rem);
		color:#f00;
		letter-spacing:0.05em;
		/*background-color:#fff;*/
		position:absolute;
		top:0.1em;
		left:-0.2em;
	}
	/* ------------------------------------ */
	.block > .inner .jobdescBox li .txtBox{
		width:100%;
		padding-right:2em;
	}
	.block > .inner .jobdescBox.newgraduates li .txtBox{
		width:calc(100% - 90px);
		padding-right:2em;
	}
	.block > .inner .jobdescBox.newgraduates li .btnBox{
		width:90px;
	}
	.block > .inner .jobdescBox.carrer li .txtBox{
		padding-right:2em;
	}
	.block > .inner .jobdescBox.carrer li .btnBox{
		display:flex;
		justify-content:end;
		width:max-content;
	}
	/* ------------------------------------ */
	.block > .inner .jobdescBox li .txtBox h4{
		font-size:clamp(1.2rem, 1.6vw, 1.6rem);
		font-weight:500;
		line-height:1.4;
	}
	.block > .inner .jobdescBox li .txtBox h4 span{
		display:inline-block;
		padding-left:0.2em;
		font-size:clamp(1.1rem, 1.4vw, 1.4rem);
		font-weight:400;
	}
	.block > .inner .jobdescBox li .txtBox p{
		margin-top:2px;
		font-size:clamp(0.9rem, 1.2vw, 1.2rem);
		line-height:1.4;
	}
	/* ------------------------------------ */
	.block > .inner .jobdescBox li .btnBox a{
		display:flex;
		justify-content:center;
		align-items:center;
		width:90px;
		padding:10px 0;
		font-size:clamp(1.1rem, 1.4vw, 1.4rem);
		color:#333;
		border:1px solid #333;

		transition:all 0.2s ease-in-out;
		transform:scale(1);
	}
	.block > .inner .jobdescBox li .btnBox a span{
		display:inline-block;
		padding-left:0.1em;
	}
	.block > .inner .jobdescBox li .btnBox a:hover{
		transform:scale(1.13);
		color:var(--clr-blue);
		border:1px solid var(--clr-blue);
	}
	.block > .inner .jobdescBox.carrer li .btnBox a{
		margin-left:15px;
	}
	.block > .inner .jobdescBox.carrer li .btnBox a:first-child{
		margin-left:0;
	}

	/* ------------------------------------ */
	/* ------------------------------------ */
	.block.second > .inner .tabContBox{
		margin-top:35px;
	}
	.block.second > .inner .tabContBox ul.tabMenu{
		display:flex;
		padding:0 40px;
		border-bottom:1px solid #333;
	}
	/* ------------------------------------ */
	.block.second > .inner .tabContBox ul.tabMenu li{
		display:flex;
		justify-content:center;
		align-items:center;
		width:48.5%;
		margin-left:3%;
		color:#333;
		border-top:1px solid #333;
		border-right:1px solid #333;
		border-left:1px solid #333;
		position:relative;
		cursor:pointer;
	}
	.block.second > .inner .tabContBox ul.tabMenu li:first-child{
		margin-left:0%;
	}
	.block.second > .inner .tabContBox ul.tabMenu li::before{
		content:"";
		display:block;
		width:calc(100% + 4px);
		height:10px;
		background-color:#fff;
		position:absolute;
		left:50%;
		transform: translateX(-50%);
		bottom:0px;

		transition:all 0.2s ease-in-out;
	}
	.block.second > .inner .tabContBox ul.tabMenu li.act::before{
		content:"";
		display:block;
		width:100%;
		height:4px;
		background-color:#fff;
		position:absolute;
		left:50%;
		transform: translateX(-50%);
		bottom:-2px;
	}
	.block.second > .inner .tabContBox ul.tabMenu li p{
		font-size:clamp(1.1rem, 1.8vw, 1.6rem);
		padding:4% 0;
		font-weight:300;
		transition:all 0.2s ease-in-out;
		transform:scale(1);
	}
	.block.second > .inner .tabContBox ul.tabMenu li:hover p{
		transform:scale(1.1);
		font-weight:400;
		color:var(--clr-blue);
	}
	.block.second > .inner .tabContBox ul.tabMenu li.act p{
		transform:scale(1.05);
		font-weight:500;
	}
	.block.second > .inner .tabContBox ul.tabMenu li.act:hover p{
		transform:scale(1.05);
		color:#333;
	}
	/* ------------------------------------ */
	.block.second > .inner .tabContBox .tabCont{
		width:97%;
		margin:50px auto 0;
	}
	.block.second > .inner .tabContBox .tabCont{
		display:none;
	}
	.block.second > .inner .tabContBox .tabCont.show{
		display:block;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl{
		text-align:center;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl.second{
		margin-top:80px;
	}
	.block.second > .inner .tabContBox .tabCont .typeTtl p{
		font-size:clamp(1.1rem, 2vw, 1.9rem);
	}

}