@media screen and (max-width:700px){

/*************************** E-01. 枠組共通 *********************/
#container{
	width: 100%;
	padding:0;
	margin:0;
}
#wrapper {
	width: 100%;
    margin: 0 auto;
	padding: 70px 0 30px;
}
.fixbox {
	width: 100%;
    padding: 0 1%;
}

.pc{display:none;}
.sp{display:inherit;}
.iframe-content {
	position: relative;
	width: 100%;
	padding: 75% 0 0 0;
}
.iframe-content iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

main > article > section {
    margin-top: 50px;
}

/*************************** E-02. header ************************/
.header-container {
	padding:4px 0;
	height: 70px;
}
.header-container span{
	font-size: 1.0rem;
}
.header-container img {
	width: 10.0rem;
	margin-left: 0.4rem;
}
.header-container form {
	padding: 16px 0;
}
.header-container form {
    width: calc(100% - 42px - 1rem - 32px);
    padding: 1px 0;
}
.header-container input[type="text"] {
    width: 84%;
    height: 40px;
    padding: 8px 12px;
}
.header-container input[type="submit"] {
	margin-left: -5px;
	height: 40px;
}
.header-sp-search{
    margin-right: 0px;
}


/*************************** E-03. nav ***************************/
.megamenu div {
	padding: 24px 0;
}
.megamenu div p {
    width: 98%;
}
.megamenu > ul > li > a{
	padding: 18px 0;
}
.header-right-content{
	gap: 18px;
	padding-top: 40px;
}
.header-right-top-menu ul{
	width: 90%;
	gap: 14px 0;
	justify-content: flex-start;
}
.header-right-top-menu ul li{
	text-align: left;
	width: auto;
	padding-left: 24px;
	padding-right: 36px;
}
.header-right-top-menu ul li:last-child a{
	width: 90%;
	margin: 10px auto 0;
	position: relative;
	text-align: left;
	padding-left: 48px;
	padding-right: 48px;
	line-height: 1.6;

}
.header-right-top-menu ul li:last-child a::after{
	position: absolute;
    display: initial;
    width: 35px;
    height: 35px;
    right: 48px;
    bottom: 0;
    top: 0;
    margin: auto;
}
.header-right-top-menu ul li:last-child a .sp{
	display: inherit;
}

/*************************** E-04. main共通 **********************/
.concept .catchcopy br{
    display: inherit;
}
.concept .concept-bg{
    font-size:4.8rem;
}

ul.before-after li:first-child::after{
    font-size: 10rem;
}
ul.before-after li:first-child::before{
    font-size: 2.8rem;
    margin-bottom: 0.6rem;
}
ul.before-after li:last-child::before{
    font-size: 2.8rem;
    margin-bottom: 0.6rem;
}

.conversion a{
	padding:2.8rem 0 2.4rem;
	font-size: 2.4rem;
	line-height: 1.4;
	letter-spacing:1px;
}
.miniConversion{
	width: 100%;
}
.miniConversion a{
	padding:2.0rem;
	font-size:2.0rem;
}
.miniConversion.gray a{
	padding:2rem 5rem;
}

div.largeT.sp-scroll{
  	width: 100%;
  	overflow-x: auto; /* tableタグのはみ出た要素を隠す */
  	white-space: nowrap; /* テキストの折り返しなし */
}
div.largeT.sp-scroll table{
	width: 400px;
}
div.largeT table thead {
	display: none;
}
div.largeT table tbody tr {
	background: #fff;
}
div.largeT table tbody th {
	background: #f0f2f4;
	display: block;
	border: none;
}
div.largeT table tbody td {
	display: flex;
	border-left: none;
	border-right: none;
	text-align: left;
	font-size:1.6rem;
}
div.largeT.sp-scroll table tbody td {
	border-left: 1px solid #dedede;
	border-right: 1px solid #dedede;
}
div.largeT.sp-scroll table tbody td{
	text-align:left;
}
div.largeT.sp-scroll table tbody td::before{
	display: none;
}
div.largeT.sp-scroll table tbody td:last-child{
	padding-bottom: 5px;
}
div.largeT table tbody td::before {
	content: attr(data-label) ;
	font-weight: bold;
	flex-shrink: 0;
	margin-right: 1.6rem;
}
div.largeT table tbody td:last-child {
	padding-bottom: 4rem;
}
div.largeT tbody td.yes,
div.largeT tbody td.no{
	text-indent: initial;
}
div.largeT.sp-scroll table tbody td.other{
	max-width: 80px;
	text-align: center;
	padding-bottom: 10px;
}
div.largeT tbody tr:nth-child(2n+1){
	background: #f1f1f1;
}
div.largeT.white tbody tr:nth-child(2n+1){
	background: #fff;
}


