@charset "UTF-8";
/*---------------------------------------------------------- */
/* color */
/*---------------------------------------------------------- */
/*---------------------------------------------------------- */
/* width */
/*---------------------------------------------------------- */
/*---------------------------------------------------------- */
/* breakpoints */
/*---------------------------------------------------------- */
/*---------------------------------------------------------- */
/* font */
/*---------------------------------------------------------- */
/*---------------------------------------------------------- */
/* other */
/*---------------------------------------------------------- */
@media screen and (max-width: 768px) {
  .slicknav_menu {
    display: block;
  }

  .visible-xs {
    display: block;
  }

  .hidden-xs {
    display: none;
  }

  #allWrap {
    position: relative;
    min-width: 100%;
    overflow-x: visible;
  }

  header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%;
    height: 60px;
    background-color: #fff;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  header h1,
  header .logo {
    position: absolute;
    top: 10px;
    left: 10px;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  header h1 img,
  header .logo img {
    width: 200px;
    height: auto;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  header .gnavi {
    position: absolute;
    top: 40px;
    right: 260px;
  }
  header .gnavi li {
    display: inline;
    padding: 0 20px;
    position: relative;
  }
  header .gnavi li a {
    text-decoration: none;
    font-size: 15px;
    padding-bottom: 25px;
  }
  header .gnavi li a:hover {
    color: #BE2630;
  }
  .company header .gnavi li.btn1 a, .service header .gnavi li.btn2 a, .info header .gnavi li.btn3 a, .recruit header .gnavi li.btn4 a {
    color: #BE2630;
  }
  header .gnavi .sub_menu {
    display: none;
    position: absolute;
    top: 40px;
    left: 50%;
    margin-left: -110px;
    width: 220px;
    padding: 0;
  }
  header .gnavi .sub_menu li {
    width: 100%;
    padding: 0;
  }
  header .gnavi .sub_menu li:after {
    display: none;
  }
  header .gnavi .sub_menu li a {
    width: 220px;
    height: auto;
    display: block;
    padding: 12px 0;
    background-color: #505050;
    border-bottom: 1px #fff solid;
    color: #fff !important;
    text-decoration: none;
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    position: relative;
  }
  header .gnavi .sub_menu li a:hover {
    background-color: #BE2630;
    text-shadow: none;
    top: 0;
  }
  header .gnavi .sub_menu li:last-child a {
    border-bottom: none;
  }
  header .btn_contact {
    display: none;
  }
  .fixed header {
    height: 50px;
  }
  .fixed header h1,
  .fixed header .logo {
    top: 10px;
    left: 10px;
  }
  .fixed header h1 img,
  .fixed header .logo img {
    width: 150px;
    height: auto;
  }

  .btn.t1 a, #contents .btn.md.contact a, #contents .btn.hyo.t3 a, #contents .btn.hyo.md.t3_2 a {
    color: #fff;
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    text-decoration: none;
    padding: 10px 35px 10px 30px;
    display: inline-block;
    background-color: #505050;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  .btn.t1 a span, #contents .btn.md.contact a span, #contents .btn.hyo.t3 a span, #contents .btn.hyo.md.t3_2 a span {
    position: relative;
    border-right: 1px #fff solid;
    padding-right: 20px;
  }
  .btn.t1 a span:after, #contents .btn.md.contact a span:after, #contents .btn.hyo.t3 a span:after, #contents .btn.hyo.md.t3_2 a span:after {
    content: "";
    width: 9px;
    height: 8px;
    background: url(../images/common/arrow1.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    right: -20px;
    margin-top: -4px;
  }
  .btn.t1 a:hover, #contents .btn.md.contact a:hover, #contents .btn.hyo.t3 a:hover, #contents .btn.hyo.md.t3_2 a:hover {
    background-color: #BE2630;
  }
  .btn.t1.per100 a, #contents .btn.per100.md.contact a, #contents .btn.per100.hyo.t3 a, #contents .btn.per100.hyo.md.t3_2 a {
    position: relative;
  }
  .btn.t1.per100 a:before, #contents .btn.per100.md.contact a:before, #contents .btn.per100.hyo.t3 a:before, #contents .btn.per100.hyo.md.t3_2 a:before {
    content: "";
    width: 1px;
    height: 22px;
    background-color: #fff;
    position: absolute;
    top: 9px;
    right: 40px;
  }
  .btn.t1.per100 a:after, #contents .btn.per100.md.contact a:after, #contents .btn.per100.hyo.t3 a:after, #contents .btn.per100.hyo.md.t3_2 a:after {
    content: "";
    width: 9px;
    height: 8px;
    background: url(../images/common/arrow1.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    right: 17px;
    margin-top: -4px;
  }
  .btn.t1.per100 a span, #contents .btn.per100.md.contact a span, #contents .btn.per100.hyo.t3 a span, #contents .btn.per100.hyo.md.t3_2 a span {
    border: none;
  }
  .btn.t1.per100 a span:after, #contents .btn.per100.md.contact a span:after, #contents .btn.per100.hyo.t3 a span:after, #contents .btn.per100.hyo.md.t3_2 a span:after {
    display: none;
  }
  .btn.t1.yellow a, #contents .btn.yellow.md.contact a, #contents .btn.yellow.hyo.t3 a, #contents .btn.yellow.hyo.md.t3_2 a {
    background-color: #F29812;
    position: relative;
    left: 0;
  }
  .btn.t1.yellow a:hover, #contents .btn.yellow.md.contact a:hover, #contents .btn.yellow.hyo.t3 a:hover, #contents .btn.yellow.hyo.md.t3_2 a:hover {
    background-color: #BE2630;
    left: 5px;
  }
  .btn.t1.red a, #contents .btn.red.md.contact a, #contents .btn.red.hyo.t3 a, #contents .btn.red.hyo.md.t3_2 a {
    background-color: #BE2630;
    position: relative;
    left: 0;
  }
  .btn.t1.red a:hover, #contents .btn.red.md.contact a:hover, #contents .btn.red.hyo.t3 a:hover, #contents .btn.red.hyo.md.t3_2 a:hover {
    background-color: #BE2630;
    left: 5px;
  }

  #contents {
    padding-bottom: 50px;
    /*確認画面*/
    /*完了画面*/
  }
  #contents .titleArea {
    width: 100%;
    height: initial;
    position: relative;
  }
  #contents .titleArea .txt {
    position: absolute;
    bottom: -10px;
    left: 5%;
    z-index: 1;
  }
  #contents .titleArea .txt .txt1 {
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 3vw;
    margin-right: 75px;
    position: absolute;
    bottom: -10px;
    left: 0;
    z-index: 1;
  }
  #contents .titleArea .txt .txt1:after {
    content: "";
    width: 30px;
    height: 1px;
    background-color: #BE2630;
    position: absolute;
    top: 50%;
    right: -40px;
  }
  .service #contents .titleArea .txt .txt1 {
    display: none;
  }
  #contents .titleArea .txt .txt2 {
    display: none;
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 4vw;
    background-color: #fff;
    padding: 5px 15px 5px 0;
    border-top-right-radius: 10px;
    position: relative;
    z-index: 1;
  }
  .service #contents .titleArea .txt .txt2 {
    display: none;
  }
  #contents .titleArea .txt .txt3 {
    position: relative;
    z-index: 0;
  }
  #contents .titleArea .txt .txt3 span {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 5vw;
    background-color: #fff;
    padding: 5px 15px 10px 0;
    border-top-right-radius: 15px;
  }
  #contents .titleArea .txt .txt3 span span {
    display: block;
    width: 200px;
    font-size: 3vw;
    margin-left: 0px;
    padding: 0;
    position: absolute;
    bottom: -12px;
    left: 0;
  }
  #contents .titleArea .pic {
    position: relative;
    top: 0px;
    left: 0px;
    width: 100%;
    margin-top: 60px;
    z-index: 0;
  }
  #contents .titleArea .pic img.img1 {
    display: none;
    position: absolute;
    width: 25%;
    height: auto;
    top: 30px;
    left: -20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    z-index: 10;
  }
  #contents .titleArea .pic img.img2 {
    position: relative;
    width: 70%;
    height: auto;
    top: 0px;
    left: 10%;
    margin-left: 0px;
    border-top-right-radius: 20px;
  }
  #contents .titleArea .pic img.img3 {
    position: absolute;
    width: 20%;
    height: auto;
    top: initial;
    left: initial;
    bottom: -30px;
    right: 20px;
    margin-left: 0px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  .interview #contents .titleArea {
    height: initial;
  }
  .interview #contents .titleArea .txt {
    bottom: -70px;
  }
  .interview #contents .titleArea .txt .txt2 {
    color: #BE2630;
    position: relative;
    top: -10px;
    padding-top: 10px;
    padding-bottom: 15px;
  }
  .interview #contents .titleArea .txt .txt3 {
    position: relative;
    z-index: 0;
    line-height: 0.4;
  }
  .interview #contents .titleArea .txt .txt3 span {
    display: inline-block;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4.7vw;
    background-color: #fff;
    padding: 15px 15px 10px 0;
    border-top-right-radius: 15px;
  }
  .interview #contents .titleArea .txt .txt3 span span {
    display: block;
    width: 200px;
    font-size: 3vw;
    margin-left: 0px;
    padding: 0;
    position: absolute;
    bottom: -12px;
    left: 0;
  }
  .interview #contents .titleArea .txt .txt4 {
    margin-top: 5px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 3.5vw;
  }
  .interview #contents .titleArea .txt .txt4 span {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4vw;
    position: relative;
    margin-right: 30px;
  }
  .interview #contents .titleArea .txt .txt4 span:after {
    content: "／";
    font-size: 0.9em;
    position: absolute;
    top: 0.25em;
    right: -1.7em;
    opacity: 0.5;
  }
  .interview #contents .titleArea .pic {
    position: relative;
    top: 0px;
    left: 0px;
    width: 100%;
    margin-top: 60px;
    z-index: 0;
  }
  .interview #contents .titleArea .pic img {
    position: absolute;
  }
  .interview #contents .titleArea .pic img.img1 {
    display: block;
    position: relative;
    width: 80%;
    height: auto;
    top: 0px;
    left: 10%;
    margin-left: 0px;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-top-right-radius: 20px;
  }
  .interview #contents .titleArea .pic img.img2 {
    display: block;
    position: absolute;
    width: 25%;
    height: auto;
    top: initial;
    left: initial;
    bottom: -30px;
    right: 20px;
    margin-left: 0px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    z-index: 10;
  }
  #contents .secWrap {
    padding-top: 50px;
    margin-top: -50px;
  }
  #contents .sec {
    padding: 50px 0;
  }
  #contents .sec.bg_gray {
    background-color: #F3F1EF;
  }
  #contents .sec.bg_gray2 {
    background-color: #eceae8;
  }
  #contents .sec.subNaviWrap {
    padding-bottom: 0;
  }
  #contents .sec .secIn {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 20px;
  }
  #contents .sec.layout.t1 ul, #contents .sec.layout.md.contact ul, #contents .sec.layout.hyo.t3 ul, #contents .sec.layout.hyo.md.t3_2 ul {
    display: block;
    flex-wrap: wrap;
    margin-top: 50px;
  }
  #contents .sec.layout.t1 ul li, #contents .sec.layout.md.contact ul li, #contents .sec.layout.hyo.t3 ul li, #contents .sec.layout.hyo.md.t3_2 ul li {
    display: block;
    flex-direction: column;
    margin-bottom: 50px;
  }
  #contents .sec.layout.t1 ul li:last-child, #contents .sec.layout.md.contact ul li:last-child, #contents .sec.layout.hyo.t3 ul li:last-child, #contents .sec.layout.hyo.md.t3_2 ul li:last-child {
    margin-bottom: 0;
  }
  #contents .sec.layout.t1 ul li a, #contents .sec.layout.md.contact ul li a, #contents .sec.layout.hyo.t3 ul li a, #contents .sec.layout.hyo.md.t3_2 ul li a,
  #contents .sec.layout.t1 ul li .wrap,
  #contents .sec.layout.md.contact ul li .wrap,
  #contents .sec.layout.hyo.t3 ul li .wrap,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap {
    display: block;
    flex-direction: column;
    flex-grow: 1;
    position: relative;
    text-decoration: none;
    padding: 10px;
    background-color: #fff;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    top: 0;
  }
  #contents .sec.layout.t1 ul li a .no, #contents .sec.layout.md.contact ul li a .no, #contents .sec.layout.hyo.t3 ul li a .no, #contents .sec.layout.hyo.md.t3_2 ul li a .no,
  #contents .sec.layout.t1 ul li .wrap .no,
  #contents .sec.layout.md.contact ul li .wrap .no,
  #contents .sec.layout.hyo.t3 ul li .wrap .no,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .no {
    width: 68px;
    height: 32px;
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 22px;
    color: #BE2630;
    background: url(../images/top/no3/bg_no.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: -32px;
    left: 0;
    padding-top: 3px;
    padding-left: 13px;
  }
  #contents .sec.layout.t1 ul li a .pic, #contents .sec.layout.md.contact ul li a .pic, #contents .sec.layout.hyo.t3 ul li a .pic, #contents .sec.layout.hyo.md.t3_2 ul li a .pic,
  #contents .sec.layout.t1 ul li .wrap .pic,
  #contents .sec.layout.md.contact ul li .wrap .pic,
  #contents .sec.layout.hyo.t3 ul li .wrap .pic,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .pic {
    position: relative;
  }
  #contents .sec.layout.t1 ul li a .pic img, #contents .sec.layout.md.contact ul li a .pic img, #contents .sec.layout.hyo.t3 ul li a .pic img, #contents .sec.layout.hyo.md.t3_2 ul li a .pic img,
  #contents .sec.layout.t1 ul li .wrap .pic img,
  #contents .sec.layout.md.contact ul li .wrap .pic img,
  #contents .sec.layout.hyo.t3 ul li .wrap .pic img,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .pic img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  #contents .sec.layout.t1 ul li a .pic span, #contents .sec.layout.md.contact ul li a .pic span, #contents .sec.layout.hyo.t3 ul li a .pic span, #contents .sec.layout.hyo.md.t3_2 ul li a .pic span,
  #contents .sec.layout.t1 ul li .wrap .pic span,
  #contents .sec.layout.md.contact ul li .wrap .pic span,
  #contents .sec.layout.hyo.t3 ul li .wrap .pic span,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .pic span {
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 3vw;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    padding: 5px 10px;
    position: absolute;
    bottom: 10px;
    left: 10px;
  }
  #contents .sec.layout.t1 ul li a .txt, #contents .sec.layout.md.contact ul li a .txt, #contents .sec.layout.hyo.t3 ul li a .txt, #contents .sec.layout.hyo.md.t3_2 ul li a .txt,
  #contents .sec.layout.t1 ul li .wrap .txt,
  #contents .sec.layout.md.contact ul li .wrap .txt,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt {
    flex-grow: 1;
    padding: 20px 15px;
  }
  #contents .sec.layout.t1 ul li a .txt h3, #contents .sec.layout.md.contact ul li a .txt h3, #contents .sec.layout.hyo.t3 ul li a .txt h3, #contents .sec.layout.hyo.md.t3_2 ul li a .txt h3,
  #contents .sec.layout.t1 ul li .wrap .txt h3,
  #contents .sec.layout.md.contact ul li .wrap .txt h3,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt h3,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt h3 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4.5vw;
    margin-bottom: 10px;
  }
  #contents .sec.layout.t1 ul li a .txt h3.kako, #contents .sec.layout.md.contact ul li a .txt h3.kako, #contents .sec.layout.hyo.t3 ul li a .txt h3.kako, #contents .sec.layout.hyo.md.t3_2 ul li a .txt h3.kako,
  #contents .sec.layout.t1 ul li .wrap .txt h3.kako,
  #contents .sec.layout.md.contact ul li .wrap .txt h3.kako,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt h3.kako,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt h3.kako {
    margin-left: -10px;
  }
  #contents .sec.layout.t1 ul li a .txt h3 span, #contents .sec.layout.md.contact ul li a .txt h3 span, #contents .sec.layout.hyo.t3 ul li a .txt h3 span, #contents .sec.layout.hyo.md.t3_2 ul li a .txt h3 span,
  #contents .sec.layout.t1 ul li .wrap .txt h3 span,
  #contents .sec.layout.md.contact ul li .wrap .txt h3 span,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt h3 span,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt h3 span {
    color: #BE2630;
  }
  #contents .sec.layout.t1 ul li a .txt p, #contents .sec.layout.md.contact ul li a .txt p, #contents .sec.layout.hyo.t3 ul li a .txt p, #contents .sec.layout.hyo.md.t3_2 ul li a .txt p,
  #contents .sec.layout.t1 ul li .wrap .txt p,
  #contents .sec.layout.md.contact ul li .wrap .txt p,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt p,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt p {
    line-height: 2;
    padding-bottom: 0px;
    font-size: 3.5vw;
  }
  #contents .sec.layout.t1 ul li a .txt p.lg, #contents .sec.layout.md.contact ul li a .txt p.lg, #contents .sec.layout.hyo.t3 ul li a .txt p.lg, #contents .sec.layout.hyo.md.t3_2 ul li a .txt p.lg,
  #contents .sec.layout.t1 ul li .wrap .txt p.lg,
  #contents .sec.layout.md.contact ul li .wrap .txt p.lg,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt p.lg,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt p.lg {
    font-size: 3.5vw;
  }
  #contents .sec.layout.t1 ul li a .txt .detail dl, #contents .sec.layout.md.contact ul li a .txt .detail dl, #contents .sec.layout.hyo.t3 ul li a .txt .detail dl, #contents .sec.layout.hyo.md.t3_2 ul li a .txt .detail dl,
  #contents .sec.layout.t1 ul li .wrap .txt .detail dl,
  #contents .sec.layout.md.contact ul li .wrap .txt .detail dl,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt .detail dl,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt .detail dl {
    padding-bottom: 7px;
    margin-bottom: 7px;
    border-bottom: #ccc dotted;
    font-size: 3.5vw;
  }
  #contents .sec.layout.t1 ul li a .txt .detail dl:last-child, #contents .sec.layout.md.contact ul li a .txt .detail dl:last-child, #contents .sec.layout.hyo.t3 ul li a .txt .detail dl:last-child, #contents .sec.layout.hyo.md.t3_2 ul li a .txt .detail dl:last-child,
  #contents .sec.layout.t1 ul li .wrap .txt .detail dl:last-child,
  #contents .sec.layout.md.contact ul li .wrap .txt .detail dl:last-child,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt .detail dl:last-child,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt .detail dl:last-child {
    padding-bottom: 0px;
    margin-bottom: 0px;
    border-bottom: none;
  }
  #contents .sec.layout.t1 ul li a .txt .detail dl dt, #contents .sec.layout.md.contact ul li a .txt .detail dl dt, #contents .sec.layout.hyo.t3 ul li a .txt .detail dl dt, #contents .sec.layout.hyo.md.t3_2 ul li a .txt .detail dl dt,
  #contents .sec.layout.t1 ul li .wrap .txt .detail dl dt,
  #contents .sec.layout.md.contact ul li .wrap .txt .detail dl dt,
  #contents .sec.layout.hyo.t3 ul li .wrap .txt .detail dl dt,
  #contents .sec.layout.hyo.md.t3_2 ul li .wrap .txt .detail dl dt {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
  }
  #contents .sec.layout.t1 ul li a:hover, #contents .sec.layout.md.contact ul li a:hover, #contents .sec.layout.hyo.t3 ul li a:hover, #contents .sec.layout.hyo.md.t3_2 ul li a:hover {
    top: -5px;
  }
  #contents .sec.layout.t1 ul.three, #contents .sec.layout.md.contact ul.three, #contents .sec.layout.hyo.t3 ul.three, #contents .sec.layout.hyo.md.t3_2 ul.three {
    gap: 60px 30px;
  }
  #contents .sec.layout.t1 ul.three li, #contents .sec.layout.md.contact ul.three li, #contents .sec.layout.hyo.t3 ul.three li, #contents .sec.layout.hyo.md.t3_2 ul.three li {
    width: 100%;
  }
  #contents .sec.layout.t1 ul.four, #contents .sec.layout.md.contact ul.four, #contents .sec.layout.hyo.t3 ul.four, #contents .sec.layout.hyo.md.t3_2 ul.four {
    gap: 60px 20px;
  }
  #contents .sec.layout.t1 ul.four li, #contents .sec.layout.md.contact ul.four li, #contents .sec.layout.hyo.t3 ul.four li, #contents .sec.layout.hyo.md.t3_2 ul.four li {
    width: 100%;
  }
  #contents .sec.layout.t1.subNavi, #contents .sec.layout.subNavi.md.contact, #contents .sec.layout.subNavi.hyo.t3, #contents .sec.layout.subNavi.hyo.md.t3_2 {
    padding-bottom: 0 !important;
  }
  #contents .sec.layout.t1.subNavi ul, #contents .sec.layout.subNavi.md.contact ul, #contents .sec.layout.subNavi.hyo.t3 ul, #contents .sec.layout.subNavi.hyo.md.t3_2 ul {
    margin-top: 0;
  }
  #contents .sec.layout.t1.subNavi ul li, #contents .sec.layout.subNavi.md.contact ul li, #contents .sec.layout.subNavi.hyo.t3 ul li, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li {
    margin-bottom: 10px;
  }
  #contents .sec.layout.t1.subNavi ul li a, #contents .sec.layout.subNavi.md.contact ul li a, #contents .sec.layout.subNavi.hyo.t3 ul li a, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a {
    background-color: #F3F1EF;
    display: flex;
    flex-direction: row;
    align-items: center;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    position: relative;
  }
  #contents .sec.layout.t1.subNavi ul li a:after, #contents .sec.layout.subNavi.md.contact ul li a:after, #contents .sec.layout.subNavi.hyo.t3 ul li a:after, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a:after {
    content: "";
    border-top: solid 1px #333;
    border-right: solid 1px #333;
    width: 6px;
    height: 6px;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -3px;
    opacity: 0.5;
  }
  #contents .sec.layout.t1.subNavi ul li a .no, #contents .sec.layout.subNavi.md.contact ul li a .no, #contents .sec.layout.subNavi.hyo.t3 ul li a .no, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .no {
    display: none;
  }
  #contents .sec.layout.t1.subNavi ul li a .pic, #contents .sec.layout.subNavi.md.contact ul li a .pic, #contents .sec.layout.subNavi.hyo.t3 ul li a .pic, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .pic {
    width: 30%;
  }
  #contents .sec.layout.t1.subNavi ul li a .pic span, #contents .sec.layout.subNavi.md.contact ul li a .pic span, #contents .sec.layout.subNavi.hyo.t3 ul li a .pic span, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .pic span {
    display: none;
  }
  #contents .sec.layout.t1.subNavi ul li a .pic img, #contents .sec.layout.subNavi.md.contact ul li a .pic img, #contents .sec.layout.subNavi.hyo.t3 ul li a .pic img, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .pic img {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
  }
  #contents .sec.layout.t1.subNavi ul li a .txt, #contents .sec.layout.subNavi.md.contact ul li a .txt, #contents .sec.layout.subNavi.hyo.t3 ul li a .txt, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .txt {
    width: 70%;
    padding: 0 0 0 15px;
  }
  #contents .sec.layout.t1.subNavi ul li a .txt h3, #contents .sec.layout.subNavi.md.contact ul li a .txt h3, #contents .sec.layout.subNavi.hyo.t3 ul li a .txt h3, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .txt h3 {
    font-size: 3.5vw;
    margin-bottom: 0;
  }
  #contents .sec.layout.t1.subNavi ul li a .txt h3 span, #contents .sec.layout.subNavi.md.contact ul li a .txt h3 span, #contents .sec.layout.subNavi.hyo.t3 ul li a .txt h3 span, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .txt h3 span {
    display: block;
    font-size: 3vw;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #333;
  }
  #contents .sec.layout.t1.subNavi ul li a .txt p, #contents .sec.layout.subNavi.md.contact ul li a .txt p, #contents .sec.layout.subNavi.hyo.t3 ul li a .txt p, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a .txt p {
    display: none;
  }
  #contents .sec.layout.t1.subNavi ul li a:hover, #contents .sec.layout.subNavi.md.contact ul li a:hover, #contents .sec.layout.subNavi.hyo.t3 ul li a:hover, #contents .sec.layout.subNavi.hyo.md.t3_2 ul li a:hover {
    top: 0px;
  }
  #contents .sec.layout.t2 .bl {
    margin-bottom: 40px;
  }
  #contents .sec.layout.t2 .bl:last-child {
    margin-bottom: 0;
  }
  #contents .sec.layout.t2 .bl .blIn {
    display: block;
  }
  #contents .sec.layout.t2 .bl .blIn .txt {
    width: 100%;
    padding-top: 0px;
    padding-right: 0px;
  }
  #contents .sec.layout.t2 .bl .blIn .txt h4 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 6vw;
    margin-bottom: 20px;
  }
  #contents .sec.layout.t2 .bl .blIn .txt img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  #contents .sec.layout.t2 .bl .blIn .txt .btn {
    margin-top: 15px;
  }
  #contents .sec.layout.t2 .bl .blIn .pic {
    width: 100%;
    height: auto;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    margin-top: 20px;
  }
  #contents .sec.faq h2 {
    float: none;
    width: initial;
  }
  #contents .sec.faq .faq-container {
    float: none;
    max-width: 100%;
    margin: 0 auto;
  }
  #contents .sec.faq .faq-item {
    background-color: #ffffff;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s ease;
  }
  #contents .sec.faq .faq-question {
    padding: 20px;
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    transition: background-color 0.3s ease;
  }
  #contents .sec.faq .faq-icon {
    font-size: 5vw;
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    color: #BE2630;
    position: relative;
    top: -4px;
  }
  #contents .sec.faq .faq-item.active .faq-answer {
    max-height: 500px;
    opacity: 1;
  }
  #contents .sec.faq .faq-item.active .faq-answer-content {
    transform: translateY(0);
  }
  #contents .sec.faq .faq-question-text {
    font-size: 3.5vw;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
  }
  #contents .sec.faq .faq-answer {
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    max-height: 0;
    opacity: 0;
  }
  #contents .sec.faq .faq-answer-content {
    padding: 0 20px 20px 52px;
    font-size: 3.5vw;
    line-height: 1.6;
    transform: translateY(-10px);
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  #contents .sec.interviewList ul {
    display: block;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
  }
  #contents .sec.interviewList ul li {
    width: 100%;
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px #ccc solid;
  }
  #contents .sec.interviewList ul li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  #contents .sec.interviewList ul li a {
    text-decoration: none;
    position: relative;
    top: 0;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    display: flex;
    gap: 20px;
  }
  #contents .sec.interviewList ul li a:hover {
    top: -5px;
  }
  #contents .sec.interviewList ul li a .pic {
    width: 35%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border: 3px #fff solid;
  }
  #contents .sec.interviewList ul li a .pic img {
    width: 150%;
    height: auto;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border: none;
  }
  #contents .sec.interviewList ul li a .txt {
    width: 65%;
    margin-top: 0px;
    padding: 0 0px;
    position: relative;
  }
  #contents .sec.interviewList ul li a .txt:after {
    content: "";
    width: 20px;
    height: 10px;
    background: url(../images/common/arrow2.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: 3px;
    right: 17px;
  }
  #contents .sec.interviewList ul li a .txt .txt1 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 4vw;
    position: relative;
  }
  #contents .sec.interviewList ul li a .txt .txt1:before {
    content: "";
    width: 46px;
    height: 2px;
    background-color: #BE2630;
    position: absolute;
    bottom: -15px;
    left: 0;
  }
  #contents .sec.interviewList ul li a .txt .txt2 {
    margin-top: 25px;
    font-size: 3vw;
  }
  #contents .sec.interviewList ul li a .txt .txt2 span {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4vw;
    position: relative;
    margin-right: 0px;
  }
  #contents .sec.interviewList ul li a .txt .txt2 span:after {
    display: none;
    content: "／";
    font-size: 13px;
    position: absolute;
    top: 2px;
    right: -22px;
    opacity: 0.5;
  }
  #contents .sec.recruit {
    position: relative;
    padding: 50px 0px !important;
    /* 横スクロールアニメーション */
  }
  #contents .sec.recruit h2 {
    margin: 0 auto;
    width: 100%;
    padding: 0 20px;
  }
  #contents .sec.recruit .txtArea {
    width: 100%;
    position: relative;
    top: 0px;
    left: 0;
    z-index: 10;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    padding: 0 20px 0px;
    margin: 20px 0 0 0;
  }
  #contents .sec.recruit .txtArea .catch {
    font-size: 6vw !important;
  }
  #contents .sec.recruit .txtArea .expl {
    width: 100% !important;
    margin: -15px 0 30px;
  }
  #contents .sec.recruit .txtArea .md {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4vw;
    display: none;
  }
  #contents .sec.recruit .txtArea .btnWrap {
    margin-top: 20px;
    display: block;
    gap: 20px;
  }
  #contents .sec.recruit .txtArea .btnWrap .btn {
    margin-bottom: 20px;
  }
  #contents .sec.recruit .txtArea .btnWrap .btn:last-child {
    margin-bottom: 0;
  }
  #contents .sec.recruit .txtArea .btnWrap .btn a {
    display: block;
  }
  #contents .sec.recruit .scroll-wrap {
    overflow: hidden;
    width: 100%;
    margin-top: 30px;
  }
  #contents .sec.recruit .scroll-list {
    display: flex;
    width: max-content;
    animation: scroll-loop 60s linear infinite;
    gap: 0 15px;
    /* ← スピードはここで調整 */
  }
  #contents .sec.recruit .scroll-list li {
    flex: 0 0 auto;
  }
  #contents .sec.recruit .scroll-list li img {
    display: block;
    width: 200px;
    /* 適宜変更 */
    height: auto;
    border-radius: 15px;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
  }
  @keyframes scroll-loop {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-50%);
    }
  }
  #contents .sec.jobList dl {
    width: 100%;
    margin-bottom: 20px;
    border: 1px #BE2630 solid;
  }
  #contents .sec.jobList dl:last-child {
    margin-bottom: 0px;
  }
  #contents .sec.jobList dl dt.parent {
    padding: 10px 45px;
    background-color: #fff;
    position: relative;
    cursor: pointer;
    font-size: 3.5vw;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  #contents .sec.jobList dl dt.parent span:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 10px solid #BE2630;
    border-right: 0;
    position: absolute;
    top: 50%;
    left: 20px;
    margin-top: -5px;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  #contents .sec.jobList dl dt.parent:hover {
    background-color: #BE2630;
    color: #fff;
  }
  #contents .sec.jobList dl dt.parent:hover span:before {
    border-left: 10px solid #fff;
  }
  #contents .sec.jobList dl dt.parent.active {
    background-color: #BE2630;
    color: #fff;
    font-size: 3.5vw;
  }
  #contents .sec.jobList dl dd {
    padding: 30px 30px 30px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background: #fff;
  }
  #contents .sec.contact {
    display: none;
  }
  #contents .sec.contact .secIn {
    width: 1287px;
  }
  #contents .sec.contact .secIn .waku {
    background-color: #BE2630;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    padding: 70px;
    color: #fff;
    position: relative;
  }
  #contents .sec.contact .secIn .waku p {
    font-size: 16px;
  }
  #contents .sec.contact .secIn .waku ul {
    width: 430px;
    position: absolute;
    top: 70px;
    right: 70px;
  }
  #contents .sec.contact .secIn .waku ul li {
    margin-bottom: 20px;
  }
  #contents .sec.contact .secIn .waku ul li a {
    display: block;
    text-decoration: none;
    color: #fff;
    background: #9D141D;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    text-decoration: none;
    position: relative;
    top: 0;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
  }
  #contents .sec.contact .secIn .waku ul li a:hover {
    top: -5px;
  }
  #contents .sec.contact .secIn .waku ul li a span {
    display: block;
    font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    margin-top: -5px;
  }
  #contents .sec.contact .secIn .waku ul li.tel a {
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 34px;
    padding: 20px 50px 20px 120px;
  }
  #contents .sec.contact .secIn .waku ul li.tel a:before {
    content: "";
    width: 58px;
    height: 58px;
    background: url(../images/common/contact/icon_tel.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    left: 40px;
    margin-top: -29px;
  }
  #contents .sec.contact .secIn .waku ul li.mail a {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 25px;
    padding: 25px 50px 25px 120px;
  }
  #contents .sec.contact .secIn .waku ul li.mail a span {
    margin-top: 5px;
  }
  #contents .sec.contact .secIn .waku ul li.mail a:before {
    content: "";
    width: 58px;
    height: 58px;
    background: url(../images/common/contact/icon_mail.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    left: 40px;
    margin-top: -29px;
  }
  #contents .md.t1, #contents .md.contact, #contents .md.hyo.t3, #contents .md.hyo.t3_2 {
    position: relative;
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 8vw;
    font-weight: 700;
    display: block;
  }
  #contents .md.t1 span, #contents .md.contact span, #contents .md.hyo.t3 span, #contents .md.hyo.t3_2 span {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 3.5vw;
    padding-left: 1.6em;
    display: block;
    position: relative;
  }
  #contents .md.t1 span:before, #contents .md.contact span:before, #contents .md.hyo.t3 span:before, #contents .md.hyo.t3_2 span:before {
    content: "";
    width: 1em;
    height: 1em;
    background: url(../images/common/flag1.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -0.5em;
  }
  #contents .md.t2 {
    margin-bottom: 20px;
  }
  #contents .md.t2 span {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 3.5vw;
    padding-left: 20px;
    display: block;
    position: relative;
  }
  #contents .md.t2 span:before {
    content: "";
    width: 12px;
    height: 12px;
    background: url(../images/common/flag1.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -6px;
  }
  #contents .md.t3, #contents .md.t3_2 {
    position: relative;
    margin-bottom: 15px;
  }
  #contents .md.t3:before, #contents .md.t3_2:before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
  }
  #contents .md.t3 span, #contents .md.t3_2 span {
    font-family: "Red Hat Display", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    color: #BE2630;
    font-size: 3.5vw;
    background-color: #fff;
    position: relative;
    z-index: 1;
    padding-right: 15px;
  }
  #contents .md.t3_2 span {
    background-color: #F3F1EF;
  }
  #contents .md.t4 {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 4vw;
    margin-bottom: 30px;
  }
  #contents .md.t4 span {
    position: relative;
  }
  #contents .md.t4 span:after {
    content: "";
    width: 50px;
    height: 2px;
    background-color: #BE2630;
    position: absolute;
    bottom: -10px;
    left: 50%;
    margin-left: -25px;
  }
  #contents .md.contact {
    color: #fff;
  }
  #contents .md.contact span {
    color: #fff;
  }
  #contents .md.contact span:before {
    background: url(../images/common/flag2.svg) no-repeat;
  }
  #contents .catch.t1, #contents .catch.md.contact, #contents .catch.hyo.t3, #contents .catch.hyo.md.t3_2 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 5vw;
    margin-bottom: 20px;
  }
  #contents .catch.t2 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 5vw;
    margin-bottom: 15px;
  }
  #contents .catch.t3, #contents .catch.md.t3_2 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: 5vw;
    margin-left: 15px;
    margin-bottom: 15px;
  }
  #contents .catch.t3 span, #contents .catch.md.t3_2 span {
    position: relative;
    font-size: 4vw;
  }
  #contents .catch.t3 span:before, #contents .catch.md.t3_2 span:before, #contents .catch.t3 span:after, #contents .catch.md.t3_2 span:after {
    content: "";
    width: 0.6em;
    height: 0.45em;
    background: url(../images/common/dash.svg) no-repeat;
    background-size: 100% auto;
    position: absolute;
  }
  #contents .catch.t3 span:before, #contents .catch.md.t3_2 span:before {
    top: 0.1em;
    left: -1.2em;
  }
  #contents .catch.t3 span:after, #contents .catch.md.t3_2 span:after {
    bottom: 0.1em;
    right: -1.2em;
  }
  #contents .expl {
    font-size: 3.5vw;
    letter-spacing: 1px;
    line-height: 1.8;
  }
  #contents .hyo.t1 dl, #contents .hyo.md.contact dl, #contents .hyo.t3 dl, #contents .hyo.md.t3_2 dl {
    display: block;
    width: 100%;
  }
  #contents .hyo.t1 dl dt, #contents .hyo.md.contact dl dt, #contents .hyo.t3 dl dt, #contents .hyo.md.t3_2 dl dt {
    display: block;
    width: 100%;
    padding: 5px 0px;
    background-color: #BE2630;
    text-align: center;
    vertical-align: middle;
    font-size: 3vw;
    color: #fff;
  }
  #contents .hyo.t1 dl dd, #contents .hyo.md.contact dl dd, #contents .hyo.t3 dl dd, #contents .hyo.md.t3_2 dl dd {
    display: block;
    width: 100%;
    padding: 10px 10px 20px;
    vertical-align: middle;
    font-size: 3.5vw;
    background-color: #fff;
  }
  #contents .hyo.t1 dl:nth-child(even) dt, #contents .hyo.md.contact dl:nth-child(even) dt, #contents .hyo.t3 dl:nth-child(even) dt, #contents .hyo.md.t3_2 dl:nth-child(even) dt {
    background-color: #be2630;
  }
  #contents .hyo.t1 dl:nth-child(even) dd, #contents .hyo.md.contact dl:nth-child(even) dd, #contents .hyo.t3 dl:nth-child(even) dd, #contents .hyo.md.t3_2 dl:nth-child(even) dd {
    background-color: #fff;
  }
  #contents .hyo.t1 dl:first-child dt, #contents .hyo.md.contact dl:first-child dt, #contents .hyo.t3 dl:first-child dt, #contents .hyo.md.t3_2 dl:first-child dt {
    border-top-left-radius: 0px;
  }
  #contents .hyo.t1 dl:first-child dd, #contents .hyo.md.contact dl:first-child dd, #contents .hyo.t3 dl:first-child dd, #contents .hyo.md.t3_2 dl:first-child dd {
    border-top-right-radius: 0px;
  }
  #contents .hyo.t1 dl:last-child dt, #contents .hyo.md.contact dl:last-child dt, #contents .hyo.t3 dl:last-child dt, #contents .hyo.md.t3_2 dl:last-child dt {
    border-bottom-left-radius: 0px;
  }
  #contents .hyo.t1 dl:last-child dd, #contents .hyo.md.contact dl:last-child dd, #contents .hyo.t3 dl:last-child dd, #contents .hyo.md.t3_2 dl:last-child dd {
    border-bottom-right-radius: 0px;
  }
  #contents .hyo.t2 dl {
    display: block;
    width: 100%;
  }
  #contents .hyo.t2 dl dt {
    display: block;
    width: 100%;
    padding: 5px 0px;
    color: #fff;
    background-color: #505050;
    text-align: center;
    vertical-align: middle;
    font-size: 3vw;
  }
  #contents .hyo.t2 dl dd {
    display: block;
    width: 100%;
    padding: 10px 20px 20px;
    vertical-align: middle;
    background-color: #fff;
    font-size: 3.45vw;
  }
  #contents .hyo.t2 dl:first-child dt {
    border-top-left-radius: 0px;
  }
  #contents .hyo.t2 dl:first-child dd {
    border-top-right-radius: 0px;
  }
  #contents .hyo.t2 dl:last-child dt {
    border-bottom-left-radius: 0px;
  }
  #contents .hyo.t2 dl:last-child dd {
    border-bottom-right-radius: 0px;
  }
  #contents .hyo.t3 dl:first-child dt, #contents .hyo.md.t3_2 dl:first-child dt {
    border-top-left-radius: 0px;
  }
  #contents .hyo.t3 dl:first-child dd, #contents .hyo.md.t3_2 dl:first-child dd {
    border-top-right-radius: 0px;
  }
  #contents .hyo.t3 dl:last-child dt, #contents .hyo.md.t3_2 dl:last-child dt {
    border-bottom-left-radius: 0px;
  }
  #contents .hyo.t3 dl:last-child dd, #contents .hyo.md.t3_2 dl:last-child dd {
    border-bottom-right-radius: 0px;
  }
  #contents .hyo_form {
    width: 100%;
    margin-top: 20px;
    background-color: #fff;
    padding: 20px 20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    color: #333;
  }
  #contents .hyo_form dl {
    display: block;
    width: 100%;
    font-size: 3.5vw;
    border-bottom: 1px #ccc dotted;
  }
  #contents .hyo_form dl dt {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    display: block;
    width: 100%;
    background-color: #F3F1EF;
    padding: 10px 20px;
    text-align: left;
    font-weight: normal !important;
    vertical-align: middle;
    font-size: 3.5vw;
    font-weight: 700 !important;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
  }
  #contents .hyo_form dl dt .hissu {
    border: 1px #BE2630 solid;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    color: #BE2630;
    padding: 0px 3px;
    font-size: 2.5vw;
    margin-left: 10px;
    position: relative;
    top: -2px;
  }
  #contents .hyo_form dl dd {
    display: block;
    width: 100%;
    padding: 15px 0px;
    border: 1px #fff solid;
    vertical-align: middle;
    text-align: left;
    font-size: 3.5vw;
  }
  #contents .hyo_form dl dd input,
  #contents .hyo_form dl dd select,
  #contents .hyo_form dl dd textarea {
    background-color: #F8F9FA;
    padding: 14px 16px;
    font-size: 16px;
    border: none;
    color: #333;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    width: 100%;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
  }
  #contents .hyo_form dl dd .chui {
    font-size: 3vw;
    background-color: rgba(190, 38, 48, 0.1);
    padding: 20px;
    color: #941e25;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border: 1px #941e25 dashed;
  }
  #contents .hyo_form dl dd.checkFm .wpcf7-list-item {
    display: block;
  }
  #contents .hyo_form dl.tel input {
    width: 20% !important;
  }
  #contents .hyo_form .checkFm input {
    padding: 0;
    width: initial;
    margin-right: 10px;
  }
  #contents .hyo_form .checkFm span {
    font-size: 3.5vw !important;
  }
  #contents .hyo_form .privacy-check {
    text-align: center;
    margin-top: 20px;
  }
  #contents .hyo_form .privacy-check .privacy-inline {
    width: 100%;
    margin: 0 auto 20px;
    padding: 20px 20px;
    background-color: #F8F9FA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn {
    overflow-y: scroll;
    width: 100%;
    height: 150px;
    text-align: left;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk {
    margin-bottom: 20px;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk:last-child {
    margin-bottom: 0;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk h5 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 3.5vw;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk .expl {
    font-size: 3.5vw !important;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk .box ul li {
    font-size: 3.5vw;
    position: relative;
    padding-left: 20px;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px #ccc dotted;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk .box ul li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  #contents .hyo_form .privacy-check .privacy-inline .privacy-inlineIn .blk .box ul li:before {
    content: "・";
    font-size: 14px;
    position: absolute;
    top: 0;
    left: 0;
  }
  #contents .hyo_form .btnArea {
    text-align: center;
    margin-top: 30px;
    position: relative;
  }
  #contents .hyo_form .btnArea input {
    background-color: #333;
    color: #fff;
    font-size: 4vw;
    width: 100%;
    padding: 10px 0px 10px 0px;
    text-align: center;
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    margin: 0 0px;
  }
  #contents .hyo_form .btnArea input:hover {
    background: linear-gradient(to right, #ff3636, #ff6839);
  }
  #contents .reCAPTCHA {
    background-color: #f5f5f5;
    padding: 20px;
    text-align: left;
    margin-top: 40px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    font-size: 3vw;
  }
  #contents .mw_wp_form_confirm .reCAPTCHA,
  #contents .mw_wp_form_confirm .hissu,
  #contents .mw_wp_form_confirm .input-show,
  #contents .mw_wp_form_confirm .zip-button,
  #contents .mw_wp_form_confirm .privacy-check,
  #contents .mw_wp_form_confirm .bl.no1,
  #contents .mw_wp_form_confirm .bl.no2 h3,
  #contents .mw_wp_form_confirm .bl.no2 .expl,
  #contents .mw_wp_form_confirm .link,
  #contents .mw_wp_form_confirm h3 {
    display: none;
  }
  #contents .mw_wp_form_confirm .hyo_form dd span {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    margin-right: 5px;
  }
  #contents .mw_wp_form_complete .thanks_msg {
    font-size: 30px;
    color: #78BC4A;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    text-align: center;
  }
  #contents .mw_wp_form_complete .expl {
    text-align: center;
    padding: 20px 0 50px;
  }
  #contents ul.dot li {
    position: relative;
    padding-left: 20px;
    line-height: 2;
  }
  #contents ul.dot li:before {
    content: "・";
    font-size: 14px;
    color: #BE2630;
    position: absolute;
    top: 0;
    left: 0;
  }
  #contents ul.dot.lg li {
    font-size: 3.5vw;
  }
  #contents ul.dot.lg li:before {
    font-size: 14px;
  }

  footer {
    display: block;
    padding: 40px 20px 140px;
  }
  footer .footerIn {
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  footer .footerIn .txt {
    width: 100%;
    text-align: center;
    color: #fff;
  }
  footer .footerIn .txt .logo {
    width: 200px;
    margin: 0 auto;
  }
  footer .footerIn .txt .logo img {
    width: 100%;
    height: auto;
  }
  footer .footerIn .txt p {
    font-size: 13px;
    margin-top: 15px;
    line-height: 1.8;
  }
  footer .footerIn .txt .footerBadge {
    margin-top: 20px;
    width: 120px;
    margin-left: auto;
    margin-right: auto;
  }
  footer .footerIn .txt .footerBadge img {
    width: 100%;
    height: auto;
    border-radius: 8px;
  }
  footer .footerIn .txt .copyright {
    font-size: 11px;
    opacity: 0.5;
    margin-top: 25px;
  }
  footer .footerIn .sitemap {
    display: none;
  }

  .bn_side {
    display: none;
  }

  #ftNavi {
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    position: fixed;
    bottom: -100px;
    left: 0;
    width: 100%;
    z-index: 10000;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  #ftNavi li {
    display: inline;
    float: left;
    width: calc(100% / 3);
    background-color: #505050;
    border-right: 1px white solid;
    box-sizing: border-box;
  }
  #ftNavi li.btn1 {
    background-color: #be2630;
  }
  #ftNavi li:last-child {
    border-right: none;
  }
  #ftNavi li a,
  #ftNavi li div {
    display: block;
    text-align: center;
    color: #fff;
    padding: 5px 0;
  }
  #ftNavi li img {
    width: auto;
    height: 40px;
  }
  .page #ftNavi, .fixed #ftNavi {
    bottom: 0;
  }

  .bn_posting {
    position: fixed;
    bottom: 60px;
    right: initial;
    left: 50%;
    z-index: 10000000;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
    -moz-transition: all 0.3s !important;
    -o-transition: all 0.3s !important;
    -webkit-transition: all 0.3s !important;
    transition: all 0.3s !important;
    opacity: 0;
    width: 60%;
    margin-left: -30%;
  }
  .bn_posting:hover {
    bottom: 65px;
  }
  .bn_posting img {
    width: 100%;
    height: auto;
    border: 5px #fff solid;
  }
  .fixed .bn_posting {
    opacity: 1;
  }

  #page-top {
    display: none !important;
    position: fixed;
    bottom: 60px;
    right: 10px;
    z-index: 10000;
    opacity: 0.5;
  }
  #page-top img {
    width: 30px;
    height: auto;
  }
}
