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


/*************************** D-01. 枠組共通 ***********************/
#wrapper {
    overflow: hidden;
    margin: 0 auto;
    padding: 70px 0 150px;
    position: relative;
}
main{
    flex-direction: column;
}
main article{
    width:100%;
}
/*************************** D-02. header *************************/
header {
    max-width: 1280px;
    margin: auto;
    position: fixed;
    z-index: 1000;
    width: 100%;
    display: block;
}
.header-container img{
    width: 11rem;
}
.header-container {
    background:rgba(255,255,255,0.95);
    padding: 10px 0;
    width: 100%;
    height: 70px;
}
.header-container form {
    display: none;
    width: calc(100% - 42px - 1rem - 32px - 1rem);
    background: #fff;
    text-align: center;
    top: 3px;
    left: 0;
    padding: 14px;
    position: absolute;
}
.header-container input[type="text"] {
    width: 440px;
    margin: 0 auto;
}

.sp-freedial{
    background:#F2941D;
    display:block;
}
.sp-freedial a{
    color:#fff;
    padding:1rem 1.0rem;
    display: block;
}
.sp-freedial strong{
    display: block;
    font-size:1.8rem;
    padding-top:0.8rem;
    padding-bottom:0.8rem;
    padding-left:2.2rem;
    position: relative;
}
.sp-freedial strong::before{
    content: "\f879";
    font-family: "Font Awesome 5 Free";
    font-weight:900;
    position: absolute;
    top:50%;
    transform:translateY(-30%);
    left:0px;
}
.hamburger {
    display: block;
    position: relative;
    width : 70px;
    height: 70px;
    cursor: pointer;
    margin: 0 ;
    transition:background .3s;
    z-index: 100;
    background-color: #F2941D;
    border-bottom-left-radius: 10px;
}
.hamburger span {
    display: block;
    position: absolute;
    width: 30px;
    height: 3px ;
    left: 0;
    right: 0;
    margin: auto;
    background: #ffffff;
    transition: 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
    top: 15px;
}
.hamburger span:nth-child(2) {
    top: 25px;
}
.hamburger span:nth-child(3) {
    top: 35px;
    position: relative;
}
header span:nth-child(3)::after {
    content:"Menu";
    position: absolute;
    top:8px;
    left:0;
    color: #fff;
    font-size:1rem;
    text-transform: uppercase;
}
/* ナビ開いてる時のボタン */
.hamburger.nav_active span:nth-child(1) {
    top : 23px;
    left: 0px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.hamburger.nav_active span:nth-child(2),
.hamburger.nav_active span:nth-child(3) {
    top: 23px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.hamburger.nav_active span:nth-child(3)::after{
    content: "Close";
    top: 11px;
    left: 17px;
    transform: rotate(-45deg);

}
.header-sp {
    display: flex;
    align-items: center;
}
.header-sp-search{
    display: block;
    cursor: pointer;
    width: 24px;
    margin-right: 8px;
    transition:background .3s;
    position: relative;
    text-indent: -9999px;
}
.header-sp-search::after {
    position: absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    content:"";
    width: 25px;
    height: 25px;
    display: block;
    background: url(/images/icons/icon-search.svg) no-repeat;
    background-size: auto 100%;
    transition:background-color .3s;
}
.header-sp-search.search_active::after{
    background:#333 url(/images/icons/icon-close.svg) no-repeat 50%;
    padding:4px;
    background-size: 70%;
}
.header-right-top-menu ul li:last-child a .d-inlineblock{
    display: inline-block!important;
}
/*************************** D-03. nav ***************************/
.header-right-content {
    display: none;
    overflow-y: scroll;
    height: calc(100vh);
    background:rgba(255,255,255,1);
    margin-top:0;
    width: 100%;
    background-color: #F2941D;
    position: absolute;
    top: 0;
    padding-top: 60px;
    justify-content: flex-start;
    flex-direction: column;
    gap: 30px;
    flex-wrap:nowrap;
}
.header-right-content nav{
    max-width: 800px;
    margin: 0 auto;
    width: 100%;
}
.header-right-top-menu{
    order: 2;
}
.header-right-top-menu ul{
    gap: 20px 0;
    justify-content: center;
    width: 80%;
    margin: 0 auto;
}
.header-right-top-menu ul li{
    border-right: 0;
    text-align: center;
    width: 47%;
    border-right: 1px solid #ffffff;
}
.header-right-top-menu ul li a{
    color: #ffffff;
    font-size: 1.9rem;
    text-align: center;
}
.header-right-top-menu ul li:last-child {
    border-bottom: 0;
    width: 100%;
    border-right: 0;

}
.header-right-top-menu ul li:last-child a{
    margin: 30px auto 0;
    background-color: #ffffff;
    color: #F2941D;
    width: 100%;
    border-radius: 10px;
}
.header-right-top-menu ul li:last-child a .sp{
    display: inline;
}
.header-right-top-menu ul li:last-child a::after {
    background-image: url(../images/header/con_icon-orange.png);
    width: 22px;
    height: 26px;
}
.sns{
    order: 3;
}
nav.sns ul{
    gap: 3rem;
}
nav.sns ul li a i {
    font-size: 4rem;
    color: #ffffff;
}
.megamenu{
    order: 1;
}
.megamenu > ul {
    display: block;
    margin-bottom: 0px;
    padding: 0;
}
.megamenu > ul > li {
    text-align: left;
    width: 98%;
    margin:0 auto;
}
.megamenu > ul > li a {
    padding-left: 24px;
}
.megamenu > ul > li > a{
    /* border-top:1px solid #ccc; */
    border-bottom: 1px dotted #ffffff;
    color: #ffffff;
    padding: 20px 0;
}
.megamenu > ul > li.has-child > a::before {
    right: 16px;
    bottom: auto;
    left: auto;
    width: 8px;
    height: 8px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;
}
.megamenu > ul > li:hover > a,
.megamenu > ul > .nav_open > a{
    background-color: inherit;
}
.megamenu div {
    position: static;
    transform: none;
}
/* 第2階層 */
.megamenu div > ul {
    background: transparent;
}
.megamenu div > ul > li {
    width: 48%;
    border-bottom: none;
}
.megamenu div > ul > li > a {
    padding-left: 0;
    font-size:1.8rem;
}
/* 第3階層 */
.megamenu div > ul > li > ul {
    padding: 0 0 10px 2px;
}

.megamenu div > ul > li,
.megamenu div > ul > li > ul,
.megamenu div > ul > li > ul > li > ul,
.megamenu div > ul > li > ul > li > ul > li > ul {
    background: transparent;
}
.megamenu div > ul > li > ul > li{
    border-bottom: 1px solid #ccc;
}
.megamenu div > ul > li > ul > li > ul > li, 
.megamenu div > ul > li > ul > li > ul > li > ul > li {
    border-bottom: none;
}

/*************************** D-04. main共通 ***********************/
.pc{
    display: none;
}
.tablet{
    display: inherit;
}
.sp{
    display: inherit;
}

ul.before-after li:first-child::after{
    font-size: 12rem;
}
ul.fourColumns li{
    width: 31.3333%;
    margin:1%;
}
ul.fiveColumns li{
    width: 23%;
    margin:1%;
}
ul.sixColumns li{
    width: 23%;
    margin:1%;
}
.flex-container-two > *{
    padding: 2rem 1rem;
}
.flex-container-three > *{
    width: 48%;
    margin: 0 1% 3%;
    padding: 2rem 1rem;
}
.flex-container-four > *{
    width: 31.3333%;
}

div.flow-ol-container ol{
    flex-direction: column;
    width: 100%;
    background: linear-gradient(to bottom, #f0f2f4, #999);
}
div.flow-ol-container ol li{
    width: 100%;
    padding: 30px 0;
    background:url(../images/icons/flow-bottom-start.svg) no-repeat center bottom, url(../images/icons/flow-bottom-end.svg) no-repeat center top;
    background-size: 160px auto;
}
div.flow-ol-container ol li:last-child{
    background: url(../images/icons/flow-bottom-end.svg) no-repeat center top;
    background-size: 160px auto;
    border: none;
}
div.flow-ol-container ol li:first-child{
    background: url(../images/icons/flow-bottom-start.svg) no-repeat center bottom;
    background-size: 160px auto;
}
div.flow-ol-container ol li::before{
    counter-increment: flow-list;
    content: counter(flow-list);
    display: block;
    font-size: 4.8rem;
    padding-bottom: 1rem;
}

.flow-section-container section{
    width:calc(50% + 6rem);
}
.flow-section-container section:nth-child(odd){
    margin-left:calc(50% - 6rem);
}
.flow-section-container h3::before{
    width: 3rem;
    padding:0.3rem 0;
    color:#fff;
    margin-right: 0.3rem;
}
.flow-section-container div.img{
    width: 12rem;
}

.page-parent li{
    min-height: 16.0rem;
}
.page-parent li a{
    font-size: 2.2rem;
}
div.scroll thead th{
    position: relative;
}
div.scroll thead th:first-child{
    position: relative;
}
/*************************** D-05. h1, h2見出し ********************/

#top h1, #top h2{
    width: 85%;
    padding: 15px 0;
}
#top h1::before, #top h2::before{
    top: 50px;
}
#top .top-02 h1::after {
    width: 90px;
    height: 90px;
    bottom: -20px;
    right: -40px;
}
#top .top-03 h2::after {
    width: 105px;
    height: 85px;
    bottom: -10px;
    right: -15px;
}
#top .top-05 h2::after {
    width: 105px;
    height: 90px;
    background-image: url(../images/img/top_081.png);
    bottom: -4px;
    right: -15px;
}
#top .top-07 h2::after {
    width: 105px;
    height: 85px;
    background-image: url(../images/img/top_32.png);
    bottom: -10px;
    right: -65px;
}
.top-07 .top-07-btn{
    margin: 40px auto 0;
}

