.content-box table {
	width: 100%;
	margin-bottom: 30px;
}
.content-box th,
.content-box td {
	padding: 1em;
}
.content-box .name,
.content-box .date {
	width: 200px;
}
.content-box .status {
	width: 120px;
}
.content-box .time {
	width: 185px;
}
.content-box h2.sub-title {
	margin-top: 2em;
	font-size: 1.3em;
}
.content-box h2.sub-title span {
	display: inline-block;
	margin-right: 1em;
}
.outer-link {
	padding-bottom: 30px;
}
.outer-link ul {
	padding: 0;
	list-style: none;
}

/**
 * 新卒採用トップ
 */
.content-box .panel {
	max-width: 720px;
}
.content-box .panel a,
.content-box .panel .close {
	display: block;
	position: relative;
	float: left;
	width: 33%;
}
.content-box .panel .close {
	color: rgb(100, 100, 100);;
}
.content-box .panel a::after {
	content: '';
	position: absolute;
	z-index: 2;
	display: block;
	top: 55%;
	left: 0;
	margin: 0 30%;
	height: 1px;
	width: 0;
	border-bottom: 2px solid #efefef;
}

.content-box .panel a:first-child {
	width: 66%;
}
.content-box .panel .small {
	display: none;
}
.content-box .panel img {
	display: block;
	width: 100%;
}
.content-box .panel span {
	position: absolute;
	z-index: 1;
	top: 5%;
	width: 90%;
	left: 5%;
	text-align: center;
	font-size: 14px;
	background-color: rgba(255,255,255,.66);
	padding: .5em 0;
}
.content-box .panel span.bottom {
	top: auto;
	bottom: 12px;
	left: 5%;
	width: 90%;
	line-height: 30px;
	background: url('/recruit/graduate/img/go-students.png');
	background-size: cover;
}
.content-box .anchors ul {
	margin: 1em 0;
}
.content-box .anchors li a {
	line-height: 2em;
}


/**
 * 採用までの流れ
 */
.content-step ul {
	list-style: none;
	padding: 0;
}
.content-step .steps {
	width: 540px;
	text-align: center;
}
.content-step .step-1,
.content-step .step-2 div {
	padding: .5em .25em;
}
.content-step .step-1 {
	border-radius: 10px 10px 0 0;
	background-color: #c6f3ce;
}
.content-step .step-1:last-child {
	border-radius: 10px;
}
.content-step .step-2 {
	border-radius: 0 0 10px 10px;
	background-color: rgb(227, 236, 249);
}
.content-step .step-2.clearfix div {
	float: left;
	width: 50%;
}

.content-step .go-entry {
	margin-top: 1em;
}

.content-contact th {
	width: 200px;
}

.content-box address span {
	display: inline-block;
	margin-right: 1em;
}

/**
 * 募集要項
 */
.content-requirements ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.content-requirements th {
	width: 200px;
}
.content-requirements h2:nth-child(n + 2) {
	margin-top: 2em;
}

/**
 * 社内報から
 */
.message-list {
	list-style: none;
	padding: 0;
}
.message-list li {
	padding: 1em;
	border-bottom: 1px solid rgb(203, 207, 228);
}
.message-list li:first-child {
	border-top: 1px solid rgb(203, 207, 228);
}
.message-title h3 {
	margin: 3em 0 1.5em;
	color: rgb(152, 152, 152);
}
.message-text img {
	max-width: 100%;
}
.message-text p {
	text-indent: 1em;
}

.schedule-container {
	padding-top: .5em;
}
.schedule {
	margin-bottom: 1em;
}
.schedule.schedule-1 {
	order: 1;
}
.schedule.schedule-2 {
	order: 2;
}
.schedule.schedule-3 {
	order: 3;
}
.schedule-container .description {
	height: 100%;
	margin: 0 .5em;
	padding: 0 1.5em 1.5em;
	border: 1px solid rgb(180, 180, 180);
	box-shadow: 1px 1px 3px 0px rgba(143, 143, 143, .5);
}
.schedule-container .description > p {
	font-weight: bold;
	color: rgb(27, 65, 146);
}
.schedule-container .description > div {
	padding-left: 1.5em;
}
.item-list:after {
    content: "";
    clear: both;
    display: block;
}
.submnail {
	float: left;
	width: 48%;
	margin-right: 1%;
	margin-bottom: 1em;
/*	border: 1px solid #d6d6d6; */
	transition-duration: .25s;
}
.submnail img {
	width: 100%;
}


.bubbles {
	position: relative;
}

