@charset "utf-8";
@media screen and (max-width: 1240px) {
/*-----------------------------------------------------------
	menu
-----------------------------------------------------------*/
.aside-list {
	margin-top: 60px;
}
.aside-anchor {
	font-size: 2.4rem;
}
/*-----------------------------------------------------------
	index
-----------------------------------------------------------*/
.index-works-list.row1 {
	grid-template-columns: repeat(4, 215px);
}
.index-works-list.row2 {
	grid-template-columns: repeat(3, 215px);
}
}
@media screen and (max-width: 1024px) {
/*-----------------------------------------------------------
	menu
-----------------------------------------------------------*/	
.aside-content h2 span.jp em{
	font-size: 4.0rem;
}
.aside-content h2{
	font-size: 2.7rem;
}
.aside-list {
	margin-top: 150px;
}
.aside-anchor {
	font-size: 2.4rem;
}
/*-----------------------------------------------------------
	index
-----------------------------------------------------------*/
.tab_area .content {
	padding: 3.0rem 2.0rem; 
}
/*-----------------------------------------------------------
	投稿
-----------------------------------------------------------*/
#post-container article {
	padding: 2.5rem;
}
.post-content {
	padding: 0 2.5rem 3.0rem;
}
#container.two-columns-contact main #post-container .contact-tel-no {
	font-size: 3.5rem;
}
#container.two-columns-contact main #post-container .contact-tel-no:before{
	width: 25px;
	height: 25px;
}
#container.two-columns-contact .contact-form dl{
	grid-template-columns: 1fr;
}
#container.two-columns-contact .contact-form dl dt{
	padding: 0;	
}
}
@media screen and (max-width: 840px) {
	.tablet {
		display: block;
	}
	.aside-content h2{
		font-size: 2.0rem;
	}
	.aside-content h2 span.jp em{
		font-size: 3.0rem;
	}
	.aside-content h2 span.en {
    	font-size: 1.8rem;
	}
	.aside-anchor {
		font-size: 2.1rem;
	}
/*-----------------------------------------------------------
	index
-----------------------------------------------------------*/
	#index-search .section-ttl span{
		display: block;
		padding-left: 0;
	}
	.index-keyv-card-box {
		padding: 5.0rem;
	}
	.index-keyv-card-box-txt-subttl {
		font-size: 2.1rem;
		line-height: 1.4;
		margin-bottom: 1.0rem;
	}
	.index-keyv-card-box-txt-ttl {
		font-size: 3.5rem;
	}
	#index-search article {
		padding: 3.0rem 2.0rem;
	}
	.tab_area .btn_tab {
		font-size: 1.6rem;
		padding: 2.0rem;
	}
	.index-search-list li a{
		font-size: 1.2rem;
	}
	.index-search-form h3{
		font-size: 1.6rem;
	}
	.index-search-form .form-txt {
		font-size: 1.4rem;
	}
	.index-agent-box .pr-txt {
		font-size: 4.0rem;
	}
	.index-agent-box h2{
		font-size: 2.4rem;
	}
	.index-agent-box h3{
		font-size: 1.8rem;
	}
	index-agent-box-txt {
		font-size: 1.4rem;
	}
	.index-works-list.row1 {
		grid-template-columns: repeat(4, 160px);
	}
	.index-works-list.row2 {
		grid-template-columns: repeat(3, 160px);
	}
	.index-works-list li .image {
		width: 70px;
	}
	.index-works-list li h2{
		line-height: 1.4;
		font-size: 1.4rem;
	}
	.carousel-slide {
		flex: 0 0 calc((100% - 20px) / 2);
	}
	.carousel-slide-detail-time {
		display: block;
	}
