@charset "utf-8";
/*--------------------------------------------------------
★レスポンシブ■タブレット対応
--------------------------------------------------------*/
@media screen and (max-width: 1280px) and (min-width: 641px) {
	/* layout */
	html,body,header,footer {
		width: 1280px;
	}
}

/*--------------------------------------------------------
★レスポンシブ■ヘッダ部分
--------------------------------------------------------*/
@media screen and (min-width: 641px) {
	.pc_none{
		display: none!important;
	}
}
@media screen and (max-width: 640px) {
	.sp_none{
		display: none!important;
	}

	/* スマホ用メニュー */
	.index #wrapper{
		min-width: 20pc;
		height: auto;
		height: auto;
		padding: 0;
		overflow: hidden;
	}
	.drawer .contents{
		transition: transform 0.6s;
	}
	.drawer #navTgl:checked ~ .contents{
		transform: translateX(-250px);
	}
	.index #navTgl{
		display: none;
		overflow: hidden;
	}
	.drawer label.pc_none{
		position: fixed;
		top: 0;
		right: 0;
		transition: 0.6s;
		cursor: pointer;
	}
	.drawer .open{
		width: 50px;
		height: 50px;
		color: #fff;
		font-size: 2.2em;
		line-height: 35px;
		text-align: center;
		background-color: #002278;
		z-index: 20;
	}
	.drawer .open span{
		position: absolute;
		display: block;
		font-size: 1rem;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0;
		left: 0;
		right: 0;
		bottom: 5px;
		margin: auto;
	}
	.drawer .close{
		width: 100%;
		height: 100%;
		z-index: 1;
		pointer-events: none;
		transition: background-color 0.6s;
	}
	.index #navTgl:checked + .open{
		transform: translateX(-250px);
	}
	.drawer #navTgl:checked ~ .close{
		pointer-events: auto;
		background-color: rgba(255,255,255,.6);
		z-index: 10;
	}
	.menu{
		position: fixed;
		top: 0;
		right: 0;
		width: 250px;
		height: 100%;
		padding: 60px 30px;
		background-color: #677AAC;
		transform: translateX(100%);
		transition: transform 0.6s;
		box-sizing: border-box;
		overflow: auto;
		z-index: 20;
	}
	.index #navTgl:checked ~ .menu{
		transform: translateX(0);
	}
	.menu ul{
		padding: 0;
	}
	.menu .dropdown > li{
		position: relative;
		font-size: .8em;
		line-height: 1.8;
		letter-spacing: .05em;
		border-bottom: 1px solid #FFF;
	}
	.menu a{
		position: relative;
		display: block;
		color: #FFF;
		padding: 1em 1em 0.9em;
	}
	.menu .dropdown li > ul {
		display: none;
	}
	.menu .dropdown li.has-children {
		position: relative;
	}
	.menu .dropdown li.has-children > a {
		padding-right: 2em;
	}
	.menu .dropdown li.has-children::after {
		position: absolute;
		content: "";
		top: 17px;
		right: 5px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		transition: .3s;
	}
	.menu .dropdown li.has-children.selected::after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		transition: .3s;
	}
	.menu .text_link::after {
		background-color: #fff;
	}
	.sp_tel,.sp_mail{
		position: absolute;
		width: 50px;
		height: 50px;
		color: #222;
		text-align: center;
		background-color: #FFF;
		background-repeat: no-repeat;
		top: 0;
		z-index: 10;
	}
	.sp_tel {
		background-image: url(../images/common/icon_telK.svg);
		background-position: top 10px center;
		background-size: 14px auto;
		right: 100px;
	}
	.sp_mail {
		background-image: url(../images/common/icon_mailK.svg);
		background-position: top 13px center;
		background-size: 20px auto;
		top: 0;
		right: 50px;
	}
	.sp_logo{
		position: fixed;
		display: block;
		width: 100%;
		height: 50px;
		font-size: 0;
		background: #FFF url(../images/common/logo.svg) no-repeat center left 10px;
		background-size: auto 38px;
		top: 0;
		left: 0;
		box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
		z-index: 10;
	}
	header .layout_flex,#gnav{
		display: none;
	}
	header,header.fixed {
		position: fixed;
		/*box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;*/
		height: 50px;
		top: 0!important;
		z-index: 0;
	}
	#wpadminbar {
		position: fixed;
	}
	.customize-support header,
	.customize-support label.pc_none,
	.customize-support .sp_logo {
		top: 46px !important;
	}

	/* slider
	------------------------------ */
	.topslider .slider{
		height: 370px;
    padding: 160px 5% 44px;
	}
	.topslider .text {
		width: 90%;
    padding: 5%;
    margin: auto;
	}
	.topslider .topslider04.slider {
		padding: 130px 5% 54px;
	}
	.topslider .topslider04.slider p.btn_slider {
		max-width: 150px;
		line-height: 1.3;
	}
	.topslider h2 {
		font-size: 2.2rem;
		line-height: 1;
	}
	.topslider h2::before {
    width: 30%;
    height: 2px;
    bottom: -13px;
    z-index: 1;
	}
	.topslider h2::after {
    width: 100%;
    height: 2px;
    left: 0px;
    bottom: -13px;
	}
	.topslider p {
		font-size: 1.4rem;
		text-align: left;
		margin-top: 20px;
		letter-spacing: .1em;
		font-feature-settings: "palt";
	}
	#index .slick-dots {
		margin: auto;
    left: 0;
    bottom: 18px;
    text-align: center;
	}
	#index .topslider button.slick-prev {
    top: 130px;
    left: 10px;
    width: 30px;
    height: 30px;
    bottom: 0px;
	}
	#index .topslider button.slick-next {
    top: 130px;
    right: 10px;
    width: 30px;
    height: 30px;
    bottom: 0;
	}
}

