@charset "utf-8";
/* CSS Document */
@media screen and (min-width: 481px) {
#all #wrapper #main .cont .photo {
	float: left;
	width: 205px;
}
#all #wrapper #main .cont .prof {
	margin-left: -220px;
	width: 100%;
	float: left;
}
#all #wrapper #main .cont .prof .box {
	margin-left: 280px;
}
#all #wrapper #main .innerBox .pic-right {
	float: right;
	margin-bottom: 20px;
}
#all #wrapper #main .cont h2 .subttl {
	display: inline;
	margin-left:25px;
	/* padding-bottom: 8px!important; */
	margin-bottom: 0!important;
}
#all #wrapper #main p {
    font-size: 16px;
}
}

#all #wrapper #main p {
	background: url(./img/bg_logo_m.png) no-repeat;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "YuGo", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-weight: 700;
    line-height: 1.7;
}

#all #wrapper #main .cont{
	margin-bottom: 20px;
}

#all #wrapper #main .recruit_ttl img{
	margin-top: 20px;
	margin-bottom: 25px;
	position: relative;
    z-index: 3;
}
#all #wrapper #main .recruit_ttl {
	position: relative;
}
#all #wrapper #main .recruit_ttl::before {
	content: "";
	background: url(./img/Work.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
    right: -10px;
	width: 302px;
	height: 108px;
	z-index: 2;
}

/* section01 */

#all #wrapper #main #section01 .work_box_wrap {
	background-color: #f7f9fc;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
	text-align: center;
    padding-top: 20px;
}

#all #wrapper #main #section01 .work_box_wrap .work_box {
	border-width: 1px;
	border-color: rgb(182, 183, 185);
	border-style: solid;
	background-color: rgb(255, 255, 255);
	width: 218px;
	height: 48px;
	line-height: 48px;
	font-size: 20px;
	color: rgb(34, 63, 129);
	font-weight: bold;
    margin-bottom: 20px;
}

#all #wrapper #main #section01 .work_colored {
	margin-top: 20px;
	color: #80b43b;
	margin-bottom: 0;
}
#all #wrapper #main #section01 .work_bgm {
    background: url(../img/bg_logo_m.png) no-repeat;
	background-position: right center;
    background-size: contain;
}
#all #wrapper #main #section01 .work_bgm p{
	margin-top: 20px;
	font-weight: 500;
	margin-bottom: 0;
}
#all #wrapper #main #section01 .work_bgm span{
	font-weight: 700;
	text-decoration: underline;
    color: #223f81;
}
/* section02 */
#all #wrapper #main #section02 .recruitment_list li{
	color: rgb(51, 51, 51);
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "YuGo", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 2;
	position: relative;
	z-index: 3;
}
#all #wrapper #main #section02 .recruit_ttl::before {
	background: url(./img/Recruitment.png) no-repeat;
	top: 80px;
	width: 560px;
	height: 110px;
}


/* section03 */
#all #wrapper #main #section03 .recruit_ttl img{
    margin-bottom: 0;
}

#all #wrapper #main #section03 .recruit_ttl::before {
	background: url(./img/Information.png) no-repeat;
	top: 55px;
	width: 578px;
	height: 133px;
}

#all #wrapper #main #section03 table{
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "YuGo", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	width: 100%;
}
#all #wrapper #main #section03 .thead{
	background-color: rgb(51, 73, 123);
    color: #fff;
    margin-top: 140px;
	width: 100%;
    font-weight: 700;
    height: 40px;
    line-height: 40px;
    display: block;
    text-align: center;
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "YuGo", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
#all #wrapper #main #section03 th{
	border-width: 1px;
	border-color: rgb(209, 209, 209);
	border-style: solid;
	background-color: rgb(235, 238, 247);
	color: rgb(40, 63, 119);
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
    min-width: 150px;
}
#all #wrapper #main #section03 td{
	border-width: 1px;
	border-color: rgb(209, 209, 209);
	border-style: solid;
	font-weight: 700;
    padding: 15px 20px;
}
#all #wrapper #main #section03 .btm p{
	color: #223f81;
	margin-bottom: 0;
	font-weight: 700;
}
#all #wrapper #main #section03 .btm a{
	text-decoration: underline;
	color: #223f81;
	font-weight: 700;
}
#all #wrapper #main #section03 .blue_square{
	color: #4666b0;
}

#all #wrapper #main #section03 ul{
	display: flex;
	flex-wrap: wrap;
	/*justify-content: space-between;*/
}
#all #wrapper #main #section03 .vertical_list {
	display: flex;   
border-width: 0;
    border-right-width: 1px;

}
#all #wrapper #main #section03 .vertical_list ul{
	width: 50%;
}
#all #wrapper #main #section03 .vertical_list li{
	width: 100%;
}
#all #wrapper #main #section03 ul li{
	font-weight: 700;
	width: 50%;
}