/*-----------------------------------------------------------
	投稿
-----------------------------------------------------------*/
#container.two-columns {
	grid-template-columns: 1fr;
}
#container.two-columns main{
	margin-bottom: 3.0rem;
}
/*-----------------------------------------------------------
	求人情報
-----------------------------------------------------------*/
.job-ttl {
	font-size: 2.4rem;
}
.contact-info {
	width: 80%;
}
#container.two-columns-contact main, #container.two-columns-contact .contact-form {
	padding: 2.5rem;
}
}
@media screen and (max-width: 428px) {
	.tablet {
		display: none;
	}
	header .header-inner {
		padding: 1.0rem 2.0rem;
	}
	header .header-inner h1{
		width: 150px;
	}
	header .header-inner .search-form {
		display: none;
	}
	footer {
		padding: 2.5rem 0;
	}
	.sidebar-block h2{
		font-size: 1.8rem;
	}
	.sidebar-block .list li .detail .cat-name {
		font-size: 1.0rem;
		padding: 0.25rem 0.5rem;
	}
	.sidebar-block .list li .detail time{
		font-size: 1.2rem;
	}
/*-----------------------------------------------------------
	menu
-----------------------------------------------------------*/
	.aside-left {
		width: 100%;
		height: 40%;
		z-index: 100000000;
	}
	.aside-content h2 {
        font-size: 1.6rem;
    }
	.aside-content h2 span.jp em {
        font-size: 2.7rem;
        line-height: 1.6;
    }
    .aside-content h2 span.en{
	    font-size: 1.4rem;
    }
	.aside-content h3{
		bottom: auto;
		top: 1.5rem;
		width: 180px;
	}
	.aside-right {
		width: 100%;
		height: 60%;
		top: 40%;
	}
	.aside-list {
        margin-top: 20px;
        padding-left: 2.0rem;
    }
    .aside-anchor {
	    font-size: 1.6rem;
    }
    @media screen and (max-height: 668px){
	.aside-left {
		height: 30%;
	}
	.aside-content h2{
		top: 8.0rem;
	}
	.aside-right {
		width: 100%;
		height: 70%;
		top: 30%;
	}
    }
/*-----------------------------------------------------------
	index
-----------------------------------------------------------*/
	#index-keyv .slide {
		flex-wrap: wrap;
	}
	#index-keyv button{
		top: 46.5%;
	}
	.index-keyv-card-box {
		order: 2;
		width: 100%;
		height: 50%;
		padding: 3.5rem 2.0rem;
	}
	.index-keyv-image {
		order: 1;
		width: 100%;
		height: 50%;
	}
	.index-keyv-card-box-txt-subttl {
		font-size: 1.4rem;
	}
	.index-keyv-card-box-txt-ttl {
		font-size: 2.4rem;
	}
	.index-keyv-card-box-txt {
		margin-bottom: 2.0rem;
	}
	.index-keyv-card-box-txt div{
		font-size: 1.4rem;
	}
	.index-keyv-card-box-txt-link a, .btn-link a{
		font-size: 1.4rem;
		padding: 1.0rem 2.0rem 1.25rem;
	}
	#index-search {
	}
	#index-search article{
		padding: 2.0rem 1.0rem;
	}
	#index-search .section-ttl {
		line-height: 1.4;
		font-size: 2.1rem;
	}
	#index-search .section-ttl span{
		font-size: 1.4rem;
	}
	.tab_area .btn_tab {
		font-size: 1.2rem;
		padding: 1.0rem 0.75rem;
	}
	input:checked + .btn_tab {
		padding: 1.5rem 0.75rem;
	}
	.tab_area .content {
		padding: 2.0rem 1.0rem;
	}
	#search-tab01.index-search-list, #search-tab03.index-search-list {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(4, 1fr);
	}
	#search-tab02.index-search-list {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(2, 1fr);
	}
	.index-search-list li {
		border: 0;
	}
	.index-search-form {
		width: 100%;
	}
	#index-agent {
		background: url("/wp-content/themes/recruitmap/assets/images/index/bg_index-about.webp") no-repeat right 5.0% bottom / cover;
		height: 500px;
		z-index: -1;
	}
	#index-agent:after{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
		width: 100%;
		height: 100%;
		background: rgba(255,2550,255,0.4);
	}
	#index-agent .index-agent-box{
		top: auto;
		bottom: 2.0rem;
		left: 50%;
		transform: translate(-50%, 0);	
		width: 95%;
		z-index: 1;
	}
	.index-agent-box .pr-txt {
		font-size: 2.4rem;
		line-height: 1.2;
		margin-bottom: 1.0rem;
	}
	.index-agent-box h2{
		font-size: 2.1rem;
		line-height: 1.4;
	}
	.index-agent-box h3{
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.index-agent-box-txt {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.section-ttl.line {
		font-size: 2.1rem;
	}
	.section-ttl.line span{
		display: block;
		padding: 1.0rem 0 0;
		margin-bottom: 0;
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.index-works-list li {
		padding: 2.0rem 1.0rem;
	}
	.index-works-list li .image {
		width: 60px;
		margin-bottom: 1.0rem;
	}
	.index-works-list li h2{
		font-size: 1.2rem;
	}
	.index-works-list.row1 {
        grid-template-columns: repeat(2, 150px);
    }
    .index-works-list.row2 {
        grid-template-columns: repeat(2, 150px);
    }
    .carousel-slide {
        flex: 0 0 100%;
    }
/*-----------------------------------------------------------
	投稿
-----------------------------------------------------------*/
	.breadcrumb ul{
		padding: 1.0rem 2.0rem;
		font-size: 1.2rem;
	}
	#post-container {
		padding: 2.0rem;
	}
    #post-container article {
		padding: 0;
	}
	.cat-name {
		margin-top: -3px;
	}
	.cat-name a{
		font-size: 1.4rem;
	}
	.post-ttl {
		font-size: 2.4rem;
	}
	.post-detail time{
		font-size: 1.4rem;
	}
	.post-content {
		padding: 0 1.5rem 2.0rem;
	}
	.post-content img{
		width: 100%;
	}
	#toc ul{
		padding: 2.0rem;
	}
	#toc ul li{
		line-height: 1.4;
		font-size: 1.4rem;
	}
	.post-content p{
		font-size: 1.4rem;
	}
	.post-content h2{
		font-size: 1.8rem;
		line-height: 1.4;
	}
	.post-content h3{
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.post-content ul li{
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.post-content table{
		font-size: 1.4rem;
	}
/*-----------------------------------------------------------
	求人情報
-----------------------------------------------------------*/
	.cat-list li.item {
		padding: 3.0rem 2.0rem;
	}
	.job-ttl {
		font-size: 2.1rem;
	}
	.job-table {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.job-table tr th, .job-table tr td{
		padding: 2.0rem 1.0rem;
	}
	#post-container.job-post article{
		padding: 2.0rem;
	}
	.job-subttl {
		font-size: 1.8rem;
	}
	.job-important-box {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.job-important-box .job-important-box-L {
		width: 100%;
		padding: 0;
	}
	.job-important-box h4{
		margin-bottom: 1.0rem;
	}
	.job-important-list li{
		padding: 0 0.5rem 0.25rem; 
		width: auto;
	}
	.job-important-list li:nth-child(4n){
		margin-right: 4%;
	}
	.job-important-ttl {
		font-size: 1.6rem;
	}
	.job-important-box .job-important-box-R {
		width: 100%;
		padding: 0;
		margin-bottom: 5.0rem;
	}
	.job-detail-table {
		font-size: 1.4rem;
	}
	.job-detail-table tr th, .job-detail-table tr th, .job-detail-table tr th, .job-detail-table tr td{
		width: 100%;
		display: block;
		padding: 1.0rem 1.5rem;
	}
	.job-flow {
		font-size: 1.4rem;
	}
	.job-flow-L, .job-flow-R, .job-flow-B-box-L, .job-flow-B-box-R {
		width: 100%;
		padding: 0;
		margin-bottom: 3.0rem;
	}
	#post-container.other article{
		padding: 3.0rem;
	}
	#post-container.other article h2{
		font-size: 2.4rem;
		margin-bottom: 2.0rem;
	}
	.contact-privacy.center {
		text-align: left !important;
	}
	.contact-privacy h3{
		font-size: 1.8rem;
		line-height: 1.4;
		margin-bottom: 1.0rem;
	}
	.contact-info {
		width: 100%;
		font-size: 1.4rem;
		padding: 1.0rem;
	}
	.contact-form dl{
		grid-template-columns: 1fr;
	}
	.contact-form dl dt{
		padding: 1.0rem 0 0;
	}
	.contact-form .txt {
		font-size: 1.2rem;
	}
	#container.two-columns-contact {
		grid-template-columns: 1fr;
	}
	#container.two-columns-contact main #post-container .contact-tel-no {
		padding-left: 3.0rem;
	}
	#container.two-columns-contact main #post-container .contact-tel-no:before{
		top: 0.75rem;
	}
	.no-item {
		padding: 3.0rem;
		font-size: 1.4rem;
	}
}