div.largeT.sp-scroll table tbody td{
	display:table-cell;
}
div.largeT.sp-scroll table thead{
	display:table-header-group;
}
dl.table dt{
	width:auto;
	float:inherit;
	padding:15px 0 0;
	color:#666;
	font-weight: bold;
}
dl.table dd{
	border-bottom: 1px solid #ddd;
	padding:5px 0 15px;
}

.flex-container-four > *{
    width: 48%;
    margin: 0 1% 3%;
}

.related-article-container{
    flex-direction: column;
}
.related-article-box{
    width: 100%;
    margin-bottom: 3rem;
}
.related-article-box div.img img{
    width: 18rem;
    height: 12rem;
}
.related-article-box div.txt{
    width: calc(100% - 19rem);
}

div.leftImg .img,
div.rightImg .img{
	float: inherit;
	margin:0 auto 1rem;
	width: 60%;
}

.page-parent li{
	min-height: 14.0rem;
}
.page-parent li a{
    font-size: 2.0rem;
}

.flow-section-container{
	background:none;
}
.flow-section-container section{
	width:100%;
}
.flow-section-container section:not(:last-child){
	background: url(/images/icons/flow-bottom-start-gray.svg) no-repeat center bottom;
	padding-bottom:5rem;
	background-size:15rem;
}
.flow-section-container section:nth-child(odd){
	margin-left:0;
}
.conversion a::before{
	display:none;
}
.concept .tit{
	left:0;
	width: 100px;
	height: 100px;
	padding: 2.2rem;
	top: -3rem;
}
.concept .tit:after{
	bottom: -0.4rem;
	right: 0;
	border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-bottom: 24px solid #589F66;
}
.concept .tit:before{
	border-left: 12px solid transparent;
    border-bottom: 24px solid #FFE452;
    bottom: -0.8rem;
    right: -0.3rem;
}

.concept p.catchcopy{
	padding-left: 0;
	padding-top: 8rem;
	padding-bottom: 6rem;
	font-size: 3rem;
}
.concept .concept-right{
	margin-top: 1rem;
}
dl.faq dt{
	font-size:1.8rem;
}
ul.twoColumns li:before, ul.threeColumns li:before, ul.fourColumns li:before, ul.fiveColumns li:before{
	display: none;
}
.flex-container-two h3, .flex-container-three h3, .flex-container-four h3{
	width: 100%;
	margin-left: 0;
	border-radius: 10px;
	padding: 1rem;
	font-size: 2rem;
}
dl.table dt:before{
	width: 30px;
}
.flow-section-container h3{
	width: 100%;
	font-size: 2.2rem;
}
.page-header{
	aspect-ratio: 2.2/1;
}
.page-header h1{
	font-size: 2.8rem;
	width: 90%;
}
.page-header img{
	object-fit: cover;
	height:100%;
	object-position: 60%;
}
.fixbox02{
	padding: 0 1% 5rem;
}
main p.lead{
	font-size: 1.8rem;
}
div.page-index{
	width:98%;
}
/*************************** E-05. h1, h2見出し ***************************/
h1{
	font-size: 3.2rem;
}
h2 {
    padding-top: 16px;
    margin-bottom: 24px;
    font-size: 2.8rem;
    line-height: 1.3;
}
h2 span {
    margin-top: 8px;
}
h3{
	font-size: 2.4rem;
}
.flex-container-three.sp-one > *,
.flex-container-two.sp-one > *{
	width:100%;
}


/*************************** E-06. breadcrumb ***************************/
.breadcrumb{
	overflow-x: auto;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	height: 30px;
	padding:8px 1%;
	margin-top:5px;
}
.breadcrumb::-webkit-scrollbar {
    height: 5px;
}
.breadcrumb::-webkit-scrollbar-track {
    background: #eee;
}
.breadcrumb::-webkit-scrollbar-thumb {
    background: #999;
}