.bubble {
	position: absolute;
	transform: translate(80px, 80px);
	border-style: solid;
	border-width: 0px;
	border-color: rgba(241, 241, 241, .8);
	border-radius: 0px;
	width: 0;
	height: 0;
	transition-property: border-width, border-radius, transform;
	transition-duration: .4s;
	transition-delay: 0s;
	transition-timing-function: ease-out;

}
.bubbles .scroll-in.bubble {
	border-width: 80px;
	border-radius: 80px;
	transform: translate(0, 0);
}

.bubbles .bubble-top {
	transform: translate(-80px, 80px);
	right: 80px;
	top: -140px;
}
.bubbles .scroll-in.bubble-top {
	border-width:  80px;
	border-radius: 80px;
}

.bubbles .bubble-bottom {
	transform: translate(70px, 70px);
	left: 60px;
	top: -5px;
}
.bubbles .scroll-in.bubble-bottom {
	border-width:  70px;
	border-radius: 70px;
}



.bubbles.bubbles-top-right .bubble,
.bubbles.bubbles-top-left .bubble,
.bubbles.bubbles-bottom-left .bubble {
	transform: translate(140px, 140px);
	box-shadow: 10px 10px 10px rgba(0, 0, 0, .15);
}
.bubbles.bubbles-top-right .scroll-in.bubble,
.bubbles.bubbles-top-left .scroll-in.bubble,
.bubbles.bubbles-bottom-left .scroll-in.bubble {
	transform: translate(0, 0);
	border-width:  140px;
	border-radius: 140px;
}



.join .bubbles.bubbles-top-right .bubble,
.join .bubbles.bubbles-top-left .bubble {
	transform: translate(55px, 55px);
	box-shadow: 0 10px 10px rgba(0, 0, 0, .05);
}
.join .bubbles.bubbles-top-right .scroll-in.bubble,
.join .bubbles.bubbles-top-left .scroll-in.bubble {
	border-width:  80px;
	border-radius: 80px;
}
.join .bubbles.bubbles-top-right {
	position: absolute;
	right: 135px;
	top: -160px;
}

.join .bubbles.bubbles-top-left {
	position: absolute;
	left: -125px;
	top: -160px;
}

.join .bubbles.bubbles-top-right .intro,
.join .bubbles.bubbles-top-left .intro {
	top: 35px;
}

.join .bubbles .intro {
	color: #444;
	font-size: 0.97em;
}



.bubbles.bubbles-top-right {
	position: absolute;
	right: 135px;
	top: -160px;
}

.bubbles.bubbles-top-left {
	position: absolute;
	left: -125px;
	top: -160px;
}

.bubbles.bubbles-bottom-left {
	position: absolute;
	left: -125px;
	bottom: 100px;
}

.bubbles .intro {
	position: absolute;
	white-space: nowrap;
	text-align: left;
	font-size: 1.1em;
	line-height: 1.6em;
	transform: translate(-20px, 0);
	opacity: 0;
	transition-property: transform, opacity;
	transition-duration: .4s;
	transition-delay: .6s;
	transition-timing-function: ease-out;
}
.bubbles .scroll-in .intro {
	opacity: 1;
	transform: translate(0, 0);
}
.bubbles.bubbles-top-right .intro {
	top: 35px;
	right: 15px;
	text-align: right;
}
.bubbles.bubbles-top-left .intro {
	top: 35px;
	left: -3px;
	text-align: left;
}
.bubbles.bubbles-bottom-left .intro {
	top: -110px;
	left: -3px;
	text-align: left;
}
.bubbles .intro .discription {
  padding: 0 0.8em;
}

.bubbles .intro {
	display: inline-block;
	color: #663300;
	font-size: 20px;
	font-weight: bold;
	text-shadow: 
	   2px  2px 1px #fff,
	  -2px  2px 1px #fff,
	   2px -2px 1px #fff,
	  -2px -2px 1px #fff,
	   2px  0px 1px #fff,
	   0px  2px 1px #fff,
	  -2px  0px 1px #fff,
	   0px -2px 1px #fff;
}

#head_image {
	vertical-align:bottom;
	width: 100%;
	height: 200px;
	background-color: #fff
}

.graduate-home .submnail {
	overflow: hidden;
	position: relative;
}

.graduate-home .content-box.summary {
	padding: 0;
	border-top: none;
}

.graduate-home .content-box {
	overflow: hidden;
}

.join-item {
	display: inline-block;
	width: 100%;
	height: auto;
	text-align: center;
	line-height: 4em;
	color: #f8f8f8;
	font-weight: bold;
	padding-top: 1em;
	font-size: 1.2em;
}
.join-item:after {
	content: "";
	display: block;
	height: 1em;
}

