@charset "UTF-8";


/*!
 * cssカスタム
 */




/*!
 * 
 * スマホ画面
 * 
 */

	.bd-placeholder-img {
		font-size: 1.125rem;
		text-anchor: middle;
		-webkit-user-select: none;
		-moz-user-select: none;
		user-select: none;
		}
		
		
	body {
			min-height: 75rem;
			padding-top: 4.5rem;
		}
		
		
	.greenironback {
			background-image: url("../img_common/greenironback.png");
		}
		
		
	.mainlogo {
			display: inline-block;
			height: 3rem;
			transition: 0.3s;
		}
		
	.mainlogo:hover {
			opacity: 0.5;
			margin-left: 0.5rem;
			transition: 0.3s;
		}
		
		
	.navbar-toggler {
			padding: 0;
			font-size: 1.5rem;
		}
		
		
	.nav-link {
			margin: 0 0 2rem 0;
			background:
				linear-gradient(#e6af00 0 0) bottom left /var(--d, 0%) 6px no-repeat,
				linear-gradient(#e6af00 0 0) bottom right/var(--d, 0%) 6px no-repeat;
			transition: 0.3s, background-position 0.3s 0.3s;
		}
		
		
	.nav-link:hover {
			--d: 100%;
			background-position: bottom left, bottom right;
			transition: 0.3s, background-size 0.3s 0.3s;
		}
		
		
	.meleft-auto {
			margin-left: auto !important;
		}
		
		
	.menutext {
			display: inline-block;
			height: 2rem;
		}
		
		
	.menutextentry {
			display: inline-block;
			height: 1.5rem;
		}
		
		
	.topheader {
			position: relative;
			background-image: url("../img/topheadermap.png"),
							  url("../img_common/greenironback.png");
			background-position: top center,
								 top left;
			background-repeat: no-repeat,
							   repeat;
			background-size: 350%,
							 auto;
		}
		
		
	.topheader .toast {
			width: 80%;
			position: absolute;
			bottom: 7.5rem;
			left: 2rem;
			font-size: 0.5rem;
			text-align: left;
		}
		
		
	.topheader .toast-body {
			padding: 0.4rem;
		}
		
		
	.topheader time,
	.topheader .badge{
			margin-right: 0.3rem;
	}
		
		
	.topbg {
			background-image:  url("../img/hougan.png");
			background-position: 0 top;
			animation: bgroop 15s linear infinite;
		}
			@keyframes bgroop {
				from { background-position: 0 top; }
				to { background-position: 500px top; }
			}
		
		
	.topheader .row,
	.gt0 {
			--bs-gutter-x: 0;
			overflow: hidden;
		}
		
		
	.topheader .col-md-6 {
			text-align: left;
			position: relative;
		}
		
		
	.topheader h1 {
			position: relative;
			padding-left: 2rem;
			margin-bottom: 0;
		}
		
		
	.topheader img {
			height: auto;
			width: 85%;
		}
		
	.topheaderimage {
			position: relative;
			text-align: right!important;
		}
		
		
	.topheaderimage img {
			position: relative;
			height: 15rem;
			width: auto;
			top: -7rem;
			right: -3rem;
		}
		
		
	.douga {
			background-color: #4c4948; 
			position: relative;
			margin-top: -7rem;
			text-align: right;
			--bs-gutter-x: 0;
		}
		
		
	.readmorearea {
			width: 100%;
		}
		
		
	.longbtnarea {
		padding-right: 1rem;
	}
		
		
	.dougalong,
	.readmore {
			margin: 1rem 0 1rem 0;
			transition: 0.3s;
		}
		
		
	.dougalong img,
	.readmore img {
			margin: 0 2rem 0 0;
			transition: 0.3s;
		}
		
		
	.dougalong img:hover,
	.readmore img:hover {
			margin: 0 0 0 0;
			transition: 0.3s;
		}
		
		
	.dougalong,
	.dougalong img,
	.readmore,
	.readmore img {
			display: inline-block;
			height: 2rem;
		}
		
		
	.pmessage {
			--bs-gutter-x: 0;
			position: relative;
			background-image:  url("../img/sora.jpg");
			background-position: 0 top;
			animation: bgrooppm 15s linear infinite;
		}
			@keyframes bgrooppm {
				from { background-position: 0 top; }
				to { background-position: -700px top; }
			}
		
		
	.pmessage .col-md-7 {
			padding: 0 1rem 0 0.5rem;
		}
		
		
	.pmessage .col-md-5 {
			text-align: right;
		}
		
		
	.pmessage p {
			margin-left: 1rem;
		}
		
		
	.pmessage h2 img {
			height: 3rem;
			margin: 2rem 0 2rem 0;
		}
		
		
	.penmessage {
			height: 3.5rem;
			margin-bottom: 1.5rem;
		}
		
		
	.messageportrait {
			height: 15rem;
			margin-right: 3rem;
			margin-bottom: 1rem;
		}
		
		
	.messageborder {
			position: absolute;
			bottom: 0;
		}
		
		
	.messageborder img{
			width: 100%;
		}
		
		
	.positionrel {
		position: relative;
	}
		
		
	.readimage h2 img,
	.interviewcard h2 img {
			height: 2.8rem;
			margin: 5rem 0 0.5rem 0;
		}
		
		
	.readimagecol .readimagemainimg {
			width: 95%;
			border-radius: 1rem;
			filter: drop-shadow(0.2rem 0.2rem 0 rgba(0,0,0,0.25));
			margin: 0 0 2rem 0;
		}
	
	.career {
			margin: 0 0 5rem 0;
		}
		
		
	.ztemae {
			position: relative;
			z-index: 100;
		}
		
		
	.topstaffillust {
			position: relative;
			z-index: 50;
			margin-top: -5rem;
		}
		
		
	.topstaffillust img {
			height: 12rem;
		}
		
		
	.grass {
			position: relative;
			z-index: 100;
			height: 2rem;
			width: 100%;
			background-image: url("../img/grass.png");
			background-repeat: x-repeat;
			margin-top: -2rem;
		}
		
		
	.interviewcard {
			padding: 0 0 3rem 0;
		}
		
		
	.card {
			border: 1px solid rgba(0, 0, 0, 0.125);
			border-radius: 1rem;
			filter: drop-shadow(0.3rem 0.3rem 0 rgba(0,0,0,0.25));
		}
		
		
	.card img {
			border-radius: 1rem 1rem 0 0;
		}
		
		
	.interviewcard a{
			opacity: 1;
			transition: 0.3s;
		}
		
		
	.interviewcard a:hover{
			opacity: 0.5;
			transition: 0.3s;
		}
		
		
	.contentsheader {
			position: relative;
			background-image: url("../img_common/backimaground.png"),
							  url("../img_common/greenironback.png");
			background-position: bottom left,
								 top left;
			background-repeat: no-repeat,
							   repeat;
			background-size: 400%,
							 auto;
			padding-bottom: 7rem;
		}
		
		
	.contentsheader .container {
			position: relative;
		}
		
		
	.contentsheader h1 img {
			display: block;
			height: 5rem;
			filter: drop-shadow(0.2rem 0.2rem 0 rgba(0,0,0,0.25));
			margin-bottom: 3rem;
		}
		
		
	.headerimage {
			position: relative;
			width: 100%;
			margin-bottom: 2rem;
		}
		
		
	.headerlead {
			padding-left: 2rem;
			padding-right: 2rem;
			color: white;
			filter: drop-shadow(0.15rem 0.15rem 0 rgba(0,0,0,0.25));
		}
		
		
	.headerillust {
			height: 8rem;
			padding-left: 2rem;
		}
		
		
	.gapspace {
			margin: 7rem 0 0 0;
		}
		
		
	.footerlogo,
	.footeraddress {
			text-align: center;
		}
		
		
	.footerlogo img {
			display: inline-block;
			height: 3.2rem;
			transition: 0.3s;
		}
		
		
	.footerlogo img:hover {
			opacity: 0.5;
			transition: 0.3s;
		}
		
		
	.titleimage {
			display: inline-block;
			height: 2.3rem;
		}
		
		
	.linkarrow {
			display: inline-block;
			height: 1rem;
		}
		
		
	.infobtn {
			padding: 1rem 1rem;
		}
		
		
	.entrybtn {
			padding: 1rem 1rem;
			border-radius: 3rem;
		}
		
		
	.copy {
			font-size: 0.5rem;
			text-align: center;
			padding: 1.5rem 0 0 0;
			color: #b9e39f;
		}
		
		
	.wakuoowaku {
			display:block;
		}
	.wakuname {
			display:inline-block;
			width:11em;
			text-align: left;
		}
	.wakudata {
			display:inline-block;
			width:7em;
			text-align: right;
		}




/*!
 * 
 * PC画面
 * 
 */
 

@media (min-width: 768px) {
	
	
	.bd-placeholder-img-lg {
			font-size: 3.5rem;
		}
		
		
	.mainlogo {
			display: inline-block;
			height: 3rem;
		}
		
		
	.nav-link {
			margin: 0 0 0 0;
			background:
				radial-gradient(circle closest-side, rgba(230,175,0,var(--t, 0)) 80%, transparent) top /5px 5px no-repeat,
				radial-gradient(circle closest-side, rgba(230,175,0,var(--t, 0)) 80%, transparent) top /5px 5px no-repeat,
				linear-gradient(#e6af00 0 0) top left /var(--d, 0%) 8px no-repeat,
				linear-gradient(#e6af00 0 0) top right/var(--d, 0%) 8px no-repeat;
			transition: 0.3s, background-position 0.3s 0.3s;
		}
		
		
	.nav-link:hover {
			--d: 100%;
			--t: 100;
			background-position: top left, top right;
			transition: 0.3s, background-size 0.3s 0.3s;
		}
		
		
	.topheader {
			background-size: 120%,
							 auto;
		}
		
		
	.topheader .toast {
			width: 80%;
			bottom: 1rem;
			left: auto;
			right: 1rem;
		}
		
		
	.topheader img {
			height: 30rem;
			width: auto;
		}
		
		
	.topheaderimage {
			text-align: center!important;
		}
		
		
	.topheaderimage img {
			height: 30rem;
			width: auto;
			top: 0;
		}
		
		
	.douga {
			margin-top: 0;
		}
		
		
	.messageportrait {
			height: 35rem;
			margin-right: auto;
			margin-top: 4rem;
			margin-bottom: 5rem;
		}
		
		
	.pmessage .col-md-7 {
			padding: 0 0 0 2rem;
		}
		
		
	.pmessage h2 img {
			height: 4rem;
			margin: 2rem 0 2rem 0;
		}
		
		
	.pmessage .col-md-5 {
			text-align: center;
		}
		
		
	.readimage h2 img,
	.interviewcard h2 img {
			height: 5rem;
		}
		
		
	.readimagecol .readimagemainimg {
			width: 85%;
			border-radius: 2rem;
			filter: drop-shadow(0.4rem 0.4rem 0 rgba(0,0,0,0.25));
		}
		
		
	.topstaffillust {
			margin-top: -22rem;
			text-align: right;
		}
		
		
	.topstaffillust img {
			height: 30rem;
		}
		
		
	.contentsheader {
			background-image: url("../img_common/backimaground.png"),
							  url("../img_common/greenironback.png");
			background-position: bottom left,
								 top left;
			background-repeat: no-repeat,
							   repeat;
			background-size: auto,
							 auto;
			text-align: right;
		}
		
		
	.contentsheader .container {
			position: absolute;
			top: 0;
			text-align: left;
		}
		
		
	.contentsheader h1 img {
			display: block;
			height: 8.5rem;
			filter: drop-shadow(0.3rem 0.3rem 0 rgba(0,0,0,0.25));
		}
		
		
	.headerimage {
			width: 70%;
			position: relative;
			border-radius: 3rem 0 0 3rem;
			margin: 3rem 0 0 auto;
			filter: drop-shadow(0.3rem 0.5rem 0 rgba(0,0,0,0.25));
		}
		
		
	.headerlead {
			padding-left: 5rem;
			padding-right: 0;
		}
		
		
	.headerillust {
			height: 10rem;
			padding-left: 5rem;
		}
		
		
	.footerlogo {
			text-align: right;
		}
		
		
	.footeraddress {
			text-align: left;
		}
		
		
	.titleimage {
			display: inline-block;
			height: 4rem;
		}
		
		
	.infobtn {
			padding: 2rem 1rem;
		}

	
	
	
	
	
	}



/*!
 * 
 * インタビュー
 * 
 */


	.intkeyword {
			padding: 0.5rem 4rem 0.5rem 1rem;
			margin-bottom: 1rem;
		}
	
	
	.intkeyword img {
			filter: drop-shadow(0.1rem 0.1rem 0 rgba(0,0,0,0.25));
		}
	
	
	.h2keyword {
			margin: -1.5rem 1rem 0 1rem;
		}
	
	
	.h2keyword img{
			filter: drop-shadow(0.25rem 0.25rem 0 rgba(0,0,0,0.25));
		}
	
	
	.intname {
			position: relative;
			margin: -5rem 0 5rem 3rem;
			z-index: 100;
		}
	
	
	.intyouyaku {
			display: inline;
			line-height: 2.5rem;
			padding: 0.2rem 0 0.2rem 0;
		}
	
	
	.intq {
			margin: 2rem 0 1rem 0;
		}
	
	
	nav .interviewcard {
			padding: 4rem 0 4rem 0;
		}
	
	
	.intbottomsp {
			padding-bottom: 6rem;
		}




@media (min-width: 768px) {
	
	
	.h2keyword {
			margin: 0 -15rem 0 3rem;
		}
	
	
	.h2keyword img{
			filter: drop-shadow(0.25rem 0.25rem 0 rgba(0,0,0,0.25));
		}
	
	
	.intname {
			margin: -9rem 0 5rem 5rem;
		}
	
	
	
	
	}





/*!
 * 
 * インフォメーション
 * 
 */


	.infohead {
			padding-bottom: 14rem;
		}
	
	
	.infohead .headerimage {
			margin: 3rem 0 -3rem auto;
		}
	
	
	.intname img {
			width: 80%;
			margin-left: -2rem;
		}
	
	
	.motomeru {
			padding: 0 2rem 0 2rem;
		}
	
	
	.motomeru h2 {
			margin: 0 0 2rem 0;
		}
	
	
	.motomeru li {
			margin: 1.5rem 0 1.5rem 0;
		}
	
	
	.motomeru img {
			width: 100%;
		}
	
	
	.bosyutab {
			margin: 3rem 0 3rem 0;
			padding: 2rem 0 0 0;
		}
	
	
	
	#newgrad,
	#newgrad-tab {
			background-color: #fff4dc;
			color: #212529;
		}
	
	
	#career,
	#career-tab {
			background-color: #e6af00;
			color: #fff;
		}
	
	
	#newgrad,
	#career {
			padding: 3rem 2rem 3rem 2rem;
		}
	
	
	.bosyutab .nav-item{
			width: 50%
		}
	
	
	.bosyutab .nav-link {
    border: none;
    border-top-left-radius: 1.25rem;
    border-top-right-radius: 1.25rem;
    height: 5rem;
}
	
	
	#newgrad-tab,
	#career-tab {
			width: 100%
		}
	
	
	




