/*------------------------------------------------------------
common
------------------------------------------------------------*/

body{
    font-family: "noto-sans-cjk-jp", sans-serif;
}

#mirapro .notoblack {
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-weight: 900;
    font-style: normal;
}

#mirapro {
    font-size: 16px;
    font-weight: 400;
    color: #333;
    overflow: hidden;
    position: relative;
    background: white;
}

#mirapro * {
    box-sizing: border-box;
}

#mirapro .flex {
    display: flex;
    flex-wrap: wrap;
}
#mirapro a {
    transition: opacity .3s;
}

#mirapro a[href^="tel:"] {
    display: inline-block;
    transition: none;
}

#mirapro a:hover {
    text-decoration: none;
}

#mirapro a:focus-visible {
    outline: none;
}

#mirapro img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

#mirapro .js-fadein {
    opacity: 0;
    transform: translate(0, 0);
    transition-property: opacity, transform;
    transition-duration: 2.5s;
}

#mirapro .scroll-in {
    opacity: 1;
    transform: translate(0, 430px);
}

#mirapro .text:last-of-type {
    margin-bottom: 0;
}

#mirapro .sp-br {
    display: none;
}

#mirapro .inner {
    width: calc(100% - 24px);
    max-width: 1240px;
    margin: 0 auto;
}



/*box-header*/
/*=========================================*/

#mirapro .box-header .logo{
    width: 50%;
    text-align: center;
    padding-left: 9%;
    padding-top: 35px;
}
#mirapro .box-header .text-header{
    width: 50%;
    text-align: center;
    color: white;
    justify-content: center;
    padding: 17px 0px;
    position: relative;
    z-index: 99
}
#mirapro .box-header .text-header::after {
    position: absolute;
    content: "";
    clip-path: polygon(8% 0%, 100% 0%, 100% 100%, 0% 100%);
    background: #426CA3;
    top: 0px;
    right: 0px;
    width: 103%;
    height: 102%;
    z-index: -1;
}
#mirapro .box-header .text-big {
    font-size: 60px;
    font-weight: 600;
    letter-spacing: 13px;
}

#mirapro .box-header .text-small {
    font-size: 16px;
    line-height: 32px;
    font-weight: 400;
    padding-top: 18px;
    text-align: left;
    padding-left: 20px;
}

#mirapro  .block-padding {
    padding: 0px 0px 0px 0px;
    position: relative;
}
#mirapro  .bg-padding {
    height: 100px;
    position: relative;
    z-index: 99;
    background: #426CA3;
    margin: 0px 100px 0px;
}
#mirapro  .block-padding::after {
  position: absolute;
  content: "";
  background: #3F98C7;
  top:0px;
  left: 0px;
  width: 100px;
  height: 100%;
  z-index: 85;
}
#mirapro  .block-padding::before {
    position: absolute;
    content: "";
    background: #426CA3;
    top:0px;
    right: 0px;
    width: 100px;
    height: 100%;
    z-index: 85;}

#mirapro  .btn-contact a {
    position: fixed;
    top: 30%;
    right: -14px;
    z-index: 99;
    width: 119px;
    height: 340px;
    background: #fff;
    border-radius: 20px 0 0 20px;
    border: 5px solid #85B722;
    border-right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s;
    color: #85B722;
    text-decoration: none;
    z-index: 1000;  
}
#mirapro  .btn-contact a  span {
    font-size: 32px;
    line-height: 40px;
    font-weight: bold;
    width: 40px;
    display: block;
    text-align: center;
    padding-bottom: 6px;
    margin-right: 12px;
}

#mirapro  .btn-contact a:hover {
    background: #85B722;
    right: 0;
}
#mirapro  .btn-contact a:hover span {
    color: white;
}

/*main-banner*/
/*=========================================*/


#mirapro  .banner-top {
    position: relative;
    background: white;
    padding: 88px 0px 38px;
}
#mirapro  .banner-top .box-one {
    width: 186px;
    text-align: center;
}
#mirapro .banner-top .box-one img {
    width: 135px;
}
#mirapro  .banner-top .img-01 {
    position: absolute;
    top: -22px;
    left: -21.5%;
    width: 67%;
}

#mirapro  .banner-top .box-img02 {
    position: absolute;
    /* bottom: -145px; */
    right: -12%;
    width: 67%;
    z-index: 9;
    top:20%
}
#mirapro  .banner-top .text-each {
    display: flex;
    padding-left: 15px;
    margin-top: 20px;
}
#mirapro  .banner-top .img-02 {
    position: relative;
    z-index: 10;
}

#mirapro  .banner-top .img-02 .text-small {
    position: absolute;
    left: 37%;
    top: -13%;
    font-family: 'Caveat', cursive;
    font-size: 100px;
    transform: rotate(-13deg);
}
#mirapro  .banner-top .img-02 .text-small span {
    font-size: 50px;
}
#mirapro  .banner-top .box-text-banner {
    max-width: 535px;
    margin: auto;
    font-weight: 900;
    position: relative;
    padding-right: 80px;
}
#mirapro  .banner-top .box-text-banner .text-each span{
    display: inline-block;
    width: 40px;
    margin-left: 8px;
    font-size: 30px;
    line-height: 40px;
}
#mirapro  .banner-top .box-text-banner .box-two{
    display: inline-block;
    width: 150px;
    margin-left: 5px;
    font-size: 150px;
    margin-top: -25px;
    line-height: 170px;
    margin-right: 29px;
}
#mirapro  .banner-top .box-text-banner .box-three {
    width: 82px;
    background: #D5F238;
    padding: 5px 5px 0px 15px;
    height: 263px;
    margin-top: -5px;
}
#mirapro  .banner-top .box-text-banner .box-three span {
    font-size: 50px;
    line-height: 60px;
}
#mirapro  .text-2 {
    background: white;
    text-align: center;
    padding: 4px 25px 10px;
    font-size: 30px;
    font-weight: 900;
    border: 1px solid #000;
    position: relative;
    z-index: 99;
    display: inline-block;
    margin: 0px 0px 10px 10px;
    color: #333;
}
#mirapro  .text-2.three {
    margin-left: 45px;
}
#mirapro  .text-2::after {
   position: absolute;
   content: "";
   background: white;
   width: 100%;
   height: 100%;
   border: 1px solid #000;
   top:-5px;
   left: -5px;
   z-index: -1;
}
#mirapro .box-right {
    width: 50%;
    z-index: -1;
}
#mirapro  .banner-down {
    position: relative;
    max-height: 333px;
    overflow: hidden;
    margin-bottom: 250px;
}
#mirapro  .banner-down .img-04 {
    position: absolute;
    top: 0px;
    left: -15%;
    width: 30.6%;
}
#mirapro .banner-down  img {
    height: 100%;
    object-fit: cover;
}
#mirapro  .banner-down .img-07 {
    position: absolute;
    top: 0px;
    right: -21%;
    width: 30.6%;
}
#mirapro  .banner-down .img-06 {
    position: absolute;
    top: 0px;
    right: 0.2%;
    width: 30.6%;
}
#mirapro  .banner-down .img-05 {
    position: absolute;
    top:0px;
    right: 21.5%;
    width: 30.6%;
}
#mirapro .text-down {
    width: 51.6%;
    clip-path: polygon(0 0, 78.3% 0, 100% 100%, 21.7% 100%);
    background: #3F98C7;
    margin-left: 5.8%;
    color: white;
    font-weight: 600;
    padding: 1.7% 5% 2.5% 4%;
    position: relative;
}
#mirapro .text-down .big-text {
    font-size: 115px;
    font-weight: 900;
    color: #F29D38;
    position: absolute;
    top: -2px;
    right: 18%;
    z-index: 9
}
#mirapro .text-down .big-text p {
    display: inline-block;
}
#mirapro .box-text-big {
    position: relative;
    width: 269px;
    height: 180px;
}
#mirapro .box-text-big .big-01 {
    position: absolute;
    top: -4px;
    left: 8px;
}
#mirapro .box-text-big .big-02 {
    position: absolute;
    top: 12px;
    right: 50px;
}
#mirapro .box-text-big .big-03 {
    position: absolute;
    top: -6px;
    right: -23px;
    transform: rotate(15deg);
}

#mirapro .text-down .note {
    width: 100%;
    text-align: end;
    font-size: 16px;
    margin-top: -10px;
    padding-right: 6%;
    letter-spacing: 0.5px;
}
#mirapro .img-mobi {
    display: none;
}

#mirapro .text-down .text-01 {
    font-size: 30px;
    padding-top: 1%;
    margin-right: 10px;
    font-weight: 900;
}
#mirapro .text-down .text-08 {
    font-size: 30px;
    margin-left: 12%;
    position: relative;
    font-weight: 900;
}
#mirapro .text-down .text-08::after {
    position: absolute;
    content: "";
    background: white;
    height: 4px;
    width: calc(80% - 30px);
    right: 24px;
    top: 24px;
}

#mirapro .text-down .box-number {
    margin-left: 18%;
    width: 86%;
}
#mirapro .text-down .box-number .number-item {
    width: calc(50% - 0px);
   
    
}
#mirapro .text-down .box-number .title-number {
    height: 67px;
    width: 67px;
    border-radius: 50%;
    border: 2px solid white;
    margin-left: 5px;
    font-size: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
} 
#mirapro .text-down .box-number  .number {
    font-size: 24px;
    margin-top: -8px;
}
#mirapro .text-down .box-number  span {
    font-family: 'Roboto', sans-serif;
    font-size: 50px;
}

/*share-world*/

#mirapro .share-world {
    margin-bottom: 100px;
    font-weight: 900;
    position: relative;
 
}
#mirapro .share-world .icon-bg-top {
    position: absolute;
    right: -2%;
    top: -25%;
    z-index: 100;
}
#mirapro .share-world .icon-bg-down{
    position: absolute;
    left: -3%;
    bottom: -21%;
    z-index: 100;
}
#mirapro .share-world::after {
    position: absolute;
    content: "";
    right: -11%;
    top: -44px;
    width: 85%;
    z-index: -1;
    height: 107.5%;
    clip-path: polygon(0 0, 73.3% 0, 100% 100%, 22.7% 100%);
    background: linear-gradient(107deg, rgba(229,229,229,0.2) 0%, rgba(188,186,186,1) 100%);
}
#mirapro .share-world .img-share {
    width: 49%;
    max-height: 606px;
    overflow: hidden;
}

#mirapro .share-world .text-share {
    width: 51%;
    padding-left: 2%;
    margin-top: -22px;
}

#mirapro .share-world  .share-01 {
    font-size: 55px;
    letter-spacing: 4px;
}
#mirapro .share-world  .share-02 {
    font-size: 55px;
    letter-spacing: 5px;
    margin-top: -8px;
}
#mirapro .share-world .title-share {
    margin-bottom: 37px;
    position: relative;
    max-width: 600px;
}
#mirapro .share-world .title-share .small-share {
    position: absolute;
    right: 9%;
    top: 16%;
    font-size: 22px;
    line-height: 30px;
    letter-spacing: 1px;
    font-weight: 400;
} 
#mirapro .share-world .title-share .small-share span {
    position: relative;
    display: inline-block;
}
#mirapro .share-world .title-share .small-share span::after {
    position: absolute;
    content: "";
    height: 62px;
    width: 1.5px;
    background: #000;
    left: -23px;
    top: -1px;
    transform: rotate(151deg);
}
#mirapro .share-world .title-share .small-share span::before {
    position: absolute;
    content: "";
    height: 62px;
    width: 1.5px;
    background: #000;
    right: -15px;
    top: -3px;
    transform: rotate(27deg);
}
#mirapro .share-world .line {
    color: #3F98C7;
    display: inline-block;
    background: url(../images/mirapro/bg_line.png) repeat-x left bottom;
    background-position-y: 60px;
}

