/* Responsive Styles
================================================== */


@media only screen and (max-width: 1500px) {
	/*トップ*/
	.header_top_wrap_pc {
		height: 660px;
	}
	.header_top_wrap_pc img {
		height: 660px;
		object-fit: cover;
	}
}
@media only screen and (max-width: 1425px) {
	/*固定ページ*/
	.header_main_wrap {
		height: 280px;
	}
	.header_main_wrap img {
		height: 280px;
		object-fit: cover;
	}
}
/* All size smaller than 1301 */
@media only screen and (max-width: 1300px) {
	.container,
	.boxed-layout #page,
	.boxed-layout-small #page {
		/*max-width: 970px;*/
		max-width: 93%;
	}
	.boxed-layout .container,
	.boxed-layout-small .container {
		max-width: 904px;
	}
	.four-column-full-width {
		width: 33.33%;
	}
	.header_main_wrap div.pg_title {
		left: 3%;
			transform: translate(-0%, -50%);
	}

}
@media only screen and (max-width: 1250px) {


}



/* All size smaller than 1024
================================================== */
@media only screen and (max-width: 1023px) {
	.container,
	.boxed-layout #page,
	.boxed-layout-small #page,
	#site-title a img {
		/*width: 708px;*/
	}
	.boxed-layout #page,
	.boxed-layout-small #page {
		overflow: hidden;
	}
	.boxed-layout .container,
	.boxed-layout-small .container,
	.boxed-layout #site-title a img {
		width: 668px;
	}
	.widget-title {
		font-size: 22px;
		line-height: 30px;	
	}
	.slider-content .slider-title a {
		font-size: 24px;
		line-height: 31px;
	}
	.slider-content .slider-text h3 {
		font-size: 15px;
		line-height: 22px;
	}
	#primary,
	#secondary {
		margin-bottom: 50px;
		padding: 0px;
		float: none;
		width: 100%;
		border: none;
	}
	.left-sidebar-layout #primary {
		float: none;
		padding-left: 0px;
	}
	.left-sidebar-layout #secondary {
		float: none;
		padding-right: 0px;
		border: none;
	}
	/* ----- Column ----- */
	.column {
		margin: 0 -15px;
	}
	.two-column,
	.three-column,
	.four-column {
		padding: 0  15px 40px;
	}
	.two-column,
	.four-column,
	.three-column,
	.four-column-full-width,
	.business-sidebar .three-column,
	.boxed-layout-small .four-column-full-width {
		width: 50%;
	}
	.widget_about_us .two-column,
	.widget_latest_blog .two-column {
		padding: 0 0 30px;
		width: 100%;
	}
	.three-column:nth-child(3n+4),
	.four-column:nth-child(4n+5),
	.column-2:nth-child(2n+3),
	.column-3:nth-child(3n+4),
	.column-4:nth-child(4n+5) {
 		clear: none;
	}
	.three-column:nth-child(2n+3),
	.four-column:nth-child(2n+3) {
 		clear: both;
	}

	#colophon .widget-area {
		margin: 0;
		display: block;
	}
	#colophon .column-1,
	#colophon .column-2,
	#colophon .column-3,
	#colophon .column-4 {
		border-right: none;
		width: 100%;
		float: none;
		padding: 0;
		display: block;
	}

}
/* All size smaller than 991
================================================== */
@media only screen and (max-width: 990px) {
	.top-header {
	    /*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
	}
	/*固定ページ*/
	.header_main_wrap {
		height: 200px;
	}
	.header_main_wrap img {
		height: 200px;
		object-fit: cover;
	}
	.header_main_wrap div.pg_title {
		top: 55%;
	}

	.header_inner_wrap {
		display: block;
		margin: 0;
		padding: 15px 20px;
		box-shadow: none;
		border-radius: none;
		width: 100%;
	}


	#content_top {
	    padding: 0px 0 0px;
	}
	#content {
	    padding: 63px 0 0px;
	}
	#site-branding {
		float: left;
		width: 250px;
	}
	#header_contact_pc {
		display: none;
	}
	#header_contact_sp {
		float: right;
		padding-right: 55px;
		margin-top: 6px;
		display: block;
	}
	#header_contact_sp a img {
		position: relative;
		width: 35px;
	}
	.top-header {
		background-color: #fff;
	}
	#sticky_header {
		background-color: #fff;
		box-shadow: 0px 2px 5px 0px #a6a6a6;
	}
	/*=======オリジナルナビ======= */
	.main_nav_pc {
		display: none;
	}
	.main_nav_sp {
		display: inline;
		position: relative;
		z-index: 2;
        /*pointer-events: none;*/
	}
	.site-info div.footer_nav_block {
		padding: 6% 27%;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#footer_logo {
		width: 100%;
		text-align: center;
		padding-right: 0%;
		margin-bottom: 20px;
	}
	#footer_logo img {
		width: 400px;
	}
	.footer_nav_wrap {
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}
	.footer_nav_wrap ul {
		list-style: none;
		margin: 0 auto;
	}
	#copyright {
		width: 100%;
		text-align: center;
	}

}

