@charset "utf-8";
/* CSS Document */
/*＝＝新卒採用＝＝*/

img{width: 100%;}
#news,#profile,#recruitmentguidelines,#internship,#exchange{
	padding-top: 100px;
	margin-top: -100px;
}
#careerpath{
	padding-top: 100px;
	margin: -100px auto -131px;;
}
@media screen and (max-width: 750px) {#careerpath{margin: -100px auto -80px;}}
/*====================================

recruitmentguidelines

===================================*/
#recruitmentguidelines p{text-align: center;margin-bottom: 40px;}

.toggle {display: none;}
.Label {
	padding: 20px 30px;
	display: block;
	color: #01a0ca;
	background:#fff;
	border: solid #01a0ca 2px;
	margin: 0 auto 20px;
	font-size: 24px;
	font-weight: 600;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	position: absolute;
	top:calc( 50% - 3px );
	right: 50px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
	border-top: 8px solid #01a0ca;
	border-bottom: 0;
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {
	height: 0;
	overflow: hidden;
}
/*開閉時*/
.toggle:checked + .Label + .content {	
	height: auto;
	transition: all .3s;
}
.toggle:checked + .Label {
	display: block;
	color: #fff;
	background:#01a0ca;
	margin: 0 auto;
}
.toggle:checked + .Label::before {
	transform: rotate(-180deg) !important;
	border-top: 8px solid #fff;
}
/***table***/
table{
  width: 100%;margin: 0 auto 15px;
}
th,
td {
  padding: 30px 4%;
}
th {
  color: #01a0ca;
  font-size: 16px;
  font-weight: bold;
  width: 25%;
  text-align: center;
}
table tr {background: #f3f3f3;}
table tr:nth-child(even) {background: #fff;}
table th em {
  font-size: 14px;
  font-weight: bold;
}
table em{
  font-weight: 600;
}
table span{
	font-size: 8px;
	color: #01a0ca;
	vertical-align: middle;
    margin: 0 8px 0 0;
}
table a{
  color: #000000;
  text-decoration: underline;
  text-decoration-color: #a3a3a3;
  display: inline-block;
  margin-bottom: 10px;
}
table p{margin: 10px auto;}
td .m_40{margin-bottom: 40px;}
table .inner p {margin: 0 auto;}
table .inner p::before {
  content: "■";
  font-size: 8px;
  margin-right: 10px;
  vertical-align: 2px;
}
table .inner a {margin-bottom: 0;}
.flow div{
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 6px solid #01a0ca;
	border-right: 0;
	display: inline-block;
	margin: 0 16px;
}
@media screen and (max-width: 900px) {
	.Label {
		font-size: 18px;
		margin: 0 auto 12px;
	}
	.Label::before{right: 30px;}
	.toggle:checked + .Label {margin: 0 auto;}
}
@media screen and (max-width: 750px) {
	#recruitmentguidelines p {
		text-align:justify;
	}
	.Label {
		padding: 15px;
		border: solid #01a0ca 1px;
		margin: 0 auto 10px;
		font-size: 16px;
	}
	th,
	td {
		width: calc(100% - 30px);
		display: block;
		padding: 15px;
	}
	.Label::before {
        right: 15px;
    }
	th {
		border-right: none;
		border-bottom: 1px solid #fff;
	}
	table tr:nth-child(even) th {border-bottom: 1px solid #f3f3f3;}
	.u_line {border-bottom: 1px solid #f3f3f3;}
	table p {margin: 10px auto 20px;}
	table th em {font-size: 12px;}
	table .inner .ttl_long {width: 94%;}
	table span{
		font-size: 5px;
		margin: 0 4px 0 0;
	}
}
@media screen and (max-width: 500px) {
	#recruitmentguidelines p br {
		display: none;
	}
	.Label .sp_br{display: block;}
	.flow div{margin: 0 10px;}
}
@media screen and (max-width: 490px) {
  table .inner p:nth-child(2)::before{vertical-align: 28px;}
}

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

internship

===================================*/
.ttl_in{
	background: url("../img/in_bg.jpg") no-repeat;
	background-size: cover;
	margin: 0 auto 70px;
	padding: 40px 0;
}
.ttl_in ul{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;    
	align-items: center;

}
.ttl_in li{color: #fff;}
.ttl_in li:nth-child(2){
	padding: 20px 0 40px 100px;
}
.ttl_in h3{
	font-size: 36px;
	font-weight: 600;
	margin: 0 0 40px;
}
.ttl_in h3 div{
	margin: 0 0 5px;
	background: #fff;
	width: 190px;
	height: 1px;
}
.ttl_in h3 span{font-size: 18px;}
.ttl_in p{font-size: 18px;}
.ttl_in p span{font-size: 24px;}

@media screen and (max-width: 1230px) {
	.ttl_in li:nth-child(1){
		width: 40%;
		min-width: 300px;
	}
	.ttl_in li:nth-child(1) img{
		width: 100%;
	}
	.ttl_in li:nth-child(2){
		padding: 20px 0 40px 7%;
	}
}
@media screen and (max-width: 950px) {
	.ttl_in ul{flex-direction: column;align-items: flex-start;}
	.ttl_in li:nth-child(1){width: 100%;}
	.ttl_in li:nth-child(2){padding: 40px 0 0;}
	.ttl_in h3{margin: 0 0 25px;font-size: 26px;}
	.ttl_in h3 div {
		margin: 2px 0 6px;
		width: 150px;
	}
	.ttl_in {padding: 60px 0;}
	.ttl_in .pc{display: none;}
	.ttl_in .sp{display: block;}
	.ttl_in p {font-size: 16px;}
}
@media screen and (max-width: 750px) {
	.ttl_in h3 {font-size: 24px;}
	.ttl_in h3 div {
		margin: 0px 0 4px;
		width: 80px;
		height: 1px;
	}
	.ttl_in h3 span, .ttl_in p{font-size: 16px;background: none;}
	
	.ttl_in p span {font-size: 18px;background: none;font-weight: 600;}
	.ttl_in {padding: 40px 0;}
	.ttl_in li:nth-child(2){padding: 30px 0 0;}
}
@media screen and (max-width: 440px) {.ttl_in p br{display: none;}}
/*＝＝＝＝＝＝＝＝中身＝＝＝＝＝＝＝＝*/
#internship h4{
	color: #01a0ca;
	display: inline-block;
}
#internship h4::before,
#internship h4::after{
	content: "";
	display: inline-block;
	background: #01a0ca;
	width: 30px;
	height: 1px;
	vertical-align: super;
}
#internship h4::before{margin-right: 10px;}
#internship h4::after{margin-left: 10px;}
#internship>div{margin: 0 auto 80px;}
.internbox1{
	background: #f1fcff;
	padding: 30px 30px 30px 15px;
	max-width: 1110px;
	width: 90%;
	display: flex;
	align-items: center;
}
.internbox1 h4{
	margin: 0 25px 0 0;
	padding: 17px;
	background: url("../img/summary.png") no-repeat center center;
	background-size: contain;
}
.internbox1 p{
	display:inline-block;
	width: calc( 100% - 190px);
}
.internbox2{
	text-align: center;
	max-width: 1000px;
	width: 90%;
}
.internbox2 h4{
	margin: 0 auto 40px;
	padding: 10px 0;
	background: url("../img/program.jpg") no-repeat center center;
	background-size: contain;
}
.internbox2 ul{
	text-align: left;
}
.internbox2 li{
	display: flex;
	align-items: flex-start;
	margin-bottom: 30px;
}
.internbox2 li img{
	margin-right: 30px;    
	max-width: 100px;
}
.internbox2 li em{
	display: block;
	margin-bottom: 15px;
	font-size: 18px;
	font-weight: bold;
}
.internbox3{
	text-align: center;
	background: #f1fcff;
	padding: 50px 0 60px;
}
.internbox3 h4{
	background: url("../img/point.png") no-repeat center center;
	background-size: contain;
}
.internbox3 ul{
	display: flex;
	max-width: 1000px;
	width: 90%;
	gap: 20px;
	flex-wrap: wrap;
	margin: 0 auto;
	/*align-items: center;*/
}
.internbox3 li{
	max-width: 490px;
	width: calc( 50% - 120px );
	text-align: left;
	padding: 40px 20px 40px 90px;
	background: url("../img/no1_b.png") , url("../img/point1.jpg") , #fff;
	background-position: left 20px center, right bottom, center center;
	background-repeat: no-repeat,no-repeat,no-repeat;
	background-size: 60px,50%;
}
.internbox3 li:nth-child(2){
	background: url("../img/no2_b.png") , url("../img/point2.jpg") , #fff;
	background-position: left 20px center, right bottom, center center;
	background-repeat: no-repeat,no-repeat,no-repeat;
	background-size: 60px,50%;
}
.internbox3 li:nth-child(3){
	background: url("../img/no3_b.png") , url("../img/point3.jpg") , #fff;
	background-position: left 20px center, right bottom, center center;
	background-repeat: no-repeat,no-repeat,no-repeat;
	background-size: 60px,50%;
}

.internbox3 li:nth-child(4){
	background: url("../img/no4_b.png") , url("../img/point4.jpg") , #fff;
	background-position: left 20px center, right bottom, center center;
	background-repeat: no-repeat,no-repeat,no-repeat;
	background-size: 60px,50%;
}
#internship .internbox4 h4::before,#internship .internbox4 h4::after{
	display: none;
}
.internbox4{
	text-align: center;
}
#internship .internbox4 h4{display: block;}
.internbox4 h4 img{max-width: 330px;}
.internbox4>img{
	max-width:1345px;
	width: 95%;
	margin: 0 auto;
	
}
.internbox4>.tb{
	display: none;
}
.nitiji {
	display: flex;
	gap: 20px;
	margin: 0 auto 80px;
	justify-content: center;
}
.nitiji li{
	text-align: center;
	padding: 40px;
	max-width: 490px;
	width: calc( 50% - 140px ); 
	background: #f1fcff;
}
.nitiji li em{
	font-weight: 600;
	margin: 0 auto 20px;
	display: block;
	font-size: 18px;
	
}
.nitiji li p{
	font-size: 16px;
}
.nitiji li p span{
	font-size: 14px;
}
#internship .nitiji li h4::before,
#internship .nitiji li h4::after{
	content: "";
	display: inline-block;
	background: #01a0ca;
	width: 30px;
	height: 1px;
	vertical-align: super;
}
#internship .nitiji li h4::before{margin-right: 10px;}
#internship .nitiji li h4::after{margin-left: 10px;}
.nitiji li:nth-child(1) h4{	background: url("../img/venue.png") no-repeat center center;background-size: contain;}
.nitiji li:nth-child(2) h4{	background: url("../img/dt.png") no-repeat center center;padding: 0 15px;background-size: contain;}
/*@media screen and (max-width: 938px) {
	.internbox3 li:first-child{
		padding: 30px 20px 30px 90px;}
}*/
@media screen and (max-width: 950px) {
	.internbox2 li em {margin-bottom: 5px;}
	.internbox4>.pc{display: none;}
	.internbox4>.tb{display: block;}
	.internbox3 ul{gap: 10px;}
	.internbox3 li {
		width: calc(50% - 120px);
		padding: 20px 20px 20px 90px;
		background-size: 50px,50%;
	}
	.internbox3 li:nth-child(2){
		background-size: 50px,50%;
	}
	.internbox3 li:nth-child(3){
		background-size: 50px,50%;
	}

	.internbox3 li:nth-child(4){
		background-size: 50px,50%;
	}
	.nitiji {gap: 10px;}
	.nitiji li {
		padding: 30px 20px;
		width: calc(50% - 70px);
	}
	.nitiji li h4{margin-bottom: 20px;}
	.nitiji li em {margin: 0 auto 10px;}
	.nitiji li p span {font-size: 12px;}
}
@media screen and (max-width: 750px) {
	#internship h4{
		font-size: 18px;
		margin-bottom: 12px;
	}
	#internship h4::before,
	#internship h4::after{
		content: "";
		display: inline-block;
		background: #01a0ca;
		width: 30px;
		height: 1px;
		vertical-align: super;
	}
	#internship h4::before{margin-right: 10px;}
	#internship h4::after{margin-left: 10px;}
	#internship>div{margin: 0 auto 60px;}
	.internbox1{
		padding: 35px 5%;
		flex-direction: column;
		width: 80%;
	}
	.internbox1 h4{
		margin: 0 auto 12px;
		padding: 0;
		background: url("../img/summary.png") no-repeat center center;
		background-size: 100%;
	}
	.internbox1 p{
		display:inline-block;
		width: 100%;
	}
	.internbox3 {
		padding: 60px 0;
	}
	#internship .internbox3 h4,#internship .internbox4 h4{margin-bottom: 30px;}
	.internbox3 li {
		width: calc(50% - 120px);
		padding: 30px 20px 30px 75px;
		background-position: left 20px center, right bottom, center center;
		background-size: 40px,30%;
	}
	.internbox3 li:nth-child(2){
		background-position: left 20px center, right bottom, center center;background-size: 40px,30%;
	}
	.internbox3 li:nth-child(3){
		background-position: left 20px center, right bottom, center center;background-size: 40px,30%;
	}
	.internbox3 li:nth-child(4){
		background-position: left 20px center, right bottom, center center;background-size: 40px,30%;
	}	
	.internbox3 ul{gap:10px;}
	.internbox3 li {
	max-width: 100%;
	width: 100%;
	}
	.internbox4 h4 img{
		width: 240px;
	}
	.internbox4>.tb{
		display: none;
	}
	.nitiji{
		flex-direction: column;width: 90%;gap: 10px;
	}
	.nitiji li {
		max-width: 90%;
        width: 90%;
        padding: 5%;
	}
	
}
@media screen and (max-width: 500px){
	.internbox2 li img {
		margin-right: 0;
	}
	.internbox2 li {
    	flex-direction: column;
		align-items: center;
		gap: 15px;
		margin-bottom: 40px;
	}
	.internbox2 li em {
		margin-bottom: 10px;
		font-size: 16px;
		display: block;
        text-align: center;
	}
}
/*====================================

entry

===================================*/
.entry{
	padding: 100px 0 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: url("../img/pattern.jpg") repeat;
}
.entry{margin-bottom: 150px;}
.entry li:first-child{margin-right: 60px;}
.entry li:nth-child(2){text-align: center;}
.entry p{
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
    text-align: left;
    margin-right: 20px;
	color: #30a5d0;
}
.entry small{color: #30a5d0;}
.entry p{
	font-size: 24px;
	font-weight: bold;
}
.entry img{width: 250px;}
.entry a{ display: block;margin-bottom: 5px;}
.entry a:hover{transform: scale(1.1,1.1);}
.yazirusi {
  position: relative;
  width: 100%;
  margin: 5px 0 0 0;
  transform: rotate(0deg);
}
.line01 {
  height: 1.5px;
  background-color: #01a0ca;
}
.line02 {
  position: absolute;
  top: 0;
  right: 0;
  transform-origin: right bottom;
  width: 20px;
  height: 1.5px;
  background-color: #01a0ca;
  transform: rotate(45deg);
}
.entry p br{display: none;}
@media screen and (max-width: 850px){
	.entry{
		padding: 60px 5%;
		flex-direction: column;
		background-size: 90%;
	}
	.entry li:first-child{margin: 0 auto 20px;}
	.entry p ,.new2{margin: 0;}
	.entry img{width: 200px;}
	.ttl_ex {margin-bottom: 60px;}
	#exchange h4 {margin: 0 auto 30px;}
	.yazirusi {
		position: static;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 5px solid transparent;
		border-left: 5px solid transparent;
		border-top: 7px solid #01a0ca;
		border-bottom: 0;
		margin: 10px auto 0;
	}
	.line01 ,.line02 {display: none;}
}
@media screen and (max-width: 750px){
	.entry p{
		font-size: 18px;
		margin: 0;
	}
	.entry p br{display: block;}
	.entry li:first-child {
        margin: 0 auto 15px;
    }
	.yazirusi {
        margin: 5px auto 0;
    }
	.entry {
        padding: 40px 5%;
        margin: 0;
    }
	.entry{margin-bottom: 80px;}
}
.ttl_ex{
	width: 100%;
	margin-bottom: 100px;
	min-height: 450px;
	position: relative;
	
}
.ttl_ex>div{
	position: absolute;
}
.ttl_ex_bg{
	width: 80%;
	height: 100%;
	background: #01a0ca;
	clip-path: polygon(0 0, 75% 0, 80% 100%, 0% 100%);
}
.ttl_text{
	display: flex;
	align-items: flex-start;
	width: 100%;
	justify-content: center;
}
.ttl_text>div{
	color: #fff;
	font-weight: 600;
	padding: 90px 0 0;
	background: #01a0ca;
	display: inline-block;
}
.ttl_ex h3{
	font-size: 47px;
	margin-bottom: 52px;
	font-weight: 600;
}
.ttl_ex h3 span{
	font-size: 16px;
	display: block;
	
}
.ttl_ex h3 span::before{
	content: "";
	width: 40px;
	height: 1px;
	display: inline-block;
	margin-right: 20px;
	background: #fff;
}
.ttl_ex img{
	width: 40%; 
	max-width: 830px;
	margin: -80px 0 0 50px;
}
/*.img{
	position: relative;
	width: 60%;
	top: -80px;
	left: -98px;
}*/
#exchange h4{
	color: #01a0ca;
	justify-content: center;
	font-size: 28px;
	margin: 0 auto 70px;
}
#exchange > h4::before{
	content: "";
	display: inline-block;
	background: url("../img/point.jpg") no-repeat;
	width: 26px;
	height: 45px;
	margin: 0 20px 10px 0;
	background-size: contain;
}
#exchange>ul{
	display: flex;
	max-width: 1200px;
	margin: 0 auto 110px;
	justify-content: space-between;
	gap: 20px;
}
#exchange>ul li{
	background: url("../img/point1.png"),#ccedf9;
	background-repeat: no-repeat,no-repeat;
	background-position: center left 8px , center center;
	max-width: 285px;
	width: calc( 25% - 15px );
	padding: 30px 20px 30px 100px;
	background-size: 75px;
}
#exchange>ul li:nth-child(2){
	background: url("../img/point2.png"),#ccedf9;
	background-repeat: no-repeat,no-repeat;
	background-position: center left 8px , center center;
	background-size: 75px;
}
#exchange>ul li:nth-child(3){
	background: url("../img/point3.png"),#ccedf9;
	background-repeat: no-repeat,no-repeat;
	background-position: center left 8px , center center;
	background-size: 75px;
}
#exchange>ul li:nth-child(4){
	background: url("../img/point4.png"),#ccedf9;
	background-repeat: no-repeat,no-repeat;
	background-position: center left 8px , center center;
	background-size: 75px;
}
.voice{
	background: #f3f3f3;
	padding: 100px 0 ;
}
.voice h4::before{
	content: "";
	display: inline-block;
	background: url("../img/voice.png") no-repeat;
	width: 40px;
	height: 35px;
	margin-right: 20px;
	background-size: contain;
}
.voice ul{
	display: flex;
	max-width: 980px;
	margin: 0 auto;
	gap: 20px;
}
.voice li{
	background: url("../img/voice_bg.jpg"),#fff;
	background-repeat: no-repeat,no-repeat;
	background-position: top -30px right -20px,center center;
	border-radius: 4px;
	padding: 40px;
}
.voice li > div{
	display: flex;   
	align-items: center;
	gap: 20px;
	margin: 0 auto 20px;
}
.voice li div em{
	font-size: 22px;
	font-weight: 600;
	display: block;
	margin-bottom: 10px;
}
 .voice div span{
	font-size: 12px;
	color: #fff;
	background: #01a0ca;
	padding: 3px 10px;
}
.voice li img{width: 100px;}
@media screen and (max-width: 1300px){
	.ttl_ex {
		min-height: 390px;
	}
	.ttl_ex h3{
		font-size: 24px;
		margin-bottom: 30px;
		font-weight: 600;
	}
	.ttl_ex h3 span{
		margin-top: 10px;
	}
	.ttl_ex {margin-bottom: 60px;}
	.ttl_ex img {
		width: 35%;
		max-width: 830px;
		margin: 30px 0 0 30px;
	}
	.ttl_ex_bg{width: 80%}
	#exchange h4 {margin: 0 auto 30px;font-size: 24px;}
	#exchange>ul {
		max-width: 90%;
		flex-wrap: wrap;
	}
	#exchange>ul li{
		max-width: 490px;
  		width: calc(50% - 150px);
		padding: 40px 30px 40px 110px;
	}
	#exchange>ul li br{display: none;}
	.voice li > div {margin: 0 auto 10px;}
}
@media screen and (max-width: 910px){
	.ttl_text{
		padding: 0 5%;
		width: 90%;
	}
}
@media screen and (max-width: 1000px){
	.voice ul{max-width: 90%;}
	.voice {padding: 80px 0;}
}
@media screen and (max-width: 950px){
	
	.ttl_ex_bg{width: 90%;}
	#exchange>ul{
		gap:10px;
	}
	#exchange>ul li {
		width: calc(50% - 145px);
	}
	.voice ul{
		max-width: 100%;
		gap: 10px;
	}
	.voice li{padding: 20px;}
	.ttl_ex img {
        width: 40%;
        margin: 7% 0 0 0;
    }
}
@media screen and (max-width: 850px){
	.ttl_ex .br_830{display: none;}
}
@media screen and (max-width: 778px){
	.ttl_ex p br{display: none;}
}
@media screen and (max-width: 750px){
	.ttl_ex .pc{display: none;}
	.ttl_ex .sp{display: block;}
	.ttl_ex{
		margin-bottom: 60px;
		position: static;
		
	}
	.ttl_ex_bg {clip-path: polygon(0 10%, 100% 20%, 100% 100%, 0% 100%);}
	.ttl_ex>div {
		position: static;
	}
	.ttl_ex_bg{
		display: none;
	}
	
	.ttl_text{
		flex-direction: column-reverse;
		padding: 0;
		width: 100%;
	}
	.ttl_text>div {
		width: 90%;
		padding: 40px 5%;
		clip-path: polygon(0 0, 100% 10%, 100% 100%, 0% 100%);
		margin-top: -20%;
	}
	.ttl_ex img{
		width:100%;
	}
	.ttl_ex h3{
		font-size: 20px;
		margin-bottom: 20px;
	}
	.ttl_ex h3 span{
		font-size: 14px;
	}
	.ttl_ex h3 span::before{
		content: "";
		width: 20px;
		height: 1px;
		display: inline-block;
		margin-right: 10px;
		background: #fff;
		vertical-align: middle;
	}
	#exchange h4{font-size: 18px;width: 90%;}
	#exchange > h4::before {margin: 0 10px 10px 0;}
	#exchange .sp_br{display: block;}
	#exchange>ul {
		flex-wrap: wrap;
		width: 90%;
		gap: 10px;
		margin: 0 auto 60px;
	}
	#exchange>ul li{
		width: 100%;
		padding: 20px 30px 20px 90px;
		background-size: 60px;
	}
	#exchange>ul li:nth-child(2),
	#exchange>ul li:nth-child(3),
	#exchange>ul li:nth-child(4){
		background-size: 60px;
	}
	
	.voice{padding: 40px 5%;}
	.voice ul{
		gap: 10px;
		flex-direction: column;
	}
	#exchange h4 {
		margin: 0 auto 30px;}
	.voice li{
		padding: 20px;
	}
}