@media (min-width: 768px) {
	
	
	
	.infohead {
			padding-bottom: 7rem;
		}
	
	
	.infohead .headerimage {
			margin: 3rem 0 -10rem auto;
		}
	
	
	.intname img {
			width: 100%;
		}
	}





/*!
 * 
 * 私たちの強み
 * 
 */


	.tuyomi .card,
	.bgsora .card,
	.bgkawa .card,
	.bgchishitsu .card {
			background: none;
			border: none;
			filter: none;
			margin: 2rem 0 3rem 0;
		}
	
	
	.tuyomi .card-img-top,
	.bgsora .card-img-top,
	.bgkawa .card-img-top,
	.bgchishitsu .card-img-top {
			width: 70%;
			margin-left: auto;
			margin-right: auto;
		}
	
	
	.tuyomi .cardtextimage,
	.bgsora .cardtextimage,
	.bgkawa .cardtextimage,
	.bgchishitsu .cardtextimage {
			width: 100%;
			 border-radius: 1.25rem;
		}




/*!
 * 
 * 私たちの仕事
 * 
 */



	.bgsora {
			background-image: url("../works/img/back_sora.png");
			background-position: top-center;
			background-repeat: no-repeat;
			background-size: 100%;
			margin-top: -5rem;
			padding-top: 10rem;
	}
	
	
	.bgkawa {
			background-color: #6EB144;
			
	}
	
	
	.bgsora .col,
	.bgkawa .col {
			z-index: 1000;
	}
	
	
	.bgchishitsu {
			background-color: #A19874;
			
			
	}
	
	
	.kawaimag {
			margin-top: -8rem;
	}
	
	
	.chishitsuimag {
			margin-top: -4rem;
	}
	
	
	.kawaimag img,
	.chishitsuimag img {
			position: relative;
			width: 100%;
	}
	
	
	.haccyu {
			margin-top: 7rem;
			padding-bottom: 7rem;
	}
						