.join-item.item1 {
	background-color: #66ccff;
}
.join-item.item2 {
	background-color: #ffcc33;
}
.join-item.item3 {
	background-color: #ff9999;
}
.join-item.item1:after {
	background-color: #b4e6ff;
}
.join-item.item2:after {
	background-color: #ffe38e;
}
.join-item.item3:after {
	background-color: #fccbcb;
}

.bubbles .notice {
	color: #d57600;
}

.graduate-home .submnail:hover {
	box-shadow: 6px 6px 8px 1px rgba(216, 216, 216, .85);
	transform: scale(1.01, 1.01);
}

ul.graduate-menu {
	display: block;
	padding: 0;
	margin: 0;
	text-align: center;
}
.graduate-menu li {
	display: block;
	width: 33.3%;
	text-align: center;
	position: relative;
	float: left;
}
.graduate-menu li a {
	display: inline-block;
	width: 100%;
	line-height: 3em;
	color: #000;
}
.graduate-menu li + li {
	border-left: 1px solid rgb(200, 200, 200);
}

.graduate-menu li a:before {
	content: "";
	display: block;
	height: .3em;
	background-color:#fdc267;
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 2;
}

.graduate-menu li a:after {
	content: "";
	display: block;
	height: .3em;
	background-color: #ff9a00;
	position: absolute;
	bottom: 0;
	width: 0%;
	z-index: 10;
	transition-property: width;
	transition-duration: .3s;
	transition-delay: 0s;
	transition-timing-function: ease-out;]
	text-align: center;
}
.graduate-menu li a:hover:after {
	width: 100%;
}



.graduate-home .content-box.title {
	padding-bottom: 0;
}

@media(min-width: 1800px) {
	svg#head_image {
		height: 400px;
	}
}
@media(max-width: 1800px) {
	svg#head_image {
		height: 300px;
	}
}

@media(max-width: 1500px) {
	svg#head_image {
		height: 250px;
	}
}
@media(max-width: 1300px) {
	svg#head_image {
		height: 200px;
	}
}
@media(max-width: 1000px) {
	svg#head_image {
		height: 150px;
	}
}

@media(min-width: 1279px) {
	
	.content-box .panel a:hover::before {
		content: 'more';
		position: absolute;
		z-index: 1;
		display: flex;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		align-items: center;
		justify-content: center;
		font-size: 18px;
		background-color: rgba(0, 0, 0, .33);
		color: white;
	}
	.content-box .panel a:hover::after {
		width: 40%;
		transition-duration: .66s;
	}
}
@media(max-width: 1279px) {
	.content-box table,
	.content-box tbody,
	.content-box tr,
	.content-box th,
	.content-box td {
		display: block;
	}
	.content-box thead {
		display: none;
	}
	.content-box th,
	.content-box td {
		padding: 8px 0;
		text-align: left;
		border: none;
	}
	.content-box tr {
		border-top: 1px solid rgb(200, 200, 200);
	}
	.content-box .date,
	.content-box .status,
	.content-box .time {
		display: inline-block;
		width: auto;
	}
	.content-box .date {
		margin-right: 1em;
	}

	
	.content-requirements th,
	.content-requirements td {
		padding: 0;
		margin: 1em 0;
	}
}
@media(max-width: 1023px) {
	.content-box .steps {
		width: 100%;
	}
	
	.content-box .panel a,
	.content-box .panel .close,
	.content-box .panel a:first-child {
		width: 50%;
	}
	.content-box .panel .medium {
		display: none;
	}
	.content-box .panel .small {
		display: block;
	}
	.submnail {
		width: 100%;
		margin-right: 0;
	}
}
@media(max-width: 800px) {
	.content-box .panel a,
	.content-box .panel .close {
		width: 33%;
	}
	.content-box .panel a:first-child {
		width: 66%;
	}
	.content-box .panel .medium {
		display: block;
	}
	.content-box .panel .small {
		display: none;
	}
	.submnail {
		width: 48%;
		margin-right: 2%;
	}
}
@media(max-width: 580px) {
	.content-box .panel a,
	.content-box .panel .close,
	.content-box .panel a:first-child {
		float: none;
		width: 75%;
		margin: 0 auto 1em;
	}
	.content-box .panel .medium {
		display: none;
	}
	.content-box .panel .small {
		display: block;
	}
	.submnail {
		width: 100%;
		margin-right: 0;
	}
}