/*************************** E-07. pager backnumber等 **************/
.pager ul.direct {
    padding: 16px 0 0;
    clear: both;
}

/*************************** E-08. aside ***************************/
aside{
	width:100%;
	padding:0;
	float:inherit;
	clear:both;
}

aside nav > ul > li{
    width:100%;
    margin:10px 0;
}

aside nav ul li ul{
    margin-left:10px;
    padding-left:10px;
}


/*************************** E-09. footer *************************/
.contigo{
	padding:0 0 1rem;
	width: 100%;
}
.contigo a{
	width: 100%;
}
.contigo svg{
	height:auto;
	position:relative;
	top:0;
	left:0;
}
ul.footerNav{
	width: 88%;
}
footer ul.footerNav li{
	text-align: left;
	margin-bottom: 2rem;
}

/*************************** E-10. toppage ************************/
/* 人手不足の解消に外国人材 */
.top-02 {
	padding: 32px 20px;
}
.top-02 h1 {
    margin-bottom: 32px;
    padding-bottom: 0;
    text-align: left;
}
.top-02 h1::after {
	top: 130%;
	left: 0;
	transform: none;
}
.top-02-container .top-02-container-right {
    width: 100%;

}
.top-02-container .top-02-container-left {
    width: 75%;
	text-align: center;
}
/* 外国人材雇用の制度 */
.merit-box img{
	width: 28%;
}
.top-03-merit .merit-box{
	width:100%;
}
.top-03-merit .merit-box-txt{
	width: 70%;
}
.top-03-merit .merit-box{
	margin-bottom: 30px;
}
.top-03-container .top-03-box{
	width: 100%;
}
.top-03-container .top-03-box .top-03-box-img{
	height: 200px;
}
.top-03-merit .merit-box:last-child{
	margin-bottom: 0;
}
.top-03-merit h4:before{
	display: none;
}
.entry-container section {
	width: 100%;
	display: flex;
	align-items: center;
}
.entry-container section div.img{
	width: 38%;
	margin-right: 2%;
}
.entry-container section div.img img{
	width: 100%;
	height: auto;
}
.entry-container section div{
	width: 60%;
}
.entry-container section.entry-first{
	flex-direction: column;
}
.entry-container section.entry-first div.img{
	width: 100%;
	margin-right: 0;
}
.entry-container section.entry-first div{
	width: 100%;
}
.top-04-container section:nth-child(2) {
	border-top: none;
}
.top-04-container h3 {
	margin: 12px 0;
}
.top-04-container a:before,
.top-04-container a:after{
	display: none;
}
.top-06{
	padding: 40px 12px;
	padding-top:100px;
}
.top-06 .fixbox02{
	padding: 40px 2% 40px;
}
.top-06 .fixbox02.top-06-container01{
	padding-top: 10px;
}
#top .top-06 .fixbox02 ul{
	gap: 24px 14px;
	margin-top:3rem;
}
.top-06 .top-06-box section{
	width: 98%;
}
#top .top-06 .fixbox02 h3{
	margin-bottom: 1rem;
	font-size: 2.1rem;
}
.top-06 .top-06-box section p{
	padding-top: 0;
}
/* 海外人材についてもっと知る */
.top-07{
	padding: 80px 12px 120px;
}
.top-07-container{
	width: 100%;
}
.top-07-box{
	height: 140px;
	font-size: 1.7rem;
}
.top-07-box::before{
	width: 40px;
	height: 40px;
}
.top-07.i-none{
    padding-left: 0;
    padding-right: 0;
}
.top-07.i-none .top-07-container{
    gap: 1rem;
}
.top-07.i-none .top-07-container::after{
  content:"";
  display: block;
  width:48%;
}



/*************************** E-11. form ***************************/
form dl {
	border: none;
}
form dl dt {
	float: none;
	width: auto;
	min-height: auto;
	justify-content: flex-start;
}
form dl dd {
	padding: 0 0 15px 0;
}
form dl dd:last-child {
	border:none;
}
form span.required,
form span.will{
	margin-left:5px;
	margin-right: 0;
}
form dl textarea{
	width:100%;
	height:100px;
}
form dl label input{
	width:22px;
}
form .submit {
    margin-top: 20px;
}