/*************************** D-06. breadcrumb *********************/
/*************************** D-07. pager backnumber等 *************/
/*************************** D-08. aside **************************/
aside {
    width: 100%;
    margin-left: 0;
    position:inherit;
    display: block;
}

aside nav > ul{
    display: flex;
    flex-wrap: wrap;
}
aside nav > ul > li{
    width:48%;
    margin:1%;
}
aside nav ul li ul{
    margin-left:6px;
    padding-left:6px;
}
aside nav ul li a{
    font-size: 1.6rem;
}
aside nav > ul > li > ul > li a{
    padding:10px 4px;
}

/*************************** D-09. footer *************************/
footer{
    padding-top: 30px;
    padding-bottom:16rem;
}
ul.footerNav {
    width: 90%;
    margin: 0 auto;
    justify-content: flex-start;
}
footer ul.footerNav li {
    max-width: 31.3333%;
    width: 100%;
    text-align: left;
    padding: 0;
    margin-bottom: 10px;
}
footer ul.footerNav li a {
    padding: 0;
}
footer .logo img {
    max-width: 140px;
    height: auto;
    margin-top: 16px;
}
footer address {
    margin: 16px 0 32px;
}
footer small {
    padding: 16px 0;
}
.footer-conversion {
    display:flex;
}
.footer-conversion span{
    display:none;
}