#mirapro .share-world .box-share {
    width: 70%;
    height: 82%;
    position: relative;
    max-width: 590px;
} 

#mirapro .share-world .box-share .item-share {
    width: 260px;
    height: 225px;
    background: url(../images/mirapro/mirapro_bg_01_pc.png);
    background-position: center;
    background-size: cover;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items:center;
    color: #426CA3;
    font-size: 28px;
    position: absolute;
    text-align: center;
}
#mirapro .share-world .box-share .item-share.one {
    top: 0px;
    left: 3%;
}

#mirapro .share-world .box-share .item-share.two {
    top: 8%;
    right: 10%;
}
#mirapro .share-world .box-share .item-share.three {
    bottom: 8%;
    left: 9%;
}

#mirapro .share-world .box-share .item-share.four {
    bottom: 0px;
    right: 3%;
}

#mirapro .share-world .box-content {
    position: relative;
    z-index: 80;
}

#mirapro .box-content::after {
    position: absolute;
    content: "";
    right: -11%;
    top: -44px;
    width: 85%;
    z-index: -1;
    height: 107.5%;
    clip-path: polygon(0 0, 74% 0, 100% 100%, 22.7% 100%);
    background: linear-gradient(107deg, rgba(229,229,229,0.2) 0%, rgba(188,186,186,1) 100%);
}
/*benefits*/ 
#mirapro .benefits {
    background: linear-gradient(63deg, rgba(63,152,199,0.3) 0%, rgba(237,237,237,0.3) 100%);
    margin-top: -30px !important;
    font-weight: 600;
}

#mirapro .benefits .inner-benefits {
    max-width: 1100px;
    margin: auto;
    position: relative;
    padding: 133px 0px 90px;
}
#mirapro .benefits .inner-benefits::after {
    position: absolute;
    content: "";
    background-image: url(../images/mirapro/Benefits_pc.png);
    width: 998px;
    height: 238px;
    top: -103px;
    left: -60px;
}
#mirapro .benefits .bg-icon{
    position: absolute;
    bottom: -118px;
    left: -50px;
}
#mirapro .benefits .exp {
    align-items: center;
    position: relative;
    z-index: 99;
    justify-content: space-between;
    margin-bottom: 30px;
    padding: 17px 0px 43px 96px;
}
#mirapro .benefits .exp::after {
    position: absolute;
    content: "";
    clip-path: polygon(0 0, 63% 0, 100% 100%, 37% 100%);
    height: 100%;
    width: 340px;
    background: white;
    top:0px;
    left: 0px;
    z-index: -1;
}
#mirapro .benefits .exp .title-exp {
    width: 135px;
}

#mirapro .benefits .exp .exp-number{
    width: calc(100% - 160px);
}
#mirapro .benefits .exp .exp-number .number-45 {
    font-family: 'Roboto', sans-serif;
    font-size: 180px;
    text-shadow: 5px 5px 10px rgba(0,0,0,0.3);
    color: #426CA3;
    line-height: 145px;
}
#mirapro .benefits .title-45 {
    font-size: 48px;
    position: relative;
    padding: 17px 0px 0px 13px;
    letter-spacing: 4px;
    margin-bottom: -3px;
}
#mirapro .benefits .title-45::after {
    position: absolute;
    content: "";
    height: 15px;
    width: 15px;
    background: #000;
    top: 12px;
    left: 38%;
    border-radius: 50%;
}
#mirapro .benefits .title-45::before {
    position: absolute;
    content: "";
    height: 15px;
    width: 15px;
    background: #000;
    top: 12px;
    left: 53%;
    border-radius: 50%;
}
#mirapro .benefits .note-45 {
    font-size: 20px;
    font-weight: 400;
    padding-left: 12px;
}
#mirapro .benefits .title-45 span {
    color: #426CA3;
}
#mirapro .benefits .exp .text-2 {
    padding: 4px 13px 10px;
    margin-top: 45px;
    color: #426CA3;
    font-weight: 600;
}
#mirapro .salary-other {
    margin-left: 10%;
    position: relative;
    padding: 0px 0px 20px;
    z-index: 99;
}
#mirapro .salary-other::after {
    position: absolute;
    content: "";
    clip-path: polygon(0 0, 80% 0, 100% 100%, 19% 100%);
    height: 100%;
    width: 97%;
    background: white;
    top: 0px;
    left: 25px;
    z-index: -1;
}
#mirapro .salary-other .title-salary {
    position: relative;
    font-size: 24px;
    color: white;
    padding: 13px 49px;
    z-index: 99;
    margin-bottom: 14px;
    display: inline-block;
    letter-spacing: 2px;
}

#mirapro .salary-other .title-salary::after {
    position: absolute;
    content: "";
    clip-path: polygon(0 0, 88% 0, 100% 100%, 12% 100%);
    height: 100%;
    width: 100%;
    background: #426CA3;
    top: 0px;
    left: -6px;
    z-index: -1;
}
#mirapro  .salary-other .text-08 {
    font-size: 24px;
    margin-left: 16%;
    position: relative;
    color:#426CA3;
    margin-bottom: 10px;
    font-weight: 900;
}
#mirapro  .salary-other .text-08::after {
    position: absolute;
    content: "";
    background: #426CA3;
    height: 1px;
    width: 52%;
    left: 112px;
    top: 20px;
}
#mirapro  .salary-other .box-number {
    margin-left: 21%;
    width: 57%;
    margin-bottom: 25px;
}
#mirapro  .salary-other .cost {
    margin-left: 26%;
}
#mirapro .salary-other .box-number .title-number {
    height: 61px;
    width: 60px;
    border-radius: 50%;
    background: #98C762;
    color: white;
    margin-left: 5px;
    font-size: 19px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}

#mirapro .salary-other .box-number .number {
    font-size: 21px;
    margin-top: -8px;
    color: #426CA3;
}
#mirapro .salary-other .box-number span {
    font-family: 'Roboto', sans-serif;
    font-size: 44px;
    color: #426CA3;
}
#mirapro .salary-other .box-number .number-item {
    width: calc(50% - 0px);
}

#mirapro .salary-other .note {
    text-align: end;
    width: 100%;
    font-size: 18px;
    font-weight: 400;
    padding-right: 53px;
}
#mirapro .salary-other .text-2 {
    color: #3F98C7;
    font-size: 24px;
    margin: 0px 0px 15px 10px;
    padding: 4px 35px 10px;
}
#mirapro .benefits.inner-padding {
    margin-top: 220px !important;
}
/*work*/
#mirapro .box-work {
    padding: 133px 0px 33px;
    font-weight: 600;
}
#mirapro .box-work .inner-work {
    max-width: 1155px;
     margin: auto;
}
#mirapro .box-work .item-work {
    justify-content: space-between;
    margin-bottom: 55px;
    position: relative;
}
#mirapro .box-work .item-work .text-es {
    position: absolute;
    font-size: 50px;
    color: #98C762;
    top: -40px;
    left: 10%;
    font-weight: 400;
    line-height: 40px;
    font-family: 'Caveat', cursive;
}
#mirapro .box-work .item-work.two .text-es {
    color: #F29D38;
    top: -40px;
    left: 0%;
}
#mirapro .box-work .item-work .title-work {
    width: 36%;
    font-size: 42px;
    text-align: right;
    letter-spacing: 5px;
}
#mirapro .box-work .item-work.two .title-work {
    font-size: 36px;
    letter-spacing: 3px;
}
#mirapro .box-work .item-work .dl-work {
    width: 64%;
    font-size: 16px;
    text-align: left;
    position: relative;
    padding: 15px 0px 5px 48px;
}

#mirapro .box-work .item-work .dl-work::after {
    position: absolute;
    content: "";
    height: 80%;
    width: 2px;
    background: #85B722;
    left: 25px;
    top: 15px;
}

#mirapro .box-work .item-work.two .dl-work::after {
    background: #F29D38;
}
#mirapro .box-work .item-work .dt-work {
  font-size: 24px;
  letter-spacing: 2px;
  margin-bottom: 18px;
  font-weight: 400;
}

#mirapro .box-work .item-work .dt-work span {
    font-size: 24px;
    color: #98C762;
    font-weight: 900;
}
#mirapro .box-work .item-work.two .dt-work {
    font-size: 20px;
    line-height: 38px;
    letter-spacing: 1px;
    position: relative;
}
#mirapro .box-work .item-work.two .dt-work::after {
    position: absolute;
    content: "";
    background: url(../images/mirapro/bg_work.png);
    width: 280px;
    height: 178px;
    right: -92px;
    bottom: -45px;

}
#mirapro .box-work .item-work.two .dt-work span {
    color: #F29D38;
    font-size: 20px;
    font-weight: 900;
}
#mirapro .box-work .item-work .dd-work {
    font-size: 16px;
    letter-spacing: 2px;
    line-height: 28px;
    margin-bottom: 18px;
    font-weight: 400;
}
/*go abroad*/
#mirapro .go-abroad {
    justify-content: space-between;
    position: relative;
    z-index: 99;
}

#mirapro .go-abroad .img-abroad {
    width: 50%;
    background: #3F98C7;
}

#mirapro .go-abroad .text-abroad {
    width: 50%;
    background: #3F98C7;
    padding: 60px 0px 50px 0px;
    color: white;
    align-items: center;
    position: relative;
    z-index: 99;
}
#mirapro .go-abroad .text-abroad::after {
    position: absolute;
    content: "";
    background-image: url(../images/mirapro/abroad_01.png);
    width: 400px;
    height: 253px;
    right: 0px;
    top: 88px;
}
#mirapro .go-abroad .text-abroad::before {
    position: absolute;
    content: "";
    background-image: url(../images/mirapro/abroad_02.png);
    width: 400px;
    height: 253px;
    right: 0px;
    bottom: 23%;
}
#mirapro .go-abroad .text-09 {
    font-size: 30px;
    font-weight: 900;
    margin-left: -15px;
}
#mirapro .go-abroad .title-abroad {
    margin-bottom: 0px;
}
#mirapro .go-abroad .text-pvison {
    width: 600px;
    height: 150px;
    position: relative;
}
#mirapro .go-abroad .text-pvison p {
    position: absolute;
    font-weight: 900;
    text-shadow: 5px 5px 10px rgba(0,0,0,0.5);
}
#mirapro .go-abroad .text-pvison .p-01 {
    font-size: 75px;
    top: -27px;
    left: 15px;
} 
#mirapro .go-abroad .text-pvison .p-02 {
    font-size: 50px;
    top: 0px;
    left: 77px;
    transform: rotate(-15deg);
} 
#mirapro .go-abroad .text-pvison .p-03 {
    font-size: 75px;
    top: -24px;
    left: 113px;
    transform: rotate(0deg);
} 

#mirapro .go-abroad .text-pvison .p-04 {
    font-size: 75px;
    top: -7px;
    left: 171px;
    transform: rotate(-15deg);
} 
#mirapro .go-abroad .text-pvison .p-05 {
    font-size: 144px;
    color: #F29D38;
    top: -63px;
    right: 38%;
    transform: rotate(0deg);
} 
#mirapro .go-abroad .text-pvison .p-06 {
    font-size: 144px;
    color: #F29D38;
    top: -42px;
    right: 18%;
    transform: rotate(0deg);
} 
#mirapro .go-abroad .text-pvison .p-07 {
    font-size: 144px;
    color: #F29D38;
    right: -1px;
    transform: rotate(16deg);
    top: -64px;
} 

#mirapro .go-abroad .item-flex {
    margin-bottom: 15px;
}