/* All size smaller than 951
================================================== */
@media only screen and (max-width: 950px) {


	/* ----- Responsive Navigation ----- */
	#sticky_header-sticky-wrapper {
		height: auto !important;
	}
	#sticky_header {
		position: relative !important;
	}
	.is-sticky #sticky_header {
		top: 0 !important;
	}
	.nav-site-title {
		display: none;
	}
	.menu-toggle {
		background-color: #fff;
		border: 2px solid #b49531;
		border-radius: 50px;
		/*color: #666;*/
		cursor: pointer;
		display: block;
		font-size: 0;
		margin: 0 0 0 auto;
		padding: 13px 12px;
		text-align: center;
		width: 58px;
		pointer-events: auto;
	}
    .line-one, 
    .line-two, 
    .line-three {
		backface-visibility: hidden;
		display: block;
		height: 3px;
		margin: 5px auto;
		/*-webkit-transition: all 0.3s;
	    	-moz-transition: 	all 0.3s;
	    	-o-transition: 		all 0.3s;
    	transition: 		all 0.3s;*/
		width: 100%;
	}
	.menu-toggle.on .line-one {
			-moz-transform: rotate(-40deg) translate(-5.5px, 6px);
	        -o-transform: rotate(-40deg) translate(-5.5px, 6px);
	        -webkit-transform: rotate(-40deg) translate(-5.5px, 6px);
    	transform: rotate(-40deg) translate(-5.5px, 6px);
	}
	.menu-toggle.on .line-two {
		opacity: 0;
			-moz-opacity: 0;
			filter:alpha(opacity=0);
	}
	.menu-toggle.on .line-three {
			-moz-transform: rotate(40deg) translate(-5px, -6px);
	        -o-transform: rotate(40deg) translate(-5px, -6px);
	        -webkit-transform: rotate(40deg) translate(-5px, -6px);
    	transform: rotate(40deg) translate(-5px, -6px);
	}
	.menu {
		display: none;
		/*transition: .5s ease;
		-webkit-transform: translateY(-130%);
		transform: translateY(-130%);*/
	}
	.widget_nav_menu .menu {
		display: block;
	}
	.toggled-on .menu {
		/*display: block;*/
		display: block;
		background-color: #fff;
		margin-top: 30px;
		/*-webkit-transform: translateY(-0%);
		transform: translateY(-0%);*/

	}
	.main-navigation {
		float: right;
		/*padding: 13px 20px;*/
		padding: 0;
		/*background-color: #999;*/
		position: absolute;
		top: 42px;
		right: 60px;
		width: 85%;
	}

	.main-navigation > ul > li {
		position: inherit;
		width: 100%;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
		margin-left: 0;
		padding: 0 20px;
	}
	.main-navigation > ul > li:last-child {
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	}
	.main-navigation > ul > li::before {
		visibility: hidden;
	}
	.main-navigation a {
		float: none;
		padding: 10px 0;
		height: inherit;
		text-align: center;
		pointer-events: auto;
	}
	.main-navigation a:hover,
	.main-navigation ul li.current-menu-item a,
	.main-navigation ul li.current_page_ancestor a,
	.main-navigation ul li.current-menu-ancestor a,
	.main-navigation ul li.current_page_item a,
	.main-navigation ul li:hover > a,
	.main-navigation li.current-menu-ancestor.menu-item-has-children > a:after,
	.main-navigation li.current-menu-item.menu-item-has-children > a:after,
	.main-navigation ul li:hover > a:after,
	.main-navigation li.menu-item-has-children > a:hover:after,
	.main-navigation li.page_item_has_children > a:hover:after {
		color: #b49531;
		border-bottom: none;
	}
	/* ----- Dropdown ----- */
	.main-navigation ul li:hover ul {
	  	top: auto;
	}
	.main-navigation ul li ul {
		background-color: transparent;
	  	top: auto;
	  	width: 100%;
	  	left: 40px;
	  	display: block;
		opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);
	  	visibility:visible;
	  	position: static;
	  	box-shadow: none;
	}
	.main-navigation ul li ul li {
		float: none;
		margin: 0;
		position: relative;
	    text-align: left;
	    width: 100%;
	    z-index: 1;
	    display: block;
		opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);
	  	visibility:visible;
	}
	.main-navigation ul li ul li {
    	border-top: 1px solid rgba(0, 0, 0, 0.1);
	}
	.main-navigation ul li ul li:before {
		position: static;
	}
	.main-navigation ul li ul li ul {
		left: 160px;
		display: block;
		opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);
	  	visibility:visible;
	}
	#site-navigation {
		z-index: 2;
		pointer-events: none;
	}
	#site-navigation ul ul ul a {
		padding-left: 40px;
	}
	.main-navigation ul ul li:hover ul {
		top: 0;
		display: block;
	  	opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);
	  	visibility:visible;
	}
	.main-navigation li li.menu-item-has-children > a:after, 
	.main-navigation li li.page_item_has_children > a:after {
		content: "\f107";
	}

}
/* All Mobile Screen ( smaller than 861px )
================================================== */
@media only screen and (max-width: 830px) {


}
/* All Mobile Screen ( smaller than 781px )
================================================== */
@media only screen and (max-width: 780px) {

	body {
		font-size: 16px;
	}
	header .container {
		width: 100%;
	}
    #site-branding {
        width: 200px;
        padding-top: 9px;
    }
	.container,
	.boxed-layout #page,
	.boxed-layout-small #page {
		/*width: 460px;*/
		width: 93%;
	}
	footer .container {
	    padding: 40px 20px;
	}
	.site-info div.footer_contact_block {
		padding: 55px 0px;
	}
	.pc_on {
	 display: none;
	}
	.sp_on {
	 display: inline;
	}
	.main_text {
		text-align: left;
	}
	.main_text br.br {
		display: none;
	}
	/*固定ページ*/
	.header_main_wrap {
		height: 200px;
	}
	.header_main_wrap img {
		height: 200px;
		object-fit: cover;
	}
	.header_main_wrap div.pg_title {
		top: 55%;

	}
	.header_main_wrap div.left div.pg_title br {
		display: inline;
	}
	/*---ヘッダー画像-----------------------------------------------*/

	/*トップ*/
	.header_top_wrap_pc {
		display: none;
	}
	.header_top_wrap_sp {
		display: block;
		position: relative;
		margin: 0 auto;
		padding: 0;
	}
	.header_top_wrap_sp div.text {
		display: block;
		width: 100%;
		position: absolute;
		top: 55%;
		left: 50%;
			transform: translate(-50%, -50%);
		color: #fff;
	}
	.header_top_wrap_sp div.text div.title {
		text-shadow: 0 0 15px #000;
		font-weight: bold;
		font-size: clamp(30px, 4vw, 40px);
		line-height: 1.3;
		text-align: center;
	}




	.header_top_wrap div.left {
		width: 100%;
		order: 2;
	}
	.header_top_wrap div.right {
		width: 65%;
		margin-left: auto;
		margin-right: auto;
		order: 1;
	}
	.header_top_wrap div.bottom {
		order: 3;
	}
	/*---TOP-----------------------------------------------*/
	/*メインテキスト　SP時に表示*/
	.top_main_text {
		display: block;
		text-align: left;
		margin: 0 0 40px 0;
	}


	/*service*/
	.top_service_wrap {
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.top_service_wrap div.no {
		width: 100%;
		min-width: 50px;
	}
	.top_service_wrap div.photo {
		width: 100%;
		padding-right: 0%;
		margin-bottom: 20px;
	}

	.top_service_wrap div.contents {
		width: 100%;
		padding-top: 0px;
	}
	/*ACHIEVEMENT*/
	.top_achievement_wrap {
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.top_achievement_wrap div.left {
		width: 100%;
		margin-bottom: 30px;
	}

	.top_achievement_wrap div.right {
		width: 100%;
	}
	/*ニュースブロック*/
	.news_btn {
		margin-top: 20px;
	}
	.top_news_wrap div.block_title {
		margin-bottom: 0px;
	}
	.top_news_wrap div.block_subtitle {
		margin-bottom: 10px;
	}
	.entry-content ul.category-posts-internal li {
		padding: 18px 10px;
	}
	.entry-content ul.category-posts-internal li div {
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.cat-post-date {
		padding-right: 0px;
		width: 100%;
	}

	.entry-content ul.category-posts-internal li a.cat-post-title {
		width: 100%;
	}
	/*---在留資格制度-----------------------------------------------*/
	.residential-status_wrap {
		column-gap: 0px;
	}
	.residential-status_wrap div.box {
		width: calc(100% / 1 - 0px);
		padding: 50px 30px 50px;
	}

	/*---費用と流れ-----------------------------------------------*/
	.flow_wrap {
		column-gap: 20px;
	}
	.flow_wrap div.icon_box {
		width: 74px;
		min-width: 74px;
		height: 74px;
	}
	.flow_wrap div.icon_box:before {
		height: calc(100% + 120px);
		top: 65px;
	}
	.flow_wrap div.flow_box p .br {
		display: none;
	}
	/*---私たちの強み-----------------------------------------------*/
	.choose_wrap div.photo,
	.choose_wrap div.text {
		width: 100%;
	}
	.choose_wrap div.photo {
		margin-bottom: 25px;
	}
	.choose_wrap.point02 div.text {
		order: 2;
	}
	.choose_wrap.point02 div.photo {
		order: 1;

	}

	/*---実績紹介-----------------------------------------------*/
	/*紹介斡旋企業数・業界数*/

	.achievement_frame div.blc5 div.blc5_inner {

			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.achievement_frame div.blc5 div.blc5_inner div.left {
		width: 100%;
	}
	.achievement_frame div.blc5 div.blc5_inner div.right {
		width: 100%;
	}
	/*紹介斡旋職種数*/
	.achievement_frame div.blc7 div.blc7_inner2 {
		max-width: 600px;
	}
	.achievement_frame div.blc7 div.blc7_inner2 div.box {
		width: calc(100% / 2 - 20px);
	}
	/*---お知らせ-----------------------------------------------*/
	.header_news_frame {
		margin-bottom: 60px;
	}
}

/* All Mobile Screen ( smaller than 768px )
================================================== */
@media only screen and (max-width: 767px) {

	.boxed-layout .container,
	.boxed-layout-small .container {
		width: 440px;
	}
	.comments-title,
	#respond h3#reply-title {
		font-size: 26px;
		line-height: 32px;
	}
	#main h1,
	#main h2,
	#main h3,
	#main h4,
	#main h5,
	#main h6 {
		padding-bottom: 10px;
	}

	hr {
		margin-bottom: 30px;
	}
	input[type="text"],
	input[type="email"],
	input[type="search"],
	input[type="password"],
	textarea,
	input[type="reset"],
	input[type="button"],
	input[type="submit"] {
		margin-bottom: 20px;
	}
	input.s {
		margin: 0;
	}	
	.boxed-layout #colophon,
	.boxed-layout-small #colophon {
		margin-bottom: 20px;
	}
	#site-branding {
		/*width: 100%;*/
	}

	.boxed-layout #site-branding,
	.boxed-layout #site-title a img,
	.boxed-layout-small #site-branding,
	.boxed-layout-small #site-title a img {
		max-width: 400px;
	}
	.header-search,
	.header-search-x {
		display: none;
	}

	.main-slider .image-slider {
		min-height: 400px;
	}
	.slider-content {
		width: 90%;
	}
	.slider-content .btn-default {
		font-size: 12px;
		margin: 10px 5px 20px;
		padding: 4px 12px;
	}

	/* ----- Column ----- */
	.column {
		margin: 0;
	}
	.two-column,
	.three-column {
		padding: 0 0 30px;
		width: 100%;
	}
	.four-column-full-width,
	.boxed-layout-small .four-column-full-width,
	#primary .three-column, 
	#primary .four-column-full-width, 
	#primary .four-column {
		margin: 0;
		width: 100%;
	}
	.four-column {
		padding: 0 10px 30px;
		width: 50%;
	}
	.three-column:nth-child(2n+3) {
 		clear: none;
	}
	.three-column-post .post-container,
	.four-column-post .post-container {
		width: 50%;
	}
	#main .post {
		padding-bottom: 0px;
	}
	.small_image_blog .post-featured-image {
		width: 100%;
	}
	.header-social-block,
	.top-header .widget_contact {
		display: none;
	}
	#primary .post:not(:nth-child(1)) {
		padding: 0;
		width: 100%;
	}
	#main .sticky {
		padding: 20px 20px 30px;
	}
	#primary .post.sticky:not(:nth-child(1)) {
		margin: 0 0 50px;
		width: 100%;
	}
	#wp_page_numbers,
	.wp-pagenavi,
	#main ul.default-wp-page,
	.pagination {
		margin-bottom: 40px;
	}
	#wp_page_numbers ul li.page_info,
	.wp-pagenavi .pages {
		display: none;
	}
	.widget {
		margin-bottom: 40px;
	}
	.widget_custom-tagcloud {
		margin-bottom: 32px;
	}
	.widget_posts {
		margin-bottom: 20px;
	}
	#colophon .widget_posts {
		margin-bottom: 20px;
	}
	.site-info #site-branding {
		max-width: 100%;
	}



}
/* All Mobile Screen ( smaller than 681px )
================================================== */
@media only screen and (max-width: 680px) {


}
/* All Mobile Screen ( smaller than 601px )
================================================== */
@media only screen and (max-width: 600px) {

	/*---ヘッダー画像-----------------------------------------------*/
	.header_top_wrap div.right {
		width: 80%;
	}
	/*---実績紹介-----------------------------------------------*/

	/*事業年数*/
	.achievement_frame div.blc1 {
		width: 100%;
		text-align: center;
		margin-bottom: 40px;
	}
	/*縦ライン　横に変更*/
	.achievement_frame div.blc2_line {
		width: 100%;
		height: 1px;
		margin-bottom: 40px;
	}
	/*紹介斡旋人数*/
	.achievement_frame div.blc3 {
		width: 100%;
		text-align: center;
		margin-bottom: 40px;
	}
}
/* All Mobile Screen ( smaller than 581px )
================================================== */
@media only screen and (max-width: 580px) {
	/*トップ*/
	.header_top_wrap_sp {
		height: 400px;
	}
	.header_top_wrap_sp img {
		height: 400px;
		object-fit: cover;
	}
	/*=======オリジナルナビ======= */
	.site-info div.footer_nav_block {
		padding: 35px 20px;
	}
	#footer_logo img {
		width: 250px;
	}
	.top_service_wrap div.photo img {
		min-height: auto;
	}
	/*---費用と流れ-----------------------------------------------*/
	.flow_wrap div.icon_box {
		width: 50px;
		min-width: 50px;
		height: 50px;
	}
	.flow_wrap div.icon_box:before {
		height: calc(100% + 165px);
		top: 45px;
	}
	.flow_wrap div.flow_box {
		padding: 20px 30px;
	}
}
/* All Mobile Screen ( smaller than 481px )
================================================== */
@media only screen and (max-width: 480px) {
	body {
		font-size: 14px;
	}
    #site-branding {
        width: 180px;
        padding-top: 9px;
    }
    #header_contact {
        margin-top: 3px;
    }
    #content {
        
    }
	.container,
	.boxed-layout #page,
	.boxed-layout-small #page {
		width: 93%;
		/*width: 300px;*/
	}
	.boxed-layout .container,
	.boxed-layout-small .container {
		width: 280px;
	}
	.boxed-layout #colophon,
	.boxed-layout-small #colophon {
		margin-bottom: 10px;
	}


	.boxed-layout #site-branding,
	.boxed-layout #site-title a img,
	.boxed-layout-small #site-branding,
	.boxed-layout-small #site-title a img {
		max-width: 240px;
	}

	/* ----- Column ----- */
	.column {
		margin: 0;
	}
	.four-column {
		padding: 0 0 30px;
		width: 100%;
	}
	.four-column:nth-child(2n+3) {
		clear: none;
	}
	.two-column-post .post-container,
	.three-column-post .post-container,
	.four-column-post .post-container {
		width: 100%;
	}
	.btn-default {
		padding: 6px 18px;
		font-size: 13px;
	}
	.flow_wrap div.icon_box.four_box:before {
		height: calc(100% + 235px);
	}

}

/* All Mobile ( smaller than 320px )
================================================== */
@media only screen and (max-width: 319px) {
	.container,
	.boxed-layout #page,
	.boxed-layout .container,
	.boxed-layout-small #page,
	.boxed-layout-small .container {
		width: 96%;
	}
}