@media screen and (max-width: 768px) {
  /*--------------------------------------------------
  mv
--------------------------------------------------*/
  #top .mv {
    width: 100%;
    height: 0;
    background: url("../../images/recruit/sp-mv.jpg") center center no-repeat;
    background-size: 100% auto;
    margin: 60px 0 0;
    padding-top: 104%;
    position: relative;
  }
  #top .mv .mv-txt {
    display: none;
    width: inherit;
    height: inherit;
    background: url("../../images/recruit/mv-txt.png") no-repeat;
    background-size: 100% auto;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    position: inherit;
    top: inherit;
    left: inherit;
    right: inherit;
    margin: auto;
  }

  /*---------- mv-btn ----------*/
  #top .mv-btn {
    width: 70%;
    height: 40px;
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #top .mv-btn a {
    color: #000;
    font-size: 13px;
    background: #ffbd26;
    border-radius: 100px;
    text-align: center;
    line-height: 40px;
    position: relative;
  }
  #top .mv-btn a::before,
  #top .mv-btn a::after {
    display: block;
    content: "";
    position: absolute;
  }
  #top .mv-btn a::before {
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(135deg);
    top: 50%;
    left: 17px;
    margin-top: -4px;
    z-index: 10;
  }
  #top .mv-btn a::after {
    width: 26px;
    height: 26px;
    background: #fff;
    border-radius: 100px;
    top: 7px;
    left: 8px;
    z-index: 0;
  }

  /*--------------------------------------------------
  ttl-box
--------------------------------------------------*/

  /*---------- ttl-box01 ----------*/
  #top .ttl-box01 {
    text-align: center;
  }
  #top .ttl-box01.left {
    text-align: left;
  }
  #top .sec01 .ttl-box01 .eng {
    display: flex;
    align-items: center;
    margin: 0 0 13px;
  }
  #top .sec02 .ttl-box01 .eng,
  #top .sec03 .ttl-box01 .eng {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 13px;
  }
  #top .ttl-box01 .eng img {
    width: 18px;
    height: 14px;
    margin: 0 10px 0 0;
  }
  #top .ttl-box01 p {
    color: #d0111b;
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  #top .ttl-box01 h3 {
    font-size: 18px;
    font-weight: bold;
    padding: 0 5px;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    z-index: 10;
  }
  #top .ttl-box01 h3::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 28px;
    background: repeating-linear-gradient(-45deg, #f6df1b, #f6df1b 6px, #fff 4px, #fff 10px);
    top: -3px;
    left: 0;
    z-index: -10;
  }

  /*---------- ttl-box02 ----------*/
  #top .ttl-box02 {
    display: flex;
    align-items: center;
    margin: 0 0 20px;
  }
  #top .ttl-box02 img {
    width: 10%;
    height: auto;
    margin: 0 10px 0 0;
  }
  #top .ttl-box02 h3 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5em;
  }

  /*------------------------------------------------------------
 sec01
------------------------------------------------------------*/
  #top .sec01 {
    padding: 30px 20px 68px;
    box-sizing: border-box;
  }
  #top .sec01 .ttl-box01 {
    margin: 0 0 30px;
  }
  #top .sec01 .left-box,
  #top .sec01 .right-box {
    width: 100%;
    height: auto;
  }
  #top .sec01 .right-inner {
    width: 100%;
  }
  #top .sec01 .left-box {
    background: none;
    background-size: 100% auto;
    float: none;
  }
  #top .sec01 .right-box {
    padding: 0 0 0 0;
    box-sizing: border-box;
    float: none;
  }
  #top .sec01 .txt-box {
    text-align: justify;
    line-height: 1.8em;
  }
  #top .sec01 .right-img {
    width: 100%;
    height: auto;
    margin: 0 0 20px;
  }
  #top .sec01 .img-box {
    text-align: center;
  }
  #top .sec01 .img-box img {
    width: 100%;
    height: auto;
    margin: 0 auto 0;
  }

  /*---------- btn-box01 ----------*/
  #top .sec01 .btn-box a {
    width: 90%;
    height: 50px;
    margin: 20px auto 40px;
  }
  #top .sec01 .btn-box a {
    color: #000;
    font-size: 15px;
    background: #ffbd26;
    border-radius: 100px;
    text-align: center;
    line-height: 50px;
    position: relative;
  }
  #top .sec01 .btn-box a::before,
  #top .sec01 .btn-box a::after {
    display: block;
    content: "";
    position: absolute;
  }
  #top .sec01 .btn-box a::before {
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    top: 50%;
    right: 20px;
    margin-top: -4px;
    z-index: 10;
  }
  #top .sec01 .btn-box a::after {
    width: 28px;
    height: 28px;
    background: #fff;
    border-radius: 100px;
    top: 50%;
    right: 10px;
    z-index: 0;
    margin-top: -14px;
  }

  /*------------------------------------------------------------
 sec02
------------------------------------------------------------*/
  #top .sec02 .ttl-box01 {
    margin: 0 0 50px;
  }

  /*---------- movie-box ----------*/
  #top .sec02 .movie-box {
    display: block;
    margin: 0 0 50px;
    padding: 0 20px;
    box-sizing: border-box;
    content-visibility: auto;
    contain-intrinsic-size: 535px;
  }
  #top .sec02 .movie-box .left {
    width: 100%;
    box-shadow: 10px 10px #f6dc00;
    margin: 0 0 40px 0;
    box-sizing: border-box;
  }
  #top .sec02 .movie-box .left iframe {
    width: 100%;
    height: 260px;
  }
  #top .sec02 .movie-box .right h4 {
    font-size: 18px;
    margin: 0 0 14px;
  }
  #top .sec02 .movie-box .right .txt-box p {
    font-size: 14px;
    line-height: 1.8em;
  }

  /*---------- block-area ----------*/
  #top .sec02 .block .left,
  #top .sec02 .block .right {
    width: 100%;
    height: auto;
  }
  #top .sec02 .block.odd .left {
    float: none;
  }
  #top .sec02 .block.odd .right {
    float: none;
  }
  #top .sec02 .block.even .left {
    float: none;
  }
  #top .sec02 .block.even .right {
    float: none;
    position: inherit;
  }
  #top .sec02 .block.even .right-inner {
    position: inherit;
    top: inherit;
    right: inherit;
  }
  #top .sec02 .block01 .right {
    padding: 30px 20px 30px 20px;
    box-sizing: border-box;
  }
  #top .sec02 .block02 .right {
    padding: 30px 20px 30px 20px;
    box-sizing: border-box;
  }
  #top .sec02 .block03 .right {
    padding: 30px 20px 30px 20px;
    box-sizing: border-box;
  }
  #top .sec02 .block01 .left {
    background: none;
    background-size: cover;
  }
  #top .sec02 .block02 .left {
    background: none;
    background-size: cover;
  }
  #top .sec02 .block03 .left {
    background: none;
    background-size: cover;
  }
  #top .sec02 .block .right {
    background: #f9f1ab;
  }
  #top .sec02 .block .right-inner {
    width: 100%;
  }
  #top .sec02 .block .right-inner .txt-box p {
    text-align: justify;
    line-height: 1.8em;
  }
  #top .sec02 .block .left {
    position: relative;
  }
  #top .sec02 .block .left::before {
    content: "";
    display: block;
    position: absolute;
    width: 73px;
    height: 72.666px;
  }
  #top .sec02 .block.odd .left::before {
    top: 15px;
    right: 20px;
    margin-top: 0;
    z-index: 99;
  }
  #top .sec02 .block.even .left::before {
    top: 15px;
    right: 20px;
    left: inherit;
    margin-top: 0;
    z-index: 99;
  }
  #top .sec02 .block01 .left::before {
    background: url("../../images/recruit/sec02-txt01.png") center center no-repeat;
    background-size: 100% auto;
  }
  #top .sec02 .block02 .left::before {
    background: url("../../images/recruit/sec02-txt02.png") center center no-repeat;
    background-size: 100% auto;
  }
  #top .sec02 .block03 .left::before {
    background: url("../../images/recruit/sec02-txt03.png") center center no-repeat;
    background-size: 100% auto;
  }

  /*------------------------------------------------------------
 sec03
------------------------------------------------------------*/
  #top .sec03 {
    padding: 40px 0 0;
    box-sizing: border-box;
  }
  #top .sec03 .ttl-box01 {
    margin: 0 0 50px;
  }
  #top .sec03 .txt-area {
    padding: 0 20px;
    box-sizing: border-box;
  }
  #top .sec03 .txt-area .txt-box {
    text-align: justify;
    line-height: 1.5em;
    margin: 0 0 30px;
  }
  #top .sec03 .txt-area .covid-txt {
    text-align: center;
    margin: 0 0 30px;
  }
  #top .sec03 .txt-area .covid-txt img {
    width: 8%;
    height: auto;
    margin: 0 0 10px;
  }
  #top .sec03 .txt-area .covid-txt h3 {
    font-size: 15px;
    line-height: 1.5em;
    margin: 0 0 30px;
    position: relative;
  }
  #top .sec03 .txt-area .covid-txt h3::before {
    content: "";
    display: block;
    position: absolute;
    width: 50px;
    height: 1px;
    background: #d0111b;
    bottom: -13px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #top .sec03 .txt-area .covid-txt p {
    font-size: 13px;
    line-height: 1.8em;
  }
  #top .sec03 .block-area {
    display: block;
  }
  #top .sec03 a {
    width: 100%;
  }
  #top .sec03 a .block {
    width: 100%;
    height: auto;
    padding: 40px 20px 120px;
    box-sizing: border-box;
    position: relative;
  }
  #top .sec03 a .block01 {
    background: url("../../images/recruit/sec03-img01.jpg") center center no-repeat;
    background-size: cover;
  }
  #top .sec03 a .block02 {
    background: url("../../images/recruit/sec03-img02.jpg") center center no-repeat;
    background-size: cover;
  }
  #top .sec03 a .block03 {
    background: url("../../images/recruit/sec03-img03.jpg") center center no-repeat;
    background-size: cover;
  }
  #top .sec03 a .block .txt-box {
    width: 100%;
    margin: auto;
  }
  #top .sec03 a .block .txt-box h4 {
    color: #fff;
    font-size: 20px;
    text-align: center;
    margin: 0 0 15px;
  }
  #top .sec03 a .block .txt-box p {
    color: #fff;
    text-align: justify;
    line-height: 1.8em;
  }

  /*---------- btn-box01 ----------*/
  #top .sec03 a .block .btn-box {
    width: 60%;
    height: 50px;
    margin: auto;
    position: absolute;
    bottom: 40px;
    left: 0;
    right: 0;
  }
  #top .sec03 a .btn-box {
    color: #000;
    font-size: 16px;
    background: #ffbd26;
    border-radius: 100px;
    text-align: center;
    line-height: 50px;
    position: relative;
  }
  #top .sec03 a .btn-box::before,
  #top .sec03 a .btn-box::after {
    display: block;
    content: "";
    position: absolute;
  }
  #top .sec03 a .btn-box::before {
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    top: 50%;
    right: 20px;
    margin-top: -4px;
    z-index: 10;
  }
  #top .sec03 a .btn-box::after {
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 100px;
    top: 9px;
    right: 10px;
    z-index: 0;
  }

  /*------------------------------------------------------------
 entry
------------------------------------------------------------*/
  #top .entry {
    width: 100%;
    height: auto;
    background: #d0111b;
    padding: 50px 20px 50px;
    box-sizing: border-box;
  }
  #top .entry .txt-box p {
    color: #fff;
    text-align: justify;
    line-height: 1.8em;
    margin: 0 0 20px;
  }

  /*---------- tel ----------*/
  #top .entry .tel a {
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #top .entry .tel a img {
    width: 20px;
    height: auto;
    margin: 5px 10px 0 0;
  }

  /*---------- btn-box01 ----------*/
  #top .entry .btn-box a {
    width: 80%;
    height: 60px;
    margin: auto;
  }
  #top .entry .btn-box a {
    color: #fff;
    font-size: 22px;
    border: 2px solid #fff;
    border-radius: 100px;
    text-align: center;
    line-height: 62px;
    position: relative;
  }
  #top .entry .btn-box a::before,
  #top .entry .btn-box a::after {
    display: block;
    content: "";
    position: absolute;
  }
  #top .entry .btn-box a::before {
    width: 6px;
    height: 6px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: rotate(45deg);
    top: 50%;
    right: 29px;
    margin-top: -4px;
    z-index: 10;
  }
  #top .entry .btn-box a::after {
    width: 26px;
    height: 26px;
    background: #fff;
    border-radius: 100px;
    top: 50%;
    right: 20px;
    z-index: 0;
    margin-top: -13px;
  }
}
