@charset "UTF-8";



/* under_obj --------------------------------------------------------------- */
#under_obj,
#under_obj p,
#under_obj p img {
	width: 520px;
	height: 495px;
	}

#under_obj {
	position: absolute;
	left: 0;
	top: 330px;
	}

@media(max-width: 768px){
  #under_obj,
  #under_obj p,
  #under_obj p img {
    width: 350px;
    height: 333px;
    }
	
  #under_obj {
    position: absolute;
    left: 0;
    top: 180px;
    }
	}



/* under_box --------------------------------------------------------------- */
.under_box {
	margin: 0 auto 70px auto;
	overflow: hidden;
	}

	.under_box .underLeft {
		float: left;
		width: auto;
		}

		.under_box .underLeft p:first-of-type {
			font-size: 26px;
			font-weight: bold;
			margin-bottom: 0px;
			}

			.under_box .underLeft p span {
				display: inline-block;
				font-size: 18px;
				font-weight: bold;
				margin-left: 15px;
				}

		.under_box .underLeft p:last-of-type {
			font-size: 18px;
			font-weight: bold;
			}

.under_box .underRight {
	float: right;
	width: 700px;
	padding-top: 12px;
	}

	.under_box .underRight h2 {
		font-size: 28px;
		font-weight: bold;
		margin-bottom: 20px;
		line-height: 1;
		}

	.under_box .underRight p {
		font-size: 17px;
		line-height: 1.8;
		}

	.under_box .underRight span.arrow {
    width: 15px;
    height: 15px;
		color: #3399CC;
		display: inline-block;
		font-size: 12px;
		margin-right: 10px;
    background-image: url("../../img/common/arrow.png");
    background-position: left center;
    background-size: auto 100%;
		}

@media(max-width: 768px){
  .under_box {
    margin: 0 auto 70px auto;
    overflow: hidden;
    }

    .under_box .underLeft {
      float: none;
      }

      .under_box .underLeft p:nth-of-type(1) {
        margin-bottom: 5px;
        }

        .under_box .underLeft p span {
          font-size: 16px;
          }

      .under_box .underLeft p:nth-of-type(2) {
        font-size: 14px;
        }

  .under_box .underRight {
    float: none;
    width: 100%;
    padding-top: 30px;
    }

    .under_box .underRight h2 {
      font-size: 18px;
      }
  
		.under_box .underRight p {
			font-size: 14px;
			}
	
    .under_box .underRight span.arrow {
      width: 12px;
      height: 12px;
      position: relative;
      top: 1px;
      }

	}



/* under_box --------------------------------------------------------------- */
.under_box {
	}

	.under_box .underRight {
		padding-bottom: 50px;
		border-bottom: solid 2px #666666;
		}

	.under_box .underRight.end {
		padding-top: 30px;
		border-top: solid 1px;
		}

	.under_box .underRight h2 span {
		display: inline-block;
		font-size: 55px;
		position: relative;
		top: 10px;
		}

	.under_box .underRight h2.font26 {
		font-size: 26px;
		}

	.under_box .underRight h2.font26 span {
		display: block;
		font-size: 16px;
		position: static;
		}

	.under_box .underRight p.img {
		width: 100%;
		margin: 30px 0 30px auto;
		}

	.under_box .underRight a.link {
		margin: 0 auto;
		display: inline-block;
		text-align: center;
		font-weight: bold;
		color: #008bcd;
		padding: 5px 25px;
		box-sizing: border-box;
		border: solid 2px #008bcd !important;
		border-radius: 50px;
		}

	.under_box .underRight a.link:first-of-type {
		margin: 70px auto 30px auto;
		}

	.under_box .underRight p#ap_1 {
		width: 85%;
		margin: 30px auto 30px auto;
		}

		.under_box .underRight p#ap_1 a {
			background-color: transparent;
			}

@media(max-width: 768px){
  .under_box .underRight h2.font26 {
    font-size: 22px;
    }
	
    .under_box .underRight h2.font26 span {
      font-size: 14px;
      } 
  
  .under_box .underRight p.img {
    width: 100%;
    margin: 30px auto;
    }
	
	.under_box .underRight p#ap_1 {
		width: 100%;
		}
	
	
	.under_box .underRight a.link {
		display: block;
		width: 90%;
		padding: 10px 0;
		font-size: 16px;
		}

	.under_box .underRight a.link:first-of-type {
		margin: 30px auto 0px auto;
		}
	}