#mirapro .go-abroad .item-flex .title-flex {
    width: 150px;
    height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: white;
    background: #426CA3;
    flex-direction: column;
    font-weight: 600;
    font-size: 20px;
}
#mirapro .go-abroad .item-flex .title-flex span {
    font-size: 16px;
    font-weight: 400;
}
#mirapro .go-abroad .item-flex  .text-flex {
    width: calc(100% - 200px);
    max-width: 470px;
    font-size: 22px;
    font-weight: 400;
    padding: 17px 10px 0px 10px;
    letter-spacing: 1px;
    line-height: 40px;
}

#mirapro .go-abroad .item-flex  .text-flex .line {
    display: inline-block;
    background: url(../images/mirapro/bg_blue.png) repeat-x left bottom;
    background-position-y: 26px;
    font-weight: 600;
}
#mirapro .go-abroad .note-abroad {
    font-size: 16px;
    line-height: 28px;
    font-weight: 600;
    margin-top: 30px;
    margin-left: -17px;
    letter-spacing: 1px;
}
/*map*/
#mirapro .map{
    background: #fff;
    padding-top: 106px;
    padding-bottom: 92px;
}
   
#mirapro .inner-padding{
    margin: 0px 100px 0px;
}
#mirapro .heading-border {
    text-align: center;
    font-weight: 600;
    position: relative;
    width: 250px;
    margin: 0px auto -62px auto;
    font-size: 42px;
    letter-spacing: 4px;
    z-index: 99;
    margin-bottom: 45px;
}
#mirapro .heading-border::after {
    position: absolute;
    content: "";
    background: url(../images/mirapro/bg_map.png);
    width: 321px;
    height: 203px;
    left: -87px;
    bottom: -30px;
    z-index: -1
}
#mirapro .box-talk .heading-border::after {
    bottom: -20px;
}
#mirapro .map .map-content{
    max-width: 1200px;
    margin: auto;
    position: relative;
}
#mirapro .map .map-content .base-point{
    position: absolute;
    color: black;
    font-weight: 900;
    z-index: 9;
    cursor: pointer;
    transition: .3s;
}
#mirapro .map .map-content .base-point:hover,
#mirapro .map .map-content .base-point.active{
    color: #333;
}
#mirapro .map .map-content .base-point svg path{
    transition: .3s;
}

#mirapro .map .map-content .base-point .ttl{
    position: absolute;
    width: 115px;
    text-align: center;
    top: 12px;
}
#mirapro .map .map-content .base-point .ttl .text{
    font-size: 18px;
    position: relative;
    font-weight: 600;
}
#mirapro .map .map-content .base-point .ttl .text::after {
    position: absolute;
    content: "";
    background-image: url(../images/mirapro/icon_map_01.png);
    width: 27px;
    height: 39px;
    bottom: -37px;
    left: 50%;
    transform: translateX(-50%);
}
#mirapro .map .map-content #point07.base-point .ttl .text::after {
    background-image: url(../images/mirapro/icon_map_02.png);
    bottom: unset;
    left: -20px;
}
#mirapro .map .map-content .note-map {
    width: 223px;
    height: 123px;
    border: 3px solid #426CA3;
    border-radius: 15px;
    position: absolute;
    left: 65%;
    top: 72%;
    transform: translate(-50%, -50%);
    padding: 18px 10px 10px 53px;
}

#mirapro .map .note-map  .ttl .text{
    font-size: 18px;
    position: relative;
    font-weight: 600;
    margin-bottom: 18px;
    display: inline-block;
}
#mirapro .map .note-map  .ttl .text::after {
    position: absolute;
    content: "";
    background-image: url(../images/mirapro/icon_map_01.png);
    width: 27px;
    height: 39px;
    left: -20px;
    transform: translateX(-50%);
}
#mirapro .map .note-map  .ttl .text.two::after {
    background-image: url(../images/mirapro/icon_map_02.png);
    bottom: unset;
    left: -20px;
}
#mirapro .map .map-content #point01.base-point{
    top: 23.2%;
    left: 5.5%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point02.base-point{
    top: 22%;
    left: 30.2%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point03.base-point{
    top: 32.2%;
    left: 35.0%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point04.base-point{
    top: 35%;
    left: 32%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point05.base-point{
    top: 42.6%;
    left: 21%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point06.base-point{
    top: 54.7%;
    left: 28.2%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point07.base-point{
    top: 45.2%;
    left: 38.2%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-content #point08.base-point{
    top: 32%;
    left: 67.3%;
    transform: translate(-50%, -50%);
}
#mirapro .map .map-info{
    display: flex;
    flex-wrap: wrap;
    margin-top: 32px;
}
#mirapro .map .item-map-info a{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#mirapro .map .item-map-info .info-point{
    width: calc(100% - 40px);
    padding-left: 10px;
}
#mirapro .map .item-map-info .ttl{
    font-size: 20px;
    line-height: 30px;
    color: #333;
    font-weight: bold;
}
#mirapro .map .item-map-info .text{
    font-size: 18px;
    line-height: 26px;
    color: #000;
}
#mirapro .map .item-map-info{
    margin-bottom: 22px;
    cursor: pointer;
}
#mirapro .map .list-map-info{
    border-right: 2px solid #DD0133;
}
#mirapro .map .list-map-info:nth-child(1){
    width: 33%;
}
#mirapro .map .list-map-info:nth-child(2){
    width: 34%;
    padding-left: 17px;
}
#mirapro .map .list-map-info:nth-child(3){
    width: 33%;
    padding-left: 21px;
    border-right: 0;
}
#mirapro .map .list-map-info .item-map-info:last-child{
    margin-bottom: 0;
}


/*talk*/
#mirapro .box-talk {
    padding: 115px 0px 0px;
    background: rgba(63,152,199,0.1);
}
#mirapro .box-talk .heading-border {
    width: 400px;
    margin-bottom: 75px;
}
#mirapro .box-talk .heading-border::after {
    background: url(../images/mirapro/bg_talk.png);
   
}
#mirapro .box-talk .dl-talk {
    padding: 27px 40px 15px;
    background: white;
}
#mirapro .box-talk .list-talk {
    max-width: 1200px;
    margin: auto;
    justify-content: space-between;
    flex-wrap: wrap;
}
#mirapro .box-talk .list-talk .item-talk {
    width: calc(50% - 15px);
    background: white;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.3);

}

#mirapro .box-talk .item-talk .title-talk {
    font-size: 28px;
    background: #98C762;
    padding: 17px 0px;
    text-align: center;
    color: white;
    font-weight: 600;
}
#mirapro .box-talk .item-talk:nth-child(4) .title-talk {
    background: #F29D38;
}
#mirapro .box-talk .item-talk:nth-child(4) .dt-talk {
    color: #F29D38;
}
#mirapro .box-talk  .footer-talk {
    max-width: 1500px;
    margin: auto;
}

#mirapro .box-talk  .item-talk  .dt-talk {
    font-size: 28px;
    text-align: center;
    margin-bottom: 20px;
    color: #98C762;
    font-weight: 600;
}

#mirapro .box-talk .dd-talk {
    font-size: 20px;
    line-height: 40px;
    margin-bottom: 20px;
    font-weight: 400;
    color: black;
}

#mirapro .box-talk .dd-talk span {
    font-size: 24px;
    font-weight: 900;
}
#mirapro .box-talk .dd-talk span.blod {
    font-weight: 600;
}
#mirapro .footer-padding {
    background: #3F98C7;
    box-shadow: 0px -5px 10px rgba(0,0,0,0.16);
    height: 172px;
    position: relative;
    z-index: 99;
}
#mirapro .footer-padding::after {
    position: absolute;
    content: "";
    background: url(../images/mirapro/bg_arrow.png);
    width: 288px;
    height: 220px;
    left:50%;
    transform: translateX(-50%);
    bottom: -110px;
    z-index: -1;
}

#mirapro .banner-top .box-text-banner .text-each span.mobi {
    display:none !important;
    color: #000;
}

/*flow*/
/*======================================*/
#mirapro .flow{
    padding-top: 136px;
    padding-bottom: 100px;
}
#mirapro .flow .heading-block{
    font-size: 60px;
    line-height: 80px;
    text-align: center;
    color: #426CA3;
    font-weight: 400;
    margin-bottom: 110px;
}
#mirapro .flow .list-step{
    max-width: 1215px;
    padding: 0 20px;
    margin: auto;
}
#mirapro .flow .item-step{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
    position: relative;
}
#mirapro .flow .item-step:before{
    content: "";
    position: absolute;
    background-image: url("../images/mirapro/flow_icon_pc.png");
    background-size: 100%;
    width: 27px;
    height: 160px;
    left: 58px;
    top: 143px;
}
#mirapro .flow .item-step:last-child:before{
    display: none;
}
#mirapro .flow .item-step:last-child .step-number{
    background: #426CA3;
    color: white;
}
#mirapro .flow .item-step .step-number{
    width: 140px;
    height: 122px;
    text-align: center;
    color: #426CA3;
    background: #fff;
    border: 3px solid #426CA3;
    padding-top: 29px;
    display: flex;
    padding-left: 20px;
}
#mirapro .flow .item-step .content{
    width: calc(100% - 147px);
    display: flex;
    flex-wrap: wrap;
    padding-top: 8px;
}
#mirapro .flow .item-step .step-number .ttl-step{
    font-size: 24px;
    line-height: 32px;
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
}
#mirapro .flow .item-step .step-number .number{
    font-size: 80px;
    line-height: 68px;
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    font-style: italic;
    margin-left: 8px;
    opacity: 0.75;
}
#mirapro .flow .item-step:last-child .step-number .number {
    opacity: 1
}
#mirapro .flow .item-step .content .ttl {
    font-size: 36px;
    line-height: 35px;
    color: #426CA3;
    font-weight: bold;
    padding-left: 25px;
    border-bottom: 2px solid #426CA3;
    padding-bottom: 18px;
    margin-bottom: 24px;
}
#mirapro .flow .item-step .content .text {
    font-size: 18px;
    line-height: 35px;
    padding-left: 25px;
    padding-right: 0px;
}
#mirapro .flow .item-step:nth-child(1) .content .text {
    padding-right: 31px;
}
#mirapro .flow .item-step .content .image-content{
    width: 33%;
    overflow: hidden;
}
#mirapro .flow .item-step .content .image-content img{
    width: 100%;
}
#mirapro .flow .item-step .content .info-content{
    width: calc(100% - 33%);
}
#mirapro .flow .item-step .content .ttl small{
    font-size: 20px;
}