/*************************** D-10. toppage ***********************/
.top-01{
    background-size: cover;
    background-position: top 20% left 20%;
    height: 350px;
    background-image: url(../images/img/top_01.jpg);
}
.entry-container section {
    width: 48%;
    margin: 0 1% 30px;
}

/* 人手不足の解消に外国人材 */




/* 外国人材雇用の制度 */
.top-03-container{
    gap: 4rem;
}
.top-03-container .top-03-box {
    width: 75%;
}

main article section .top-03-merit {
    margin-top: 50px;
}

.top-03-merit .fixbox02{
    margin-top: 30px;
}

.top-03-merit .merit-box {
    width: 70%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.top-03-merit .merit-box-txt{
    width: 50%;
}
.merit-box img {
    width: 40%;
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

/* お知らせ */

.top-04-container section {
    width: 50%;
    padding: 32px 8px 0;
}
main .top-03-merit p {
    line-height: 1.4;
    padding: 5px 0 15px;
}
.top-03-merit .merit-ttl-box .number {
    width: 50px;
    height: 50px;
    aspect-ratio: 1/1;
}


/* 事業紹介 */

.top-05 {
    padding: 40px 20px;
}
#top .top-05 h2{
	margin: 0 auto 30px;
}
.top-05 section{
    height: 100px;
    margin-top: 25px;
}
.top-05 .d_txt {
    width: 75%;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
}
/* 選ばれる理由 */
.top-06 {
    padding: 40px 20px;
}
.top-06 .top-06-box div {
    width: 65%;
}
.top-06 .top-06-box section {
    width: 80%;
    margin-top: 0;
}
.top-06 .top-06-box section h3{
    text-align: center;
}
.top-06 .top-06-box {
    margin: 45px 0 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
}
.top-06 .fixbox02 ul li{
    width:29%;
}
.top-06 .fixbox02 ul li img{
    height: 40px;
}
/* 海外人材についてもっと知る */

.top-07{
    padding-top: 40px;
    padding-bottom: 80px;
}
.top-07-container{
    width: 80%;
}
.top-07-box{
    height: 175px;
    width: 48%;
}
.top-07-btn a.more{
    text-align:left;
    padding: 0 40px 0 0;
    line-height: 1.6;
}
.top-07 .top-07-btn a{
    padding: 15px;
}

/*************************** D-11. form **************************/
.keywordsearch-page form dl dd {
    padding: 10px 0 10px 0;
}
.keywordsearch-page form dl dt {
    width: 100%;
}
.keywordsearch-page input[type="text"] {
    border: 1px solid #787878;
}


/*************************** D-12. レギュレーション ********************/
pre.show{
    max-height: 80vh;
}
.regulation-color-container ul li {
    width: 31.3333%;
}

/*************************** D-13. 検索結果 ***********************/
p.search-jump{
    display:inherit;
    margin:-2.0rem 0;
}
p.search-jump a{
    padding: 5px;
    text-align: center;
    margin:0 auto;
    font-weight: bold;
    border-radius: 5px;
    cursor :pointer;
    display: block;
    transition: .5s;
}
p.search-jump a::before {
    display: inline-block;
    content: '\f078';
    font-family: "Font Awesome 5 Free";
    font-weight:900;
    padding-right: 5px;
    transition: 0.2s;
}
p.search-jump a:hover {
    background: #eee;
}


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

/*B-14-1 エリア*/
.area-cities-container ul {
    width: 32.3333%;
    margin: 0 0.5% 3%;
}

/* B-14-6 試合結果（カテゴリー）*/
ul.result li{
    margin: 8px 0.8%;
}

div.result table thead th:nth-child(1){}
div.result table thead th:nth-child(2){display: none;}
div.result table thead th:nth-child(3){}
div.result table thead th:nth-child(4){display: none;}
div.result table thead th:nth-child(5){}

div.result table tbody td{
    font-size: 1.4rem;
    line-height: 1.4;
    vertical-align: inherit;
}
div.result table tbody td:nth-child(1) {}
div.result table tbody td:nth-child(1) em{
    display: block !important;
    text-align: center;
    margin-top: 5px;
}
div.result table tbody td:nth-child(2) {display: none;}
div.result table tbody td:nth-child(3) {
    display: flex;
    align-items: center;
    text-align: left;
}
div.result table tbody td:nth-child(3) span{
    margin-right: 5px;
    flex-shrink: 0;
    width: 30px;
    height: 30px;
}
div.result table tbody td:nth-child(3) div{
    text-align: center;
    width: 100%;
}
div.result table tbody td:nth-child(3) span img{
    width: 100%;
    height: auto;
}
div.result table tbody td:nth-child(3) em{
    display: block !important;
    text-align: center;
    margin-top: 5px;
}
div.result table tbody td:nth-child(4) {display: none;}
div.result table tbody td:nth-child(5) {
    font-size: 1.6rem;
}
div.result table tbody td:nth-child(5) a{
    text-decoration: none;
}
div.result table tbody td:nth-child(5) a span{
    text-decoration: none;
    display: block;
    font-size: 2.0rem;
}
dl.result-options{
    width: 100%;
    margin-bottom: 0.5rem;
}
dl.result-options select {
    border-radius: 0;
    background: #fff url(/images/icons/sort-down-solid.svg) no-repeat right 4px top 20%;
    background-size: 14px;
    color: #333;
}
.specified .flex-container-two h3{
    padding: 1rem 0;
}
#mapSvg {
    margin-top: 0rem;
    margin-right: 0rem;
}
}/* max-width */