@media (min-width: 768px) {
	
	
	.bgsora {
			background-image: url("../works/img/back_sora.png");
			background-position: top-center;
			background-repeat: no-repeat;
			background-size: 100%;
			margin-top: -10rem;
			padding-top: 25rem;
	}
	
	
	.kawaimag {
			margin-top: -12rem;
	}
	
	
	.chishitsuimag {
			margin-top: -2rem;
	}
	
	
	.bgkawa {
			background-color: #6EB144;
	}
	
	
	
	}







/*!
 * 
 * エントリーフォーム
 * 
 */
 
 
 
 	.policytxt {
			height: 12rem;
			padding: 1rem 2rem;
		}
	
	
	.formver {
			padding-bottom: 10rem;
		}
	
	
	.formheaderlead {
			padding-left: 3rem;
			padding-right: 3rem;
			margin-top: -7rem;
		}
	
	
	.saiyounagare {
			margin: 3rem 0 3rem 0;
		}
	
	
	.zip50 {
			display: inline-block;
			width: 48%;
		}
	
	
	.tel30 {
			display: inline-block;
			width: 30%;
		}
	
	
	.doui {
			margin: 2rem 0;
	}
	
	
	.submitbtn {
			display: inline-block;
			padding: 1rem 1rem;
			width: 100%;
			margin: 2rem 0 0 0;
		}
	
	
	.sotsugyou input{
			display : inline-block;
			width: 1rem;
		}
	
	
	.sotsugyou label{
			display : inline-block;
			margin: 0 3rem 0 0.25rem;
		}
	
	
	
		
		
		
@media (min-width: 768px) {
		
		
	.submitbtn {
			padding: 2rem 1rem;
		}
	
	
	.formver {
			padding-bottom: 18rem;
		}
	
	
	
	
	}
 
 