/*support*/
/*==================================*/
#mirapro .support{
    background: #EDEDED;
    padding-top: 114px;
    padding-bottom: 150px;
    position: relative;
    z-index: 99;
}
#mirapro .support:after{
    position: absolute;
    content: "";
    background: url(../images/mirapro/bg_arrow02.png);
    width: 288px;
    height: 220px;
    left: 50%;
    transform: translateX(-50%);
    bottom: -110px;
    z-index: -1;
}
#mirapro .support .heading-support{
    text-align: center;
    margin-bottom: 40px;
}
#mirapro .support .heading-block{
    display: inline-block;
    position: relative;
}
#mirapro .support .heading-block:before{
    content: "";
    position: absolute;
    width: 3px;
    height: 120px;
    background: #274C76;
    transform: rotate(-27deg);
    left: -75px;
    top: 16px;
}
#mirapro .support .heading-block:after{
    content: "";
    position: absolute;
    width: 3px;
    height: 120px;
    background: #274C76;
    transform: rotate(27deg);
    right: -75px;
    top: 16px;
}
#mirapro .support .heading-block .ttl01{
    font-size: 40px;
    line-height: 35px;
    color: #274C76;
    font-weight: 500;
    display: block;
    margin-bottom: 18px;
}
#mirapro .support .heading-block .ttl02{
    font-size: 70px;
    line-height: 80px;
    font-weight: bold;
    display: block;
}
#mirapro .support .content-inner{
    max-width: 996px;
    margin: auto;
    padding: 0 20px;
}
#mirapro .support .image-textContent{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 33px;
}
#mirapro .support .image-textContent .image-content{
    width: 50%;
    padding-top: 3px;
    padding-right: 12px;
}
#mirapro .support .image-textContent .text-content{
    width: 50%;
    padding-left: 15px;
    padding-right: 30px;
}
#mirapro .support .image-textContent .text-content .text01{
    font-size: 20px;
    line-height: 35px;
    font-weight: bold;
    color: #274C76;
    margin-bottom: 37px;
}
#mirapro .support .image-textContent .text-content .text02{
    font-size: 18px;
    line-height: 35px;
    color: #000;
}
#mirapro .support .sub-content .ttl{
    font-size: 40px;
    line-height: 48px;
    color: #274C76;
    font-weight: bold;
    text-align: center;
    margin-bottom: 16px;
}
#mirapro .support .sub-content .text{
    font-size: 18px;
    line-height: 35px;
    color: #000;
    padding-left: 20px;
    padding-right: 20px;
}
/*application-requirements*/
/*======================================*/
#mirapro .application-requirements{
    padding-top: 150px;
    background: #fff;
    padding-bottom: 78px;
    position: relative;
}

#mirapro .application-requirements .heading-block{
    font-size: 60px;
    line-height: 80px;
    color: #426CA3;
    text-align: center;
    font-weight: 400;
    margin-bottom: 70px;
}
#mirapro .application-requirements .list-application-requirements{
    max-width: 1240px;
    margin: auto;
    padding: 0 20px;
    position: relative;
}
#mirapro .application-requirements .list-application-requirements:before{
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    background: #426CA3;
    left: 37%;
    top: 4px;
}
#mirapro .application-requirements .item-application-requirements{
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin-bottom: 27px;
}

#mirapro .application-requirements .item-application-requirements .title .ttl{
    font-size: 20px;
    line-height: 35px;
    font-weight: bold;
    color: #000;
    text-align: right;
}
#mirapro .application-requirements .item-application-requirements .info .text{
    font-size: 20px;
    line-height: 35px;
}
#mirapro .application-requirements .item-application-requirements .item-flex{
    display: flex;
}
#mirapro .application-requirements .item-application-requirements .info .text small{
    font-size: 16px;
    line-height: 35px;
}
#mirapro .application-requirements .item-application-requirements .title{
    width: 37%;
    padding-right: 40px;
}
#mirapro .application-requirements .item-application-requirements .info{
    width: 63%;
    padding-left: 41px;
    color: #000;
}
#mirapro .application-requirements .item-application-requirements .text-s{
    font-size: 16px;
    line-height: 35px;
}
#mirapro .application-requirements .item-application-requirements .text-end{
    margin-top: 30px;
}
#mirapro .application-requirements .item-application-requirements .item-text{
    font-size: 20px;
    line-height: 38px;
    position: relative;
    padding-left: 20px;
}
#mirapro .application-requirements .item-application-requirements .item-text:before{
    content: "★";
    position: absolute;
    font-size: 20px;
    color: #85B722;
    top: 0;
    left: 0;
}
#mirapro .application-requirements .item-application-requirements .item-text small{
    font-size: 16px;
}
#mirapro .application-requirements .item-application-requirements .item-txt{
    font-size: 16px;
    line-height: 38px;
}
/*contact*/
/*=====================================*/
#mirapro .contact{
    padding-top: 122px;
    padding-bottom: 144px;
    background: #EDEDED;
}
#mirapro .contact .heading{
    font-size: 70px;
    line-height: 80px;
    color: #497219;
    text-align: center;
    font-weight: 400;
    margin-bottom: 52px;
}
#mirapro .contact .box-contact {
    max-width: 1240px;
    padding: 0 20px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#mirapro .contact .item-boxContact{
    background: #fff;
    width: 48.6%;
    border: 1px solid #707070;
    border-radius: 0 0 30px 0;
    text-align: center;
    padding-bottom: 32px;
}
#mirapro .contact .item-boxContact .title{
    text-align: center;
    padding-top: 31px;
}
#mirapro .contact .item-boxContact .title .ttl{
    font-size: 30px;
    line-height: 35px;
    font-weight: bold;
    color: #85B722;
}
#mirapro .contact .item-boxContact .title .image{
    display: block;
    min-height: 46px;
    margin-bottom: 10px;
}
#mirapro .contact .item-boxContact.contact-tel .link-tel{
    font-size: 51px;
    line-height: 40px;
    color: #525151;
    text-align: center;
    display: block;
    text-decoration: none;
}
#mirapro .contact .item-boxContact.contact-tel .link-tel .image{
    display: inline-block;
    position: relative;
    top: -4px;
}
#mirapro .contact .item-boxContact.contact-tel .link-tel .number{
    color: #333;
    font-weight: bold;
}
#mirapro .contact .item-boxContact.contact-tel .title{
    margin-bottom: 39px;
}
#mirapro .contact .item-boxContact.contact-tel .txt01{
    font-size: 16px;
    line-height: 35px;
    color: #000;
    text-align: center;
    padding-right: 7px;
    position: relative;
    margin-bottom: 25px;
}
#mirapro .contact .item-boxContact.contact-tel .txt-box{
    display: inline-block;
    font-size: 24px;
    line-height: 34px;
    border: 1px solid #707070;
    width: 90%;
    max-width: 397px;
}
#mirapro .contact .item-boxContact.contact-tel .txt-box small{
    font-size: 20px;
}
#mirapro .contact .item-boxContact.contact-tel .txt02{
    font-size: 16px;
    line-height: 35px;
    padding-right: 19px;
}
#mirapro .contact .item-boxContact.contact-web .title{
    margin-bottom: 25px;
}
#mirapro .contact .item-boxContact.contact-web .txt01{
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    color: #000;
    margin-bottom: 36px;
}
#mirapro .contact .item-boxContact.contact-web .txt01 b{
    font-size: 20px;
}
#mirapro .contact .item-boxContact.contact-web .link-contact{
    display: flex;
    font-size: 30px;
    line-height: 35px;
    color: #fff;
    background: #85B722;
    width: 90%;
    max-width: 397px;
    margin: auto;
    border-radius: 15px;
    position: relative;
    align-items: center;
    height: 87px;
    padding-left: 60px;
    transition: .3s;
}     
#mirapro .contact .item-boxContact.contact-web .link-contact:hover{
    background: #437426;
}
#mirapro .contact .item-boxContact.contact-web .link-contact .image{
    position: absolute;
    right: 28px;
    top: 50%;
    transform: translateY(-50%);
}
#page-top {
    position: fixed;
    right: 0px;
    top: calc(30% + 350px);
    z-index: 1000;
    opacity: 1;
    visibility: hidden;
    transition: .3s;
}
#page-top.is-active{
    opacity: 1;
    visibility: visible;
}
#page-top .page-top-anchor{
    display: block;
    width: 105px;
    height: 105px;
    background: #F29D38;
    color: white;
    transition: .3s;
    font-size: 20px;
    line-height: 20px;
    text-decoration: none;
    border-bottom-left-radius: 20px;
    border-top-left-radius: 20px;
    font-weight: 600;
}
#page-top #Path_70 {
    fill: white;
}
#page-top .page-top-anchor:hover{
    background: #D43673;
}
#page-top .page-top-anchor span{
    display: block;
    width: 100%;
    text-align: center;
    padding-top: 20px;
}
#page-top .page-top-anchor svg{
    transform: rotate(-90deg);
}
#page-top .page-top-anchor svg path{
    transition: .3s;
}
#page-top .page-top-anchor span.ttl-top{
    padding-top: 4px;
}
#page-top .page-top-anchor:hover svg path{
    fill: #fff;
}

/*footer-main*/
/*==================================*/
.footer-main{
    background: #fff;
    text-align: center;
    padding-top: 45px;
    padding-bottom: 57px;
}
.footer-main .copyright{
    font-size: 14px;
    line-height: 35px;
    color: #000;
    position: relative;
    margin-top: -14px;
}
#mirapro .go-abroad .img-abroad img {
    height: 100%;
    object-fit: cover;
}
#mirapro  .destop {
    display: block;
}
#mirapro  .mobi {
    display: none;
}

@media (max-width: 1640px) {
    #mirapro .text-down .text-01 {
        font-size: 24px;
    }
    #mirapro .go-abroad .img-abroad {
        width: 50%;
    }
    #page-top {
        position: fixed;
        right: 0px;
    }
    #mirapro .share-world .box-share {
        max-width: 450px;
    }
    #mirapro .box-talk .dd-talk {
        font-size: 18px;
    }
    #mirapro .box-talk .dd-talk span {
        font-size: 22px;
    }
    #mirapro .share-world .icon-bg-top img ,#mirapro .share-world .icon-bg-down img{
        width: 230px;
    }
    #mirapro .go-abroad .text-abroad::after,#mirapro .go-abroad .text-abroad::before {
        right: -13%;
        transform: scale(0.9);
    }
    #mirapro .text-down {
        height: 268px;
    }
    #mirapro .box-text-big .big-03 {
        right: -4px;
    }
    #mirapro .box-text-big .big-02 {
        right: 55px;
    }

    #mirapro .go-abroad .text-abroad {
        padding: 60px 0px 50px 30px;
        width: 50%;
    }
    #mirapro .go-abroad .img-abroad img {
        width: 99%;
    }
    #mirapro .text-down .big-text {
        font-size: 85px;
        top: -2px;
        right: 17%;
    }
    #mirapro .box-text-big {
        width: 215px;
        height: 180px;
    }
    #mirapro .text-2 {
        padding: 0px 25px 6px;
        font-size: 22px;
        margin: 0px 0px 10px 10px;
    }
    #mirapro .text-down .text-08 {
        font-size: 24px;
    }
    #mirapro .text-down .text-08::after {
        height: 3px;
        width: calc(80% - 30px);
        right: 48px;
        top: 19px;
    }
    #mirapro .text-down .box-number .title-number {
        height: 57px;
        width: 57px;
        font-size: 20px;
    }
    #mirapro .text-down .box-number .number {
        font-size: 24px;
        margin-top: -5px;
    }
    #mirapro .text-down .box-number span {
        font-family: 'Roboto', sans-serif;
        font-size: 39px;
    }
    #mirapro .share-world .box-share .item-share {
        width: 196px;
        height: 170px;
        font-size: 24px;
    }
}