/*--------------------------------------------------------
★レスポンシブ■コンテンツ部分
--------------------------------------------------------*/
@media screen and (max-width: 640px) {
	html {
		max-width: 640px;
		width: 100%;
		-webkit-text-size-adjust: 100%;
	}
	body {
		max-width: 640px;
		min-width: 320px;
		width: 100%;
		letter-spacing: 0;
		font-size: 1.4rem;
	}
	h1,h2,h3{
		line-height: 1.3;
		letter-spacing: .1em;
	}
	p {
		line-height: 1.75;
	}

	/* layout
	------------------------------ */
	.wrapper {
		max-width: 640px;
		padding: 0 5%;
	}
	body > #wrapper > .contents {
		padding-top: 50px;
	}

	/* Common
	------------------------------ */
	.btn{
		width: 260px;
    height: 55px;
    line-height: 55px;
		display: block;
		margin: 0 auto;
	}
	.tel{
		font-size: 2.6rem;
	}
	.tel::before{
		width: 14px;
		height: 21px;
	}

	/* index common
	------------------------------ */
	.index_h2 h2{
		height: 26px;
		margin-bottom: 12px;
	}
	.top_section .layout_flex{
		display: block;
	}

	/* index
	------------------------------ */
	#index_company{
		padding: 33px 0 50px;
	}
	#index_company h2 {
    margin-bottom: 12px;
	}
	#index_company h2::before {
    top: 2px;
	}
	#index_company .ic_left {
		width: 100%;
	}
	#index_company .ic_title p {
		font-size: 2.4rem;
		margin-top: 0;
	}
	#index_company .intro {
    margin-top: 30px;
	}
	#index_company .btn {
    margin: 40px auto 0;
	}
	#index_recruit {
    padding: 105px 0 70px;
	}
	#index_recruit::before {
    height: 180px;
	}
	#index_recruit::after,
	#index_service::before {
    width: 100%;
    height: 50px;
    left: 0;
	}
	#index_recruit .index_h2 {
    height: 100px;
    padding: 26px 0;
	}
	#index_recruit .index_h2::before {
    min-width: 300px;
    height: 100px;
	}
	#index_recruit ol.recruit_list {
    margin-top: 20px;
	}
	#index_recruit .slick-slide {
	    margin: 30px 0;
	}
	#index_recruit ol.recruit_list li img {
    height: 180px;
	}
	#index_recruit ol.recruit_list li .text {
    height: auto;
    min-height: 250px;
    padding: 20px 24px 24px;
	}
	#index_recruit ol.recruit_list li .text h3 {
		margin-bottom: 12px;
    line-height: 1.3;
    height: auto;
	}
	#index_recruit ol.recruit_list li .text dl {
    display: block;
    margin-bottom: 15px;
	}
	#index_recruit ol.recruit_list li .text dl dt,
	#index_recruit ol.recruit_list li .text dl dd {
    line-height: 1.5;
	}
	#index_recruit ol.recruit_list li .text dl dt{
		width: 100%;
    margin-bottom: 5px;
	}
	#index_recruit button.slick-next {
    right: 20px!important;
	}
	#index_recruit button.slick-prev {
    left: 20px!important;
	}
	#index_recruit a.btn {
		margin-top: 0;
	}
	#index_service {
		padding: 70px 0;
	}
	#index_service .index_h2 {
		text-align: center;
	}
	#index_service .intro {
    margin-top: 30px;
	}
	#index_service ul {
		margin-top: 30px;
	}
	#index_service ul li {
    margin: 20px auto 0;
    height: auto;
	}
	#index_service ul li .text h3 {
    line-height: 1.3;
  }
  #index_service::after {
  	height: 86%;
  }
  #index_news {
  	padding: 70px 0 50px;
  }
  #index_news .news_list  {
  	margin-top: 30px;
  }
  #index_news .news_list li {
    width: 100%;
    padding: 16px 0;
	}
	#index_news h2 {
    margin-bottom: 10px;
	}
	#index_news .index_h2 {
		padding-bottom: 14px;
	}
	#index_news .index_h2::before {
    width: 100%;
    height: 1px;
    top: auto;
    right: 0;
    left: 0;
    bottom: 0;
	}
	#index_news .news_list p.date {
    display: inline-block;
	}
	#index_news .news_list p.tag {
    margin-right: 0;
    display: inline-block;
	}
	#index_news .news_list li h3 {
		margin-top: 6px;
    letter-spacing: 0.012em;
	}
	#index_news a.btn {
		margin-top: 40px;
	}
	#index_base {
		padding: 80px 0 0;
	}
	#index_base .index_h2 {
    text-align: center;
	}
	#index_base h2 {
    margin: 0 auto 5px;
	}
	#index_base .index_h2::before {
    background: url(../images/top/gray_index_base.svg) no-repeat center;
    background-size: contain;
    width: 100%;
    height: 70px;
    top: -55px;
	}
	.base_list {
		margin-top: 30px;
	}
	.base_list li {
    padding: 5%;
    margin: 16px auto 0;
	}
	.base_list li .btn.access_map {
    margin-top: 6px;
	}


	/* sub common
	------------------------------ */
	.main_title .inner{
		position: relative;
		display: block;
		width: 100%;
		height: 200px;
		padding: 70px 0;
		background-repeat: no-repeat;
		background-position: center right -120px;
		background-size: cover;
	}
	.main_title .inner::before {
    width: 100%;
    height: 200px;
    opacity: .8;
    left: 0;
    transform: skewX(0deg);
	}
	.main_title .sub_h1{
		font-size: 2.6rem;
		line-height: 1;
		letter-spacing: .1em;
	}
	.main_title .sub {
    font-size: 1.2rem;
    margin-top: 18px;
	}
	.sub_section{
		padding-top: 60px;
	}
	.sub_section:first-of-type{
		padding-top: 50px;
	}
	.sub_section h2{
		font-size: 2.4rem;
		letter-spacing: 0;
		padding-bottom: 23px;
    margin-bottom: 30px;
	}
	.sub_section h3{
		font-size: 2.2rem;
		margin: 0 0 20px;
		padding: 0 0 10px 12px;
	}
	.sub_section h3::before {
    height: 28px;
    top: 3px;
	}
	.sub_section h4{
		font-size: 2rem;
		line-height: 120%;
	}
	.sub_section .layout_flex{
		display: block;
	}
	.sub_section .box {
    margin-top: 50px;
	}
	.sub_section .line {
    padding-bottom: 12px;
    margin-bottom: 15px;
	}
	.sub_section table{
		border-top: 0;
		border-left: 0;
	}
	.sub_section table tr th,
	.sub_section table tr td{
		position: relative;
		display: block;
		width: 100%;
		padding: 2% 5%;
		border-left: 1px solid #D9D9D9;
		box-sizing: border-box;
	}
	.sub_section table tr th{
		border-top: 1px solid #D9D9D9;
	}
	.sub_section table tr td{
		margin-bottom: 10px;
	}
	.sub_section table tr:last-child td{
		margin-bottom: 0;
	}
	.sub_section dl{
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	.sub_section dl:last-child{
		margin-bottom: 0;
	}
	.sub_section .tel_box{
		padding: 5%;
	}
	.sub_section .tel_box p.tel{
		margin-bottom: 5px;
	}
	.sub_section .layout_flex.layout_pict_right {
		display: flex;
    flex-direction: column-reverse;
	}
	.circle {
    top: -3px;
	}

	/* staffing_service
	------------------------------ */
	#staffing_service .intro {
    margin-top: 0px;
	}
	#staffing_service .bg_gray {
		margin-top: 20px;
		padding: 8% 5% 10%;
	}
	#staffing_service .bg_gray .white_box {
		width: 100%;
		height: auto;
    padding: 5%;
	}
	#staffing_service .bg_gray .white_box h4 {
   text-align: center;
    position: relative;
    display: block;
    top: 0;
    font-size: 2rem;
    line-height: 1.3;
	}
	#staffing_service .bg_gray .white_box ul {
		margin-top: 15px;
	}
	#staffing_service .bg_gray .white_box ul li {
		text-align: center;
    margin-top: 5px;
    padding: 3px;
	}
	#staffing_service .pict {
    margin-top: 30px;
    width: 600px;
    padding: 5%;
	}
	#staffing_service .ss_flow ul {
    margin: 28px auto 0;
    max-width: 280px;
	}
	#staffing_service .ss_flow ul li {
    font-size: 1.6rem;
    min-height: 150px;
    padding: 25px 0 0px;
	}
	#staffing_service .ss_flow ul li::before {
    height: 40px;
    top: 60px;
	}
	#staffing_service .ss_flow ul li::after {
		transform: rotate(90deg);
    width: 20px;
    height: 50px;
    top: 0;
    left: 0;
    right: 0;
    bottom: -140px;
	}
	#staffing_service .ss_flow ul li:last-of-type::after {
    width: 100%;
    height: 150px;
    top: 0;
    right: 0;
    bottom: 0;
    transform: rotate(0deg);
	}
	#staffing_service .ss_flow ul li:nth-of-type(4)::after {
    background-size: contain;
    width: 20px;
    height: 50px;
    bottom: -140px;
  }
  #staffing ul.staffing_laout_flex li {
  	width: 100%;
  	max-width: 388px;
    height: auto;
    margin: 30px auto 0;
    padding-bottom: 24px;
  }
  #staffing ul.staffing_laout_flex li figure {
    margin-bottom: 10px;
	}
	#staffing ul.staffing_laout_flex li figcaption {
    font-size: 1.6rem;
    height: 50px;
    line-height: 50px;
	}
	
	/* for_company
	------------------------------ */
	#for_company .num_title_list {
    margin-top: 10px;
	}
	#for_company .num_title_list li {
    font-size: 1.6rem;
    padding: 12px 10px 15px 30px;
    margin: 0 0 10px 10px;
	}
	#for_company .num_title_list li::before {
    width: 40px;
    height: 40px;
    margin: auto;
    top: 0;
    bottom: 0;
	}
	#for_company .layout_flex_box {
    margin-top: 50px;
	}	
	#for_company h4.h4_num {
    font-size: 1.8rem;
    margin-bottom: 20px;
	}
	#for_company h4.h4_num span {
    top: -1px;
	}
	#for_company .pict {
		max-width: 388px;
    margin: 20px auto 0;
	}
	#for_company .layout_flex_box .layout_flex {
    margin-top: 50px;
	}
	#for_company_id .num_title_list li {
    font-size: 1.4rem;
    line-height: 1.5;
	}
	#for_company_id .num_title_list li span {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    margin-bottom: 8px;
	}
	#for_company_id ul.step_list {
    margin-top: 0;
	}
	#for_company_id ul.step_list li {
    display: block;
    margin-bottom: 20px;
    padding: 8%;
	}
	#for_company_id ul.step_list li h4 {
    font-size: 1.8rem;
    line-height: 1.3;
    height: auto;
    display: block;
	}
	#for_company_id .step {
		display: block;
    height: 30px;
    margin-bottom: 10px;
  }
  #for_company_id .intro {
    margin-top: 0;
	}
	#for_company_id .bg_gray {
    margin-top: 20px;
    padding: 5%;
    display: block;
  }
  #for_company_id .bg_gray h4 {
    font-size: 1.8rem;
    margin-bottom: 10px;
	}
	#for_company_hre .layout_flex {
    margin-top: 0;
	}
	#for_company_hre .flex_l {
    width: 100%;
	}
	#for_company_hre .flex_l ul li {
    margin-top: 10px;
    padding: 8% 5%;
	}
	#for_company_hre .flex_l ul li h4 {
		font-size: 2rem;
	}
	#for_company_hre .border_bottom p {
    margin: 12px 0 18px;
	}
	#for_company_hre .flex_l ul li p span {
    font-size: 1.8rem;
	}
	#for_company_hre .flex_r {
    width: 100%;
    margin-top: 30px;
	}
	#for_company_hre .training_room .pict {
		display: block;
    max-width: 240px;
	}
	#for_company_hre .fc_resource h3 {
		letter-spacing: .05em;
    font-feature-settings: "palt";
	}
	#for_company_hre .fc_resource .layout_flex {
		margin-top: 35px;
	}
	#for_company_hre .fc_resource .text_box p {
    margin-top: 20px;
	}

	/* for_js
	------------------------------ */
	#for_js_dispatch .flex_r {
		max-width: 350px;
		margin: 10px auto 0;
	}
	#for_js .merit_list {
    margin-top: 0px;
    padding: 8%;
	}
	#for_js .merit_list li h4 {
    line-height: 1.3;
	}
	#for_js_id {
		padding-bottom: 50px;
	}
	#for_js_id .layout_flex .bg_gray {
    width: 100%;
    padding: 5%;
    margin-top: 10px;
	}
	#for_js_id .layout_flex .bg_gray figcaption {
		margin-top: 10px;
	}
	#for_js_flow {
    padding-bottom: 50px;
	}
	#for_js_flow .fjs_flow_yoko li {
    max-width: 400px;
    height: 175px;
    margin: 30px auto 0;
    padding: 110px 32px 34px;
	}
	#for_js_flow .fjs_flow_yoko li::before {
    top: 30px;
	}
	#for_js_flow .fjs_flow_yoko li::after {
    width: 23px;
    height: 39px;
    margin: auto;
    top: auto;
    bottom: -31px;
    left: 0;
    right: 0;
    transform: rotate(90deg);
	}
	.fjs_flow_tate {
    margin-top: 30px;
	}
	.fjs_flow_tate li {
    margin-top: 30px;
    padding: 3% 5% 5%;
	}	
	.fjs_flow_tate li .flex_r::before {
    width: 100%;
    height: 1px;
    top: -10px;
    margin: 10px auto;
    transform: rotate(0deg);
	}
	.fjs_flow_tate li::after {
    bottom: -22px;
	}
	.fjs_flow_tate li .flex_r {
    padding-top: 10px;
	}
	.reason_list li {
		margin-top: 30px;
	}
	.reason_list li .text_box h4 span {
		position: relative;
    width: 60px;
    height: 60px;
    display: block;
    margin: 0 auto 13px;
	}
	.reason_list li .text_box h4 {
    font-size: 1.8rem;
    padding: 10px 0;
    line-height: 1.5;
	}
	.reason_list li .text_box p {
    margin-top: 20px;
	}
	.reason_list li .pict {
		max-width: 350px;
    margin: 10px auto 0;
	}

	/* subcontracting
	------------------------------ */
	#subcontracting_intro {
		padding-bottom: 50px;
	}
	.first_section::before {
    height: 280px;
	}
	.first_section .title_box {
    padding: 30px 15px 20px;
	}
	.first_section .problems h3 {
		margin: 20px auto 0;
    padding: 0;
	}
	.first_section .problems ul {
    margin-top: 20px;
    padding: 5% 5% 18%;
	}
	.first_section .problems ul::before {
    width: 100px;
    height: 68px;
	}
	.first_section .problems ul::after {
    width: 50px;
    height: 17px;
    bottom: -32px;
  }
	.first_section .problems ul li {
    padding: 2% 5%;
    margin-bottom: 6px;
  }
  .first_section .proposing {
  	margin-top: 50px;
  }
  .first_section .proposing h3 {
  	font-size: 2rem;
    background: linear-gradient(transparent 75%, #FFF0A0 0%);
    padding: 0 0 0 12px;
	}
  .first_section .proposing h3::after {
    width: 31px;
    height: 36px;
    left: -20px;
    top: -6px;
	}
	.first_section .proposing p {
    margin-top: 16px;
	}
	#subcontracting_features {
		padding-bottom: 50px;
	}
	.pictogram_list {
		width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
	}
	.pictogram_list a {
		width: 49%;
	}
	.pictogram_list li {
		width: 100%;
    height: 120px;
    padding: 80px 12px 14px;
    font-size: 1.6rem;
    line-height: 1;
    text-align: center;
    font-feature-settings: "palt";
	}
	.pictogram_list li::before {
    width: 50px;
    height: 47px;
    top: 23px;
	}
	.pictogram_list a:nth-of-type(2) li::before {
    width: 60px;
    height: 50px;
    top: 18px;
	}
	.pictogram_list a:nth-of-type(3) li::before {
    width: 48px;
    height: 46px;
    top: 22px;
	}
	.pictogram_list a:nth-of-type(4) li::before {
    width: 65px;
    height: 49px;
    top: 21px;
	}
	#subcontracting_works .box {
		margin-top: 30px;
	}
	.layout_pict_right .text_box h4 {
    line-height: 150%;
    margin-bottom: 10px;
	}
	.layout_pict_right .pict {
		max-width: 350px;
		margin: 0 auto 15px;
	}
	#subcontracting_works .box .bg_gray {
    padding: 5%;
    margin-top: 30px;
	}
	#sw_work .bg_gray .flex_l .pict {
		margin: 0 auto 20px;
	}
	.border_box {
    margin-top: 50px;
    padding: 10% 5% 5%;
	}
	.border_box h4 {
    width: 290px;
    height: 46px;
    margin: auto;
    left: 0;
    right: 0;
    line-height: 42px;
    font-size: 2.2rem;
	}
	.border_box ul li {
    padding-bottom: 6px;
	}
	.border_box .job_description_pict {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 6px 0;
    margin-top: 20px;
	}
	.border_box .job_description_pict figure {
		width: 48%;
	}
	.border_box .job_description_pict figure figcaption {
    padding: 8px 0;
    line-height: 1.2;
    font-feature-settings: "palt";
    font-weight: 700;
		text-align: center;
		color: #002278;
	}
	.point_box {
		margin-top: 50px;
	}
	.point_box ul {
		padding: 5% 8%;
		margin-top: 20px;
	}
	.point_box ul li {
		max-width: 414px;
		height: auto;
		margin: auto;
		padding: 20px 0;
	}
	.point_box ul li::after {
		width: 100%;
		height: 1px;
		top: 0;
		transform: rotate(0deg);
	}
	.point_box ul li img {
    width: 80px;
    height: 84px;
	}
	.point_box ul li figcaption {
    margin-top: 13px;
	}
	.box.in_btn a.btn {
		margin-top: 20px;
	}

	/* logistics
	------------------------------ */
	#logistics_intro {
		padding-bottom: 50px;
	}
	#logistics_features {
		padding-bottom: 50px;
	}
	#logistics_service .pictogram_list li::before {
    width: 48px;
    height: 47px;
	}
	#logistics_service .pictogram_list a:nth-of-type(2) li::before {
    width: 60px;
    height: 49px;
	}
	#logistics_service #ls_la, #logistics_service #ls_bma {
    padding-top: 50px;
	}
	#logistics_service .box .layout_flex .pict {
		width: 100%;
    max-width: 350px;
    height: auto;
    margin: 0 auto 15px;
	}
	#logistics_service .box .bg_gray {
    padding: 5%;
    margin-top: 30px;
	}
	.logistics_assistant .bg_gray .pict {
    width: 100%;
    height: auto;
	}
	.logistics_assistant .border_box .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
    margin: 20px auto 0;
	}

	/* childcare
	------------------------------ */
	#childcare_intro {
		padding-bottom: 50px;
	}
	#childcare_features {
		padding-bottom: 50px;
	}
	#childcare_system .bg_gray {
    padding: 5%;
    margin-top: 20px;
	}
	#childcare_system .bg_gray .pict {
		width: 600px;
    padding: 2%;
	}
	
	/* building_maintenance
	------------------------------ */
	#bm_intro {
		padding-bottom: 50px;
	}
	#bm_features {
		padding-bottom: 50px;
	}
	.circle_list li {
		margin-top: 40px;
	}
	.circle_list li figure img {
    width: 100%;
    max-width: 200px;
    height: auto;
	}
	.circle_list li figure figcaption {
    margin-top: 15px;
	}
	.circle_list li p {
    margin-top: 15px;
	}
	#bm_works .pictogram_list li::before {
    width: 42px;
    height: 45px;
	}
	#bm_works .pictogram_list a:nth-of-type(2) li::before {
    width: 47px;
    height: 49px;
    top: 20px;
	}
	#bm_works .pictogram_list a:nth-of-type(3) li::before {
    width: 57px;
    height: 45px;
    top: 25px;
  }
  #bm_works .pictogram_list a:nth-of-type(4) li::before {
    width: 66px;
    height: 40px;
    top: 28px;
	}
	#bm_works .pictogram_list a:nth-of-type(5) li::before {
    width: 50px;
    height: 47px;
    top: 24px;
	}
	#bmw_bts,#bmw_cleaning,#bmw_em, #bmw_ss,#bmw_os {
    padding-top: 60px;
    margin-top: 0;
	}
	#bmw_bts .bg_gray{
		margin-top: 15px;
	}
	#bmw_bts .bg_gray .pict {
		width: 600px;
	}
	.column_2 {
		margin-top: 40px;
		padding: 6%;
	}
	.bts .column_2:last-of-type {
    margin-top: 20px;
	}
	.column_2 .pict {
		margin-top: 15px;
	}
	.column_2 .text_box ul {
		margin-top: 10px;
	}
	.column_3 {
		margin-top: 30px;
		padding: 6%;
	}
	.column_3_content {
    margin-top: 30px;
	}
	.column_3_content:first-of-type {
    margin-top: 0;
	}
	.column_3 p {
    line-height: 1.5;
	}
	.column_3 .layout_flex {
		display: flex;
		gap: 0 3px;
    margin-top: 15px;
	}
	.column_3 .layout_flex .pict {
    max-width: 300px;
    height: auto;
	}
	.gray_column2 {
    margin-top: 20px;
	}
	.gray_column2 h4 {
    height: 45px;
    line-height: 45px;
	}
	.gray_column2 .layout_flex {
    padding: 5%;
	}
	.gray_column2 .bg_gray .pict {
    width: 200px;
    height: auto;
    margin: 15px auto 0;
	}
	.gray_column2 .bg_gray {
    margin-top: 30px;
	}
	.em .gray_column2::after {
    width: 26px;
    height: 26px;
    bottom: -50px;
	}
	.license, .tapa {
    margin-top: 40px;
	}
	.ss .gray_column2 .bg_gray {
    margin-top: 15px;
	}
	.repair , .additional{
    margin-top: 30px;
    padding: 6%;
	}
	.repair .layout_flex, 
	.additional .layout_flex {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 8px 0;
	}
	.repair .pict_list,
	.additional .pict_list {
		margin-top: 20px;
	}
	.repair .pict, .additional .pict {
    width: 49%;
    height: auto;
	}

	/* ses
	------------------------------ */
	#ses .first_section::before {
    height: 280px;
	}
	#ses_intro {
		padding-bottom: 50px;
	}
	#ses_features {
		padding-bottom: 50px;
	}
	#ses_service .ses_offer {
    margin-top: 30px;
	}
	#ses_service .ses_offer h4 {
    padding: 0;
	}
	#ses_service .ses_offer h4::before,
	#ses_service .ses_offer h4::after {
    display: none;
	}
	#ses_service .ses_offer .layout_flex {
    margin-top: 20px;
	}
	#ses_service .ses_offer ul {
		margin-top: 15px;
	}
	#ses_service .ses_offer ul li {
    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 4%;
    line-height: 1.3;
	}
	.ses_offer.bg_gray,
	.corresponding_area .bg_gray {
		background: none;
	}
	#ses_service .corresponding_area ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px 0;
	}
	#ses_service .corresponding_area ul li {
    width: 49%;
	}
	#ses_service .corresponding_area p {
    margin-top: 8px;
	}
	#ses_service .tmc ul {
    display: block;
    margin-top: 20px;
    padding: 5%;
	}
	#ses_service .tmc ul li {
   	margin-top: 30px;
   	padding-top: 30px;
	}
	#ses_service .tmc ul li:first-of-type {
   	margin-top: 0;
   	padding-top: 0;
	}
	#ses_service .tmc ul li::after {
    width: 100%;
    height: 1px;
    transform: rotate(0deg);
	}
	#ses_service .tmc ul li figure,
	#ses_service .tmc ul li.tmc_02 figure,
	#ses_service .tmc ul li.tmc_03 figure {
    width: 100%;
    height: auto;
    margin: 16px auto 0;
	}
	#ses_service .tmc ul li figcaption {
		text-align: center;
    margin: 10px auto 0;
	}
	#ses_flow ul li {
    padding: 5%;
    margin-top: 10px;
	}
	#ses_flow ul li .flex_l {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 10px;
	}
	#ses_flow ul li .flex_l::after {
    width: 100%;
    height: 1px;
    bottom: 0;
	}
	#ses_flow ul li .step {
    width: 80px;
    height: 26px;
    margin-right: 12px;
	}
	
	/* insurance
	------------------------------ */
	#insurance .first_section::before {
    height: 280px;
	}
	#insurance_intro {
		padding-bottom: 50px;
	}
	#insurance_features {
		padding-bottom: 50px;
	}
	#insurance_service .pictogram_list li::before {
    width: 72px;
    height: 47px;
    top: 22px;
	}
	#insurance_service .pictogram_list a:nth-of-type(2) li::before {
    width: 53px;
    height: 48px;
    top: 24px;
	}
	#insurance_service .pictogram_list a:nth-of-type(3) li::before {
    width: 54px;
    height: 46px;
    top: 22px;
	}
	#insurance_service .pictogram_list a:nth-of-type(4) li::before {
    width: 44px;
    height: 47px;
    top: 22px;
	}
	#insurance_service .pictogram_list a:nth-of-type(5) li::before {
    width: 45px;
    height: 50px;
    top: 20px;
	}
	#is_home {
		padding-top: 60px;
	}
	#is_car, #is_travel, #is_business, #is_accident {
    padding-top: 30px;
	}
	#insurance_service .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
	}
	#insurance_service .link {
		margin-top: 50px;
	}
	.btn.link::after {
    right: 23px;
    margin: auto;
    top: 0;
    bottom: 0;
	}
	#insurance_consulting .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
	}
	#insurance_consulting ul {
    margin-top: 20px;
	}
	#insurance_consulting ul li {
    width: 100%;
    height: auto;
    padding: 5%;
    margin-top: 5px;
	}
	#insurance_consulting ul li h4 {
    margin-bottom: 5px;
	}
	#insurance_policy h4 {
    margin-bottom: 12px;
	}
	#insurance_policy .text_box_02 {
		margin-top: 30px;
	}

	/* ec
	------------------------------ */
	#ec_about {
		padding-bottom: 50px;
	}
	#ec_about .pict {
    width: 100%;
    max-width: 250px;
    margin: 0 auto 20px;
    height: auto;
    border-radius: 0;
	}
	#ec_about .text_box p {
    margin-top: 20px;
	}
	#ec_about .text_box .btn {
    margin-top: 30px;
    text-align: left;
    padding-left: 20px;
  }
  #ec_developments .pict {
  	width: 600px;
  	margin-top: 20px;
  }


	/* company
	------------------------------ */
	#company_greeting {
		padding-bottom: 50px;
	}
	#company_greeting .pict {
    width: 100%;
    max-width: 250px;
    margin: 0 auto 20px;
    height: auto;
	}
	#company_greeting .text_box p.name {
    margin-top: 20px;
	}
	#company_greeting .text_box p.name span {
    margin: 8px 0 0 auto;
    display: block;
    text-align: right;
    top: 0;
	}
	#company_greeting .movie_contents .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
    margin: 50px auto 0;
	}
	#company_greeting .movie_contents .movie {
		width: 100%;
		max-width: 350px;
		height: auto;
		margin: 30px auto 0;
	}
	#company_greeting .movie_contents .bnr {
    width: 100%;
    margin: 20px auto 0;
	}
	#company_greeting .movie_contents .movie iframe {
    width: 100%;
    height: auto;
	}
	#company_link {
		padding-bottom: 50px;
	}
	#company_link ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px 0;
	}
	#company_link ul li {
    width: 48%;
    height: auto;
	}
	#company_link ul li::after {
    width: 14px;
    height: 12px;
    bottom: 17px;
    right: 8px;
	}
	#company_link ul li:hover::after {
		right: 4px;
	}
	#company_link ul li .text {
    height: auto;
    padding: 5% 5% 10%;
	}
	#company_link ul li p {
    font-size: 1.6rem;
	}
	#company_sdgs figure {
		margin-bottom: 15px;
	}
	#company_sdgs figure img {
		display: block;
    width: 100%;
    max-width: 350px;
    height: auto;
    margin: auto;
	}
	#company_sdgs .box .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
	}
	#company_csr .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
    margin: 20px auto 0;
	}
	#company_csr .text_box .box {
    margin-top: 30px;
	}
	.achievement {
		margin-top: 50px;
	}
	#company_csr ol {
    padding-bottom: 30px;
	}
	#company_csr ol li {
    width: 100%;
    max-width: 289px;
    height: auto;
    margin: 25px auto 0;
	}
	#company_csr ol li .pict {
		margin: auto;
	}

	/* strength
	------------------------------ */
	#strength_solution {
		padding-bottom: 50px;
	}
	#strength_solution .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
    margin: 0 auto 20px;
	}
	#strength_solution ul li {
    padding: 16px 0px;
	}
	#strength_solution ul li p.title {
    margin-bottom: 6px;
	}
	#strength_solution ul li p.title::before {
    top: 7px;
	}
	#strength_merit {
		padding-bottom: 50px;
	}
	#strength_mb .pict {
    width: 100%;
    max-width: 350px;
    height: auto;
	}

	/* outline
	------------------------------ */
	#outline_detail .box {
		margin-top: 30px;
	}
	#outline_history .history_list {
    padding: 8% 5%;
	}
	#outline_history ul li .date span {
    margin-right: 15px;
	}
	#outline_history ul li .date p {
    padding-left: 20px;
	}
	#outline_history ul li .date p::before {
    top: 3px;
	}
	#outline_history .history_list ul li {
		margin-top: 18px;
	}
	#outline_history .history_list ul li:first-of-type {
		margin-top: 0;
	}
	#outline_history .history_list ul li p {
		margin-top: 8px;
	}
	#outline_base .base_list h3 {
		margin-bottom: 0;
		padding: 0 0 12px 0;	
	}
	#outline_base .base_list h3::before {
		display: none;	
	}
	#outline #bottom_contact.sub_section {
    width: 100%;
    background: #EBF4FF;
    border-radius: 10px;
    padding: 8%;
	}

	/* recruitment
	------------------------------ */
	#recruitment01 {
		display: block;
	}
	#recruitment01 li {
    border-bottom: 1px solid #D9D9D9;
    padding: 40px 0;
	}
	#recruitment01 li:first-of-type {
    padding-top: 0;
	}
	#recruitment01 .pict {
    width: 100%;
    max-width: 250px;
    height: auto;
    margin: auto;
	}
	#recruitment01 .text_box{
		max-width: 420px;
    margin: auto;
	}
	#recruitment01 .text_box h2 {
		text-align: center;
    font-size: 2rem;
    margin: 15px 0 0;
	}
	#recruitment01 dl {
		margin: 0;
    align-items: center;
    padding: 6px 0;
	}
	#recruitment01 dl:first-of-type {
		margin-top: 12px;
	}
	#recruitment01 dl dt {
    margin-right: 23px;
    padding: 0;
	}
	#recruitment01 dl dd {
    padding: 0;
	}
	#recruitment01 .term_list {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-top: 18px;
	}
	#recruitment .text_box .term {
    margin-right: 0;
	}
	#recruitment01 .btn {
    margin: 23px auto 0;
	}
	#recruitment #bottom_contact .wrapper {
    padding: 8%;
	}
	#recruitment #bottom_contact h2 {
    font-size: 1.6rem;
    margin-bottom: 20px;
	}
	#recruitment #bottom_contact a.btn.contact {
    margin-top: 6px;
	}

	/* aside */
	#recruitment aside {
		padding-top: 70px;
	}
	#recruitment aside a {
		padding: 5px 5px 5px 12px;
	}
	#recruitment .accordion h3 {
		font-size: 1.8rem;
    margin: 0;
    padding: 6px 0 8px 12px;
	}
	#recruitment .accordion h3::before {
    height: 3px;
    top: 0;
	}
	
	/* recruitment_single
	------------------------------ */
	#recruitment_single01 .gallery_list {
    width: 100%;
    max-width: 350px;
    height: 202px;
    margin: 0 auto 15px;
	}
	#recruitment_single01 .pict {
		width: 100%;
		max-width: 350px;
		height: 200px;
	}
	#recruitment_single01 img {
		width: 100%;
		max-width: 350px;
		height: 200px;
	}
	#recruitment .slick-dots {
    margin-top: 0!important;
    bottom: 30px!important;
	}
	#recruitment_single01 .slick-dots li button {
    width: 12px;
    height: 12px;
	}
	#recruitment_single01 .gallery_list button.slick-prev {
    left: 20px;
    margin: auto;
    top: 0;
    bottom: 0;
	}
	#recruitment_single01 .gallery_list button.slick-next {
    right: 20px;
    margin: auto;
    top: 0;
    bottom: 0;
	}
	#recruitment_single01 .text_box .term_list {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: flex-start;
	}
	#recruitment_single01 .job_description,
	#recruitment_single01 .how_to_inter {
    margin-top: 40px;
	}
	#recruitment_single01 h3::before {
    top: 4px;
	}
	#recruitment_single01 h3 {
    padding-bottom: 0;
    margin-bottom: 10px;
	}
	#recruitment_single01 button.btn {
    margin: 30px auto 0;
    line-height: 53px;
	}

	/* entry_form
	------------------------------ */
	#entry_form #mailformpro th {
		padding: 2% 4%;
	}
	#entry_form #mailformpro td {
		padding: 4%;
	}
	#mailformpro table tr.address td .box input[type="text"] {
    width: 100%!important;
	}
	#mailformpro tr.license textarea {
    min-width: 100%;
    max-width: 100%;
    height: 112px!important;
    min-height: 112px;
	}
	#mailformpro textarea {
    min-width: 100%;
    max-width: 100%;
    min-height: 120px;
	}	

	/* contact & thanks
	------------------------------ */
	#contact_guide .layout_flex {
    margin-top: 20px;
	}
	#contact_guide h3 {
    width: 100%;
    padding: 12px 0;
    margin-bottom: 0;
    left: 0;
    top: 0px;
    border-radius: 9px 9px 0 0;
	}
	#contact_guide .guide_box {
		padding: 5% 5% 8%;
	}
	#contact_guide .btn.white {
    width: 100%;
    height: 50px;
    margin: 12px auto 0;
    line-height: 45px;
	}
	#contact_guide .flex_l .line {
    margin: 30px auto 26px;
	}
	#contact_guide .flex_l, #contact_guide .flex_r {
    margin-top: 20px;
	}
	#contact_guide .flex_r .btn.white {
    margin-top: 20px;
	}
	#contact_tel .tel_box {
    width: 100%;
    padding: 5%;
	}
	#contact_tel .tel_box .tel {
    background: url(../images/common/bc_tel.svg)no-repeat center center;
    background-size: contain;
    width: 100%;
	}
	#contact_tel .tel_box .hour {
    margin: 10px auto 0;
    text-align: center;
	}
	#contact .contact_menu {
		margin-top: 10px;
	}
	#mailformpro h3 {
    font-size: 2rem;
    margin: 20px 0 15px;
    padding: 0 0 5px 0px;
	}
	#privacy_policy{
		padding-top: 80px;
	}
	.privacy_policy_box{
		height: 200px;
		padding: 5%;
	}
	#privacy_policy .inner{
		height: 160px;
		overflow-y: scroll;
	}
	#privacy_policy h3{
		letter-spacing: 0;
    margin: 0 0 15px;
	}
	#privacy_policy p{
		font-size: 1.4rem;
	}
	#contact_sitemap ul {
    width: 100%;
    margin-top: 20px;
	}
	#contact_sitemap ul:first-of-type {
		margin-top: 0;
	}
	#contact_sitemap ul li a {
    padding-bottom: 10px;
	}
	#contact_sitemap ul li {
    margin-top: 20px;
	}

	/* thanks */
	#thanks .main_title .sub_h1,
	#thanks_entry01 .main_title .sub_h1{
		line-height: 1.5;
	}
	#thanks01 .tel_box,
	#thanks_entry01 .tel_box {
    margin-top: 15px;
    display: block;
    text-align: center;
	}
	#thanks01 .tel_box .tel, 
	#thanks_entry01 .tel_box .tel {
    position: relative;
    font-size: 0;
    background: url(../images/common/bc_tel.svg)no-repeat center;
    background-size: contain;
    width: 100%;
    max-width: 302px;
    margin: auto;
	}
	#thanks01 p,
	#thanks_entry01 p{
		margin-top: 12px;
	}
	#thanks01 a.btn,
	#thanks_entry01 a.btn{
		margin-top: 25px;
	}

	/* bottom_contact
	------------------------------ */
	#bottom_contact.sub_section {
    width: 90%;
    max-width: 480px;
    margin: 50px auto 0;
	}
	#staffing #bottom_contact.sub_section,
	#for_company #bottom_contact.sub_section,
	#news #bottom_contact.sub_section {
		width: 100%;
	}
	#bottom_contact.sub_section .wrapper {
    padding: 8%;
	}
	#bottom_contact.sub_section h2 {
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: left;
    padding-bottom: 23px;
	}
	#bottom_contact .layout_flex .flex_l .tel{
		max-width: 302px;
		height: 28px;
		margin: 0 auto 8px;
	}
	#bottom_contact .layout_flex .flex_l .hour {
		text-align: center;
	}
	#bottom_contact a.btn.contact{
		max-width: 305px;
		width: 100%;
		height: 55px;
		line-height: 55px;
		margin-top: 20px;
	}

	/* news - archive
	------------------------------ */
	#news .main_title .inner {
    height: auto;
    background-position: center right;
	}
	#news main > .wrapper > .layout_flex{
		display: block;
	}
	#news .archive ol li{
		width: 100%;
    max-width: 350px;
    margin: auto;
    padding-bottom: 20px;
		margin-bottom: 30px;
	}
	#news .archive ol li:last-child{
		margin-bottom: 0;
	}
	#news .archive ol li .pict{
		height: 160px;
		overflow: hidden;
		margin-bottom: 15px;
	}
	#news .archive ol li .pict img{
		height: 160px;
    object-fit: contain;
	}
	#news .archive ol li .text h2{
		font-size: 1.8rem;
    letter-spacing: 0;
    margin: 10px 0 15px;
    padding-bottom: 0;
    text-align: left;
	}
	#news .archive ol li .text h2::before,
	#news .archive ol li .text h2::after {
		display: none;
	}
	#member01 div.box {
    margin: 0 auto 20px;
    padding: 30px 0;
	}
	#member01 div.box dl dd {
    width: 80%;
	}
	#member01 div.box dl dt {
    width: auto;
	}
	#member01 div.gray {
    margin: 30px auto 0;
    padding: 5%;
	}

	/* news - single
	------------------------------ */
	#single01 h2 {
		font-size: 2rem;
	}
	#single01 h1 {
		font-size: 2.2rem;
		margin-top: 5px
	}
	#single01 .content {
		padding-bottom: 50px;
	}
	#single01 .content img {
    max-width: 100%;
    width: 100%;
    margin: 20px auto 0;
    display: block;
	}
	#single01 .content p:first-of-type img {
		margin-top: 0;
	}
	#single01 .content div,
	#single01 .content p{
		margin-bottom: 2rem;
	}
	.single_pagenavi {
    gap: 0 10px;
    justify-content: center;
	}	
	.single_pagenavi li a {
    width: 90px;
    height: 30px;
    line-height: 30px;
	}

	/* aside
	------------------------------ */
	aside{
		padding-top: 50px;
	}
	.category_list h3{
		font-size: 1.8rem;
	}
	.category_list ul li a{
		font-size: 1.4rem;
		padding: 10px 5% 8px;
	}

	/* wp-pagenavi
	------------------------------ */
	.pagenavi,.wp-pagenavi{
		margin: 50px 0 30px;
	}

	/* 404
	------------------------------ */
	#yonmaruyon01 .btn {
		margin-top: 30px;
	}

	/* Footer
	------------------------------ */
	footer {
    margin-top: 60px;
    padding: 30px 0 75px;
	}
	footer .logo{
		width: 300px;
    height: 50px;
	}
	footer .layout_flex {
		justify-content: center;
	}
	footer .flex_l p{
		font-size: 1.4rem;
		line-height: 1.86;
		margin: 10px 0 20px;
	}
	footer .flex_l a img {
		max-width: 270px;
    margin: auto;
    display: block;
	}
	footer .flex_r{
		display: none;
	}
	small{
		line-height: 30px;
		margin-top: 24px;
	}

  /* Page Top
	------------------------------ */
  .pagetop {
  	bottom: 100px;
    right: 10px;
  }
  .pagetop::before {
    height: 68px;
  }

  /* 固定フッター
    ------------------------------ */
  .sp_bottom_contact {
    position: fixed;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    z-index: 10;
    font-weight: 700;
    filter: drop-shadow(0px 0px 14px rgba(255, 255, 255, 0.7));
  }
  .sp_bottom_contact a {
  	position: relative;
    color: #fff;
    padding: 36px 7px 8px;
    text-align: center;
    display: block;
    font-size: 1.3rem;
    line-height: 1.2;
	}
  .sp_bottom_contact .for_job {
    background: #002278;
    width: 33%;
  }
  .sp_bottom_contact .company {
    background: #EC1515;
    width: 33%;
  }
  .sp_bottom_contact .contact {
    background: #F9F9F9;
    width: 34%;
    padding: 45px 10px 8px;
    color: #002278;
  }
  .sp_bottom_contact a::before {
  	position: absolute;
  	content: "";
  	margin: auto;
  	left: 0;
  	right: 0;
  	top: 9px;
  }
  .sp_bottom_contact .for_job::before {
  	position: absolute;
  	content: "";
  	background: url(../images/common/icon_for_job.svg)no-repeat center;
  	background-size: contain;
  	width: 19px;
  	height: 19px;
  }
  .sp_bottom_contact .company::before {
  	background: url(../images/common/icon_company.svg)no-repeat center;
  	background-size: contain;
  	width: 16px;
  	height: 18px;
  }
  .sp_bottom_contact .contact::before {
  	background: url(../images/common/icon_contact.svg)no-repeat center;
  	background-size: contain;
  	width: 26px;
  	height: 20px;
  	top: 16px;
  }
}