/* INDEX --------------------------------------------------------------- */
#index {
	margin: 0 auto 70px auto;
	}

	#index .index_link {
		margin: 30px auto 20px auto;
		}

		#index .index_link a {
			width: 100%;
			height: 70px;
			margin: 15px auto 0 auto;
			padding-top: 7px;

			line-height: 1;
			font-size: 20px;
			text-align: center;

			border-radius: 50px;
			box-sizing: border-box;
			background-size: auto 18px;
			position: relative;

			display: grid;
			place-items: center;

			background-color: #008bcd;
			color: #ffffff;
			background-image: url("../../img/recruit/arrow_scr.png");
			background-position: 20px center;
			}

			#index .index_link a span {
				font-size: 13px;
				text-align: center;
				letter-spacing: 1px;
				margin-top: -20px;
				opacity: 0.7;
				}

		#index .index_link ul {
			width: 100%;
			overflow: hidden;
			margin: 0 auto;
			}

			#index .index_link ul li {
				float: left;
				width: 49%;
				margin: 0 2% 0 0;
				}

			#index .index_link ul li:last-of-type {
				margin-right: 0;
				}

				#index .index_link ul li a {
					font-size: 16px;
					height: 70px;
					}

				#index .index_link ul:first-of-type li a {
					background-image: url("../../img/recruit/arrow_page.png");
					background-position: right 20px center;
					}

@media(max-width: 768px){
	#index {
		margin: 0 auto 50px auto;
		}
	
			#index .index_link a {
				height: 60px;
				font-size: 18px;
				}

				#index .index_link a span {
					margin-top: -15px;
					}

			#index .index_link ul {
				width: 100%;
				}

				#index .index_link ul li {
					float: none;
					width: 100%;
					margin: 0;
					}

					#index .index_link ul li a {
						font-size: 16px;
						height: 60px;
						}
	}



/* CEO/COOからのメッセージ --------------------------------------------------------------- */
#message {
	}

	#message .message a:first-of-type {
		margin-bottom: 20px;
		}

		#message .message a:first-of-type img {
			width: 100%;
			}

	#message .message h2 {
		font-weight: bold;
		margin-bottom: 10px;
		font-size: 20px;
		}

	#message .message p {
		font-size: 14px;
		margin-bottom: 50px;
		}

	#message a.link {
		width: 250px;
		font-size: 16px;
		margin: 0 auto !important;
		}

@media(max-width: 768px){
	#message .message {
		}

	#message .message:nth-of-type(4n) {
		margin-right: 4%;
		}

	 #message .message:nth-of-type(2n) {
		margin-right: 0;
		}
	}



/* DESIRED CANDIDATES --------------------------------------------------------------- */
#candidates {
	}

	#candidates p.text {
		margin-bottom: 50px;
		}

	#candidates ul {
		overflow: hidden;
		margin: 0 auto;
		}

	#candidates ul li {
		float: left;
		width: 48%;
		margin: 0 4% 60px 0;
		}

	#candidates ul li:nth-of-type(2n) {
		margin-right: 0;
		}

		#candidates ul li p:first-of-type {
			text-align: center;
			margin-bottom: 30px;
			}

			#candidates ul li p:first-of-type img {
				width: 200px;
				}

		#candidates ul li h4 {
			font-size: 16px;
			font-weight: bold;
			margin-bottom: 20px;
			}

		#candidates ul li:first-of-type h4 {
			letter-spacing: -1px;
			}

		#candidates ul li p:last-of-type {
			font-size: 14px;
			letter-spacing: 0;
			}

@media(max-width: 768px){
	#candidates {
		}

		#candidates p.text {
			margin-bottom: 20px;
			}

		#candidates ul li {
			margin: 0 4% 30px 0;
			}

			#candidates ul li p:first-of-type {
				margin-bottom: 10px;
				}
	
				#candidates ul li p:first-of-type img {
					width: 100%;
					}

			#candidates ul li h4 {
				margin-bottom: 10px;
				}
	
			#candidates ul li:first-of-type h4 {
				letter-spacing: 0;
				}
	}



/* OPEN POSITIONS --------------------------------------------------------------- */
#positions {
	}

	#positions .positions {
		margin-bottom: 70px;
		padding-top: 30px;
		position: relative;
		border-top: solid 1px;
		border-top-color: #ccc !important;
		}

	#positions .positions:last-of-type {
		margin-bottom: 0;
		}

		#positions .positions span.status {
			margin-bottom: 20px;
			text-align: right;
			font-size: 14px !important;
			}

		#positions .positions h1,
		#positions .positions h2,
		#positions .positions h4 {
			line-height: 1.3;
			}

		#positions .positions h1 {
			font-size: 26px !important;
			font-weight: bold;
			margin-bottom: 10px;
			}

		#positions .positions h2 {
			font-size: 20px !important;
			font-weight: bold;
			margin-bottom: 20px;
			line-height: 1.3;
			}

		#positions .positions h4 {
			margin-bottom: 15px;
			}

		#positions .positions p {
			font-size: 16px;
			line-height: 1.7;
			margin-bottom: 1em;
			}

		#positions .positions ul {
			width: 100%;
			overflow: hidden;
			margin: 30px auto 0 auto;
			}

			#positions .positions p span {
				display: inline-block;
				}

			#positions .positions ul li {
				float: left;
				width: 49%;
				margin: 0 2% 0 0;
				}

			#positions .positions ul li:last-of-type {
				margin-right: 0;
				}

				#positions .positions ul li a {
					width: 100%;
					height: 60px;
					margin: 0 auto;

					line-height: 1;
					font-size: 18px;
					text-align: center;

					border-radius: 50px;
					box-sizing: border-box;
					background-size: auto 18px;
					position: relative;

					display: grid;
					place-items: center;

					background-color: #008bcd;
					color: #ffffff;
					background-image: url("../../img/recruit/arrow_page.png");
					background-position: right 20px center;
					}

				#positions .positions ul li:last-of-type a {
					color: #008bcd;
					background-color: #ffffff;
					border: solid 2px;
					border-color: #008bcd !important;
					background-image: url("../../img/recruit/arrow_page_white.png");
					}