@media (max-width: 1380px) {
    #mirapro .share-world .share-01 {
        font-size: 30px;
        letter-spacing: 2px;
    }
    #mirapro .share-world .share-02 {
        font-size: 30px;
        letter-spacing: 2px;
        margin-top: -8px;
    }
    #mirapro .share-world .box-share .item-share {
        width: 171px;
        height: 152px;
        font-size: 18px;    
    }
    #mirapro .banner-down .img-05 {
        right: 1.5%;
        width: 30.6%;
    }
    #mirapro .banner-down .img-06 {
        display: none;
    }
    #mirapro .text-down {
        width: 70.6%;
        padding: 1.3% 5% 0.5% 4%;
        clip-path: polygon(0 0, 84.3% 0, 100% 100%, 15.7% 100%);
        height: 226px;
    }
    #mirapro .box-text-big .big-01 {
        left: -8px;
    }
    #mirapro .box-header .text-big {
        font-size: 40px;
    }
    #mirapro .banner-top {
        padding: 50px 0px 38px;
    }
    #mirapro .banner-top .box-text-banner .text-each span {
        margin-left: 8px;
        font-size: 24px;
        line-height: 32px;
    }
    #mirapro .banner-top .box-text-banner .box-two {
        display: inline-block;
        width: 150px;
        margin-left: 5px;
        font-size: 100px;
        margin-top: -10px;
        line-height: 130px;
        margin-right: 29px;
    }
    #mirapro .banner-top .box-text-banner {
        max-width: 440px;
        padding-left: 80px;
        padding-right: 0px;
    }
    #mirapro .banner-top .img-01 {
        top: -22px;
        left: -26.5%;
        width: 80%;
    }
    #mirapro .banner-top .box-text-banner .box-three {
        width: 55px;
        background: #D5F238;
        padding: 5px 5px 0px 10px;
        height: 207px;
        margin-top: 15px;
    }
    #mirapro .banner-top .box-text-banner .box-three span {
        font-size: 36px;
        line-height: 48px;
    }
    #mirapro .banner-top .box-one {
        width: 170px;
        text-align: center;
    }
    #mirapro .banner-top .box-text-banner .box-three span {
        font-size: 40px;
        line-height: 50px;
    }
    #mirapro .banner-top .box-text-banner .box-two {
        display: inline-block;
        width: 95px;
        margin-left: 5px;
        font-size: 100px;
        margin-top: -10px;
        line-height: 130px;
        margin-right: 20px;
    }
    #mirapro .banner-top .box-img02 {
        bottom: -63px;
        right: -21%;
        width: 70%;
        top:unset
    }
    #mirapro .text-down .big-text { 
        font-size: 80px;
        top: -15px;
        right: 21%;
    }
    #mirapro .box-text-big .big-02 {
        top: 12px;
        right: 115px;
    }
    #mirapro .box-text-big .big-03 {
        top: -6px;
        right: 70px;
        transform: rotate(15deg);
    }
    #mirapro .banner-down  .image {
        display: block;
         height: 220px;
    }
    #mirapro .text-2 {
        padding: 0px 20px 6px;
        font-size: 18px;
    }
    #mirapro .flow{
        padding-top: 100px;
    }
    #mirapro .flow .heading-block{
        font-size: 36px;
    }
    #mirapro .flow .item-step .content .ttl{
        font-size: 26px;
        line-height: 35px;
        padding-bottom: 12px;
    }
    #mirapro .flow .item-step .content .text{
        font-size: 16px;
        line-height: 28px;
    }
    #mirapro .flow .item-step .step-number{
        width: 120px;
        height: 120px;
    }
    #mirapro .flow .item-step .step-number .ttl-step{
        font-size: 20px;
        line-height: 24px;
    }
    #mirapro .flow .item-step .step-number .number {
        font-size: 73px;
        line-height: 56px;
    }
    #mirapro .flow .item-step .content{
        width: calc(100% - 120px);
    }
    #mirapro .flow .item-step:before {
        width: 20px;
        height: 140px;
        left: 54px;
        top: 131px;
    }
    #mirapro .support .heading-block .ttl01 {
        font-size: 32px;
    }
    #mirapro .support .heading-block .ttl02 {
        font-size: 56px;
        line-height: 60px;
    }
    #mirapro .support .heading-block:before,
    #mirapro .support .heading-block:after {
        height: 100px;
    }
    #mirapro .support .image-textContent .text-content {
        padding-right: 0;
    }
    #mirapro .support .image-textContent .text-content .text01 {
        font-size: 18px;
    }
    #mirapro .support .sub-content .ttl { 
        font-size: 30px;
    }
    #mirapro .support .sub-content .text {
        font-size: 16px;
        line-height: 28px;
        padding: 0;
    }
    #mirapro .application-requirements .heading-block{
        font-size: 50px;
    }
    #mirapro .contact .heading{
        font-size: 50px;
    }
    #mirapro .banner-down {
        margin-bottom: 150px;
    }
    #mirapro .share-world .icon-bg-top,
    #mirapro .share-world .icon-bg-down,
    #mirapro .benefits .bg-icon{
        width: 200px;
    }
    #mirapro .share-world .title-share .small-share {
        right: 45%;
        top: -10%;
        font-size: 18px;
        line-height: 30px;
    }
    #mirapro .benefits.inner-padding {
        margin-top: 120px !important;
    }
    #mirapro .benefits .inner-benefits::after {
        transform: scale(0.8);
    }
    #mirapro .go-abroad .text-pvison .p-01 {
        font-size: 55px;
    }
    #mirapro .go-abroad .text-pvison .p-02 {
        font-size: 30px;
        top: 0px;
        left: 77px;
    }
    #mirapro .go-abroad .text-pvison .p-03 {
        font-size: 55px;
        top: -24px;
        left: 113px;
    }
    #mirapro .go-abroad .text-pvison .p-04 {
        font-size: 55px;
        top: -7px;
        left: 171px;
    }
    #mirapro .go-abroad .text-pvison .p-05 {
        font-size: 110px;
        color: #F29D38;
        top: -63px;
        right: 38%;
    }
    #mirapro .go-abroad .text-pvison .p-06 {
        font-size: 110px;
        color: #F29D38;
        top: -42px;
        right: 18%;
      
    }
    #mirapro .go-abroad .text-pvison .p-07 {
        font-size: 110px;
        color: #F29D38;
        right: -1px;
        top: -64px;
    }
    #mirapro .go-abroad .text-abroad {
        width: 50%;
        padding: 30px 0px 30px 30px;
    }
    #mirapro .go-abroad .text-pvison {
        width: 530px;
        height: 90px;
    }
    #mirapro .go-abroad .text-abroad::after {
        right: -50px;
        top: 88px;
        transform: scale(0.5);
    }
    #mirapro .go-abroad .text-abroad::before {
        right: -50px;
       
        transform: scale(0.5);
    }
    #mirapro .share-world .box-share {
        width: 82%;
        height: 94%;
        position: relative;
        max-width: 390px;
    }
    #mirapro .text-down .big-text {
        top: -5px;
        right: 27%;
    }
    #mirapro .box-text-big .big-02 {
        top: 12px;
        right: 79px;
    }
    #mirapro .box-text-big .big-03 {
        top: 4px;
        right: 38px;
    }
}
@media (max-width: 1200px) {
    #mirapro .box-header .text-big {
        font-size: 22px;
        letter-spacing: 2px;
    }
    #mirapro .banner-down .img-05 {
        display: none;
    }
    #mirapro .inner-padding {
        margin: 0px 30px 0px;
    }
    #mirapro .text-down .big-text {
        top: -5px;
        right: 36%;
    }
    #mirapro .block-padding::after, #mirapro .block-padding::before  {
        width: 30px;
    }
    #mirapro  .bg-padding {
        height: 50px;
        position: relative;
        z-index: 99;
        background: #426CA3;
        margin: 0px 30px 0px;
    }
    #mirapro .btn-contact a span {
        font-size: 25px;
        line-height: 30px;
        width: 40px;
        padding-bottom: 6px;
        margin-right: 12px;
    }
    #mirapro .btn-contact a {
        right: -14px;
        z-index: 99;
        width: 90px;
        height: 340px;
    }
    #mirapro .banner-down .img-07 {
        position: absolute;
        top: 0px;
        right: -13%;
        width: 30.6%;
    }
    #mirapro .text-down {
        width: 85.6%;
        padding: 1.7% 5% 0.5% 4%;
        clip-path: polygon(0 0, 84.3% 0, 100% 100%, 15.7% 100%);
        height: 225px;
    }
    #mirapro .go-abroad .item-flex .text-flex {
        width: calc(100% - 120px);
        font-size: 16px;
        padding: 17px 10px 0px 10px;
    
        line-height: 30px;
    }
    #mirapro .salary-other .box-number {
        margin-left: 21%;
        width: 62%;
    }
    #mirapro .box-header .logo {
        width: 50%;
        padding-left: 1%;
        padding-top: 22px;
    }
    #mirapro .box-content::after {
        height: 113.5%;
    }
    #mirapro .box-header .text-small {
        padding-top: 0px;
        text-align: left;
        padding-left: 20px;
    }
    #mirapro .go-abroad .item-flex .title-flex {
        width: 120px;
        height: 120px;
        color: white;
        font-size: 14px;
    }
    #mirapro .box-talk {
        padding: 40px 0px 0px;
    }
    #mirapro .heading-border {
        font-size: 30px;
    }
    #mirapro .heading-border::after {
        bottom: -49px;
    }
    #mirapro .box-talk .heading-border::after {
        bottom: -50px;
    }
    #mirapro .box-talk .item-talk .title-talk {
        font-size: 24px;
    }
    #mirapro .box-talk .item-talk .title-talk img {
        height: 26px;
    }
    #mirapro .box-talk .dd-talk {
        font-size: 16px;
        line-height: 32px;
        margin-bottom: 20px
    }
    #mirapro .box-talk .dd-talk span {
        font-size: 22px;
    }
    #mirapro .share-world .title-share .small-share {
        right: 34%;
        top: -10%;
    }
    #mirapro .text-down .text-01 {
        font-size: 20px;
        padding-top: 0%;
    }
    #mirapro .benefits .bg-icon {
        bottom: -76px;
        left: -28px;
    }
    #mirapro .flow .item-step .step-number .number {
        font-size: 75px;
        line-height: 55px;
    }
    #page-top .page-top-anchor { 
        width: 75px;
        height: 105px;
    }
}