#all #wrapper #main{
	margin-bottom: 0;
}

.entry_bnr_red  {
	position: relative;
	text-align: center;
}

.pulse-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
    margin: 30px auto 50px;
	width: 170px;
    height: 170px;
	border-radius: 50%;
	background-color: #b0043b;
	box-shadow: 0 0 20px #b0043b;
	cursor: pointer;
  }

  .pulse-btn::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	border: 1px solid #b0043b2b;
	border-radius: 50%;
	box-sizing: border-box;
	pointer-events: none;
	animation: pulsate 2s linear infinite;
  }

  .pulse-btn::after {
	animation-delay: 1s;
  }

  span.recruit_fin {
	background-color: rgb(51, 73, 123);
	color: #fff;
	width: 100%;
	font-size: 1.8em;
	font-weight: 700;
	height: 100px;
	line-height: 100px;
	display: block;
	text-align: center;
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "YuGo", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	margin-bottom: 600px;
  }

  @keyframes pulsate {
	0% {
	  transform: scale(1);
	  opacity: 1;
	}

	100% {
	  transform: scale(1.3);
	  opacity: 0;
	}
  }

.effect-fade {
	opacity : 0;
	transform : translate(0, 45px);
	transition : all 2s;
	text-align: center;
	margin-top: 30px;
}

.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}

@media screen and (max-width: 960px){
	#all #wrapper #main .mv_img img{
		width: 100%;
	}
	#all #wrapper #main .recruit_ttl img {
		width: 100%;
	}
	#all #wrapper #main #section01 .merit_h3_ttl img{
		width: 100%;
	}
	#all #wrapper #main .recruit_ttl p::before {
		background-size: contain;
		top: -75px;
		width: 35%;
	}
}

@media screen and (max-width: 480px) {
	.main_ttl .inner.widthfix p img {
		max-width: 315px;
		left: 0;
	}
	#all #wrapper #main h2 img {
		max-width: 100%;
		height: auto;
	}
	#all #wrapper #main .mv_imgmap {
		position: relative;
	}
	#all #wrapper #main .grey_p {
		position: absolute;
		bottom: 9px;
		display: block;
		padding: 10px 5px;
		background: rgb(245, 245, 245, 80%);
	}
	#all #wrapper #main .grey_p p{
		font-size: 12px;
		font-family: "HiraginoKaku";
	}
	#all #wrapper #main .grey_p span{
		font-size: 13px;
		font-weight: 700;
		color: #3768bd;
	}
	#all #wrapper #main #section01 .work_bgm {
		background-position: center;
	}
	#all #wrapper #main .recruit_ttl {
		text-align: center;
		margin-bottom: 40px;
	}
	#all #wrapper #main .recruit_ttl img {
		width: auto;
		max-width: 320px;
	}
	#all #wrapper #main .recruit_ttl p::before {
		content: none;
	}
	#all #wrapper #main .recruit_ttl::before {
		background-size: contain;
		top: 60px;
		right: 0;
		left: 0;
		max-width: 300px;
		margin: 0 auto;
	}
	#all #wrapper #main #section01 .recruit_ttl::before {
		width: 220px;
	}
	#all #wrapper #main #section02 .recruit_ttl img {
		margin-bottom: 25px;
	}
	#all #wrapper #main #section02 .recruit_ttl::before {
		background-size: contain;
		top: 105px;
	}
	#all #wrapper #main #section03 .recruit_ttl img {
		margin: 0px;
	}
	#all #wrapper #main #section03 .recruit_ttl::before {
		background-size: contain;
		top: 40px;
	}
	#all #wrapper #main #section03 table {
		 /* margin-top: 75px; */
		position: relative;
		z-index: 5;
	}

	#all #wrapper #main #section03 .thead {
		margin-top: 75px;
	}
	#all #wrapper #main #section03 th {
		display: block;
		height: 30px;
		line-height: 30px;
	}
	#all #wrapper #main #section03 td {
		display: block;
		padding: 15px 10px;
		border-top: 0;
		border-bottom: 0;
	}
	#all #wrapper #main #section03 tr:last-child td{
		border-bottom: 1px solid rgb(209, 209, 209);
	}
	#all #wrapper #main #section03 ul {
		width: 100%;

	}
	#all #wrapper #main #section03 ul li{
		width: 100%;
	}
	#all #wrapper #main #section03 .vertical_list {
    border-width: 1px;
		/* display: block; */
		flex-direction: column-reverse;
	}
	#all #wrapper #main #section03 .vertical_list ul {
		width: 100%;
	}
	.koudou {
		width: 100%;
		height: auto;
		margin: 20px auto 0;
	}

}
@media screen and (max-width: 321px) {
	#all #wrapper #main .grey_p span{
		font-size: 11px;
	}
	#all #wrapper #main .grey_p p{
		font-size: 10px;
	}
	.koudou {
		height: auto;
	}
}