@media(max-width: 768px){
	#positions {
		}

		#positions .positions {
			margin-bottom: 50px;
			}

			#positions .positions h1 {
				font-size: 20px !important;
				}

			#positions .positions h2 {
				font-size: 16px !important;
				font-weight: bold;
				}

			#positions .positions span {
				font-size: 12px !important;
				}

			#positions .positions p {
				display: inline-block;
				}			

			#positions .positions ul {
				margin: 0 auto;
				}

				#positions .positions ul li {
					float: none;
					width: 90%;
					margin: 0 auto;
					}

				#positions .positions ul li:last-of-type {
					margin-right: auto;
					}

					#positions .positions ul li a {
						margin: 15px auto 0 auto;
						}
	}



/* MAKAIRA FROM WITHIN  --------------------------------------------------------------- */
#within {
	}

	#within ul {
		overflow: hidden;
		}

		#within ul li {
			float: left;
			width: 210px;
			margin: 0 35px 50px 0;
			}

		#within ul li:nth-of-type(2n) {
			margin-right: 35px;
			}

		#within ul li:nth-of-type(3n) {
			margin-right: 0;
			}

			#within ul li a:first-of-type {
				width: 100%;
				height: 250px;
				overflow: hidden;
				margin-bottom: 10px;
				}

				#within ul li a:first-of-type img {
					width: 100%;
					height: 100%;
					object-fit: cover;
					}

			#within ul li p:nth-of-type(1) {
				font-weight: bold;
				line-height: 1.5;
				margin-bottom: 10px;
				font-size: 18px;
				}

				#within ul li p:nth-of-type(1) span {
					font-size: 13px;
					}

			#within ul li p:nth-of-type(2) {
				height: 80px;
				font-size: 14px;
				line-height: 1.5;
				}

			#within a.link {
				width: 100%;
				font-size: 14px;
				margin: 0 auto !important;
				}

@media(max-width: 768px){
	#within ul li {
		width: 48%;
		margin: 0 4% 30px 0;
		}

	#within ul li:nth-of-type(3n) {
		margin-right: 4%;
		}

	#within ul li:nth-of-type(2n) {
		margin-right: 0;
		}
	
		#within ul li p:nth-of-type(2) {
			font-size: 13px;
			}
	}



/* MAKAIRA FROM WITHINのモーダル  --------------------------------------------------------------- */
#project-modal,
#project-modal #Loading,
#project-modal iframe {
	position: fixed;
	}

	#project-modal,
	#project-modal iframe {
		width: 1000px;
		height: 70vh;
		}

	#project-modal {
		display: none;
		z-index: 99999;
		background-color: #ffffff;
		transform: translate(-50%,-50%);
		left: 50%;
		top: 50%;
		}

		#project-modal iframe {
			border: solid 1px #000000;
			left: 0;
			top: 0;
			}

@media(max-width: 768px){
	}



/* 卒業生インタビュー  --------------------------------------------------------------- */
#ob {
	}

	#ob ul {
		overflow: hidden;
		}

		#ob ul li {
			float: left;
			width: 210px;
			margin: 0 35px 50px 0;
			}

		#ob ul li:nth-of-type(3n) {
			margin-right: 0;
			}

			#ob ul li a:first-of-type {
				width: 100%;
				height: 250px;
				overflow: hidden;
				margin-bottom: 10px;
				}

				#ob ul li a:first-of-type img {
					width: 100%;
					height: 100%;
					object-fit: cover;
					}


			#ob ul li p:nth-of-type(1) {
				font-weight: bold;
				line-height: 1.5;
				margin-bottom: 10px;
				font-size: 18px;
				}

				#ob ul li p:nth-of-type(1) span {
					font-size: 13px;
					}

			#ob ul li p:nth-of-type(2) {
				height: 80px;
				font-size: 14px;
				line-height: 1.5;
				}

			#ob a.link {
				width: 100%;
				font-size: 14px;
				margin: 0 auto !important;
				}

@media(max-width: 768px){
	#ob ul li {
		width: 48%;
		margin: 0 4% 30px 0;
		}

	#ob ul li:nth-of-type(4n) {
		margin-right: 4%;
		}

	 #ob ul li:nth-of-type(2n) {
		margin-right: 0;
		}
	}



/* ENTRY --------------------------------------------------------------- */
#entry {
	}

	#entry .under_box .underRight p {
		font-size: 20px;
		font-weight: bold;
		}

	#entry .under_box .underRight a.link {
		color: #ffffff !important;
		background-color: #008bcd;
		border-color: #008bcd !important;
		}

@media(max-width: 768px){	
	}