@media (max-width: 767px) {

    #mirapro {
      min-width: 320px
    }
    #mirapro .go-abroad .img-abroad img {
        width: 100%;
    }
    #mirapro  .destop {
        display: none;
    }

    #mirapro .box-header .logo {
        padding: 10px 0px 10px 12px;
        text-align: left;
    }
    #mirapro .box-header .logo img {
        width: 145px;
    }
    #mirapro .box-header .text-header::after {
        clip-path: polygon(11% 0%, 100% 0%, 100% 100%, 0% 100%);
        width: 146%;
        height: 102%;
        right: -25%;
    }
    #mirapro .box-header .text-big {
        font-size: 22px;
        letter-spacing: 4px;
    }
    #mirapro .block-padding::after, #mirapro .block-padding::before {
        width: 20px;
        z-index: 999;
    }
    #mirapro .box-talk {
        padding: 20px 0px 0px;
    }
    #mirapro .bg-padding {
        height: 35px;
        position: relative;
        z-index: 99;
        background: #426CA3;
        margin: 0px 20px 0px;
    }
    #mirapro  .mobi{
        display: block;
    }
    #mirapro  .text-small.mobi{
        position: absolute;
        right: -3px;
        top: -5px;
        font-size: 10px;
        color: white;
        letter-spacing: 0.5px;
    }
    #mirapro .box-header .text-header {
        padding: 6px 0px 3px 0px;
        text-align: left;
        width: 44%;
    }
    #mirapro .banner-top .box-text-banner .text-each span {
        width: 100%;
    }
    #mirapro .banner-top .box-one {
        order: 3;
        width: 100%;
        display: flex;
        align-items: center;
        width: 235px;
    }
    #mirapro .banner-top .box-one .image {
        width: 80px;
    }
    #mirapro .banner-top .text-each {
        width: calc(100% - 0px);
        display: block;
        margin-top: 0px;
        padding-left: 0px;
    }
    #mirapro .banner-top .box-text-banner .box-two {
        order: 1;
        width: 70px;
        margin-left: 0px;
        font-size: 50px;
        line-height: 55px;
        margin-right: -17px;
        margin-right: -10px;
        margin-bottom: 7px;
    }
    #mirapro .banner-top {
        padding: 28px 15px 38px 0px;
    }
    #mirapro .banner-top .box-text-banner .text-each span {
        margin-left: 8px;
        font-size: 14px;
        line-height: 20px;
        text-align: left;
        margin-top: 0px;
        display: block;
    }
    #mirapro .banner-top .box-text-banner .box-three {
        order: 2;
        width: 31px;
        padding: 5px 5px 0px 6px;
        height: 110px;
        margin-top: 0px;
    }
    #mirapro .banner-top .box-text-banner .box-three span {
        font-size: 20px;
        line-height: 22px;
    }
    #mirapro .btn-contact a {
        border-radius: 0px 0 0 0px;
        border: 0px solid #85B722;
        top: unset;
        bottom: 0px;
        width: calc(100% - 50px);
        right: unset;
        height: 50px;
        background: #98C762;
        color: white;
        z-index: 999999
    }
    #mirapro .btn-contact a:hover {
        right: unset;
    }
    #mirapro .btn-contact a span {
        font-size: 14px;
        line-height: 40px;
        width: 100%;
        padding-bottom: 0px;
        margin-right: 12px;
    }
    #mirapro .banner-down .img-04,
    #mirapro .banner-down .img-07 {
        display: none;
    }
    #mirapro .img-mobi {
        display: block;
        margin-bottom: 10px;
    }
    #mirapro .sp-br {
        display: block;
    }
    #mirapro .pc-br {
        display: none;
    }
    #mirapro h2.heading-en {
        font-size: 24px;
        line-height: 30px;
    }
    #mirapro h2.heading-en span{
        font-size: 13px;
        padding-left: 12px;
    }
    #mirapro .box-header .text-small {
        font-size: 10px;
        line-height: 15px;
        font-weight: 400;
        padding-top: 10px;
        text-align: left;
        padding-left: 16px;
    }
    #mirapro .banner-top {
        padding: 28px 0px 0px;
    }
    #mirapro .banner-top .box-text-banner {
        max-width: 100%;
        padding-left: calc(100% - 7% - 235px);
        padding-right: 7%;
        justify-content: flex-end;
    }
    #mirapro .banner-top .box-img02 {
        position: relative;
        width: 88%;
        right: -44px;
        bottom: -23px;
    }
    #mirapro .banner-top .img-02 .text-small {
        left: -5%;
        top: 17%;
        font-size: 32px;
        transform: rotate(-24deg);
    }
    #mirapro .banner-top .img-02 .text-small span {
        font-size: 18px;
    }
    #mirapro .banner-down .image {
        display: block;
        height: 100px;
    }
    #mirapro .inner-padding {
        margin: 0px 20px 0px;
    }
    #mirapro .banner-top .img-01 {
        top: 6px;
        left: -61.5%;
        width: 135%;
    }
    #mirapro .banner-top .box-text-banner .text-each span.mobi {
        display: block !important;
        color: #000;
    }
    #mirapro .banner-top .box-text-banner .text-each span.destop {
        display: none !important;
    }
    #mirapro .text-down { 
         width: 100%;
         margin-left: -2%;
    }
    #mirapro .text-down .box-number .title-number {
        height: 35px;
        width: 35px;
        font-size: 12px;
    }
    #mirapro .text-down .box-number span {
        font-size: 24px;
    }
    #mirapro .text-down .box-number .number {
        font-size: 12px;
        margin-top: 4px;
    }
    #mirapro .text-down .box-number {
        margin-left: 32%;
    }
    #mirapro .text-down {
        width: 100%;
        padding: 16px 3% 10px 13%;
       clip-path: none;
       position: relative;
       z-index: 99;
       background: none;
    }
    #mirapro .text-down::after {
        position: absolute;
        content: "";
        clip-path: polygon(0 0, 64% 0, 100% 100%, 36% 100%);
        height: 250px;
        width: 120%;
        background: #3F98C7;
        top: 0px;
        left: 0%;
        z-index: -1;
    }
    #mirapro .banner-down {
        margin-bottom: 55px;
        overflow:initial;
        margin-top: -7px;
    }
    #mirapro .share-world .img-share {
        width: 100%;
        max-height: 606px;
        overflow: initial;
        max-width: 230px;
        margin: auto;
        margin-bottom: 10px;
    }
    #mirapro .share-world .text-share {
        width: 100%;
        padding-left: 0%;
        margin-top: -22px;
    }
    #mirapro .share-world .box-share {
        width: 100%;
        height: 265px;
        position: relative;
        max-width: 335px;
        margin: auto;
    }
    #mirapro .share-world .box-share .item-share {
        width: 95px;
        height: 82px;
        font-size: 12px;
    }
    #mirapro .share-world .text-share {
        width: 100%;
        padding-left: 0%;
        margin-top: 0px;
    }
    #mirapro .share-world .icon-bg-top, #mirapro .share-world .icon-bg-down, #mirapro .benefits .bg-icon {
        display: none;
    }
    #mirapro .share-world .box-share {
        height: 120px;
    }
    #mirapro .share-world .box-share .item-share.one {
        top: 0px;
        left: 3%;
    }
    #mirapro .share-world .box-share .item-share.two {
        top: 38%;
        right: 46%;
    }
    #mirapro .share-world .box-share .item-share.three {
        bottom: 28%;
        left: 49%;
    }
    #mirapro .share-world .box-share .item-share.four {
        bottom: -7%;
        right: 0%;
    }
    #mirapro .banner-down img {
        height: 100%;
        object-fit: cover;
        width: 100%;
    }
    /*map*/
    #mirapro .map{
        padding-top: 25px;
        padding-bottom: 22px;
    }
    #mirapro .map .inner {
        padding: 0;
    }
    #mirapro .map .heading-border {
        font-size: 16px;
        margin-bottom: 10px;
    }
    #mirapro .map .list-map-info{
        width: 100% !important;
        border: 0;
        padding: 0 24px !important;
    }
    #mirapro .map .item-map-info .number{
        width: 20px;
        height: 20px;
        font-size: 13px;
        line-height: 20px;
    }
    #mirapro .map .map-content .base-point .ttl .text {
        font-size: 11px;
    }
    #mirapro .map .map-content .base-point .ttl .text::after {
        background-image: url(../images/mirapro/icon_map_01_sp.png);
        width: 12px;
        height: 17px;
        bottom: -17px;
    }
    #mirapro .map .map-content #point01.base-point {
        top: 12.2%;
        left: -3.5%
    }
    #mirapro .map .map-content #point02.base-point {
        top: 11%;
        left: 18.2%;
    }
    #mirapro .map .map-content #point03.base-point {
        top: 30.2%;
        left: 29%;
    }
    #mirapro .map .map-content #point03.base-point .ttl .text::after {
        bottom: -3px;
        left: -6px;
    }
    #mirapro .map .map-content #point04.base-point {
        top: 25%;
        left: 20%;
    }
    #mirapro .map .map-content #point05.base-point {
        top: 30.6%;
        left: 11.5%;
    }
    #mirapro .map .map-content #point06.base-point {
        top: 45.7%;
        left: 18.2%;
    }
    #mirapro .map .map-content #point07.base-point {
        top: 38.2%;
        left: 32.2%;
    }
    #mirapro .map .map-content #point07.base-point .ttl .text::after {
        background-image: url(../images/mirapro/icon_map_02_sp.png);
        bottom: 0px;
        left: -8px;
        width: 12px;
        height: 17px;
    }
    #mirapro .heading-border {
        font-size: 14px;
    }
    #mirapro .heading-border::after {
        position: absolute;
        content: "";
        background: url(../images/mirapro/bg_map_sp.png);
        width: 90px;
        height: 58px;
        left: 36px;
        bottom: -7px;
    }
    #mirapro .box-talk .heading-border::after {
        background: url(../images/mirapro/bg_talk_sp.png);
        width: 90px;
        height: 58px;
        left: 67px;
        bottom: -12px;
    } 
    #mirapro .map .map-content .note-map {
        width: 120px;
        height: 50px;
        padding: 5px 0px 10px 17px;
    }
    #mirapro .map .map-content .note-map .ttl {
        line-height: 13px;
    }
    #mirapro .map .note-map .ttl .text {
        font-size: 11px;
        margin-bottom: 5px;
    }
    #mirapro .map .map-content #point08.base-point {
        top: 20%;
        left: 56.3%;
    }
    #mirapro .map .note-map .ttl .text::after {
        position: absolute;
        content: "";
        background-image: url(../images/mirapro/icon_map_01_sp.png);
        width: 12px;
        height: 17px;
        left: -9px;
        transform: translateX(-50%);
    }
    #mirapro .map .note-map .ttl .text.two::after {
        background-image: url(../images/mirapro/icon_map_02_sp.png);
        bottom: unset;
        left: -9px;
        width: 12px;
        height: 17px;
    }
    #mirapro .map.inner-padding {
        margin: 0px 0px 0px;
        position: relative;
        z-index: 99999;
    }
    #mirapro .map .item-map-info .info-point {
        width: calc(100% - 20px);
        padding-left: 5px;
    }
    #mirapro .map .item-map-info .ttl {
        font-size: 14px;
        line-height: 20px;
        color: #333;
        font-weight: bold;
        display: inline;
    }
    #mirapro .map .item-map-info .text {
        font-size: 12px;
        line-height: 17px;
        display: inline;
    }
    #mirapro .map .map-info{
        margin-top: 8px;
    }
    #mirapro .map .item-map-info {
        margin-bottom: -0.5px;
    }
    #mirapro .map .map-content .base-point svg{
        width: 22px;
        height: 20px;
    }
    #mirapro .map .map-content .base-point .ttl{
        top: 4px;
    }
    #mirapro .map .map-content .base-point .ttl .number {
        font-size: 12px;
        line-height: 14px;
    }
    #mirapro .map .map-content {
        max-width: 375px;
    }
    #mirapro .map .map-content #point05.base-point {
        top: 28.6%;
        left: 8.5%;
    }
    #mirapro .map .map-content #point10.base-point{
        left: 82%;
    }
    #mirapro .box-text-big {
        position: relative;
        width: 133px;
        height: 83px;
    }
    #mirapro .text-down .big-text {
        font-size: 50px;
        top: 0px;
        right: -3%;
    }
    #mirapro .box-text-big .big-01 {
        position: absolute;
        top: 1px;
        left: 23px;
    }
    #mirapro .box-text-big .big-02 {
        top: 14px;
        right: 21px;
    }
    #mirapro .box-text-big .big-03 {
        top: 4px;
        right: -9px;
    }
    #mirapro .text-down .text-01 {
        font-size: 14px;
    }
    #mirapro .text-2 {
        padding: 0px 14px 6px 9px;
        font-size: 14px;
        margin: 0px 0px 5px 5px;
    }
    #mirapro .box-right {
        width: calc(70%);
        z-index: 7;
    }
    #mirapro .text-down .note {
        width: 100%;
        text-align: left;
        font-size: 12px;
        margin-top: 0px;
        padding-right: 0%;
        letter-spacing: 0.5px;
        margin-left: 48%;
    }
    #mirapro .text-down .text-08 {
        font-size: 14px;
        margin-left: 21%;
    }
    #mirapro .text-down .box-number {
        margin-left: 37%;
    }
    #mirapro .text-down .text-08::after {
        height: 1px;
        width: calc(85% - 30px);
        right: 0px;
        top: 10px;
    }
    #mirapro .text-down .box-number .number-item {
        width: 100%;  
        margin-bottom: 2px;
        align-items: center;
    }
    #mirapro .benefits .inner-benefits::after {
        position: absolute;
        content: "";
        background-image: url(../images/mirapro/Benefits_sp.png);
        width: 273px;
        height: 37px;
        top: -15px;
        left: 22px;
        transform: scale(1);
    }
    #mirapro .benefits.inner-padding {
        margin-top: 73px !important;
    }
    #mirapro .benefits .exp .exp-number .number-45 {
        font-size: 82px;
        line-height: 107px;
    }
    #mirapro .benefits .title-45 {
        font-size: 21px;
        padding: 24px 0px 0px 0px;
        letter-spacing: 3px;
        margin-bottom: 0px;
        display: inline-block;
    }
    #mirapro .benefits .exp .title-exp {
        width: 66px;
        font-size: 14px;
        padding: 0px 12px 5px 5px;
        margin-top: 0px;
    }
    #mirapro .benefits .exp .exp-number {
        width: calc(100%);
    }
    #mirapro .benefits .exp {
        padding: 17px 0px 0px 20px;
        margin-bottom: 8px;
    }
    #mirapro .text-45 {
        width: calc(100% - 100px);
    }
    #mirapro .benefits .note-45 {
        font-size: 12px;
        font-weight: 400;
        padding-left: 3px;
    }
    #mirapro .benefits .exp::after {
        clip-path: polygon(0 0, 64% 0, 100% 100%, 36% 100%);
        height: 95%;
        width: 206px;
        top: 0px;
        left: -34px;
        z-index: -1;
    }
    #mirapro .benefits .title-45::after {
        height: 7px;
        width: 7px;
        top: 20px;
        left: 55%;
    }
    #mirapro .benefits .title-45::before {
        height: 7px;
        width: 7px;
        top: 20px;
        left: 39%;
    }
    #mirapro .benefits .exp .title-exp.text-2 {
        margin: 0px 0px -17px 0px;
    }
    #mirapro .text-2::after {
        top: -3px;
        left: -3px;

    }
    #mirapro .benefits .inner-benefits {
        padding: 38px 0px 35px;
    }
    #mirapro .share-world .share-01 {
        font-size: 26px;
        letter-spacing: 2px;
        color: black;
    }
    #mirapro .share-world .title-share.mobi {
        text-align: left;
        margin: auto;
        margin-bottom: 10px;
    }
    #mirapro .share-world .title-share.mobi::after {
        position: absolute;
        content: "";
        background: url(../images/mirapro/mirapro_bg_world_01_sp.png);
        width: 83px;
        height: 52px;
        left: -26px;
        top: -30px;
        z-index: -1;
    }
    #mirapro .share-world .title-share .small-share {
        right: 9%;
        top: 2%;
        font-size: 13px;
        line-height: 18px;
        color: black;
    }
    #mirapro .share-world .share-02 {
        font-size: 26px;
        letter-spacing: 2px;
        margin-top: -8px;
        color: black;
    }
    #mirapro .share-world .title-share .small-share span::after {
        height: 39px;
        width: 1.5px;
        left: -15px;
        top: -1px;
        transform: rotate(151deg);
    }
    #mirapro .share-world .title-share .small-share span::before {
        height: 39px;
        width: 1.5px;
        right: -11px;
        top: -1px;
        transform: rotate(25deg);
    }
    #mirapro .box-content::after {
        right: 0%;
        top: 30%;
        width: 120%;
        z-index: -1;
        height: 76.5%;
        clip-path: polygon(0 0, 58% 0, 100% 100%, 41.7% 100%);
        background: linear-gradient(107deg, rgba(229,229,229,0.2) 0%, rgba(188,186,186,1) 100%);    
    }
    #mirapro .salary-other .title-salary {
        font-size: 14px;
        padding: 5px 20px;
        margin-bottom: 9px;
    }
    #mirapro .salary-other .title-salary::after {
        clip-path: polygon(0 0, 88% 0, 100% 100%, 12% 100%);
        height: 100%;
        width: 98%;
        top: 0px;
        left: 1px;
    }
    #mirapro .salary-other .box-number .title-number {
        height: 36px;
        width: 36px;
        font-size: 12px;
        margin-right: 10px;
        font-weight: 500;
    }
    #mirapro .salary-other .box-number span {
        font-size: 24px;
    }
    #mirapro .salary-other .box-number .number {
        font-size: 12px;
        margin-top: -8px;
    }
    #mirapro .salary-other .box-number .number-item {
        width: 100%;
        align-items: center;
        margin-bottom: 5px;
    }
    #mirapro .salary-other .box-number {
        margin-left: 21%;
        width: 57%;
        margin-bottom: 10px;
    }
    #mirapro .salary-other .text-2 {
        font-size: 14px;
        margin: 0px 0px 10px 10px;
        padding: 0px 6px 4px 3px;
    }
    #mirapro .salary-other .note {
        font-size: 12px;
        padding-right: 20px;
    }
    #mirapro .salary-other {
        margin-left: 0%;
        padding: 0px 0px 20px;
    }
    #mirapro .salary-other .cost {
        margin-left: 21%;
    }
    #mirapro .salary-other .text-08 {
        font-size: 14px;
        margin-left: 7%;
        margin-bottom: 6px;
    }
    #mirapro .salary-other .text-08::after {
        height: 1px;
        width: 52%;
        left: 66px;
        top: 12px;
    }
    #mirapro .salary-other::after {
        clip-path: polygon(0 0, 67% 0, 100% 100%, 33% 100%);
        height: 94%;
        width: 122%;
        top: 13px;
        left: -11%;
    }
    #mirapro .box-work .inner-work {
        padding: 0px 22px 0px 22px;
    }
    #mirapro .box-work .item-work .title-work {
        width: 100%;
        font-size: 16px;
        text-align: left;
        letter-spacing: 2px;
        margin-bottom: -10px;
    }
    #mirapro .box-work .item-work .dl-work {
        width: 100%;
        padding: 15px 0px 5px 19px;
    }

    #mirapro .box-work {
        padding: 37px 0px 0px;
    }
    #mirapro .box-work .item-work .text-es {
        font-size: 18px;
        top: -26px;
        left: 1%;
    }
    #mirapro .box-work .item-work.two {
        margin-bottom: 21px;
    }
    #mirapro .box-work .item-work .dt-work span {
        font-size: 14px;
    }
    #mirapro .box-work .item-work .dt-work {
        font-size: 14px;
        letter-spacing: 1px;
        margin-bottom: 8px;
    }
    #mirapro .box-work .item-work .dl-work::after {
        height: 85%;
        width: 1.5px;
        left: 7px;
        top: 15px;
    }
    #mirapro .box-work .item-work {
        margin-bottom: 33px;
    }
    #mirapro .box-work .item-work.two .text-es {
        top: -26px;
        left: 0%;
    }
    #mirapro .box-work .item-work.two .title-work {
        font-size: 16px;
        letter-spacing: 2px;
    }
    #mirapro .box-work .item-work.two .dt-work::after {
        right: -137px;
        bottom: unset;
        transform: scale(0.25);
        top: -78px;
    }

    #mirapro .box-work .item-work .dd-work {
        font-size: 12px;
        letter-spacing: 1px;
        line-height: 20px;
        margin-bottom: 0px;
    }
    #mirapro .box-work .item-work.two .title-work {
        font-size: 16px;
        letter-spacing: 3px;
    }
    #mirapro .box-work .item-work.two .dt-work {
        font-size: 14px;
        line-height: 26px;
        letter-spacing: 1px;
    }
    #mirapro .box-work .item-work.two .dt-work span {
        font-size: 14px;
    }

    #mirapro .go-abroad .img-abroad {
        width: 100%;

    }
    #mirapro .go-abroad .text-abroad {
        width: 100%;
        padding: 35px 15px 27px 22px;
    }
    #mirapro .go-abroad .title-abroad {
        margin-bottom: 17px;
        padding-left: 32px;
    }
    #mirapro .go-abroad .text-09 {
        font-size: 14px;
    }

    #mirapro .go-abroad     .text-2 {
        padding: 0px 12px 6px;
        font-size: 14px;
    }
    #mirapro .go-abroad .text-pvison .p-01 {
        font-size: 39px;
        top: -27px;
        left: -3px;
    }
    #mirapro .go-abroad .text-pvison .p-02 {
        font-size: 25px;
        top: -11px;
        left: 32px;
    }
    #mirapro .go-abroad .text-pvison .p-03 {
        font-size: 39px;
        top: -23px;
        left: 53px;
    }
    #mirapro .go-abroad .text-pvison .p-04 {
        font-size: 39px;
        top: -17px;
        left: 82px;
    }
    #mirapro .go-abroad .text-pvison .p-05 {
        font-size: 77px;
        top: -47px;
        right: 35%;
    }

    #mirapro .go-abroad .text-pvison .p-06 {
        font-size: 77px;
        top: -34px;
        right: 13%;
    }
    #mirapro .go-abroad .item-flex {
        margin-bottom: 10px;
    }
    #mirapro .go-abroad .text-pvison .p-07 {
        font-size: 77px;
        right: -23px;
        top: -46px;
    }
    #mirapro .go-abroad .text-pvison {
        width: 290px;
        height: 90px;
        margin: auto;
    }
    #mirapro .go-abroad .item-flex .title-flex {
        width: 98px;
        height: 98px;
        font-size: 13px;
    }
    #mirapro .go-abroad .item-flex .title-flex span {
        font-size: 10px;
    }
    #mirapro .go-abroad .item-flex .text-flex {
        width: calc(100% - 100px);
        font-size: 14px;
        padding: 17px 0px 0px 10px;
        line-height: 26px;
    }
    #mirapro .go-abroad .note-abroad {
        font-size: 12px;
        line-height: 20px;
        font-weight: 600;
        margin-top: 10px;
        margin-left: 0px;
        letter-spacing: 1px;
    }
    #mirapro .go-abroad .item-flex .text-flex .line {
        background-position-y: 20px;
    }
    #mirapro .go-abroad .text-abroad::after {
        right: -128px;
        top: unset;
        transform: scale(0.23);
        bottom: -15px;
    }

    #mirapro .go-abroad .text-abroad::before {
        right: -128px;
        transform: scale(0.23);
        top: unset;
        bottom: -80px;
    }

    #mirapro .go-abroad {
        z-index: 9999;
    }
    #mirapro .box-talk .heading-border {
        width: 315px;
        margin-bottom: 75px;
        font-size: 16px;
        margin: auto;
        margin-bottom: 25px;
        letter-spacing: 1px;
    }

    #mirapro .box-talk .list-talk .item-talk {
        width: 100%;
        background: white;
        box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
        margin-bottom: 5px;
    }
    #mirapro .box-talk .item-talk:nth-child(5) .title-talk {
        background: #F29D38;
    }
    #mirapro .box-talk .item-talk:nth-child(5) .dt-talk {
        color: #F29D38;
    }
    #mirapro .box-talk .list-talk {
        margin: 0px 18px;
    }
    #mirapro .box-talk .item-talk .title-talk {
        font-size: 15px;
        padding: 10px 0px;
    }
    #mirapro .box-talk .item-talk .dt-talk {
        font-size: 15px;
        margin-bottom: 10px;
    }

    #mirapro .box-talk .dl-talk {
        padding: 15px 10px 0px 13px;
    }
    #mirapro .box-talk .dd-talk span {
        font-size: 16px;
    }
    #mirapro .box-talk .dd-talk {
        font-size: 14px;
        line-height: 30px;
        margin-bottom: 15px;
    }
    #mirapro .box-talk .item-talk .title-talk img {
        height: 16px;
    }

    #mirapro  .bg-mobi01  {
        margin-right: -15px;
        margin-left: 45px;
    }
    #mirapro  .bg-mobi02  {
        margin-right: 65px;
        margin-left: -19px;
    }

    #mirapro .footer-padding {
        height: 60px;
        z-index: 999999999;
    }

    #mirapro .footer-padding::after {
        position: absolute;
        content: "";
        background: url(../images/mirapro/bg_arrow_sp.png);
        width: 120px;
        height:92px;
        left: 50%;
        transform: translateX(-50%);
        bottom: -45px;
        z-index: -1;
    }


    #mirapro .flow {
        padding-top: 61px;
        padding-bottom: 21px;
    }
    #mirapro .flow .heading-block {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 24px;
    }
    #mirapro .flow .item-step .step-number {
        width: 74px;
        height: 64px;
        margin-top: 3px;
        padding-top: 16px;
        padding-left: 7px;
    }
    #mirapro .flow .item-step .content {
        width: calc(100% - 74px);
    }
    #mirapro .flow .item-step .content .info-content {
        width: 100%;
        margin-bottom: 17px;
    }
    #mirapro .flow .item-step .content .image-content{
        width: 100%;
        margin-left: 9px;
    }
    #mirapro .flow .item-step .content .ttl {
        font-size: 16px;
        line-height: 17px;
        padding-bottom: 11px;
        padding-left: 9px;
        margin-bottom: 7px;
    }
    #mirapro .flow .item-step .content .text {
        font-size: 14px;
        line-height: 26px;
        padding-left: 9px;
        padding-right: 0 !important;
    }

    #mirapro .flow .list-step{
        padding:0 25px;
    }
    #mirapro .flow .item-step .step-number .ttl-step {
        font-size: 12px;
        line-height: 16px;
}
    #mirapro .flow .item-step .step-number .number {
        font-size: 39px;
        line-height: 30px;
    }
    #mirapro .flow .item-step:before{
        background-image: url("../images/mirapro/flow_icon_sp.png");
        width: 20px;
        height: 78.1%;
        top: 76px;
        left: 26px;
    }
    #mirapro .flow .item-step{
        margin-bottom: 17px;
    }
    #mirapro .flow .item-step .content .ttl small {
        font-size: 12px;
    }


    #mirapro .support .heading-block .ttl01 {
        font-size: 14px;
        line-height: 20px;
        margin-bottom: 5px;
    }
    #mirapro .support .heading-block .ttl02 {
        font-size: 25px;
        line-height: 26px;
    }
    #mirapro .support .image-textContent .text-content .text01 {
        font-size: 16px;
        line-height: 28px;
        margin-bottom: 15px;
    }
    #mirapro .support .image-textContent .text-content{
        width: 100%;
        order: 1;
        padding: 0;
        margin-bottom: 22px;
    }
    #mirapro .support .image-textContent .image-content {
        width: 100%;
        padding-top: 0;
        padding-right: 0;
        order: 2;
        text-align: center;
    }
    #mirapro .support .image-textContent .text-content .text02 {
        font-size: 14px;
        line-height: 26px;
        color: #000;
    }
    #mirapro .support .heading-block{
        padding-right: 6px;
    }
    #mirapro .support .heading-block:before{
        height: 43px;
        left: -26px;
        top: 12px;
        width: 1px;
    }
    #mirapro .support .heading-block:after{
        height: 43px;
        right: -26px;
        top: 12px;
        width: 1px;
    }
    #mirapro .support{
        padding-top: 35px;
        padding-bottom: 48px;

    }
    #mirapro .support .content-inner{
        padding: 0 24px;
    }
    #mirapro .support .heading-support {
        margin-bottom: 15px;

    }
    #mirapro .support .sub-content .ttl {
        font-size: 20px;
        line-height: 30px;
        max-width: 271px;
        margin: 0 auto 17px;
    }
    #mirapro .support .sub-content .text {
        font-size: 13px;
        line-height: 24px;
        padding: 0;
    }
    #mirapro .support .image-textContent{
        margin-bottom: 5px;
    }

    #mirapro .support:after {
        background: url(../images/mirapro/bg_arrow02_sp.png);
        width: 120px;
        height: 92px;
        bottom: -48px;
        z-index: -1;
    }

    #mirapro .application-requirements{
        padding-top: 58px;
        padding-bottom: 30px;
    }
    #mirapro .application-requirements .heading-block {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 28px;
    }
    #mirapro .application-requirements .item-application-requirements .title .ttl{
        font-size: 13px;
        line-height: 25px;
    }
    #mirapro .application-requirements .item-application-requirements .text-end{
        margin-top: 25px;
    }
    #mirapro .application-requirements .item-application-requirements .text-s {
        font-size: 11px;
        line-height: 20px;
    }
    #mirapro .application-requirements .item-application-requirements .info .text {
        font-size: 13px;
        line-height: 25px;
    }
    #mirapro .application-requirements .item-application-requirements .info .item-txt{
        margin-bottom: 14px;
    }
    #mirapro .application-requirements .item-application-requirements .info .item-txt:last-child{
        margin-bottom: 0;
    }
    #mirapro .application-requirements .item-application-requirements .info .text small {
        font-size: 11px;
        line-height: 20px;
    }
    #mirapro .application-requirements .item-application-requirements .item-flex{
        flex-direction: column;
    }
    #mirapro .application-requirements .item-application-requirements .item-flex>span{
        padding-left: 10px;
    }
    #mirapro .application-requirements .item-application-requirements .item-flex>span small{
        display: block;
    }
    #mirapro .application-requirements .item-application-requirements .title {
        width: 92px;
        padding-right: 11px;
    }
    #mirapro .application-requirements .item-application-requirements .info {
        width: calc(100% - 92px);
        padding-left: 13px;
        color: #000;
    }
    #mirapro .application-requirements .item-application-requirements{
       margin-bottom: 20px;
    }
    #mirapro .application-requirements .list-application-requirements:before {
        height: 100%;
        left: 113px;
        top: -2px;
    }
    #mirapro .application-requirements .item-application-requirements .item-text {
        font-size: 13px;
        line-height: 25px;
        position: relative;
        padding-left: 12px;
    }
    #mirapro .application-requirements .item-application-requirements .item-text:before{
        font-size: 13px;
    }
    #mirapro .application-requirements .item-application-requirements .item-text small {
        font-size: 10px;
        line-height: 20px;
        display: block;
        margin-top: 2px;
        margin-bottom: 3px;
    }
    #mirapro .application-requirements .item-application-requirements .item-txt {
        font-size: 10px;
        line-height: 20px;
    }
    #mirapro .application-requirements .item-application-requirements .item-margin{
        margin-top: 16px;
    }
    #mirapro .application-requirements:after {
        border-left: 65px solid transparent;
        border-right: 65px solid transparent;
        border-top: 43px solid #fff;
        bottom: -42px;
    }


    #mirapro .contact{
        padding-top: 42px;
        padding-bottom: 60px;
    }
    #mirapro .contact .heading {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 25px;
        color: #525151;
    }
    #mirapro .contact .item-boxContact{
        width: 100%;
        padding-bottom: 22px;
        margin-bottom: 25px;
        min-height: 220px;
    }
    #mirapro .contact .item-boxContact:last-child{
        margin-bottom: 0;
    }
    #mirapro .contact .box-contact{
        padding: 0 24px;
    }
    #mirapro .contact .item-boxContact .title .ttl {
        font-size: 15px;
        line-height: 18px;
        color: #54BAEA;
    }
    #mirapro .contact .item-boxContact.contact-tel .link-tel {
        font-size: 27px;
        line-height: 20px;
        padding-right: 10px;
        margin-bottom: 4px;
    }
    #mirapro .contact .item-boxContact.contact-tel .txt01{
        font-size: 11px;
        line-height: 18px;
        padding: 0;
        margin-bottom: 13px;
    }
    #mirapro .contact .item-boxContact.contact-tel .txt-box {
        font-size: 15px;
        line-height: 22px;
        max-width: 222px;
        padding-right: 10px;
        margin-bottom: 2px;
    }
    #mirapro .contact .item-boxContact.contact-tel .txt02 {
        font-size: 11px;
        line-height: 20px;
        padding-right: 0;
    }
    #mirapro .contact .item-boxContact.contact-tel .txt-box small {
        font-size: 12px;
    }
    #mirapro .contact .item-boxContact .title .image {
        min-height: 26px;
        margin-bottom: 6px;
    }
    #mirapro .contact .item-boxContact.contact-tel .title {
        margin-bottom: 24px;
        padding-top: 14px;
    }
    #mirapro .contact .item-boxContact.contact-tel .link-tel .image{
        top: -1px;
    }
    #mirapro .contact .item-boxContact.contact-web .txt01 b {
        font-size: 16px;
        line-height: 18px;
    }
    #mirapro .contact .item-boxContact.contact-web .txt01 {
        font-size: 13px;
        line-height: 22px;
        margin-bottom: 21px;
        padding-right: 11px;
    }
    #mirapro .contact .item-boxContact.contact-web .title {
        margin-bottom: 13px;
    }
    #mirapro .contact .item-boxContact.contact-web .link-contact{
        font-size: 18px;
        line-height: 20px;
        width: 88%;
        max-width: 300px;
        height: 48px;
        padding-left: 26px;
    }
    #mirapro .contact .item-boxContact.contact-web .link-contact .image{
        right: 16px;
    }
    #mirapro .contact .item-boxContact .title{
        padding-top: 14px;
    }

    #page-top .page-top-anchor{
        width: 50px;
        height: 50px;
        font-size: 13px;
        line-height: 10px;
        border-bottom-left-radius: 0px;
        border-top-left-radius: 0px;
        background: white;
        color: #426CA3;
        border: 1px solid #ccc;
    }
    #page-top .page-top-anchor span{
        padding-top: 0;
    }
    #page-top .page-top-anchor span.icon-top{
        padding-top: 0px;
        margin-bottom: 0px;
        height: 27px;
    }
    #page-top .page-top-anchor svg {
        width: 12px;
        display: inline-block;
    }
    #page-top .icon-top img{
        width: 18px;
    }
    #page-top{
        opacity: 1;
        visibility: visible;
        top: unset;
        bottom: 0px;
        z-index: 9999999;

    }
    #page-top #Path_70 {
        fill: #426CA3;
    }

    #page-top .page-top-anchor:hover {
        background: #274C76;
        color: white;
    }
    #page-top .page-top-anchor:hover #Path_70 {
        fill: white;
    }
    .footer-main{
        padding-top: 10px;
        padding-bottom: 70px;
    }
    .footer-main .copyright {
        font-size: 10px;
        line-height: 15px;
        color: #000;
        position: relative;
        margin-top: -8px;
        letter-spacing: 0.5px;
    }
    .footer-main .logo-footer .logo img{
        width: 284px;
        height: auto;
    }

    .footer-main .logo-footer svg {
        width: 259px;
        height: auto;
    }
}


@media (max-width: 370px) {
    #mirapro .box-header .logo {
        padding: 5px 0px 5px 12px;
    }
    #mirapro .box-header .logo img {
        width: 123px;
    }
    #mirapro .box-header .text-big {
        font-size: 18px;
        letter-spacing: 3px;
    }
    #mirapro .text-small.mobi {
        font-size: 9px;
    }
    #mirapro .text-down .big-text {
        font-size: 50px;
        top: 23px;
        right: 47%;
    }
    #mirapro .text-down .note {
        margin-left: 37%;
    }
    #mirapro .box-talk .item-talk .title-talk {
        font-size: 13px;
    }
    #mirapro .box-talk .dd-talk {
        font-size: 12px;
        line-height: 24px;
    }
    #mirapro .banner-top .box-text-banner {
        padding-left: 10%;
    }
    #mirapro .share-world .box-share .item-share.two {
        top: 50%;
        right: 40%;
    }
    #mirapro .share-world .box-share .item-share.four {
        bottom: -41%;
        right: 0%;
    }
    #mirapro .text-down::after {
        width: 140%;
        top: 0px;
        left: -2%;
        z-index: -1;
    }
    #mirapro .box-talk .item-talk .title-talk img {
        height: 14px;
    }

}