/*************************** E-12. レギュレーション *************************/
pre.show{
	white-space:pre-line;
}
.regulation-color-container ul li {
    width: 48%;
}

/*************************** E-13. 検索結果 ***********************/

/*************************** E-14. 内部ページ ***************************/


/*B-14-1 エリア*/
.area-map > ul > li{
    display: block;
    text-align: center;
}
.area-map > ul > li > a{
    display: block;
    width: 100%;
}
.area-map > ul > li > a::after{
    border-top: 10px solid #f0f0f0;/*底辺*/
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    top: inherit;
    left: 50%;
    right: inherit;
    bottom: -20px;
    transform: translateX(-50%);
}
.area-map > ul > li > ul{
    padding-left: 0;
}

.area-cities-container {
    margin: 0 -1%;
}
.area-cities-container ul {
    width: 48%;
    margin: 0 1% 3%;
}
.area-map-chomei li{
	width: 31.3333%;
	margin: 0 1% 3%;
}

.search_btn input{
	padding:2.0rem;
	font-size:2.0rem;
}
.search_btn{
	width: 100%;
}


div.game-result-next{
	flex-direction: column;
}
.free-01 h2{
	font-size:2rem;
	padding-top: 0;
}
.free-01 h2 span{
	margin-bottom: 6rem;
}
.free-01-strong span{
	font-size: 3.8rem;
}
.free-01-strong:before{
	display:none;
}
.free-01-box{
	justify-content: space-around;
}
.free-01-box section{
	width: 98%;
}

.bg-green h2{
	font-size: 2.2rem;
	line-height: 1.4;
}
.free-02-box{
	margin-bottom: 6rem;
}
.free-02-box li{
	width: 45%;
	margin-bottom: 4rem;
}
.free-02-box{
	justify-content: space-around;
}
.free-02-box li{
	aspect-ratio: 1/1;
	width: 46%;
	height: auto;
}
.free-02-box li:after{
    content: url(../images/img/free-01sp.png);
}
.free-02-box li:nth-of-type(2):after{
    content: url(../images/img/free-03sp.png);
}
.free-02-box li:nth-of-type(3):after{
    content: url(../images/img/free-04sp.png);
}
.free-02-box02{
	display: block;
	max-height: initial;
}
.free-02 h3:before{
	display:none;
}
.conversion-area{
	padding-top: 5rem;
}
div.leftImg,
div.rightImg{
	padding: 2rem 1rem;
}
.img-box{
	padding:3rem 0;
}
.img-box img{
    width: 100%;
}

.specified h4{
	width: 100%;
	font-size: 1.9rem;
}
.specified  .flex-container-two h3,.specified  .flex-container-three h3,.specified  .flex-container-four h3{
	border-radius: 0;
}
.specified .flow-section-container section:last-of-type{
	transform: initial;
}
.reason-01 h2{
	font-size: 2.4rem;
}

.free-02 dl.table dd{
	padding-left: 0;
}

/*B-14-1 エリア*/
.area-map > ul > li{
    display: block;
    text-align: center;
}
.area-map > ul > li > a{
    display: block;
    width: 100%;
}
.area-map > ul > li > a::after{
    border-top: 10px solid #f0f0f0;/*底辺*/
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    top: inherit;
    left: 50%;
    right: inherit;
    bottom: -18px;
    transform: translateX(-50%);
}
.area-map > ul > li > ul{
    padding-left: 0;
    margin:1.2rem 0 2rem;
}

.area-cities-container {
    margin: 0 -1%;
}
.area-cities-container ul {
    width: 48%;
    margin: 0 1% 3%;
}
.area-map-chomei li{
    width: 31.3333%;
    margin: 0 1% 3%;
}
.area-12 {
    padding: 60px 1%;
}
.area section.greeting div{
	margin-left: 0;
	width: 100%;
}
.area section.greeting div.greeting-img{
	text-align: center;
}
.top-07-box{
	border-radius: 10px;
}
.area .top-07-box{
	background-color: #f5f5f5;
}
}/* max-width */
