/* ---------- setting ---------- ---------- */
@media print, screen and (min-width: 768px) {
  .block-common-next {
    padding: 110px 0px 150px 0px;
    background-size: cover;
    position: relative;
  }
  .block-common-next img {
    width: 100%;
  }
  .block-common-next ._item {
    display: block;
    width: 760px;
    height: 375px;
    margin: 0 auto;
    background: #AD0C18;
    position: relative;
    transition-duration: 0.2s;
  }
  .block-common-next ._item:hover {
    opacity: 0.8;
  }
  .block-common-next ._item:after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    left: 5px;
    background: url(/common/images/next/text.png) left top no-repeat;
    background-size: contain;
    width: 40px;
    height: 191px;
  }
  .block-common-next ._item ._image {
    margin-left: 200px;
  }
  .block-common-next ._item ._texts {
    position: absolute;
    top: 50%;
    left: 100px;
    transform: translate(0, -50%);
    padding: 20px;
    background: #fff;
    min-width: 340px;
  }
  .block-common-next ._item ._texts:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    background: url(/common/images/next/arrow.png) left top no-repeat;
    background-size: contain;
    width: 25px;
    height: 17px;
  }
  .block-common-next ._item ._texts ._t1 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 35px;
    color: #3c3c3c;
  }
  .block-index-init {
    position: fixed;
    top: 0px;
    right: 0px;
    width: 100%;
    bottom: 0px;
    background: #fff;
    z-index: 200;
    transition-duration: 0.6s;
    transition-timing-function: ease-out;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  body.is-index-init3 .block-index-init {
    width: 0%;
  }
  .block-index-init ._logo {
    left: 45px;
    width: 250px;
    transition-duration: 0.8s;
    opacity: 0;
    transform: translate(0, 20px);
  }
  .block-index-init ._logo img {
    width: 100%;
  }
  body.is-index-init .block-index-init ._logo {
    opacity: 1;
    transform: translate(0, 0);
  }
  body.is-index-init2 .block-index-init ._logo {
    transition-duration: 0.2s;
    opacity: 0;
  }
  .block-index-visual {
    position: relative;
    background: #000;
    width: 100%;
    overflow: hidden;
  }
  .block-index-visual ._texts {
    position: relative;
    height: 50vw;
    margin: 0 auto;
    z-index: 10;
  }
  .block-index-visual ._texts ._item {
    position: absolute;
    left: 0px;
    width: 50vw;
    opacity: 0;
    transition-duration: 0.5s;
  }
  .block-index-visual ._texts ._item._item-1 {
    bottom: 200px;
    left: 50%;
  }
  .block-index-visual ._texts ._item._item-2 {
    bottom: 200px;
    left: calc(50% - 540px);
  }
  .block-index-visual ._texts ._item._item-3 {
    bottom: 200px;
    left: 50%;
  }
  .block-index-visual ._texts ._item._item-4 {
    bottom: 200px;
    left: calc(50% - 540px);
  }
  .block-index-visual ._texts ._item._item-5 {
    top: 220px;
    left: calc(50% - 200px);
  }
  .block-index-visual ._texts ._item.js-show {
    opacity: 1;
    transition-duration: 1s;
    transition-delay: 1s;
  }
  .block-index-visual ._texts ._item ._t1 > span {
    margin-top: 15px;
    display: inline-block;
    position: relative;
  }
  .block-index-visual ._texts ._item ._t1 > span span {
    display: block;
    padding: 15px 10px 0 10px;
    position: relative;
    font-weight: 500;
    font-size: 30px;
    letter-spacing: 0.1em;
    line-height: 1;
  }
  .block-index-visual ._texts ._item ._t1 > span:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #fff;
  }
  .block-index-visual ._texts ._item ._t2 {
    margin-top: 20px;
  }
  .block-index-visual ._texts ._item ._t2 > span {
    margin-top: 5px;
    display: inline-block;
    position: relative;
    background: #AD0C18;
    color: #fff;
    padding: 5px;
    font-weight: normal;
    font-size: 14px;
  }
  .block-index-visual ._visuals {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
  }
  .block-index-visual ._visuals ._item {
    opacity: 0;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0%;
    bottom: 0px;
    transition-duration: 1s;
    transition-timing-function: ease-out;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  .block-index-visual ._visuals ._item ._item-inner {
    width: 100%;
    height: 100%;
    transform-origin: 0.5 0.5;
    transition-duration: 6s;
    transition-timing-function: linear;
    background-position: center center;
    background-size: 1920px auto;
    background-size: cover;
  }
  .block-index-visual ._visuals ._item.js-front {
    z-index: 2;
  }
  .block-index-visual ._visuals ._item.js-show {
    opacity: 1;
    width: 100%;
  }
  .block-index-visual ._visuals ._item.js-zooming {
    width: 100%;
  }
  .block-index-visual ._visuals ._item.js-zooming ._item-inner {
    transform: scale(1.1, 1.1);
  }
  .block-index-visual ._visuals ._item-1 ._item-inner {
    background-image: url(/images/index/mv/p1.jpg);
  }
  .block-index-visual ._visuals ._item-2 ._item-inner {
    background-image: url(/images/index/mv/p2.jpg);
  }
  .block-index-visual ._visuals ._item-3 ._item-inner {
    background-image: url(/images/index/mv/p3.jpg);
  }
  .block-index-visual ._visuals ._item-4 ._item-inner {
    background-image: url(/images/index/mv/p4.jpg);
  }
  .block-index-visual ._visuals ._item-5 ._item-inner {
    background-image: url(/images/index/mv/p5.jpg);
  }
  .block-index-visual ._logo {
    position: absolute;
    top: 70px;
    left: calc(50% - 540px);
    width: 270px;
    height: 103px;
    z-index: 20;
  }
  .block-index-visual ._logo img {
    width: 100%;
  }
  .block-index-visual .___mask {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    bottom: 0px;
    background: #333;
    z-index: 20;
    transition-duration: 0.8s;
  }
  .block-index-visual .___mask.js-active {
    left: 100%;
    width: 0%;
  }
  .block-index-visual ._news {
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 30px;
    z-index: 20;
  }
  .block-index-visual ._news ._inner {
    position: relative;
    width: 740px;
    margin: 0 auto;
  }
  .block-index-visual ._news h2 {
    position: absolute;
    top: -20px;
    left: 2%;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #f8f3ef;
  }
  .block-index-visual ._news ._body {
    padding: 20px 30px 10px 30px;
    background-color: #fff;
  }
  .mod-news.is-top a {
    color: #000;
    text-decoration: underline;
  }
  .mod-news.is-top th {
    width: 120px;
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-news.is-top td {
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .block-index-atfirst {
    margin-top: 60px;
    margin-bottom: 60px;
    background: url(/images/index/atfirst/bg.jpg) center center no-repeat;
    background-size: auto 100%;
  }
  .block-index-atfirst ._inner {
    padding-left: 260px;
    position: relative;
    height: 1285px;
  }
  .block-index-atfirst ._inner:before {
    content: "";
    display: block;
    position: absolute;
    top: -60px;
    bottom: -60px;
    left: 180px;
    width: 0px;
    background: #ad0c18;
    opacity: 0.85;
    transition-duration: 0.4s;
    transition-delay: 0.6s;
  }
  .block-index-atfirst ._inner.js-active:before {
    width: 620px;
  }
  .block-index-atfirst ._row-header {
    padding: 50px 0 0 0;
    position: relative;
  }
  .block-index-atfirst ._row-body {
    position: relative;
    margin-top: 80px;
  }
  .block-index-atfirst ._items {
    width: 820px;
  }
  .block-index-atfirst ._items li + li {
    margin-top: 10px;
  }
  .block-index-atfirst ._item {
    display: block;
    background: #fff;
    display: flex;
  }
  .block-index-atfirst ._item ._image {
    width: 540px;
  }
  .block-index-atfirst ._item ._image img {
    width: 100%;
  }
  .block-index-atfirst ._item ._btn {
    flex: 1;
    display: flex;
    align-items: center;
    padding-left: 40px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2;
    color: #3c3c3c;
    position: relative;
  }
  .block-index-atfirst ._item ._btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    background: url(/images/index/arrow.png) left top no-repeat;
    background-size: contain;
    width: 25px;
    height: 17px;
  }
  .block-index-atfirst ._btn_movie {
    display: block;
    position: absolute;
    top: 60px;
    right: calc(50% - 550px);
    width: 263px;
    height: 263px;
    transition-duration: 0.2s;
    cursor: pointer;
  }
  .block-index-atfirst ._btn_movie img {
    width: 100%;
  }
  .block-index-atfirst ._btn_movie:hover {
    transform: scale(1.1, 1.1);
  }
  .block-index-works {
    position: relative;
    background: url(/images/index/works/bg.jpg) center center no-repeat;
    background-size: auto 100%;
    height: 1126px;
    margin-bottom: 120px;
  }
  .block-index-works img {
    width: 100%;
  }
  .block-index-works:before {
    content: "";
    display: block;
    position: absolute;
    top: 60px;
    left: 60px;
    right: 60px;
    bottom: 60px;
    background: #f8f3ef;
    opacity: 0.9;
  }
  .block-index-works .block-inner {
    position: relative;
  }
  .block-index-works ._row-header {
    position: absolute;
    top: 180px;
    left: 0px;
  }
  .block-index-works ._row-body {
    margin-top: 20px;
  }
  .block-index-works ._p1 ._text {
    position: absolute;
    top: -30px;
    left: 0px;
  }
  .block-index-works ._p2 ._text {
    position: absolute;
    bottom: -30px;
    left: 0px;
  }
  .block-index-works ._p3 ._text {
    position: absolute;
    top: -30px;
    left: 0px;
  }
  .block-index-works ._set ._text {
    display: block;
    transition-duration: 0.2s;
  }
  .block-index-works ._set ._text:hover {
    opacity: 0.8;
  }
  .block-index-works ._p1 {
    position: absolute;
    top: 509px;
    left: -2px;
    width: 600px;
    height: 460px;
  }
  .block-index-works ._p2 {
    position: absolute;
    top: 140px;
    left: 744px;
    width: 336px;
    height: 693px;
  }
  .block-index-works ._p3 {
    position: absolute;
    top: 928px;
    left: 624px;
    width: 455px;
    height: 300px;
  }
  .block-index-works ._p4 {
    position: absolute;
    top: 514px;
    left: 1532px;
    width: 540px;
    height: 200px;
  }
  .block-index-works ._t {
    position: absolute;
    top: 495px;
    left: 552px;
    width: 117px;
    height: 435px;
  }
  .block-index-workstyle {
    position: relative;
    padding: 150px 0 0 0;
  }
  .block-index-workstyle:before {
    content: "";
    display: block;
    position: absolute;
    top: 60px;
    left: 60px;
    right: 60px;
    bottom: 200px;
    background: url(/images/index/workstyle/bg.jpg) center center no-repeat;
    background-size: auto 100%;
  }
  .block-index-workstyle ._row-header {
    position: relative;
    width: 720px;
    height: 419px;
    margin: 0 auto;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-index-workstyle ._items {
    position: relative;
    z-index: 10;
    width: 820px;
    margin: 0 auto;
    margin-top: -40px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px 0;
  }
  .block-index-workstyle ._items > * {
    width: 50%;
  }
  .block-index-workstyle ._item {
    display: block;
    position: relative;
  }
  .block-index-workstyle ._item ._image img {
    width: 100%;
  }
  .block-index-workstyle ._item ._texts {
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translate(-50%, 0);
  }
  .block-index-recruit {
    background: url(/images/index/recruit/bg.jpg) center center no-repeat;
    background-size: auto 100%;
    margin-top: -40px;
    height: 740px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-index-recruit ._box {
    margin-top: 60px;
    width: 1000px;
    background: rgba(255, 255, 255, 0.9);
    padding: 80px 40px 60px 40px;
  }
  .block-index-recruit ._row-header {
    text-align: center;
  }
  .block-index-recruit ._row-header h2 {
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 0.15em;
  }
  .block-index-recruit ._row-body {
    margin-top: 20px;
  }
  .block-index-recruit h3 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.15em;
    text-align: center;
    margin: 40px 0 20px 0;
  }
  .block-index-recruit ._items {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
  }
  .block-index-recruit ._items > * {
    width: 200px;
  }
  .block-index-recruit ._items > * .mod-index-btn {
    width: 200px;
    height: 70px;
    text-align: center;
    line-height: 1.2;
  }
  .block-index-recruit ._items > * .mod-index-btn:after {
    display: none;
    padding-left: 0px;
  }
  .mod-index-head.is-wh {
    color: #fff;
  }
  .mod-index-head.is-center {
    text-align: center;
  }
  .mod-index-head h2 {
    font-weight: bold;
    font-size: 42px;
    letter-spacing: 0.15em;
    line-height: 1.6;
  }
  .mod-index-head p {
    margin-top: 40px;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.7;
  }
  .mod-index-btn {
    position: relative;
    width: 280px;
    height: 70px;
    background: #fff;
    color: #3c3c3c;
    display: flex;
    padding-left: 30px;
    font-size: 16px;
    font-weight: bold;
    align-items: center;
  }
  .mod-index-btn.is-center {
    justify-content: center;
    padding-left: 0;
  }
  .mod-index-btn.is-line {
    background: transparent;
    border: 1px solid #ad0c18;
    width: 240px;
    height: 80px;
    transition-duration: 0.2s;
  }
  .mod-index-btn.is-line:hover {
    opacity: 0.8;
  }
  .mod-index-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    background: url(/images/index/arrow.png) left top no-repeat;
    background-size: contain;
    width: 25px;
    height: 17px;
  }
  .block-atfirst-about-mv {
    position: relative;
    /* 
    ._p1{position: absolute;top: 144px;left: 5px;width : 328px;height : 266px;}
    ._p2{position: absolute;top: 62px;left: 376px;width : 328px;height : 266px;}
    ._p3{position: absolute;top: 145px;left: 750px;width : 328px;height : 266px;}
    ._p4{position: absolute;top: 419px;left: 863px;width : 328px;height : 266px;}
    ._p5{position: absolute;top: 635px;left: 600px;width : 328px;height : 266px;}
    ._p6{position: absolute;top: 635px;left: 153px;width : 328px;height : 266px;}
    ._p7{position: absolute;top: 420px;left: -112px;width : 328px;height : 266px;}
     */
  }
  .block-atfirst-about-mv ._image img {
    width: 100%;
    height: 700px;
    object-fit: cover;
  }
  .block-atfirst-about-mv h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    padding-top: 50px;
    transform: translate(-50%, -50%);
  }
  .block-atfirst-about-mv h1 span {
    margin-top: 20px;
    display: inline-block;
    background: #fff;
    padding: 20px 20px 20px 40px;
    font-weight: bold;
    font-size: 32px;
    font-size: 28px;
    letter-spacing: 0.2em;
    line-height: 35px;
    text-align: center;
  }
  .block-atfirst-about-mv ._btns {
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-540px, 0);
    width: 1080px;
    height: 700px;
  }
  .block-atfirst-about-mv ._btn {
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .block-atfirst-about-mv ._btn img {
    width: 100%;
  }
  .block-atfirst-about-mv ._btn:hover {
    transform: scale(1.1);
  }
  .block-atfirst-about-mv ._p1 {
    position: absolute;
    top: 88px;
    left: 50px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p2 {
    position: absolute;
    top: 26.5px;
    left: 421px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p3 {
    position: absolute;
    top: 88.75px;
    left: 795px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p4 {
    position: absolute;
    top: 294.25px;
    left: 908px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p5 {
    position: absolute;
    top: 456.25px;
    left: 645px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p6 {
    position: absolute;
    top: 456.25px;
    left: 198px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv ._p7 {
    position: absolute;
    top: 295px;
    left: -67px;
    width: 246px;
    height: 199.5px;
  }
  .block-atfirst-about-mv img {
    width: 100%;
  }
  .block-atfirst-about-link-sp {
    display: none;
  }
  .area-modal-about {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.4s;
    transform: scale(0.9);
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-about.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
  }
  .area-modal-about ._modal-bg {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: rgba(0, 0, 0, 0.3);
  }
  .area-modal-about ._modal-btns {
    position: absolute;
    top: 15px;
    right: 80px;
    display: flex;
  }
  .area-modal-about ._modal-btns ._modal-btn {
    display: block;
    width: 40px;
    height: 40px;
    background: #ccc;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 2px;
  }
  .area-modal-about ._modal-btn-close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 10;
    transition-duration: 0.2s;
  }
  .area-modal-about ._modal-btn-close:hover {
    opacity: 0.8;
  }
  .area-modal-about ._modal-btn-close:after, .area-modal-about ._modal-btn-close:before {
    content: "";
    position: absolute;
    top: 20px;
    left: 0;
    width: 40px;
    height: 2px;
    transform: rotate(-45deg);
    background: #fff;
  }
  .area-modal-about ._modal-btn-close:before {
    transform: rotate(45deg);
  }
  .area-modal-about ._modal-box {
    position: absolute;
    background: #fff;
    box-sizing: border-box;
    width: 1080px;
    height: 590px;
  }
  .area-modal-about ._modal-box ._modal-body {
    position: absolute;
    top: 0;
    bottom: 0px;
    left: 0px;
    right: 0px;
  }
  .area-modal-about ._modal-box ._page {
    display: none;
  }
  .block-about-modal {
    position: relative;
  }
  .block-about-modal ._row-header {
    height: 165px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-about-modal ._row-header ._image {
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translate(-50%, 0);
  }
  .block-about-modal ._row-header h2 {
    padding-top: 50px;
    font-weight: bold;
    font-size: 30px;
    text-align: center;
    color: #fff;
  }
  .block-about-modal ._row-body {
    position: absolute;
    top: 220px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    justify-content: space-between;
    width: 840px;
    margin: 0 auto;
  }
  .block-about-modal ._row-body ._image {
    width: 360px;
  }
  .block-about-modal ._row-body ._image img {
    width: 100%;
  }
  .block-about-modal ._row-body ._texts {
    width: 420px;
  }
  .block-about-modal ._row-body ._texts ._title {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    margin-bottom: 30px;
  }
  .block-atfirst-ataglance-mv ._row-image {
    position: relative;
  }
  .block-atfirst-ataglance-mv ._row-image ._image img {
    width: 100%;
    height: 580px;
    object-fit: cover;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts h1 {
    text-align: center;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts h1 span {
    margin-top: 20px;
    display: inline-block;
    background: #fff;
    padding: 20px 40px;
    font-weight: bold;
    font-size: 32px;
    letter-spacing: 0.2em;
    line-height: 35px;
    text-align: center;
  }
  .block-atfirst-ataglance-mv ._row-lead {
    padding: 60px 0;
  }
  .block-atfirst-ataglance-mv ._row-lead p {
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    text-align: center;
  }
  .block-atfirst-ataglance-wrap {
    background: #F8F3EF;
  }
  .block-atfirst-ataglance-01 {
    padding: 120px 0;
  }
  .block-atfirst-ataglance-01 ._items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .block-atfirst-ataglance-01 ._items > * {
    width: 530px;
  }
  .block-atfirst-ataglance-01 ._items > *:nth-child(n+3) {
    margin-top: 40px;
  }
  .block-atfirst-ataglance-01 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-01 ._item ._image img {
    width: 100%;
  }
  .block-atfirst-ataglance-01 ._item ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._t {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #ad0c18;
    background: url(/images/atfirst/ataglance/number/bg.png) left top no-repeat;
    background-size: contain;
    width: 320px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._num {
    position: absolute;
    top: 80px;
    left: 0px;
    right: 0px;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._num b {
    font-weight: bold;
    font-size: 90px;
    line-height: 135px;
    color: #ad0c18;
    margin: 0 10px;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._note {
    position: absolute;
    top: 210px;
    right: 20px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-align: right;
  }
  .block-atfirst-ataglance-02 {
    position: relative;
  }
  .block-atfirst-ataglance-02 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-02:before {
    content: "";
    display: block;
    position: absolute;
    top: 150px;
    left: 0px;
    right: 0px;
    bottom: -150px;
    background: #A9D0D0;
    transform: skew(0, -10deg);
  }
  .block-atfirst-ataglance-02 ._row-header h2 {
    margin: 0 auto;
    background: url(/images/atfirst/ataglance/history/cir.png) left top no-repeat;
    background-size: contain;
    width: 300px;
    height: 310px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.18em;
    line-height: 30px;
    text-align: center;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-02 ._row-body {
    padding: 80px 0;
    background: url(/images/atfirst/ataglance/history/bg.png) center bottom no-repeat;
    padding-bottom: 160px;
  }
  .block-atfirst-ataglance-02 ._items {
    width: 920px;
    margin: 0 auto;
  }
  .block-atfirst-ataglance-02 ._items li {
    height: 200px;
  }
  .block-atfirst-ataglance-02 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-02 ._item.is-left {
    margin-right: 50%;
  }
  .block-atfirst-ataglance-02 ._item.is-left ._yy {
    padding-right: 60px;
    text-align: right;
  }
  .block-atfirst-ataglance-02 ._item.is-left ._yy:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -10px;
    right: -2px;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
  }
  .block-atfirst-ataglance-02 ._item.is-left ._t {
    padding-right: 60px;
    text-align: right;
  }
  .block-atfirst-ataglance-02 ._item.is-left ._image img {
    position: absolute;
    top: 0px;
    right: 0px;
  }
  .block-atfirst-ataglance-02 ._item.is-right {
    margin-left: 50%;
  }
  .block-atfirst-ataglance-02 ._item.is-right ._yy {
    padding-left: 60px;
  }
  .block-atfirst-ataglance-02 ._item.is-right ._yy:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -10px;
    left: -2px;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
  }
  .block-atfirst-ataglance-02 ._item.is-right ._t {
    padding-left: 60px;
  }
  .block-atfirst-ataglance-02 ._item.is-right ._image img {
    position: absolute;
    top: 0px;
    left: 0px;
  }
  .block-atfirst-ataglance-02 ._item ._yy {
    font-weight: bold;
    font-size: 30px;
    text-align: left;
    color: #fff;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 2px solid #fff;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._item ._yy b {
    font-weight: bold;
    font-size: 90px;
  }
  .block-atfirst-ataglance-02 ._item ._t {
    font-weight: bold;
    font-size: 20px;
    color: #ad0c18;
    line-height: 1.4;
  }
  .block-atfirst-ataglance-02 ._item ._image {
    margin-top: 20px;
    margin-right: 60px;
    margin-left: 60px;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._box {
    width: 800px;
    margin: 0 auto;
    margin-top: 300px;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._box ._box-head {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 280px;
    border-radius: 20px;
    background: #ad0c18;
    padding: 12px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
  }
  .block-atfirst-ataglance-02 ._box ._box-body {
    margin: 0 auto;
    width: 780px;
    height: 300px;
    background: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-02 ._box ._box-body p {
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 2.25;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header,
  .block-atfirst-ataglance-04 ._row-header {
    position: relative;
    z-index: 10;
  }
  .block-atfirst-ataglance-03 ._row-header h2,
  .block-atfirst-ataglance-04 ._row-header h2 {
    margin: 0 auto;
    display: block;
    width: 300px;
    height: 300px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span {
    display: block;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(1),
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(1) {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.18em;
    line-height: 1.5;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(1) span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(1) span {
    color: #ad0c18;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2),
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) b,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) b {
    font-weight: bold;
    font-size: 70px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) span {
    color: #ad0c18;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) span.is-e,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) span.is-e {
    font-size: 50px;
  }
  .block-atfirst-ataglance-03 {
    position: relative;
    padding-bottom: 100px;
  }
  .block-atfirst-ataglance-03 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-03:before {
    content: "";
    display: block;
    position: absolute;
    top: 150px;
    left: 0px;
    right: 0px;
    bottom: -150px;
    background: #E1EFEF;
    transform: skew(0, -10deg);
  }
  .block-atfirst-ataglance-03 ._row-body {
    margin-top: 40px;
  }
  .block-atfirst-ataglance-03 ._items {
    display: flex;
    justify-content: space-between;
  }
  .block-atfirst-ataglance-03 ._items > * {
    width: 356px;
  }
  .block-atfirst-ataglance-03 ._items li:nth-child(1) {
    transform: translate(0, 100px);
  }
  .block-atfirst-ataglance-03 ._items li:nth-child(2) {
    transform: translate(0, 50px);
  }
  .block-atfirst-ataglance-03 ._item ._image {
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._item ._image img {
    width: 100%;
  }
  .block-atfirst-ataglance-03 ._item ._texts {
    line-height: 1.8;
    padding: 0 20px;
  }
  .block-atfirst-ataglance-03 ._item ._texts ._t1 {
    padding: 20px 0;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: bold;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-04 {
    position: relative;
    padding-bottom: 100px;
  }
  .block-atfirst-ataglance-04 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-04.is-A:before {
    content: "";
    display: block;
    position: absolute;
    top: 150px;
    left: 0px;
    right: 0px;
    bottom: -150px;
    background: #F1F5EA;
    transform: skew(0, -10deg);
  }
  .block-atfirst-ataglance-04 ._row-body {
    margin-top: 60px;
  }
  .block-atfirst-ataglance-04 ._items {
    display: flex;
    justify-content: space-between;
  }
  .block-atfirst-ataglance-04 ._items > * {
    width: 356px;
  }
  .block-atfirst-ataglance-04 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-04 ._item ._image {
    text-align: center;
  }
  .block-atfirst-ataglance-04 ._item ._image img {
    width: 260px;
  }
  .block-atfirst-ataglance-04 ._item ._texts {
    line-height: 1.8;
    padding: 40px 20px 0 20px;
  }
  .block-atfirst-ataglance-04 ._item ._texts ._t1 {
    position: absolute;
    top: 10px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0px;
    right: 0px;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: bold;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-04 ._item ._texts ._t1.is-B {
    top: 45px;
  }
  .block-atfirst-freshers-mv ._row-image {
    position: relative;
  }
  .block-atfirst-freshers-mv ._row-image ._image img {
    width: 100%;
    height: 580px;
    object-fit: cover;
  }
  .block-atfirst-freshers-mv ._row-image ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-freshers-mv ._row-image ._texts h1 {
    margin-top: 40px;
    width: 458px;
    background: #fff;
    padding: 20px 40px;
    font-weight: bold;
    font-size: 32px;
    letter-spacing: 0.2em;
    line-height: 35px;
    text-align: center;
  }
  .block-atfirst-freshers-mv ._row-lead {
    padding: 60px 0;
  }
  .block-atfirst-freshers-mv ._row-lead p {
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    text-align: center;
  }
  .block-atfirst-freshers-01 {
    padding: 120px 0;
    background: #F8F3EF;
  }
  .block-atfirst-freshers-01 img {
    width: 100%;
  }
  .block-atfirst-freshers-01 .is-mt {
    margin-top: 80px;
  }
  .block-atfirst-freshers-01 ._voice-item-cols {
    display: flex;
    justify-content: space-between;
  }
  .block-atfirst-freshers-01 ._voice-item-cols ._voice-item {
    flex: 1;
  }
  .block-atfirst-freshers-01 ._voice-item-cols ._voice-item ._voice {
    width: 440px;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head {
    display: flex;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head div:nth-child(1) {
    padding: 15px 0 0 0;
    font-weight: normal;
    font-size: 24px;
    color: #ad0c18;
    width: 80px;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head div:nth-child(2) {
    flex: 1;
    border-left: 2px solid #AD0C18;
    padding-left: 20px;
    font-weight: normal;
    font-size: 32px;
    letter-spacing: 0.05em;
    line-height: 56px;
    text-align: left;
    color: #000;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-body {
    margin-top: 40px;
    flex: 1;
    margin-left: 80px;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice {
    width: 990px;
  }
  /*

  ._text{
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    &.is-w{ color: #fff; }
    &.is-L{ font-size: 22px; }
    &.is-LL{ font-size: 24px; }
  }


  ._voice-q11{
    width: 870px;
    height: 895px;
    position:relative;
    background:url(/images/atfirst/freshers/q11/bg.png);
    background-size: cover;
    img{max-width: 100%;}
    ._t1{position: absolute;top: 86px;left: 181px;width : 152px;height : 36px;}
    ._t2{position: absolute;top: 113px;left: 481px;width : 302px;height : 24px;}
    ._t3{position: absolute;top: 231px;left: 97px;width : 270px;height : 80px;}
    ._t4{position: absolute;top: 235px;left: 542px;width : 172px;height : 29px;}
    ._t5{position: absolute;top: 403px;left: 251px;width : 152px;height : 36px;}
    ._t6{position: absolute;top: 369px;left: 600px;width : 149px;height : 52px;}
    ._t7{position: absolute;top: 532px;left: 88px;width : 224px;height : 52px;}
    ._t8{position: absolute;top: 538px;left: 492px;width : 205px;height : 24px;}
  }


  ._voice-q12{
    width: 870px;
    position:relative;
    background:url(/images/atfirst/freshers/q12/bg.png);
    background-size: cover;
    img{max-width: 100%;}
    &:after{
      display: block;
      content:"";
      padding-top:117.47%;
    }
    ._t1{position: absolute;top: 9.58%;left: 10.34%;width : 27.24%;height : 5.08%;}
    ._t2{position: absolute;top: 8.51%;left: 51.26%;width : 31.03%;height : 7.82%;}
    ._t3{position: absolute;top: 23.28%;left: 15.86%;width : 24.71%;height : 7.82%;}
    ._t4{position: absolute;top: 25.24%;left: 51.37%;width : 38.5%;height : 2.34%;}
    ._t5{position: absolute;top: 40.41%;left: 10.11%;width : 26.89%;height : 5.08%;}
    ._t6{position: absolute;top: 36.39%;left: 53.56%;width : 29.08%;height : 5.08%;}
    ._t7{position: absolute;top: 54.69%;left: 14.25%;width : 31.03%;height : 5.08%;}
    ._t8{position: absolute;top: 50.48%;left: 58.27%;width : 31.03%;height : 7.82%;}
    ._t9{position: absolute;top: 68.98%;left: 10%;width : 36.66%;height : 2.34%;}
    ._t10{position: absolute;top: 67.51%;left: 58.73%;width : 27.12%;height : 5.08%;}
  }
   */
  .block-atfirst-topmessage-mv {
    position: relative;
  }
  .block-atfirst-topmessage-mv ._image img {
    width: 100%;
    height: 820px;
    object-fit: cover;
  }
  .block-atfirst-topmessage-mv ._texts {
    position: absolute;
    top: 200px;
    left: 50%;
    color: #fff;
  }
  .block-atfirst-topmessage-mv ._texts h1 {
    width: 244px;
    height: 53px;
    background: #ad0c18;
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-topmessage-mv ._texts ._lead {
    margin-top: 50px;
    font-weight: normal;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 1.78;
  }
  .block-atfirst-topmessage-mv ._texts ._name {
    margin-top: 50px;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-topmessage-mv ._texts ._name span {
    padding-left: 10px;
    font-size: 24px;
  }
  .block-atfirst-topmessage-01 {
    padding: 80px 0;
    position: relative;
  }
  .block-atfirst-topmessage-01:before {
    content: "";
    display: block;
    position: absolute;
    top: 940px;
    left: 0px;
    right: 0px;
    height: 1060px;
    background: #f8f3ef;
    z-index: -1;
  }
  .block-atfirst-topmessage-01 .block-inner {
    position: relative;
    padding: 40px 0 0 40px;
  }
  .block-atfirst-topmessage-01 .block-inner:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    width: 480px;
    background: #AD0C18;
  }
  .block-atfirst-topmessage-01 ._cols {
    position: relative;
    display: flex;
  }
  .block-atfirst-topmessage-01 ._cols.is-last ._right {
    padding-bottom: 0;
  }
  .block-atfirst-topmessage-01 ._cols ._left {
    border-top: 1px solid #fff;
    color: #fff;
    width: 440px;
    padding: 40px 0 0 0;
  }
  .block-atfirst-topmessage-01 ._cols ._left p {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 40px;
  }
  .block-atfirst-topmessage-01 ._cols ._right {
    flex: 1;
    padding: 40px 0 160px 60px;
  }
  .block-atfirst-topmessage-01 ._cols ._image {
    width: 840px;
    margin-top: 60px;
    margin-left: -300px;
  }
  .block-atfirst-topmessage-01 ._cols ._image img {
    width: 100%;
  }
  body.page-works-business .area-wrapper {
    position: relative;
  }
  body.page-works-business .area-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    width: calc(50% - 300px);
    background: #f8f3ef;
    z-index: -1;
  }
  .block-works-business-mv {
    padding: 180px 0 80px 0;
  }
  .block-works-business-mv .block-inner {
    position: relative;
  }
  .block-works-business-mv ._image {
    width: 900px;
    height: 480px;
    margin-left: auto;
  }
  .block-works-business-mv ._image img {
    width: 100%;
  }
  .block-works-business-mv ._texts {
    position: absolute;
    top: -120px;
    left: 0px;
    width: 480px;
    height: 240px;
    background: rgba(173, 12, 24, 0.9);
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-works-business-01 {
    overflow: hidden;
    padding: 80px 0;
    position: relative;
  }
  .block-works-business-01 ._row-header {
    margin-left: calc(50% - 540px);
  }
  .block-works-business-01 ._row-header h2 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.2em;
    color: #ad0c18;
    border-bottom: 1px solid #AD0C18;
    padding-bottom: 20px;
  }
  .block-works-business-01 ._row-body {
    margin-top: 80px;
  }
  .block-works-business-01 ._row-body-inner {
    width: 780px;
    margin-left: auto;
  }
  .block-works-business-01 ._row-body-lead {
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 42px;
  }
  .block-works-business-01 ._boxA {
    margin-left: 50px;
    position: relative;
  }
  .block-works-business-01 ._boxA.is-A ._box-body {
    background: #f8f3ef;
  }
  .block-works-business-01 ._boxA.is-B ._box-head {
    background: #AD0C18;
  }
  .block-works-business-01 ._boxA.is-B ._box-body {
    border: 1px solid #AD0C18;
    padding: 60px 60px 60px 120px;
    color: #AD0C18;
  }
  .block-works-business-01 ._boxA.is-B ._box-body p {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .block-works-business-01 ._boxA ._box-head {
    position: absolute;
    top: -20px;
    left: -50px;
    right: 0px;
    width: 118px;
    background: #3c3c3c;
    font-family: "Noto Sans JP";
    font-weight: bold;
    padding: 10px 10px;
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .block-works-business-01 ._boxA ._box-body {
    padding: 40px 40px;
    border-radius: 10px;
  }
  .block-works-business-01 ._boxA ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .block-works-business-01 ._boxA ul li {
    flex: 1;
  }
  .block-works-business-01 ._boxA ul ._cir {
    width: 68px;
    height: 68px;
    background: transparent;
    border: 1px solid #ad0c18;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
  }
  .block-works-business-01 ._stepA {
    margin-top: 80px;
    margin-left: -240px;
  }
  .block-works-business-01 ._stepA li {
    position: relative;
  }
  .block-works-business-01 ._stepA li + li {
    margin-top: 50px;
  }
  .block-works-business-01 ._stepA li:nth-child(1):before {
    display: none;
  }
  .block-works-business-01 ._stepA li:before {
    content: "";
    position: absolute;
    top: -15px;
    left: 170px;
    width: 5px;
    height: 5px;
    margin-top: -10px;
    box-sizing: border-box;
    border: 10px solid transparent;
    border-top: 10px solid #3C3C3C;
    transform: scale(1, 1.4);
  }
  .block-works-business-01 ._stepA ._item {
    display: flex;
    align-items: center;
  }
  .block-works-business-01 ._stepA ._item ._title {
    width: 360px;
    height: 90px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 20px;
    line-height: 30px;
    text-align: center;
    color: #fff;
  }
  .block-works-business-01 ._stepA ._item ._texts {
    flex: 1;
    padding: 0 0 0 30px;
  }
  .block-works-business-01 ._stepA ._item ._texts p {
    margin: 0;
  }
  .block-works-business-01 ._headA {
    margin-top: 80px;
    margin-left: -240px;
    border: 1px solid #AD0C18;
    padding: 17px 0 17px 60px;
    font-size: 20px;
    background: #fff;
    letter-spacing: 0.05em;
    color: #ad0c18;
  }
  .block-works-business-01 ._headB {
    margin-top: 80px;
    margin-left: -120px;
    padding: 17px 0 17px 60px;
    font-size: 20px;
    background: #3C3C3C;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .block-works-business-01 ._headC {
    margin-top: 80px;
    position: relative;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 28px;
  }
  .block-works-business-01 ._headC:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -240px;
    width: 210px;
    height: 9px;
    background: #ad0c18;
  }
  .block-works-business-01 ._imageA {
    margin-top: 40px;
    margin-left: -120px;
  }
  .block-works-business-01 ._imageA ._cap {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .block-works-business-01 ._imageA ._image {
    margin-top: 10px;
  }
  .block-works-business-01 ._imageA img {
    width: 100%;
  }
  .block-works-business-01 ._timeline {
    margin-top: 60px;
    padding: 0 0 0 40px;
  }
  .block-works-business-01 ._timeline li {
    margin: 25px 0;
  }
  .block-works-business-01 ._timeline ._item {
    display: flex;
    line-height: 1.5;
  }
  .block-works-business-01 ._timeline ._item div:nth-child(1) {
    width: 50px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: right;
    color: #ad0c18;
  }
  .block-works-business-01 ._timeline ._item div:nth-child(2) {
    position: relative;
    padding-left: 90px;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #3c3c3c;
  }
  .block-works-business-01 ._timeline ._item div:nth-child(2):after {
    content: "";
    display: block;
    position: absolute;
    width: 50px;
    height: 1px;
    background: #ad0c18;
    position: absolute;
    top: 13px;
    left: 20px;
  }
  .block-works-business-01 ._listBusho {
    margin-top: 60px;
    margin-left: -240px;
  }
  .block-works-business-01 ._listBusho li + li {
    margin-top: 30px;
  }
  .block-works-business-01 ._listBusho ._item {
    display: flex;
    position: relative;
  }
  .block-works-business-01 ._listBusho ._item img {
    width: 100%;
  }
  .block-works-business-01 ._listBusho ._item ._image {
    width: 310px;
  }
  .block-works-business-01 ._listBusho ._item ._texts {
    padding: 10px 0 0 0;
    flex: 1;
    margin-left: 60px;
  }
  .block-works-business-01 ._listBusho ._item ._texts ._t1 {
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
  .block-works-business-01 ._listBusho ._item ._texts ._t1:after {
    content: "";
    display: block;
    width: 24px;
    margin: 15px 0;
    height: 1px;
    background: #ad0c18;
  }
  .mod-btn-interview {
    margin-top: 60px;
    transition-duration: 0.2s;
    display: block;
    text-decoration: none;
  }
  .mod-btn-interview:hover {
    opacity: 0.8;
  }
  .mod-btn-interview img {
    width: 100%;
  }
  .mod-btn-interview ._image {
    margin-top: -160px;
    width: 460px;
    height: 197px;
    margin-left: 260px;
  }
  .mod-btn-interview ._texts {
    width: 780px;
    height: 200px;
    background: #f8f3ef;
    padding: 30px 0 0 60px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .mod-btn-interview ._texts ._t1 {
    color: #3c3c3c;
    font-weight: bold;
    font-size: 16px;
  }
  .mod-btn-interview ._texts ._t2 {
    color: #3c3c3c;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .mod-btn-interview ._texts ._t3 {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .mod-btn-interview ._texts ._t3 {
    margin-top: 30px;
    width: 140px;
    border: 1px solid #ad0c18;
    text-align: center;
    padding: 3px 10px 5px 10px;
    position: relative;
    color: #AD0C18;
  }
  .mod-btn-interview ._texts ._t3:before {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    content: "";
    height: 5px;
    width: 5px;
    border: 1px solid #AD0C18;
    border-left-width: 0;
    border-top-width: 0;
    transform: translate(0, -50%) rotate(-45deg);
  }
  .block-works-salespoint-mv {
    padding-bottom: 50px;
  }
  .block-works-salespoint-mv ._image img {
    width: 100%;
    height: 825px;
    object-fit: cover;
  }
  .block-works-salespoint-mv ._texts {
    line-height: 1.8;
    height: 369px;
    background: rgba(248, 243, 239, 0.9);
    margin-left: calc(50% - 380px);
    position: relative;
    margin-top: -200px;
    padding: 110px 0 0 50px;
  }
  .block-works-salespoint-mv ._texts h1 {
    position: absolute;
    top: -170px;
    left: -150px;
    width: 480px;
    height: 240px;
    background: rgba(173, 12, 24, 0.9);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 0.2em;
    line-height: 2;
    text-align: center;
    color: #fff;
  }
  .block-works-salespoint-mv ._texts p {
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.75;
  }
  .block-works-salespoint-01 {
    padding: 80px 0 40px 0;
    position: relative;
  }
  .block-works-salespoint-01 ._row-header {
    position: relative;
    margin-left: 30px;
    margin-right: calc(50% - 540px);
  }
  .block-works-salespoint-01 ._row-header ._texts {
    line-height: 1.8;
    color: #ad0c18;
    position: relative;
  }
  .block-works-salespoint-01 ._row-header ._texts:after {
    content: "";
    display: block;
    position: absolute;
    top: 55px;
    left: 0px;
    right: 70px;
    height: 1px;
    background: #AD0C18;
  }
  .block-works-salespoint-01 ._row-header ._texts h2 {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.3em;
    line-height: 1.75;
  }
  .block-works-salespoint-01 ._row-header ._texts ._no {
    position: absolute;
    top: 0px;
    right: -10px;
    font-weight: normal;
    font-size: 60px;
    text-align: right;
  }
  .block-works-salespoint-01 ._row-header ._texts p {
    margin-top: 40px;
    font-weight: 500;
    font-size: 72px;
    letter-spacing: 0.15em;
    line-height: 1.75;
  }
  .block-works-salespoint-01 ._row-body {
    width: 780px;
    margin: 0 auto;
    margin-top: -40px;
  }
  .block-works-salespoint-01 ._row-body img {
    width: 100%;
  }
  .block-works-salespoint-01 ._row-body p {
    margin-top: 25px;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2;
    width: 600px;
  }
  .block-works-salespoint-01 ._row-body ._text-2 {
    margin-left: 300px;
  }
  .block-works-salespoint-01 ._row-body ._text-3 {
    margin-left: 150px;
    width: 600px;
  }
  .block-works-interviews-mv {
    padding: 140px 0 50px;
    background: #F8F3EF;
    margin: 0 auto;
  }
  .block-works-interviews-mv ._image {
    margin: 0 auto;
    width: 780px;
    height: 495px;
  }
  .block-works-interviews-mv ._image img {
    width: 100%;
  }
  .block-works-interviews-mv ._texts {
    margin-top: -70px;
    margin-left: calc(50% - 160px);
  }
  .block-works-interviews-mv ._texts p {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .block-works-interviews-01 {
    background: #F8F3EF;
    padding: 60px 0 100px 0;
  }
  .block-works-interviews-01 ._items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .block-works-interviews-01 ._items > * {
    width: 520px;
  }
  .block-works-interviews-01 ._items > *:nth-child(n+3) {
    margin-top: 40px;
  }
  .block-works-interviews-01 ._item {
    display: block;
    transition-duration: 0.2s;
  }
  .block-works-interviews-01 ._item:hover {
    opacity: 0.8;
  }
  .block-works-interviews-01 ._item ._image img {
    width: 100%;
  }
  .block-works-interviews-01 ._item ._texts {
    margin-top: 30px;
  }
  .block-works-interviews-01 ._item ._texts ._state {
    display: flex;
    align-items: center;
  }
  .block-works-interviews-01 ._item ._texts ._state span:nth-child(1) {
    font-weight: 500;
    font-size: 28px;
    letter-spacing: 0.05em;
    color: #ad0c18;
  }
  .block-works-interviews-01 ._item ._texts ._state span:nth-child(2) {
    margin-left: 20px;
    background: #fff;
    padding: 10px 20px;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #000;
  }
  .block-works-interviews-01 ._item ._texts ._t {
    margin-top: 20px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    text-align: left;
    color: #000;
    opacity: 0.8;
  }
  .block-works-detail-mv {
    position: relative;
  }
  .block-works-detail-mv ._image img {
    width: 100%;
  }
  .block-works-detail-mv ._texts {
    position: absolute;
    top: 3vw;
    left: 50%;
    width: 8vw;
    transform: translate(-50%, 0);
  }
  .block-works-detail-mv ._texts img {
    width: 100%;
  }
  .block-works-detail-mv ._texts.is-sales {
    left: 60%;
  }
  .block-works-detail-lead {
    margin-top: -14vw;
    position: relative;
  }
  .block-works-detail-lead:before {
    content: "";
    display: block;
    position: absolute;
    top: 70px;
    bottom: 0;
    left: 50%;
    width: 800px;
    transform: translate(-50%, 0);
    background: #f8f3ef;
    opacity: 0.9;
  }
  .block-works-detail-lead ._row-header {
    position: relative;
  }
  .block-works-detail-lead ._row-header h2 {
    width: 286px;
    background: #ad0c18;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    padding: 30px 0;
  }
  .block-works-detail-lead ._row-header h2 span:nth-child(1) {
    display: block;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
  }
  .block-works-detail-lead ._row-header h2 span:nth-child(2) {
    margin-top: 20px;
    display: inline-block;
    border: 1px solid #fff;
    padding: 10px 20px;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.05em;
  }
  .block-works-detail-lead ._row-body {
    position: relative;
    padding: 0 0 120px 0;
    margin-top: 40px;
  }
  .block-works-detail-lead ._row-body ._t1 {
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    text-align: center;
    color: #ad0c18;
  }
  .block-works-detail-lead ._row-body ._t2 {
    margin-top: 40px;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 32px;
    text-align: center;
  }
  .block-works-detail-lead ._row-body ._note {
    margin-top: 20px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    text-align: center;
  }
  .block-works-detail-lead ._row-body ._items {
    width: 865px;
    margin: 0 auto;
    margin-top: 80px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
  }
  .block-works-detail-lead ._row-body ._items > * {
    width: 360px;
  }
  .block-works-detail-lead ._row-body ._items:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(/images/works/interviews/cross.png) left top no-repeat;
    background-size: contain;
    width: 56px;
    height: 56px;
  }
  .block-works-detail-lead ._row-body ._item ._image img {
    width: 100%;
  }
  .block-works-detail-lead ._row-body ._item ._texts {
    margin-top: 30px;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._name {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.2em;
    color: #ad0c18;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._state {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._state {
    margin-top: 20px;
  }
  .block-works-detail-01 {
    position: relative;
    padding-bottom: 100px;
  }
  .block-works-detail-01:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 800px;
    transform: translate(-50%, 0);
    background: #f8f3ef;
    opacity: 0.9;
  }
  .block-works-detail-01 .block-inner {
    position: relative;
  }
  .block-works-detail-01 ._row-image {
    position: relative;
    margin-top: 80px;
  }
  .block-works-detail-01 ._row-image img {
    width: 100%;
  }
  .block-works-detail-01 ._row-image ._image {
    width: 800px;
  }
  .block-works-detail-01 ._row-image.is-A {
    padding-bottom: 80px;
  }
  .block-works-detail-01 ._row-image.is-A ._title {
    position: absolute;
    bottom: 0px;
    right: 0px;
  }
  .block-works-detail-01 ._row-image.is-B {
    padding-top: 80px;
  }
  .block-works-detail-01 ._row-image.is-B ._image {
    margin-left: auto;
  }
  .block-works-detail-01 ._row-image.is-B ._title {
    position: absolute;
    top: 0px;
    left: 0px;
  }
  .block-works-detail-01 ._title {
    width: 540px;
    background: #ad0c18;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    color: #fff;
    padding: 50px;
  }
  .block-works-detail-01 ._title.is-short {
    width: 460px;
  }
  .block-works-detail-01 ._row-talk {
    margin-top: 80px;
    width: 800px;
  }
  .block-works-detail-01 ._row-talk.is-right {
    margin-left: auto;
  }
  .block-works-detail-last {
    margin: 0 30px;
  }
  .block-works-detail-last img {
    width: 100%;
  }
  .mod-talk dl {
    display: flex;
  }
  .mod-talk dl + dl {
    margin-top: 30px;
  }
  .mod-talk dl dt {
    width: 80px;
    height: 40px;
    border: 1px solid #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 24.5px;
    text-align: center;
    color: #ad0c18;
  }
  .mod-talk dl dd {
    margin: 0;
    line-height: 1.8;
    flex: 1;
    padding: 0 0 0 60px;
  }
  .mod-talk ._note {
    text-indent: -2em;
    margin-left: 2em;
    margin-top: 10px;
    font-weight: normal;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .block-common-workstyle-mv {
    position: relative;
  }
  /* ----------------------------------------------------------
  block-workstyle-models-01
  ---------------------------------------------------------- */
  /* ----------------------------------------------------------
  block-workstyle-models-case
  ---------------------------------------------------------- */
  /* ----------------------------------------------------------
  .block-recruit-alumni-main
  ---------------------------------------------------------- */
  /* ----------------------------------------------------------
  .block-form
  ---------------------------------------------------------- */
  /* ----------------------------------------------------------
  .block-contact-form input forms
  ---------------------------------------------------------- */
}
@media print, screen and (min-width: 768px) and (min-width: 1401px) {
  .block-common-workstyle-mv ._bg {
    margin: 0 60px;
  }
}
@media print, screen and (min-width: 768px) {
  .block-common-workstyle-mv ._bg img {
    width: 100%;
    height: 420px;
    background-position: center 80%;
    object-fit: cover;
  }
  .block-common-workstyle-mv ._bg ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
  }
  .block-common-workstyle-mv ._bg ._texts span {
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.2em;
    line-height: 28px;
    padding: 0 20px 30px 20px;
    border-bottom: 1px solid #fff;
  }
  .block-common-workstyle-mv ._box {
    width: 1080px;
    height: 320px;
    margin: -180px auto 0 auto;
    display: flex;
  }
  .block-common-workstyle-mv ._box img {
    width: 100%;
  }
  .block-common-workstyle-mv ._box ._texts {
    width: 320px;
    height: 320px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-common-workstyle-mv ._box ._texts h1 {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.1em;
    line-height: 35px;
    text-align: center;
    color: #fff;
  }
  .block-common-workstyle-mv ._box ._image {
    flex: 1;
  }
  .block-common-workstyle-lead {
    padding: 60px 0;
    text-align: center;
  }
  .mod-title-workstyle:before {
    content: "";
    display: block;
    margin: 0 auto 25px auto;
    background: url(/images/workstyle/deco.png) left top no-repeat;
    background-size: contain;
    width: 100px;
    height: 100px;
  }
  .mod-title-workstyle h2 {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.2em;
    line-height: 32px;
    text-align: center;
    color: #ad0c18;
  }
  .block-workstyle-training-01 {
    padding: 40px 0 80px 0;
    position: relative;
  }
  .block-workstyle-training-01 ._row-body {
    margin-top: 50px;
  }
  .block-workstyle-training-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-training-01 ._row1 {
    width: 820px;
    margin: 0 auto;
  }
  .block-workstyle-training-01 ._row2 {
    width: 900px;
    margin: 0 auto;
    margin-top: 60px;
  }
  .block-workstyle-training-01 ._row2 table {
    width: 100%;
  }
  .block-workstyle-training-01 ._row2 table th {
    width: 40px;
    padding: 30px 20px 20px 20px;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 28px;
    color: #ad0c18;
    border-bottom: 1px solid #AD0C18;
  }
  .block-workstyle-training-01 ._row2 table td {
    padding: 30px 20px 20px 20px;
    font-weight: normal;
    font-size: 16px;
    line-height: 28px;
    border-bottom: 1px solid #AD0C18;
  }
  .block-workstyle-training-01 ._row3 {
    width: 820px;
    margin: 0 auto;
    margin-top: 60px;
  }
  .block-workstyle-training-01 ._row4 {
    width: 900px;
    margin: 0 auto;
    margin-top: 60px;
  }
  .block-workstyle-training-01 ._row4 ._note {
    padding: 20px;
  }
  .block-workstyle-training-01 ._flow {
    display: flex;
    justify-content: space-between;
  }
  .block-workstyle-training-01 ._flow ._flow-box {
    width: 420px;
    border: 1px solid #ad0c18;
  }
  .block-workstyle-training-01 ._flow ._flow-arrow {
    padding-top: 150px;
  }
  .block-workstyle-training-01 ._flow ._box ._h {
    background: #ad0c18;
    color: #fff;
    padding: 25px;
  }
  .block-workstyle-training-01 ._flow ._box ._h span {
    display: block;
  }
  .block-workstyle-training-01 ._flow ._box ._h span:nth-child(1) {
    font-weight: normal;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 28px;
    text-align: left;
  }
  .block-workstyle-training-01 ._flow ._box ._h span:nth-child(2) {
    margin-top: 10px;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
  }
  .block-workstyle-training-01 ._flow ._box ._b {
    padding: 25px;
  }
  .block-workstyle-training-01 ._flow ._box li {
    font-weight: normal;
    font-size: 14px;
    line-height: 21px;
    position: relative;
    padding: 5px 0 5px 30px;
  }
  .block-workstyle-training-01 ._flow ._box li:after {
    content: "";
    display: block;
    position: absolute;
    top: 15px;
    left: 0px;
    width: 20px;
    height: 1px;
    background: #AD0C18;
  }
  .block-workstyle-training-02 {
    padding: 40px 0 80px 0;
    position: relative;
  }
  .block-workstyle-training-02 ._row-body {
    margin-top: 60px;
  }
  .block-workstyle-training-02 ._items {
    display: flex;
    flex-wrap: wrap;
  }
  .block-workstyle-training-02 ._items li {
    width: calc(33.33% - 20px);
    margin-left: 30px;
  }
  .block-workstyle-training-02 ._items li:nth-child(3n+1) {
    margin-left: 0;
  }
  .block-workstyle-training-02 ._items li:nth-child(n+4) {
    margin-top: 50px;
  }
  .block-workstyle-training-02 ._item ._image img {
    width: 100%;
  }
  .block-workstyle-training-02 ._item ._texts {
    line-height: 1.8;
    margin: 0 0 0 10px;
  }
  .block-workstyle-training-02 ._item ._texts ._t1 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 21px;
    text-align: center;
    color: #ad0c18;
    padding: 25px 0;
  }
  .block-workstyle-career-01 {
    padding: 40px 0 80px 0;
    position: relative;
  }
  .block-workstyle-career-01 ._row-body {
    margin-top: 50px;
  }
  .block-workstyle-career-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-career-01 ._row1 {
    width: 820px;
    margin: 0 auto;
  }
  .block-workstyle-career-01 ._row2 {
    width: 1020px;
    margin: 0 auto;
    margin-top: 120px;
    display: flex;
    justify-content: space-between;
  }
  .block-workstyle-career-01 ._row2 div {
    width: 480px;
  }
  .block-common-models-mv {
    position: relative;
  }
  .block-common-models-mv ._bg img {
    width: 100%;
    height: 420px;
    background-position: center 80%;
    object-fit: cover;
  }
  .block-common-models-mv ._bg ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
  }
  .block-common-models-mv ._bg ._texts span {
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.2em;
    line-height: 28px;
    padding: 0 20px 30px 20px;
    border-bottom: 1px solid #fff;
  }
  .block-common-models-mv ._box {
    position: relative;
    width: 1080px;
    height: 320px;
    margin: -180px auto 0 auto;
  }
  .block-common-models-mv ._box img {
    width: 100%;
  }
  .block-common-models-mv ._box ._texts {
    position: absolute;
    top: 80px;
    left: 0px;
  }
  .block-common-models-mv ._box ._texts ._copy {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.1em;
    color: #3c3c3c;
    padding: 0 0 0 40px;
  }
  .block-common-models-mv ._box ._texts h1 {
    display: inline-block;
    margin-top: 30px;
    font-size: 18px;
    letter-spacing: 0.1em;
    color: #fff;
    padding: 10px 20px 10px 40px;
    background: #3c3c3c;
  }
  .block-common-models-mv ._box ._image {
    flex: 1;
  }
  .block-workstyle-models-persons {
    padding-top: 60px;
    padding-bottom: 130px;
  }
  .block-workstyle-models-persons img {
    width: 100%;
  }
  .block-workstyle-models-persons .block-inner {
    display: flex;
    flex-direction: column;
    gap: 60px;
  }
  .block-workstyle-models-persons .block-inner ._row1 {
    width: 820px;
    margin: 0 auto;
  }
  .block-workstyle-models-persons .block-inner ._row2 {
    margin-top: 90px;
  }
  .mod-workstyle-models-persons-items {
    display: flex;
    justify-content: space-between;
    gap: 45px 30px;
    flex-wrap: wrap;
  }
  .mod-workstyle-models-persons-items li {
    border-radius: 20px;
    width: 330px;
  }
  .mod-workstyle-models-persons-item {
    text-align: center;
  }
  .mod-workstyle-models-persons-item ._item-title {
    text-align: center;
    position: relative;
  }
  .mod-workstyle-models-persons-item ._item-title span {
    display: inline-block;
    background: #D34E4E;
    font-size: 12px;
    color: #fff;
    padding: 5px 30px;
  }
  .mod-workstyle-models-persons-item ._item-texts {
    margin-top: -10px;
    background: #f8f3ef;
    border-radius: 20px;
    padding: 25px 0 60px 0;
  }
  .mod-workstyle-models-persons-item ._label {
    display: inline-block;
    font-size: 12px;
    color: #777;
    background: #fff;
    margin: 0 auto;
    padding: 5px 20px;
    border-radius: 15px;
  }
  .mod-workstyle-models-persons-item ._copy {
    font-size: 16px;
    line-height: 1.75;
    font-weight: bold;
    color: #d34e4e;
    margin-top: 20px;
  }
  .mod-workstyle-models-persons-item ._item-image {
    width: 180px;
    margin: 0 auto;
    margin-top: -40px;
  }
  .mod-workstyle-models-persons-item.is-2 ._item-title span {
    background: #65a34f;
  }
  .mod-workstyle-models-persons-item.is-2 ._copy {
    color: #65a34f;
  }
  .mod-workstyle-models-persons-item.is-3 ._item-title span {
    background: #539bc1;
  }
  .mod-workstyle-models-persons-item.is-3 ._copy {
    color: #539bc1;
  }
  .mod-workstyle-models-persons-item.is-4 ._item-title span {
    background: #7f609f;
  }
  .mod-workstyle-models-persons-item.is-4 ._copy {
    color: #7f609f;
  }
  .mod-workstyle-models-persons-item.is-5 ._item-title span {
    background: #c3a013;
  }
  .mod-workstyle-models-persons-item.is-5 ._copy {
    color: #c3a013;
  }
  .mod-workstyle-models-persons-item.is-6 ._item-title span {
    background: #d65b8a;
  }
  .mod-workstyle-models-persons-item.is-6 ._copy {
    color: #d65b8a;
  }
  .block-workstyle-models-cases {
    display: flex;
    gap: 72px;
    flex-direction: column;
  }
  .block-workstyle-models-case {
    position: relative;
    padding-top: 90px;
    padding-bottom: 50px;
    background: #F8F3EF;
  }
  .block-workstyle-models-case img {
    width: 100%;
  }
  .block-workstyle-models-case ._inner {
    width: 1020px;
    margin: 0 auto;
  }
  .block-workstyle-models-case ._title {
    position: absolute;
    top: -10px;
    left: 0px;
    right: 0px;
    text-align: center;
  }
  .block-workstyle-models-case ._title span {
    display: inline-block;
    background: #d34e4e;
    padding: 6px 22px;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #fff;
    font-weight: bold;
  }
  .block-workstyle-models-case.is-2 ._title span {
    background-color: #65a34f;
  }
  .block-workstyle-models-case.is-3 ._title span {
    background-color: #539bc1;
  }
  .block-workstyle-models-case.is-4 ._title span {
    background-color: #7f609f;
  }
  .block-workstyle-models-case.is-5 ._title span {
    background-color: #c3a013;
  }
  .block-workstyle-models-case.is-6 ._title span {
    background-color: #d65b8a;
  }
  .block-workstyle-models-case ._row-header ._box {
    background: #fff;
    border-radius: 20px;
  }
  .block-workstyle-models-case ._row-body {
    margin-top: 45px;
    display: flex;
    gap: 20px;
  }
  .block-workstyle-models-case ._row-body ._cols {
    display: flex;
    justify-content: space-between;
    gap: 50px;
  }
  .block-workstyle-models-case ._row-body ._cols ._col-steps {
    flex: 1;
  }
  .block-workstyle-models-case ._row-body ._cols ._col-texts {
    flex: 1;
  }
  .mod-workstyle-models-case-prof {
    display: flex;
    justify-content: space-between;
    gap: 90px;
  }
  .mod-workstyle-models-case-prof ._col-image {
    padding: 25px 0 0;
    width: 240px;
  }
  .mod-workstyle-models-case-prof ._col-image ._names {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 0 10px 30px;
    border-bottom: 1px solid #ccc;
  }
  .mod-workstyle-models-case-prof ._col-image ._names ._label {
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.05em;
    color: #ccc;
    border: 1px solid #ccc;
    border-radius: 15px;
    padding: 4px 15px;
  }
  .mod-workstyle-models-case-prof ._col-image ._names ._name {
    font-size: 18px;
    line-height: 1.55;
    letter-spacing: 0.05em;
    color: #ccc;
    font-weight: bold;
  }
  .mod-workstyle-models-case-prof ._col-image ._img {
    width: 140px;
    margin: 0 0 0 auto;
    margin-top: 20px;
  }
  .mod-workstyle-models-case-prof ._col-texts {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .mod-workstyle-models-case-prof ._q {
    display: inline-block;
    font-weight: bold;
    width: 615px;
    margin-top: -20px;
    background: #ccc;
    padding: 20px 10px 15px 70px;
    border-radius: 10px;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #fff;
    position: relative;
  }
  .mod-workstyle-models-case-prof ._q span {
    display: block;
    position: absolute;
    top: 20px;
    left: 25px;
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
  }
  .mod-workstyle-models-case-prof ._a {
    padding: 20px 10px 15px 70px;
    font-size: 21px;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #ccc;
    position: relative;
  }
  .mod-workstyle-models-case-prof ._a span {
    display: block;
    position: absolute;
    top: 30px;
    left: 25px;
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names {
    border-color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names ._label {
    color: #D34E4E;
    border-color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names ._name {
    color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._q {
    background: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._a {
    color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names {
    border-color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names ._label {
    color: #65a34f;
    border-color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names ._name {
    color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._q {
    background: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._a {
    color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names {
    border-color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names ._label {
    color: #539bc1;
    border-color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names ._name {
    color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._q {
    background: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._a {
    color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names {
    border-color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names ._label {
    color: #7f609f;
    border-color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names ._name {
    color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._q {
    background: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._a {
    color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names {
    border-color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names ._label {
    color: #c3a013;
    border-color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names ._name {
    color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._q {
    background: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._a {
    color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names {
    border-color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names ._label {
    color: #d65b8a;
    border-color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names ._name {
    color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._q {
    background: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._a {
    color: #d65b8a;
  }
  .mod-workstyle-models-table {
    width: 100%;
  }
  .mod-workstyle-models-table th {
    border-top: 1px solid #ccc;
    padding: 10px 0;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    color: #ccc;
    width: 100px;
    position: relative;
  }
  .mod-workstyle-models-table th:before {
    content: "";
    position: absolute;
    bottom: 15px;
    left: 20px;
    width: 5px;
    height: 5px;
    margin-top: -5px;
    box-sizing: border-box;
    border: 5px solid transparent;
    border-top: 5px solid #3C3C3C;
    transform: scale(1.4, 2);
  }
  .mod-workstyle-models-table td {
    border-top: 1px solid #ccc;
    padding: 10px 0 48px 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #3C3C3C;
  }
  .mod-workstyle-models-table.is-1 th {
    color: #D34E4E;
    border-color: #D34E4E;
  }
  .mod-workstyle-models-table.is-1 td {
    border-color: #D34E4E;
  }
  .mod-workstyle-models-table.is-2 th {
    color: #65a34f;
    border-color: #65a34f;
  }
  .mod-workstyle-models-table.is-2 td {
    border-color: #65a34f;
  }
  .mod-workstyle-models-table.is-3 th {
    color: #539bc1;
    border-color: #539bc1;
  }
  .mod-workstyle-models-table.is-3 td {
    border-color: #539bc1;
  }
  .mod-workstyle-models-table.is-4 th {
    color: #7f609f;
    border-color: #7f609f;
  }
  .mod-workstyle-models-table.is-4 td {
    border-color: #7f609f;
  }
  .mod-workstyle-models-table.is-5 th {
    color: #c3a013;
    border-color: #c3a013;
  }
  .mod-workstyle-models-table.is-5 td {
    border-color: #c3a013;
  }
  .mod-workstyle-models-table.is-6 th {
    color: #d65b8a;
    border-color: #d65b8a;
  }
  .mod-workstyle-models-table.is-6 td {
    border-color: #d65b8a;
  }
  .block-workstyle-welfare-01 {
    padding: 40px 0 40px 0;
    position: relative;
  }
  .block-workstyle-welfare-01 ._row-body {
    margin-top: 80px;
  }
  .block-workstyle-welfare-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-welfare-01 ._lead {
    width: 840px;
    margin: 0 auto;
  }
  .block-workstyle-welfare-01 ._table {
    margin-top: 60px;
  }
  .block-common-recruit-mv {
    position: relative;
  }
  .block-common-recruit-mv ._bg img {
    width: 100%;
    height: 420px;
    object-fit: cover;
  }
  .block-common-recruit-mv ._box {
    position: relative;
    width: 720px;
    height: 270px;
    color: #fff;
    background: rgba(173, 12, 24, 0.9);
    margin: -150px auto 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: auto;
    lign: center;
  }
  .block-common-recruit-mv ._box ._sub {
    display: block;
    margin: 0 auto;
    width: 192px;
    height: 54px;
    border: 1px solid #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 68px;
  }
  .block-common-recruit-mv ._box h1 {
    margin-top: 40px;
    font-weight: normal;
    font-size: 45px;
    letter-spacing: 0.2em;
    line-height: 35px;
  }
  .block-common-recruit-links {
    margin-top: -120px;
    padding: 160px 0 120px 0;
    background: #F7F4F4;
  }
  .block-common-recruit-links ul {
    display: flex;
    justify-content: center;
  }
  .block-common-recruit-links ul li {
    width: 240px;
    margin: 0 20px;
  }
  .block-common-recruit-links a {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 35px;
    text-align: center;
    color: #3c3c3c;
    display: block;
    padding: 15px;
    border-bottom: 2px solid #AD0C18;
  }
  .block-recruit-requirement-01 {
    padding: 0 0 60px 0;
    position: relative;
  }
  .block-recruit-requirement-01.is-BG {
    background: #F8F3EF;
  }
  .block-recruit-requirement-01.is-last {
    padding: 0;
  }
  .block-recruit-requirement-01 ._row-header {
    background: #AD0C18;
    color: #fff;
  }
  .block-recruit-requirement-01 ._row-header h2 {
    font-weight: normal;
    font-size: 28px;
    letter-spacing: 0.2em;
    line-height: 101px;
    text-align: center;
    color: #fff;
  }
  .block-recruit-requirement-01 ._row-body {
    padding: 60px 0;
  }
  .block-recruit-requirement-01 ._set {
    display: flex;
  }
  .block-recruit-requirement-01 ._set + ._set {
    margin-top: 80px;
  }
  .block-recruit-requirement-01 ._set ._left {
    border-left: 2px solid #AD0C18;
    padding-left: 10px;
    width: 300px;
  }
  .block-recruit-requirement-01 ._set ._left h3 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: left;
  }
  .block-recruit-requirement-01 ._set ._left ._sub {
    margin-top: 10px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .block-recruit-requirement-01 ._set ._right {
    flex: 1;
  }
  .block-recruit-requirement-01 ._cols {
    display: flex;
    justify-content: space-between;
  }
  .block-recruit-requirement-01 ._cols li {
    width: 360px;
  }
  .block-recruit-requirement-01 ._title-set h4 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    line-height: 1.8;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #AD0C18;
  }
  .block-recruit-requirement-01 ._lead {
    text-align: center;
  }
  .block-recruit-requirement-01 ._step-list {
    margin-top: 60px;
  }
  .block-recruit-requirement-01 ._step-list li + li {
    margin-top: 30px;
  }
  .block-recruit-requirement-01 ._step {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f8f3ef;
  }
  .block-recruit-requirement-01 ._step ._left {
    color: #fff;
    width: 310px;
    background: #ad0c18;
    padding: 30px 30px 40px 40px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(1) {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #fff;
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(1) b {
    font-weight: normal;
    font-size: 40px;
    letter-spacing: 0.05em;
    padding-left: 10px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(2) {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
  }
  .block-recruit-requirement-01 ._step ._right.mod-doc {
    width: 770px;
    padding: 30px 40px;
  }
  .block-recruit-requirement-01 .row-renraku {
    width: 780px;
    margin: 0 auto;
  }
  .block-recruit-requirement-01 .row-renraku ._head {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #707070;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
    padding-left: 80px;
    position: relative;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-top {
    margin-top: 20px;
    padding-top: 20px;
    padding-bottom: 0px;
    border-bottom: none;
    border-top: 1px solid #707070;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-A:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(/images/recruit/requirement/i1.png) left top no-repeat;
    background-size: contain;
    width: 54px;
    height: 42px;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-B:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(/images/recruit/requirement/i5.png) left top no-repeat;
    background-size: contain;
    width: 54px;
    height: 42px;
    top: 20px;
  }
  .block-recruit-requirement-01 .row-renraku ._head span:nth-child(2) {
    border-left: 1px solid #707070;
  }
  .block-recruit-requirement-01 .row-renraku ._body ._maps {
    display: flex;
    justify-content: space-between;
  }
  .block-recruit-requirement-01 .row-renraku ._body ._maps > div {
    flex: 1;
  }
  .block-recruit-requirement-01 .row-renraku ._body ._train {
    display: flex;
    padding: 0 80px;
  }
  .block-recruit-requirement-01 .row-renraku ._map {
    position: relative;
    height: 50px;
    padding: 0 0 0 80px;
  }
  .block-recruit-requirement-01 .row-renraku ._map a {
    margin-top: 10px;
    display: block;
    font-weight: bold;
    text-decoration: underline;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
    text-align: left;
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._map:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(/images/recruit/requirement/i2.png) left top no-repeat;
    background-size: contain;
    width: 60px;
    height: 50px;
  }
  .block-recruit-requirement-01 .row-renraku ._tel {
    position: relative;
    height: 50px;
    padding: 10px 0 0 80px;
  }
  .block-recruit-requirement-01 .row-renraku ._tel:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(/images/recruit/requirement/i3.png) left top no-repeat;
    background-size: contain;
    width: 60px;
    height: 40px;
  }
  .block-recruit-requirement-01 .row-renraku ._mail {
    margin-top: 20px;
    position: relative;
    height: 50px;
    padding: 10px 0 0 80px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
    text-align: left;
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._mail a {
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._mail:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(/images/recruit/requirement/i4.png) left top no-repeat;
    background-size: contain;
    width: 60px;
    height: 40px;
  }
  .block-recruit-person-01 {
    margin-top: -120px;
    padding: 200px 0 120px 0;
    background: #F7F4F4;
  }
  .block-recruit-person-01 ._row-header {
    text-align: center;
  }
  .block-recruit-person-01 ._row-header ._t1 {
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 40px;
  }
  .block-recruit-person-01 ._row-header ._t2 {
    margin-top: 30px;
    font-weight: normal;
    font-size: 36px;
    letter-spacing: 0.05em;
    line-height: 63px;
    text-align: center;
    color: #ad0c18;
  }
  .block-recruit-person-01 ._row-header ._t3 {
    margin-top: 30px;
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 40px;
  }
  .block-recruit-person-01 ._row-body {
    margin-top: 120px;
  }
  .block-recruit-person-01 ._box {
    position: relative;
    margin: 0 auto;
    width: 742px;
    padding: 80px 100px 50px 100px;
    background: #fff;
  }
  .block-recruit-person-01 ._box ._title {
    position: absolute;
    top: -30px;
    left: 30px;
    width: 236px;
    height: 56px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
  }
  .block-recruit-person-01 ._box li {
    padding-left: 30px;
    margin-bottom: 10px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .block-recruit-person-01 ._box li:after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    left: 0px;
    width: 16px;
    height: 16px;
    background: #ad0c18;
  }
  .block-recruit-faq-01 {
    position: relative;
  }
  .block-recruit-faq-01.is-last {
    padding: 0;
  }
  .block-recruit-faq-01 ._row-header {
    background: #AD0C18;
    color: #fff;
  }
  .block-recruit-faq-01 ._row-header h2 {
    font-weight: normal;
    font-size: 28px;
    letter-spacing: 0.2em;
    line-height: 101px;
    text-align: center;
    color: #fff;
  }
  .block-recruit-faq-01 .block-inner {
    background: #F7F4F4;
  }
  .block-recruit-faq-01 ._row-body {
    padding: 60px 0 60px 0;
  }
  .block-recruit-faq-01 ._row-faq {
    width: 880px;
    margin: 0 auto;
  }
  .mod-faq {
    margin-top: 40px;
  }
  .mod-faq dd + dt {
    margin-top: 20px;
  }
  .mod-faq b {
    color: red;
  }
  .mod-faq ._q {
    cursor: pointer;
    border-top: 1px solid #AD0C18;
    padding: 25px 20px 20px 80px;
    position: relative;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .mod-faq ._q:after {
    content: "Q";
    display: block;
    position: absolute;
    top: 10px;
    left: 20px;
    font-weight: 500;
    font-size: 36px;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-faq ._q:before {
    content: "";
    display: block;
    position: absolute;
    top: 30px;
    right: 20px;
    background: url(/common/images/mod-faq/arrow.png) left top no-repeat;
    background-size: contain;
    width: 18px;
    height: 16px;
  }
  .mod-faq ._q.js-toggle-open:before {
    background-image: url(/common/images/mod-faq/arrow_on.png);
  }
  .mod-faq ._a {
    padding: 20px 40px 40px 100px;
    margin: 0;
    position: relative;
  }
  .mod-faq ._a:after {
    content: "A";
    display: block;
    position: absolute;
    top: 20px;
    left: 20px;
    font-weight: 500;
    font-size: 36px;
    letter-spacing: 0.05em;
    color: #AD0C18;
  }
  body.page-recruit-alumni {
    background-color: #F7F4F4;
  }
  .block-common-alumni-mv {
    position: relative;
  }
  .block-common-alumni-mv ._bg img {
    width: 100%;
    height: 420px;
    object-fit: cover;
  }
  .block-common-alumni-mv ._t {
    position: absolute;
    top: 50px;
    left: 20px;
    font-size: 120px;
    font-weight: bold;
    line-height: 1.16;
    letter-spacing: 0.12em;
    color: #e9e9e9;
  }
  .block-common-alumni-mv ._box {
    position: relative;
    width: 720px;
    height: 270px;
    color: #fff;
    background: rgba(173, 12, 24, 0.9);
    border-radius: 100px 0;
    margin: -150px auto 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: auto;
    lign: center;
  }
  .block-common-alumni-mv ._box ._sub {
    display: block;
    margin: 0 auto;
    width: 192px;
    height: 54px;
    border: 1px solid #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 68px;
  }
  .block-common-alumni-mv ._box h1 {
    margin-top: 40px;
    font-weight: normal;
    font-size: 45px;
    letter-spacing: 0.2em;
    line-height: 35px;
  }
  .block-recruit-alumni-main {
    padding: 120px 0 80px;
    position: relative;
  }
  .block-recruit-alumni-main ._inner {
    width: 820px;
    margin: 0 auto;
  }
  .block-recruit-alumni-main ._row-body {
    margin-top: 40px;
  }
  .block-recruit-alumni-main ._btns {
    margin-top: 60px;
    text-align: center;
  }
  .block-recruit-alumni-main.is-last {
    padding-bottom: 200px;
  }
  .mod-title-alumni:before {
    content: "";
    display: block;
    margin: 0 auto 25px auto;
    background: url(/images/recruit/alumni/icon.png) left top no-repeat;
    background-size: contain;
    width: 75px;
    height: 75px;
  }
  .mod-title-alumni h2 {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.2em;
    line-height: 32px;
    text-align: center;
    color: #ad0c18;
  }
  .mod-li.is-alumni li {
    position: relative;
    border-bottom: 1px dashed #AD0C18;
    padding: 20px 20px 20px 40px;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-li.is-alumni li:after {
    content: "";
    display: block;
    position: absolute;
    top: 22px;
    left: 0px;
    width: 20px;
    height: 20px;
    border: 2px solid #AD0C18;
  }
  .mod-btn.is-entry {
    background-color: #AD0C18;
    width: 570px;
    height: 120px;
    font-size: 28px;
    text-align: center;
    letter-spacing: 0.2em;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
  }
  .mod-btn.is-entry span {
    position: relative;
  }
  .mod-btn.is-entry span:after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    right: -40px;
    background: url(/common/images/icon/icon_arrow.png) left top no-repeat;
    background-size: contain;
    width: 26px;
    height: 18px;
  }
  .mod-faq2 {
    margin-top: 10px;
    background-color: #fff;
  }
  .mod-faq2 dd + dt {
    margin-top: 20px;
  }
  .mod-faq2 ._q {
    cursor: pointer;
    border-bottom: 1px dashed #AD0C18;
    padding: 25px 20px 20px 80px;
    position: relative;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .mod-faq2 ._q:after {
    content: "Q";
    display: block;
    position: absolute;
    top: 2px;
    left: 30px;
    font-weight: 500;
    font-size: 36px;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-faq2 ._a {
    padding: 20px 40px 40px 80px;
    margin: 0;
    position: relative;
  }
  .mod-faq2 ._a:after {
    content: "A";
    display: block;
    position: absolute;
    top: 20px;
    left: 30px;
    font-weight: 500;
    font-size: 36px;
    letter-spacing: 0.05em;
    color: #AD0C18;
  }
  .mod-faq2 a {
    color: #AD0C18;
  }
  .block-form {
    color: #444D67;
    padding: 120px 0 80px 0;
  }
  .block-form a {
    color: #444D67;
  }
  .block-form ._inner {
    width: 900px;
    margin: 0 auto;
  }
  .block-form h3 {
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    line-height: 1.33;
    letter-spacing: 0.2em;
    color: #3c3c3c;
    margin: 30px 0 20px 0;
  }
  .block-form ._box {
    background-color: #fff;
    padding: 50px 120px 30px 120px;
  }
  .block-form ._w50 {
    width: 50px;
  }
  .block-form ._w60 {
    width: 60px;
  }
  .block-form ._w70 {
    width: 70px;
  }
  .block-form ._w80 {
    width: 80px;
  }
  .block-form ._w90 {
    width: 90px;
  }
  .block-form ._w100 {
    width: 100px;
  }
  .block-form ._w200 {
    width: 200px;
  }
  .block-form ._w400 {
    width: 400px;
  }
  .block-form ._w10p {
    width: calc(10% - 10px);
  }
  .block-form ._w20p {
    width: calc(20% - 10px);
  }
  .block-form ._w30p {
    width: calc(30% - 10px);
  }
  .block-form ._w45p {
    width: calc(45% - 10px);
  }
  .block-form ._w40p {
    width: calc(40% - 10px);
  }
  .block-form ._w50p {
    width: calc(50% - 10px);
  }
  .block-form ._w60p {
    width: calc(60% - 10px);
  }
  .block-form ._w70p {
    width: calc(70% - 10px);
  }
  .block-form ._w80p {
    width: calc(80% - 10px);
  }
  .block-form ._w90p {
    width: calc(90% - 10px);
  }
  .block-form ._w100p {
    width: 100%;
  }
  .block-form {
    /* ---------- table ---------- ---------- */
    /* ---------- misc ---------- ---------- */
  }
  .block-form table._form-row-table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin: 10px 0;
  }
  .block-form table._form-row-table p {
    margin: 0;
  }
  .block-form table._form-row-table th {
    position: relative;
    display: block;
    padding: 0px 0 15px 40px;
  }
  .block-form table._form-row-table td {
    position: relative;
    display: block;
    padding: 0px 0 25px 0;
  }
  .block-form table._form-row-confirm {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin: 10px 0;
  }
  .block-form table._form-row-confirm p {
    margin: 0;
  }
  .block-form table._form-row-confirm th {
    position: relative;
    border-bottom: 1px solid #E9E9E9;
    padding: 30px 0 15px 0;
    font-size: 16px;
    color: #837F7F;
  }
  .block-form table._form-row-confirm td {
    position: relative;
    border-bottom: 1px solid #E9E9E9;
    padding: 30px 0 15px 0;
    font-size: 16px;
  }
  .block-form ._row {
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .block-form ._row.is-fit {
    display: flex;
    justify-content: space-between;
  }
  .block-form ._row._row-error {
    color: #E50000;
    background: #ffe;
    font-size: 85%;
  }
  .block-form ._row._row-error {
    display: none;
  }
  .block-form ._row._row-note {
    color: #888;
    font-size: 16px;
  }
  .block-form ._row span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
  }
  .block-form ._row span._col + ._col {
    margin-left: 5px;
  }
  .block-form ._note {
    font-size: 12px;
    line-height: 1;
    color: #3c3c3c;
  }
  .block-form ._req {
    display: inline-block;
    border: 1px solid #E50000;
    color: #E50000;
    font-weight: normal;
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 3px;
    font-size: 12px;
  }
  .block-form ._not-req {
    display: inline-block;
    background-color: #E9E9E9;
    color: #837F7F;
    font-weight: normal;
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 4px;
    font-size: 12px;
  }
  .block-form ._btn-post {
    padding: 10px 20px;
    margin: 5px 0;
    background: #888;
    color: #fff;
    text-decoration: none;
    transition-duration: 0.2s;
    cursor: pointer;
  }
  .block-form ._btn-post:hover {
    background: #666;
  }
  .block-form ._form-row-btns-comfirm {
    margin: 40px 0;
  }
  .block-form ._form-row-btns-comfirm ._btns {
    display: flex;
    gap: 10px;
    flex-direction: column;
    align-items: center;
  }
  .block-form ._form-row-btns-comfirm ._btn-send {
    position: relative;
    text-align: center;
    text-decoration: none;
    padding: 20px;
    border: none;
    border-radius: 10px;
    display: block;
    width: 320px;
    font-size: 16px;
    color: #fff;
    background: #AD0C18;
    cursor: pointer;
  }
  .block-form ._form-row-btns-comfirm ._btn-send:hover {
    opacity: 0.8;
  }
  .block-form ._form-row-btns-comfirm ._btn-back {
    position: relative;
    text-align: center;
    text-decoration: none;
    padding: 20px;
    border: none;
    border-radius: 10px;
    display: block;
    width: 320px;
    background: #F7F4F4;
    font-size: 16px;
    cursor: pointer;
  }
  .block-form ._form-row-btns-comfirm ._btn-back:hover {
    background: #ddd;
  }
  .block-form ._form-row-btns {
    margin: 40px 0 60px 0;
    text-align: center;
  }
  .block-form ._form-row-btns a {
    text-decoration: underline;
  }
  .block-form ._form-row-btns ._btns {
    padding: 50px 0;
  }
  .block-form ._form-row-btns ._btn-send {
    position: relative;
    text-align: center;
    border: none;
    outline: none;
    color: #fff;
    text-decoration: none;
    transition-duration: 0.2s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background: #AD0C18;
    border-radius: 0;
    font-size: 28px;
    letter-spacing: 0.2em;
    width: 570px;
    height: 120px;
    margin: 5px 0;
    display: inline-block;
    background-image: url(/common/images/icon/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: right 40px center;
    background-size: 26px 18px;
    pointer-events: none;
    background: #ddd;
  }
  .block-form ._form-row-btns ._btn-send:hover {
    opacity: 0.8;
  }
  .block-form ._form-row-btns ._btn-send.is-active {
    background: #AD0C18;
    pointer-events: auto;
  }
  .block-form ._form-row-thanks {
    text-align: center;
    padding: 30px 0 60px 0;
  }
  .block-form ._form-row-thanks p {
    font-size: 16px;
    line-height: 1.75;
  }
  .block-form {
    /* ---------- input,textarea ---------- ---------- */
    /* ---------- radio, checkbox ---------- ---------- */
  }
  .block-form input[type=text],
  .block-form input[type=number],
  .block-form textarea,
  .block-form select {
    font-size: 16px;
  }
  .block-form input[type=text]::placeholder,
  .block-form input[type=number]::placeholder,
  .block-form textarea::placeholder,
  .block-form select::placeholder {
    font-size: 16px;
  }
  .block-form input[type=text],
  .block-form input[type=number],
  .block-form textarea,
  .block-form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #E9E9E9;
    border-radius: 0;
    width: calc(100% - 12px);
    padding: 14px 5px;
    background: #F7F4F4;
    vertical-align: top;
  }
  .block-form input[type=text]._error,
  .block-form input[type=number]._error,
  .block-form textarea._error,
  .block-form select._error {
    background: #f7e9eb;
  }
  .block-form input[type=text]:focus,
  .block-form input[type=number]:focus,
  .block-form textarea:focus,
  .block-form select:focus {
    background: #F7F4F4;
    border: 1px solid #837F7F;
  }
  .block-form input[type=text].is-error,
  .block-form input[type=number].is-error,
  .block-form textarea.is-error,
  .block-form select.is-error {
    border: 1px solid #E50000;
  }
  .block-form select {
    width: 100%;
  }
  .block-form input::-webkit-input-placeholder,
  .block-form textarea::-webkit-input-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form input:-ms-input-placeholder,
  .block-form textarea:-ms-input-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form input::-moz-placeholder,
  .block-form textarea::-moz-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form select {
    padding-right: 30px;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAGCAYAAAAPDoR2AAAAU0lEQVQImWXMsRFAQBhE4c+NlrRwiWpkciqgAzVQjQbEssskvxlzNtl982a2yTnv6P1zJAwolSgYEk6slVxwpoAJV+wLM7zyxhh7DNZ+rjZ00eABf7EPZ13p3eYAAAAASUVORK5CYII=");
    background-size: 8px 8px;
    background-repeat: no-repeat;
    background-position: right 10px top 50%;
  }
  .block-form select::-ms-expand {
    display: none;
  }
  .block-form textarea {
    resize: none;
    height: 200px;
  }
  .block-form ._list li {
    display: inline-block;
    padding: 0 20px 0 0;
  }
  .block-form ._list-radio label,
  .block-form ._list-checkbox label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: inline-block;
    transition-duration: 0.2s;
    line-height: 1.4;
    cursor: pointer;
  }
  .block-form ._list-radio label:hover,
  .block-form ._list-checkbox label:hover {
    opacity: 0.8;
  }
  .block-form ._list-radio label {
    margin: 5px 0;
  }
  .block-form ._list-radio label:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    margin-top: -12px;
    width: 18px;
    height: 18px;
    background: #fff;
    border-radius: 2px;
  }
  .block-form ._list-radio label:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 5px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    opacity: 0;
    z-index: 10;
  }
  .block-form ._list-radio label:after {
    border: 2px solid #ddd;
  }
  .block-form ._list-radio label:before {
    background: #888;
  }
  .block-form ._list-radio input[type=radio] {
    display: none;
  }
  .block-form ._list-radio input[type=radio]:checked + label:before {
    opacity: 1;
  }
  .block-form ._list-radio label:before {
    border-radius: 50%;
  }
  .block-form ._list-radio label:after {
    border-radius: 50%;
  }
  .block-form ._list-checkbox label {
    margin: 5px 0;
  }
  .block-form ._list-checkbox label:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 4px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border-radius: 1px;
  }
  .block-form ._list-checkbox label:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    margin-top: -11px;
    width: 16px;
    height: 16px;
    border-radius: 2px;
  }
  .block-form ._list-checkbox label:after {
    background: #fff;
  }
  .block-form ._list-checkbox label:before {
    border: 2px solid #ddd;
    background: #fff;
  }
  .block-form ._list-checkbox input[type=checkbox] {
    display: none;
  }
  .block-form ._list-checkbox input[type=checkbox]:checked + label:after {
    background: #888;
  }
  .block-form ._test {
    margin: 30px;
    padding: 20px;
    border: 1px solid red;
    color: red;
  }
  .block-form ._test input {
    margin: 10px;
  }
}
@media screen and (max-width: 767px) {
  .block-common-next {
    padding: 55px 20px 75px 20px;
    background-size: cover;
    position: relative;
  }
  .block-common-next img {
    width: 100%;
  }
  .block-common-next ._item {
    display: block;
    margin: 0 auto;
    background: #AD0C18;
    position: relative;
    transition-duration: 0.2s;
  }
  .block-common-next ._item:hover {
    opacity: 0.8;
  }
  .block-common-next ._item:after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 2px;
    background: url(/common/images/next/text.png) left top no-repeat;
    background-size: contain;
    width: 30px;
    height: 160px;
  }
  .block-common-next ._item ._image {
    margin-left: 65px;
  }
  .block-common-next ._item ._texts {
    position: absolute;
    bottom: 5px;
    left: 50px;
    right: 5px;
    padding: 15px 40px 15px 15px;
    background: #fff;
  }
  .block-common-next ._item ._texts:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0, -50%);
    background: url(/common/images/next/arrow.png) left top no-repeat;
    background-size: contain;
    width: 24px;
    height: 16px;
  }
  .block-common-next ._item ._texts ._t1 {
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .block-index-init {
    position: fixed;
    top: 0px;
    right: 0px;
    width: 100%;
    bottom: 0px;
    background: #fff;
    z-index: 200;
    transition-duration: 0.6s;
    transition-timing-function: ease-out;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  body.is-index-init3 .block-index-init {
    width: 0%;
  }
  .block-index-init ._logo {
    left: 45px;
    width: 250px;
    transition-duration: 0.8s;
    opacity: 0;
    transform: translate(0, 20px);
  }
  .block-index-init ._logo img {
    width: 100%;
  }
  body.is-index-init .block-index-init ._logo {
    opacity: 1;
    transform: translate(0, 0);
  }
  body.is-index-init2 .block-index-init ._logo {
    transition-duration: 0.4s;
    opacity: 0;
  }
  .block-index-visual {
    position: relative;
    background: #000;
    width: 100%;
    overflow: hidden;
  }
  .block-index-visual ._texts {
    position: relative;
    height: calc(100vh - 140px);
    margin: 0 auto;
    z-index: 10;
  }
  .block-index-visual ._texts ._item {
    position: absolute;
    bottom: 180px;
    left: 20px;
    right: 0;
    opacity: 0;
    transition-duration: 0.5s;
  }
  .block-index-visual ._texts ._item.js-show {
    opacity: 1;
    transition-duration: 1s;
    transition-delay: 1s;
  }
  .block-index-visual ._texts ._item ._t1 > span {
    margin-top: 7px;
    display: inline-block;
    position: relative;
  }
  .block-index-visual ._texts ._item ._t1 > span span {
    display: block;
    padding: 7px 5px 0 5px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 1;
  }
  .block-index-visual ._texts ._item ._t1 > span:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #fff;
  }
  .block-index-visual ._texts ._item ._t2 {
    margin-top: 10px;
  }
  .block-index-visual ._texts ._item ._t2 > span {
    margin-top: 2px;
    display: inline-block;
    position: relative;
    background: #AD0C18;
    color: #fff;
    padding: 2px;
    font-weight: normal;
    font-size: 10px;
  }
  .block-index-visual ._visuals {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #000;
  }
  .block-index-visual ._visuals ._item {
    opacity: 0;
    position: absolute;
    top: 0px;
    left: -100vw;
    width: 100vw;
    bottom: 0px;
    transition-duration: 1s;
    transition-timing-function: ease-out;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  .block-index-visual ._visuals ._item ._item-inner {
    width: 100%;
    height: 100%;
    transform-origin: 0.5 0.5;
    transition-duration: 6s;
    transition-timing-function: linear;
    background-position: center center;
    background-size: cover;
  }
  .block-index-visual ._visuals ._item.js-front {
    z-index: 2;
  }
  .block-index-visual ._visuals ._item.js-show {
    opacity: 1;
    left: 0;
  }
  .block-index-visual ._visuals ._item.js-zooming {
    width: 100%;
  }
  .block-index-visual ._visuals ._item.js-zooming ._item-inner {
    transform: scale(1.1, 1.1);
  }
  .block-index-visual ._visuals ._item-1 ._item-inner {
    background-image: url(/images/index/mv/sp/p1.jpg);
  }
  .block-index-visual ._visuals ._item-2 ._item-inner {
    background-image: url(/images/index/mv/sp/p2.jpg);
  }
  .block-index-visual ._visuals ._item-3 ._item-inner {
    background-image: url(/images/index/mv/sp/p3.jpg);
  }
  .block-index-visual ._visuals ._item-4 ._item-inner {
    background-image: url(/images/index/mv/sp/p4.jpg);
  }
  .block-index-visual ._visuals ._item-5 ._item-inner {
    background-image: url(/images/index/mv/sp/p5.jpg);
  }
  .block-index-visual ._logo {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 230px;
    z-index: 20;
  }
  .block-index-visual ._logo img {
    width: 100%;
  }
  .block-index-visual ._news {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 10px;
    z-index: 20;
  }
  .block-index-visual ._news h2 {
    position: absolute;
    top: -13px;
    left: 2%;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #f8f3ef;
  }
  .block-index-visual ._news ._body {
    padding: 8px 10px 4px 10px;
    background-color: #fff;
  }
  .mod-news.is-top a {
    color: #000;
    text-decoration: underline;
  }
  .mod-news.is-top th {
    display: block;
    font-weight: bold;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-news.is-top td {
    display: block;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .block-index-atfirst {
    position: relative;
  }
  .block-index-atfirst:before {
    content: "";
    display: block;
    height: 160px;
    background: url(/images/index/atfirst/bg.jpg) center center no-repeat;
    background-size: 100% auto;
  }
  .block-index-atfirst ._inner {
    background: rgba(173, 12, 24, 0.85);
  }
  .block-index-atfirst ._row-header {
    padding: 25px 0 0 20px;
    position: relative;
  }
  .block-index-atfirst ._row-body {
    margin-top: 20px;
    position: relative;
    padding: 20px 20px 30px 20px;
  }
  .block-index-atfirst ._items li + li {
    margin-top: 5px;
  }
  .block-index-atfirst ._item {
    transition-duration: 0.2s;
    display: block;
    background: #fff;
    display: flex;
  }
  .block-index-atfirst ._item:hover {
    opacity: 0.8;
  }
  .block-index-atfirst ._item ._image {
    flex: 1;
  }
  .block-index-atfirst ._item ._image img {
    width: 100%;
    height: 80px;
    object-fit: cover;
  }
  .block-index-atfirst ._item ._btn {
    flex: 1;
    display: flex;
    align-items: center;
    padding-left: 20px;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    color: #3c3c3c;
  }
  .block-index-atfirst ._btn_movie {
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 160px;
    height: 160px;
  }
  .block-index-atfirst ._btn_movie img {
    width: 100%;
  }
  .block-index-works {
    position: relative;
    margin: 0 0 20px 0;
  }
  .block-index-works:before {
    content: "";
    display: block;
    background: url(/images/index/works/bg_sp.jpg) center top no-repeat;
    background-size: cover;
    height: 320px;
  }
  .block-index-works .block-inner {
    margin: -160px 10px 10px 10px;
    background: rgba(248, 243, 239, 0.9);
    padding: 20px;
  }
  .block-index-works ._row-body {
    margin-top: 30px;
  }
  .block-index-works ._t {
    display: none;
  }
  .block-index-works ._set {
    display: block;
    margin-top: 10px;
  }
  .block-index-works ._set ._text {
    display: block;
    text-align: center;
  }
  .block-index-works ._set ._text ._btn {
    margin: -25px auto 0 auto;
  }
  .block-index-workstyle {
    position: relative;
    padding: 0 0 40px 0;
    background: #F8F3EF;
  }
  .block-index-workstyle:before {
    content: "";
    display: block;
    background: url(/images/index/workstyle/bg_sp.jpg) center top no-repeat;
    background-size: cover;
    height: 390px;
  }
  .block-index-workstyle .block-inner {
    margin: -240px 10px 10px 10px;
    background: white;
    padding: 20px;
  }
  .block-index-workstyle ._items {
    margin-top: 40px;
  }
  .block-index-workstyle ._items li + li {
    margin-top: 30px;
  }
  .block-index-workstyle ._item {
    display: block;
    position: relative;
  }
  .block-index-workstyle ._item ._texts {
    display: block;
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: -20px;
  }
  .block-index-workstyle ._item ._texts ._btn {
    margin: 0 auto 0 auto;
  }
  .block-index-recruit:before {
    content: "";
    display: block;
    height: 200px;
    background: url(/images/index/recruit/bg.jpg) center center no-repeat;
    background-size: cover;
  }
  .block-index-recruit ._box {
    padding: 40px;
    background: white;
  }
  .block-index-recruit ._row-header {
    text-align: center;
  }
  .block-index-recruit ._row-header h2 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.15em;
  }
  .block-index-recruit ._row-body {
    margin-top: 30px;
  }
  .block-index-recruit h3 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.15em;
    text-align: center;
    margin: 40px 0 20px 0;
  }
  .block-index-recruit ._items {
    width: 220px;
    margin: 0 auto;
  }
  .block-index-recruit ._items li + li {
    margin-top: 10px;
  }
  .block-index-recruit ._item.mod-index-btn {
    text-align: center;
    line-height: 1.4;
  }
  .mod-index-head.is-wh {
    color: #fff;
  }
  .mod-index-head h2 {
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.15em;
    line-height: 1.6;
    text-align: left;
  }
  .mod-index-head p {
    margin-top: 20px;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.7;
  }
  .mod-index-btn {
    position: relative;
    width: 220px;
    height: 50px;
    background: #fff;
    color: #3c3c3c;
    display: flex;
    padding-left: 15px;
    font-size: 14px;
    font-weight: bold;
    align-items: center;
  }
  .mod-index-btn.is-center {
    justify-content: center;
    padding-left: 0;
  }
  .mod-index-btn.is-line {
    background: transparent;
    border: 1px solid #ad0c18;
    width: 220px;
    height: 60px;
  }
  .mod-index-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0, -50%);
    background: url(/images/index/arrow.png) left top no-repeat;
    background-size: contain;
    width: 19.2px;
    height: 12.8px;
  }
  .block-atfirst-about-mv {
    position: relative;
  }
  .block-atfirst-about-mv ._image img {
    width: 100%;
  }
  .block-atfirst-about-mv h1 {
    position: absolute;
    top: 20px;
    left: 50%;
    text-align: center;
    width: 200px;
    transform: translate(-50%, 0);
  }
  .block-atfirst-about-mv h1 span {
    margin-top: 10px;
    display: inline-block;
    background: #fff;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 17px;
    text-align: center;
  }
  .block-atfirst-about-mv ._btn {
    display: none;
  }
  .block-atfirst-about-link-sp {
    background: #F8F3EF;
    padding: 20px 0;
  }
  .block-atfirst-about-link-sp ul {
    width: 270px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto;
  }
  .block-atfirst-about-link-sp ul li {
    width: 120px;
    margin: 2px 0;
  }
  .block-atfirst-about-link-sp ul li a {
    display: block;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #3c3c3c;
    padding: 10px 0;
    border-bottom: 1px solid #ad0c18;
    position: relative;
  }
  .block-atfirst-about-link-sp ul li a:before {
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    content: "";
    height: 5px;
    width: 5px;
    border: 1px solid #AD0C18;
    border-left-width: 0;
    border-top-width: 0;
    transform: translate(0, -50%) rotate(-45deg);
  }
  .area-modal-about {
    padding-bottom: 50px;
    background: #F8F3EF;
  }
  .area-modal-about ._page {
    padding-top: 100px;
  }
  .block-about-modal {
    position: relative;
  }
  .block-about-modal ._row-header {
    background: #ad0c18;
    padding: 20px 0 90px;
    text-align: center;
  }
  .block-about-modal ._row-header ._image {
    margin-top: -60px;
  }
  .block-about-modal ._row-header h2 {
    padding-top: 25px;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    color: #fff;
  }
  .block-about-modal ._row-body {
    margin: -60px 20px 20px 20px;
  }
  .block-about-modal ._row-body ._image img {
    width: 100%;
  }
  .block-about-modal ._row-body ._texts {
    margin-top: 40px;
  }
  .block-about-modal ._row-body ._texts ._title {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    margin-bottom: 15px;
  }
  .block-atfirst-ataglance-mv ._row-image {
    position: relative;
  }
  .block-atfirst-ataglance-mv ._row-image ._image img {
    width: 100%;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts h1 {
    text-align: center;
  }
  .block-atfirst-ataglance-mv ._row-image ._texts h1 span {
    margin-top: 10px;
    display: inline-block;
    background: #fff;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 17px;
    text-align: center;
  }
  .block-atfirst-ataglance-mv ._row-lead {
    padding: 30px 0;
  }
  .block-atfirst-ataglance-mv ._row-lead p {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    text-align: center;
  }
  .block-atfirst-ataglance-wrap {
    background: #F8F3EF;
  }
  .block-atfirst-ataglance-01 {
    padding: 60px 0;
  }
  .block-atfirst-ataglance-01 ._items {
    width: 290px;
    margin: 0 auto;
  }
  .block-atfirst-ataglance-01 ._items li + li {
    margin-top: 40px;
  }
  .block-atfirst-ataglance-01 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-01 ._item ._image img {
    width: 100%;
  }
  .block-atfirst-ataglance-01 ._item ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._t {
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #ad0c18;
    background: url(/images/atfirst/ataglance/number/bg.png) left top no-repeat;
    background-size: contain;
    width: 160px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._num {
    position: absolute;
    top: 40px;
    left: 0px;
    right: 0px;
    text-align: center;
    font-weight: bold;
    font-size: 11px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._num b {
    font-weight: bold;
    font-size: 42px;
    line-height: 67px;
    color: #ad0c18;
    margin: 0 5px;
  }
  .block-atfirst-ataglance-01 ._item ._texts ._note {
    position: absolute;
    top: 105px;
    right: 10px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
    text-align: right;
  }
  .block-atfirst-ataglance-02 {
    position: relative;
  }
  .block-atfirst-ataglance-02 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-02:before {
    content: "";
    display: block;
    position: absolute;
    top: 75px;
    left: 0px;
    right: 0px;
    bottom: -75px;
    background: #A9D0D0;
    transform: skew(0, -20deg);
  }
  .block-atfirst-ataglance-02 ._row-header h2 {
    margin: 0 auto;
    background: url(/images/atfirst/ataglance/history/cir.png) left top no-repeat;
    background-size: contain;
    width: 180px;
    height: 190px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.18em;
    line-height: 15px;
    text-align: center;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-02 ._row-body {
    padding: 40px 0;
    padding-bottom: 80px;
    margin: 0 20px;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._row-body:before {
    content: "";
    display: block;
    position: absolute;
    top: 120px;
    bottom: 50px;
    left: -2px;
    width: 2px;
    background: #AD0C18;
  }
  .block-atfirst-ataglance-02 ._row-body:after {
    content: "";
    position: absolute;
    bottom: 40px;
    left: -6px;
    width: 5px;
    height: 5px;
    margin-top: -5px;
    box-sizing: border-box;
    border: 5px solid transparent;
    border-top: 5px solid #AD0C18;
    transform: scale(2, 2.8);
  }
  .block-atfirst-ataglance-02 ._items {
    margin: 0 auto;
  }
  .block-atfirst-ataglance-02 ._items li + li {
    margin-top: 50px;
  }
  .block-atfirst-ataglance-02 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-02 ._item ._yy {
    padding-left: 30px;
  }
  .block-atfirst-ataglance-02 ._item ._yy:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -8px;
    left: -8px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
  }
  .block-atfirst-ataglance-02 ._item ._t {
    padding-left: 20px;
  }
  .block-atfirst-ataglance-02 ._item ._image img {
    width: 100%;
    height: auto;
  }
  .block-atfirst-ataglance-02 ._item ._yy {
    font-weight: bold;
    font-size: 20px;
    text-align: left;
    color: #fff;
    margin-bottom: 10px;
    margin-right: -20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #fff;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._item ._yy b {
    font-weight: bold;
    font-size: 50px;
  }
  .block-atfirst-ataglance-02 ._item ._t {
    margin-top: 20px;
    font-weight: bold;
    font-size: 16px;
    color: #ad0c18;
    line-height: 1.4;
  }
  .block-atfirst-ataglance-02 ._item ._image {
    margin-top: 20px;
    margin-left: 20px;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._box {
    margin-top: 50px;
    position: relative;
  }
  .block-atfirst-ataglance-02 ._box ._box-head {
    position: absolute;
    top: -16px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 180px;
    border-radius: 20px;
    background: #ad0c18;
    padding: 10px;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
  }
  .block-atfirst-ataglance-02 ._box ._box-body {
    margin: 0 -10px;
    padding: 40px 0;
    background: #fff;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.16);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-02 ._box ._box-body p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 2.25;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header,
  .block-atfirst-ataglance-04 ._row-header {
    position: relative;
    z-index: 10;
  }
  .block-atfirst-ataglance-03 ._row-header h2,
  .block-atfirst-ataglance-04 ._row-header h2 {
    margin: 0 auto;
    display: block;
    width: 180px;
    height: 180px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span {
    display: block;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(1),
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(1) {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.18em;
    line-height: 1.5;
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(1) span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(1) span {
    color: #ad0c18;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2),
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) b,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) b {
    font-weight: bold;
    font-size: 35px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) span,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) span {
    color: #ad0c18;
  }
  .block-atfirst-ataglance-03 ._row-header h2 > div > span:nth-child(2) span.is-e,
  .block-atfirst-ataglance-04 ._row-header h2 > div > span:nth-child(2) span.is-e {
    font-size: 24px;
  }
  .block-atfirst-ataglance-03 {
    position: relative;
    padding-bottom: 50px;
  }
  .block-atfirst-ataglance-03 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-03:before {
    content: "";
    display: block;
    position: absolute;
    top: 75px;
    left: 0px;
    right: 0px;
    bottom: -75px;
    background: #E1EFEF;
    transform: skew(0, -20deg);
  }
  .block-atfirst-ataglance-03 ._row-body {
    margin: 0 20px;
    margin-top: 20px;
  }
  .block-atfirst-ataglance-03 ._items li + li {
    margin-top: 30px;
  }
  .block-atfirst-ataglance-03 ._item ._image {
    text-align: center;
  }
  .block-atfirst-ataglance-03 ._item ._image img {
    width: 100%;
  }
  .block-atfirst-ataglance-03 ._item ._texts {
    padding: 0 10px;
  }
  .block-atfirst-ataglance-03 ._item ._texts ._t1 {
    padding: 10px 0 20px 0;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: bold;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-04 {
    position: relative;
    padding-bottom: 50px;
  }
  .block-atfirst-ataglance-04 .block-inner {
    position: relative;
  }
  .block-atfirst-ataglance-04.is-A:before {
    content: "";
    display: block;
    position: absolute;
    top: 75px;
    left: 0px;
    right: 0px;
    bottom: -75px;
    background: #F1F5EA;
    transform: skew(0, -20deg);
  }
  .block-atfirst-ataglance-04 ._row-body {
    margin: 20px;
    margin-top: 30px;
  }
  .block-atfirst-ataglance-04 ._items li + li {
    margin-top: 30px;
  }
  .block-atfirst-ataglance-04 ._item {
    position: relative;
  }
  .block-atfirst-ataglance-04 ._item ._image {
    text-align: center;
  }
  .block-atfirst-ataglance-04 ._item ._image img {
    width: 230px;
  }
  .block-atfirst-ataglance-04 ._item ._texts {
    line-height: 1.8;
    padding: 20px 10px 0 10px;
  }
  .block-atfirst-ataglance-04 ._item ._texts ._t1 {
    position: absolute;
    top: 25px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0px;
    right: 0px;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: bold;
    color: #ad0c18;
  }
  .block-atfirst-ataglance-04 ._item ._texts ._t1.is-B {
    top: 50px;
  }
  .block-atfirst-freshers-mv ._row-image {
    position: relative;
  }
  .block-atfirst-freshers-mv ._row-image ._image img {
    width: 100%;
  }
  .block-atfirst-freshers-mv ._row-image ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-freshers-mv ._row-image ._texts h1 {
    text-align: center;
    margin-top: 10px;
    display: inline-block;
    background: #fff;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 17px;
    text-align: center;
  }
  .block-atfirst-freshers-mv ._row-lead {
    padding: 30px 0;
  }
  .block-atfirst-freshers-mv ._row-lead p {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.75;
    text-align: center;
  }
  .block-atfirst-freshers-01 {
    padding: 40px 20px;
    background: #F8F3EF;
  }
  .block-atfirst-freshers-01 img {
    width: 100%;
  }
  .block-atfirst-freshers-01 ._voice-item {
    margin-bottom: 40px;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head {
    display: flex;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head div:nth-child(1) {
    padding: 5px 0 0 0;
    font-weight: normal;
    font-size: 14px;
    color: #ad0c18;
    width: 40px;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-head div:nth-child(2) {
    flex: 1;
    border-left: 2px solid #AD0C18;
    padding-left: 10px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    text-align: left;
  }
  .block-atfirst-freshers-01 ._voice-item ._voice-body {
    margin-top: 20px;
  }
  .block-atfirst-topmessage-mv {
    position: relative;
  }
  .block-atfirst-topmessage-mv ._image img {
    width: 100%;
  }
  .block-atfirst-topmessage-mv ._texts {
    position: absolute;
    bottom: 60px;
    left: 20px;
    color: #fff;
  }
  .block-atfirst-topmessage-mv ._texts h1 {
    width: 122px;
    height: 26px;
    background: #ad0c18;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-atfirst-topmessage-mv ._texts ._lead {
    margin-top: 25px;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.78;
  }
  .block-atfirst-topmessage-mv ._texts ._name {
    margin-top: 25px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .block-atfirst-topmessage-mv ._texts ._name span {
    padding-left: 5px;
    font-size: 16px;
  }
  .block-atfirst-topmessage-01 {
    margin-top: -20px;
    position: relative;
  }
  .block-atfirst-topmessage-01 ._cols {
    position: relative;
  }
  .block-atfirst-topmessage-01 ._cols.is-bg:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 20px;
    right: 0px;
    bottom: 80px;
    z-index: -1;
    background: #F8F3EF;
  }
  .block-atfirst-topmessage-01 ._cols.is-last ._right {
    padding-bottom: 0;
  }
  .block-atfirst-topmessage-01 ._cols ._left {
    background: #AD0C18;
    color: #fff;
    margin-right: 20px;
    padding: 30px 20px 40px 40px;
    position: relative;
  }
  .block-atfirst-topmessage-01 ._cols ._left:after {
    content: "";
    display: block;
    position: absolute;
    top: 60px;
    left: 40px;
    right: 0;
    height: 1px;
    background: #fff;
  }
  .block-atfirst-topmessage-01 ._cols ._left p {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .block-atfirst-topmessage-01 ._cols ._right {
    padding: 30px 20px 40px 55px;
  }
  .block-atfirst-topmessage-01 ._cols ._image {
    margin-top: 30px;
  }
  .block-atfirst-topmessage-01 ._cols ._image img {
    width: 100%;
  }
  body.page-works-business .area-wrapper {
    position: relative;
  }
  body.page-works-business .area-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    width: 60px;
    background: #f8f3ef;
    z-index: -1;
  }
  .block-works-business-mv {
    padding: 50px 20px 20px 20px;
  }
  .block-works-business-mv .block-inner {
    position: relative;
  }
  .block-works-business-mv ._image {
    margin-left: 20px;
  }
  .block-works-business-mv ._image img {
    width: 100%;
  }
  .block-works-business-mv ._texts {
    position: absolute;
    top: -30px;
    left: 0px;
    width: 158px;
    height: 66px;
    background: rgba(173, 12, 24, 0.9);
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-works-business-01 {
    padding: 40px 20px 20px 20px;
    position: relative;
  }
  .block-works-business-01 ._row-header h2 {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.2em;
    color: #ad0c18;
    border-bottom: 1px solid #AD0C18;
    padding-bottom: 10px;
  }
  .block-works-business-01 ._row-body {
    margin-top: 25px;
    margin-left: 50px;
  }
  .block-works-business-01 ._row-body-lead {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 21px;
  }
  .block-works-business-01 ._boxA {
    position: relative;
  }
  .block-works-business-01 ._boxA.is-A ._box-body {
    background: #f8f3ef;
  }
  .block-works-business-01 ._boxA.is-B ._box-head {
    background: #AD0C18;
  }
  .block-works-business-01 ._boxA.is-B ._box-body {
    border: 1px solid #AD0C18;
    padding: 30px 20px 20px 20px;
    color: #AD0C18;
    border-radius: 10px;
  }
  .block-works-business-01 ._boxA.is-B ._box-body p {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 24.5px;
    text-align: center;
    color: #ad0c18;
  }
  .block-works-business-01 ._boxA ._box-head {
    position: absolute;
    top: -10px;
    left: 50%;
    right: 0px;
    width: 70px;
    background: #3c3c3c;
    font-weight: bold;
    padding: 7px 0px;
    text-align: center;
    font-size: 10px;
    letter-spacing: 0.05em;
    color: #fff;
    transform: translate(-50%, 0);
  }
  .block-works-business-01 ._boxA ._box-body {
    padding: 20px 10px;
    border-radius: 5px;
  }
  .block-works-business-01 ._boxA ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
  }
  .block-works-business-01 ._boxA ul ._cir {
    width: 50px;
    height: 21px;
    background: transparent;
    border: 1px solid #ad0c18;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 5px;
    border-radius: 20px;
  }
  .block-works-business-01 ._stepA {
    margin-top: 20px;
  }
  .block-works-business-01 ._stepA li {
    position: relative;
  }
  .block-works-business-01 ._stepA li + li {
    margin-top: 25px;
  }
  .block-works-business-01 ._stepA li:nth-child(1):before {
    display: none;
  }
  .block-works-business-01 ._stepA li:before {
    content: "";
    display: block;
    margin: 20px auto;
    width: 5px;
    height: 5px;
    box-sizing: border-box;
    border: 5px solid transparent;
    border-top: 5px solid #333;
    transform: scale(2, 2.8);
  }
  .block-works-business-01 ._stepA ._item ._title {
    padding: 10px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 14px;
    line-height: 15px;
    text-align: center;
    color: #fff;
  }
  .block-works-business-01 ._stepA ._item ._texts {
    margin-top: 10px;
  }
  .block-works-business-01 ._stepA ._item ._texts p {
    margin: 0;
  }
  .block-works-business-01 ._headA {
    margin-top: 40px;
    margin-left: -50px;
    border: 1px solid #AD0C18;
    padding: 8px 0 8px 30px;
    font-size: 14px;
    background: #fff;
    letter-spacing: 0.05em;
    color: #ad0c18;
  }
  .block-works-business-01 ._headB {
    margin-top: 40px;
    margin-left: -50px;
    padding: 8px 0 8px 30px;
    font-size: 14px;
    background: #3C3C3C;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .block-works-business-01 ._headC {
    margin-top: 40px;
    position: relative;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .block-works-business-01 ._headC:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    margin-left: -70px;
    width: 65px;
    height: 4px;
    background: #ad0c18;
  }
  .block-works-business-01 ._imageA {
    margin-top: 20px;
    margin-left: -50px;
  }
  .block-works-business-01 ._imageA ._cap {
    margin-left: 50px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .block-works-business-01 ._imageA ._image {
    margin-top: 5px;
  }
  .block-works-business-01 ._imageA img {
    width: 100%;
  }
  .block-works-business-01 ._timeline {
    margin-top: 20px;
  }
  .block-works-business-01 ._timeline li {
    margin: 12px 0;
  }
  .block-works-business-01 ._timeline ._item div:nth-child(1) {
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 24px;
    text-align: left;
    color: #ad0c18;
    border-bottom: 1px solid #ad0c18;
    margin-bottom: 5px;
    padding-bottom: 5px;
  }
  .block-works-business-01 ._timeline ._item div:nth-child(2) {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 18px;
    text-align: left;
    color: #3c3c3c;
  }
  .block-works-business-01 ._listBusho {
    margin-top: 30px;
  }
  .block-works-business-01 ._listBusho li + li {
    margin-top: 15px;
  }
  .block-works-business-01 ._listBusho ._item img {
    width: 100%;
  }
  .block-works-business-01 ._listBusho ._item ._texts {
    margin-top: 20px;
  }
  .block-works-business-01 ._listBusho ._item ._texts ._t1 {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
  .block-works-business-01 ._listBusho ._item ._texts ._t1:after {
    content: "";
    display: block;
    width: 25px;
    margin: 7px 0;
    height: 1px;
    background: #ad0c18;
  }
  .mod-btn-interview {
    margin-top: 20px;
    transition-duration: 0.2s;
    display: block;
    text-decoration: none;
  }
  .mod-btn-interview:hover {
    opacity: 0.8;
  }
  .mod-btn-interview img {
    width: 100%;
  }
  .mod-btn-interview ._image {
    position: relative;
    margin: -30px 20px 0 20px;
  }
  .mod-btn-interview ._texts {
    position: relative;
    background: #f8f3ef;
    padding: 15px 0 40px 20px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .mod-btn-interview ._texts ._t1 {
    color: #3c3c3c;
    font-weight: bold;
    font-size: 14px;
  }
  .mod-btn-interview ._texts ._t2 {
    color: #3c3c3c;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .mod-btn-interview ._texts ._t3 {
    font-weight: 500;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .mod-btn-interview ._texts ._t3 {
    position: absolute;
    top: 20px;
    right: 20px;
    border: 1px solid #ad0c18;
    text-align: center;
    padding: 5px 25px 5px 15px;
    color: #AD0C18;
  }
  .mod-btn-interview ._texts ._t3:before {
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    content: "";
    height: 4px;
    width: 4px;
    border: 1px solid #AD0C18;
    border-left-width: 0;
    border-top-width: 0;
    transform: translate(0, -50%) rotate(-45deg);
  }
  .block-works-salespoint-mv {
    padding-bottom: 50px;
  }
  .block-works-salespoint-mv ._image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
  }
  .block-works-salespoint-mv ._texts {
    margin-top: -40px;
    line-height: 1.8;
    background: rgba(248, 243, 239, 0.9);
    position: relative;
    margin-left: 40px;
    padding: 60px 40px 40px 40px;
  }
  .block-works-salespoint-mv ._texts h1 {
    position: absolute;
    position: absolute;
    top: -60px;
    left: -20px;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    opacity: 1;
    width: 144px;
    height: 82px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(173, 12, 24, 0.9);
  }
  .block-works-salespoint-mv ._texts p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 24.5px;
  }
  .block-works-salespoint-01 {
    padding: 40px 0 40px 20px;
    position: relative;
  }
  .block-works-salespoint-01 ._row-header {
    position: relative;
  }
  .block-works-salespoint-01 ._row-header ._texts {
    line-height: 1.8;
    color: #ad0c18;
    position: relative;
  }
  .block-works-salespoint-01 ._row-header ._texts:after {
    content: "";
    display: block;
    position: absolute;
    top: 45px;
    left: 0px;
    right: 0px;
    height: 1px;
    background: #AD0C18;
  }
  .block-works-salespoint-01 ._row-header ._texts h2 {
    font-weight: 500;
    font-size: 10px;
    letter-spacing: 0.3em;
    line-height: 1.75;
    text-align: right;
    padding-right: 60px;
  }
  .block-works-salespoint-01 ._row-header ._texts ._no {
    position: absolute;
    top: -20px;
    right: 0px;
    font-weight: normal;
    font-size: 42px;
    text-align: right;
  }
  .block-works-salespoint-01 ._row-header ._texts p {
    margin-top: 30px;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.15em;
    line-height: 1.75;
  }
  .block-works-salespoint-01 ._row-body {
    margin-top: 10px;
  }
  .block-works-salespoint-01 ._row-body img {
    width: 100%;
  }
  .block-works-salespoint-01 ._row-body p {
    margin-top: 25px;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .block-works-interviews-mv {
    padding: 30px 0 25px;
    background: #F8F3EF;
    margin: 0 auto;
  }
  .block-works-interviews-mv ._image img {
    width: 100%;
  }
  .block-works-interviews-mv ._texts {
    position: absolute;
    top: 100vw;
    left: 27.5vw;
  }
  .block-works-interviews-mv ._texts p {
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 24px;
    text-align: left;
    color: #3c3c3c;
  }
  .block-works-interviews-01 {
    background: #F8F3EF;
    padding: 30px 20px 50px 20px;
  }
  .block-works-interviews-01 ._items > * + li {
    margin-top: 30px;
  }
  .block-works-interviews-01 ._item {
    display: block;
  }
  .block-works-interviews-01 ._item ._image img {
    width: 100%;
  }
  .block-works-interviews-01 ._item ._texts {
    margin-top: 25px;
  }
  .block-works-interviews-01 ._item ._texts ._state {
    display: flex;
    align-items: center;
  }
  .block-works-interviews-01 ._item ._texts ._state span:nth-child(1) {
    font-weight: 500;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 24.5px;
    color: #ad0c18;
  }
  .block-works-interviews-01 ._item ._texts ._state span:nth-child(2) {
    margin-left: 20px;
    background: #fff;
    padding: 10px 20px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
    color: #000;
  }
  .block-works-interviews-01 ._item ._texts ._t {
    margin-top: 25px;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    text-align: left;
    color: #000;
    opacity: 0.8;
  }
  .block-works-detail-mv {
    position: relative;
  }
  .block-works-detail-mv ._image img {
    height: 300px;
    width: 100%;
    object-fit: cover;
  }
  .block-works-detail-mv ._texts {
    position: absolute;
    top: 25px;
    left: 50%;
    width: 78px;
    transform: translate(-50%, 0);
  }
  .block-works-detail-mv ._texts img {
    width: 100%;
  }
  .block-works-detail-mv ._texts.is-sales {
    left: 65%;
  }
  .block-works-detail-lead {
    margin-top: -40px;
    position: relative;
  }
  .block-works-detail-lead:before {
    content: "";
    display: block;
    position: absolute;
    top: 40px;
    bottom: 0;
    left: 50%;
    width: 400px;
    transform: translate(-50%, 0);
    background: #f8f3ef;
    opacity: 0.9;
  }
  .block-works-detail-lead ._row-header {
    position: relative;
  }
  .block-works-detail-lead ._row-header h2 {
    width: 220px;
    background: #ad0c18;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    padding: 15px 0;
  }
  .block-works-detail-lead ._row-header h2 span:nth-child(1) {
    display: block;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
  }
  .block-works-detail-lead ._row-header h2 span:nth-child(2) {
    margin-top: 10px;
    display: inline-block;
    border: 1px solid #fff;
    padding: 7px 30px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .block-works-detail-lead ._row-body {
    position: relative;
    padding: 0 0 40px 0;
    margin-top: 30px;
  }
  .block-works-detail-lead ._row-body ._t1 {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    text-align: center;
    color: #ad0c18;
  }
  .block-works-detail-lead ._row-body ._t2 {
    margin-top: 25px;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    text-align: center;
  }
  .block-works-detail-lead ._row-body ._note {
    margin-top: 20px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    text-align: center;
  }
  .block-works-detail-lead ._row-body ._items {
    margin: 0 20px;
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
  }
  .block-works-detail-lead ._row-body ._items > * {
    width: 160px;
  }
  .block-works-detail-lead ._row-body ._items:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(/images/works/interviews/cross.png) left top no-repeat;
    background-size: contain;
    width: 28px;
    height: 28px;
  }
  .block-works-detail-lead ._row-body ._item ._image img {
    width: 100%;
  }
  .block-works-detail-lead ._row-body ._item ._texts {
    margin-top: 15px;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._name {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.2em;
    color: #ad0c18;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._state {
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
  .block-works-detail-lead ._row-body ._item ._texts ._state {
    margin-top: 10px;
  }
  .block-works-detail-01 {
    position: relative;
    padding-bottom: 50px;
  }
  .block-works-detail-01:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 400px;
    transform: translate(-50%, 0);
    background: #f8f3ef;
    opacity: 0.9;
  }
  .block-works-detail-01 .block-inner {
    position: relative;
  }
  .block-works-detail-01 ._row-image {
    position: relative;
    margin-top: 40px;
    margin-left: 20px;
  }
  .block-works-detail-01 ._row-image img {
    width: 100%;
  }
  .block-works-detail-01 ._title {
    position: relative;
    margin-top: -30px;
    margin-left: -20px;
    margin-right: 20px;
    padding: 17px 20px 17px 40px;
    background: #ad0c18;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 24.5px;
    text-align: left;
    color: #fff;
  }
  .block-works-detail-01 ._row-talk {
    padding: 20px;
  }
  .block-works-detail-last img {
    width: 100%;
    height: 195px;
    height: 160px;
    object-fit: cover;
  }
  .mod-talk dl {
    display: flex;
  }
  .mod-talk dl + dl {
    margin-top: 25px;
  }
  .mod-talk dl dt {
    width: 48px;
    height: 22px;
    border: 1px solid #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 0.05em;
    line-height: 24.2px;
    text-align: center;
    color: #ad0c18;
  }
  .mod-talk dl dd {
    margin: 0;
    line-height: 1.8;
    flex: 1;
    padding: 0 0 0 20px;
  }
  .mod-talk ._note {
    text-indent: -2em;
    margin-left: 2em;
    margin-top: 5px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
  .block-common-workstyle-mv {
    position: relative;
  }
  .block-common-workstyle-mv ._bg {
    margin: 0 20px;
  }
  .block-common-workstyle-mv ._bg img {
    width: 100%;
    height: 146px;
    object-fit: cover;
  }
  .block-common-workstyle-mv ._bg ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
  }
  .block-common-workstyle-mv ._bg ._texts span {
    display: block;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-align: center;
    line-height: 18px;
    padding: 0 5px 10px 10px;
    border-bottom: 1px solid #fff;
  }
  .block-common-workstyle-mv ._box {
    width: 300px;
    height: 90px;
    margin: -40px auto 0 auto;
    display: flex;
  }
  .block-common-workstyle-mv ._box img {
    width: 100%;
  }
  .block-common-workstyle-mv ._box ._texts {
    width: 120px;
    height: 90px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-common-workstyle-mv ._box ._texts h1 {
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 17px;
    text-align: center;
    color: #fff;
  }
  .block-common-workstyle-mv ._box ._image {
    flex: 1;
  }
  .block-common-workstyle-mv ._box ._image img {
    height: 90px;
    object-fit: cover;
  }
  .block-common-workstyle-lead {
    padding: 30px 0;
    text-align: center;
  }
  .mod-title-workstyle:before {
    content: "";
    display: block;
    margin: 0 auto 12px auto;
    background: url(/images/workstyle/deco.png) left top no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
  }
  .mod-title-workstyle h2 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 16px;
    text-align: center;
    color: #ad0c18;
  }
  .block-workstyle-training-01 {
    padding: 20px 20px 40px 20px;
    position: relative;
  }
  .block-workstyle-training-01 ._row-body {
    margin-top: 25px;
  }
  .block-workstyle-training-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-training-01 ._row1 {
    margin: 0 auto;
  }
  .block-workstyle-training-01 ._row2 {
    margin: 0 auto;
    margin-top: 30px;
  }
  .block-workstyle-training-01 ._row2 table {
    width: 100%;
  }
  .block-workstyle-training-01 ._row2 table th {
    width: 20px;
    padding: 25px 10px 20px 0;
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 14px;
    color: #ad0c18;
    border-bottom: 1px solid #AD0C18;
  }
  .block-workstyle-training-01 ._row2 table td {
    padding: 25px 10px 20px 0;
    font-weight: normal;
    font-size: 14px;
    line-height: 14px;
    border-bottom: 1px solid #AD0C18;
  }
  .block-workstyle-training-01 ._row2 table span {
    font-size: 10px;
  }
  .block-workstyle-training-01 ._row3 {
    margin-top: 30px;
  }
  .block-workstyle-training-01 ._row4 {
    margin: 0 auto;
    margin-top: 30px;
  }
  .block-workstyle-training-01 ._row4 ._note {
    padding: 10px;
  }
  .block-workstyle-training-01 ._flow ._flow-box {
    border: 1px solid #ad0c18;
  }
  .block-workstyle-training-01 ._flow ._flow-arrow {
    width: 15px;
    margin: 15px auto;
    transform: rotate(90deg);
  }
  .block-workstyle-training-01 ._flow ._box ._h {
    background: #ad0c18;
    color: #fff;
    padding: 30px;
  }
  .block-workstyle-training-01 ._flow ._box ._h span {
    display: block;
  }
  .block-workstyle-training-01 ._flow ._box ._h span:nth-child(1) {
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 14px;
    text-align: left;
  }
  .block-workstyle-training-01 ._flow ._box ._h span:nth-child(2) {
    margin-top: 15px;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 14px;
  }
  .block-workstyle-training-01 ._flow ._box ._b {
    padding: 20px;
  }
  .block-workstyle-training-01 ._flow ._box li {
    font-weight: normal;
    font-size: 12px;
    line-height: 18px;
    position: relative;
    padding: 4px 0 4px 15px;
  }
  .block-workstyle-training-01 ._flow ._box li:after {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    left: 0px;
    width: 10px;
    height: 1px;
    background: #AD0C18;
  }
  .block-workstyle-training-02 {
    padding: 20px 20px 40px 20px;
    position: relative;
  }
  .block-workstyle-training-02 ._row-body {
    margin-top: 30px;
  }
  .block-workstyle-training-02 ._items li + li {
    margin-top: 30px;
  }
  .block-workstyle-training-02 ._item ._image {
    margin-top: 20px;
  }
  .block-workstyle-training-02 ._item ._image img {
    width: 100%;
  }
  .block-workstyle-training-02 ._item ._texts {
    line-height: 1.8;
  }
  .block-workstyle-training-02 ._item ._texts ._t1 {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 10px;
    text-align: center;
    color: #ad0c18;
    padding: 20px 0;
  }
  .block-workstyle-career-01 {
    padding: 10px 20px 20px 20px;
    position: relative;
  }
  .block-workstyle-career-01 ._row-body {
    margin-top: 12px;
  }
  .block-workstyle-career-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-career-01 ._row2 {
    margin-top: 30px;
  }
  .block-workstyle-career-01 ._row2 div + div {
    margin-top: 20px;
  }
  .block-common-models-mv {
    position: relative;
  }
  .block-common-models-mv ._bg {
    margin: 0 20px;
  }
  .block-common-models-mv ._bg img {
    width: 100%;
    height: 146px;
    object-fit: cover;
  }
  .block-common-models-mv ._bg ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
  }
  .block-common-models-mv ._bg ._texts span {
    display: block;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-align: center;
    line-height: 18px;
    padding: 0 5px 10px 10px;
    border-bottom: 1px solid #fff;
  }
  .block-common-models-mv ._box {
    position: relative;
    width: 300px;
    margin: -45px auto 0 auto;
  }
  .block-common-models-mv ._box img {
    width: 100%;
  }
  .block-common-models-mv ._box ._texts {
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0;
  }
  .block-common-models-mv ._box ._texts ._copy {
    font-size: 12px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #3c3c3c;
    padding: 10px;
  }
  .block-common-models-mv ._box ._texts h1 {
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 0px;
    width: 150px;
    display: inline-block;
    margin-top: 8px;
    font-size: 12px;
    letter-spacing: 0.1em;
    color: #fff;
    padding: 10px;
    background: #3c3c3c;
  }
  .block-common-models-mv ._box ._image {
    flex: 1;
  }
  /* ----------------------------------------------------------
  block-workstyle-models-01
  ---------------------------------------------------------- */
  .block-workstyle-models-persons {
    padding: 60px 20px 75px 20px;
  }
  .block-workstyle-models-persons img {
    width: 100%;
  }
  .block-workstyle-models-persons .block-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .block-workstyle-models-persons .block-inner ._row-header .mod-title-workstyle h2 {
    line-height: 1.6;
  }
  .block-workstyle-models-persons .block-inner ._row2 {
    margin-top: 45px;
  }
  .mod-workstyle-models-persons-items {
    display: flex;
    justify-content: space-between;
    gap: 20px 15px;
    flex-wrap: wrap;
  }
  .mod-workstyle-models-persons-items li {
    border-radius: 10px;
    width: calc(50% - 10px);
  }
  .mod-workstyle-models-persons-item {
    text-align: center;
  }
  .mod-workstyle-models-persons-item ._item-title {
    text-align: center;
    position: relative;
  }
  .mod-workstyle-models-persons-item ._item-title span {
    display: inline-block;
    background: #D34E4E;
    font-size: 12px;
    color: #fff;
    padding: 6px 25px;
  }
  .mod-workstyle-models-persons-item ._item-texts {
    margin-top: -5px;
    background: #f8f3ef;
    border-radius: 10px;
    padding: 10px 10px 0 10px;
    height: 170px;
  }
  .mod-workstyle-models-persons-item ._label {
    display: inline-block;
    font-size: 12px;
    color: #777;
    background: #fff;
    margin: 0 auto;
    padding: 5px 10px;
    border-radius: 8px;
  }
  .mod-workstyle-models-persons-item ._copy {
    font-size: 12px;
    line-height: 1.75;
    font-weight: bold;
    color: #d34e4e;
    margin-top: 10px;
  }
  .mod-workstyle-models-persons-item ._copy br {
    display: none;
  }
  .mod-workstyle-models-persons-item ._item-image {
    width: 120px;
    margin: 0 auto;
    margin-top: -30px;
  }
  .mod-workstyle-models-persons-item.is-2 ._item-title span {
    background: #65a34f;
  }
  .mod-workstyle-models-persons-item.is-2 ._copy {
    color: #65a34f;
  }
  .mod-workstyle-models-persons-item.is-3 ._item-title span {
    background: #539bc1;
  }
  .mod-workstyle-models-persons-item.is-3 ._copy {
    color: #539bc1;
  }
  .mod-workstyle-models-persons-item.is-4 ._item-title span {
    background: #7f609f;
  }
  .mod-workstyle-models-persons-item.is-4 ._copy {
    color: #7f609f;
  }
  .mod-workstyle-models-persons-item.is-5 ._item-title span {
    background: #c3a013;
  }
  .mod-workstyle-models-persons-item.is-5 ._copy {
    color: #c3a013;
  }
  .mod-workstyle-models-persons-item.is-6 ._item-title span {
    background: #d65b8a;
  }
  .mod-workstyle-models-persons-item.is-6 ._copy {
    color: #d65b8a;
  }
  /* ----------------------------------------------------------
  block-workstyle-models-case
  ---------------------------------------------------------- */
  .block-workstyle-models-cases {
    display: flex;
    gap: 45px;
    flex-direction: column;
  }
  .block-workstyle-models-case {
    padding: 45px 20px 40px 20px;
    position: relative;
    background: #F8F3EF;
  }
  .block-workstyle-models-case img {
    width: 100%;
  }
  .block-workstyle-models-case ._title {
    position: absolute;
    top: -15px;
    left: 0px;
    right: 0px;
    text-align: center;
  }
  .block-workstyle-models-case ._title span {
    display: inline-block;
    background: #d34e4e;
    padding: 8px 20px;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #fff;
    font-weight: bold;
  }
  .block-workstyle-models-case.is-2 ._title span {
    background-color: #65a34f;
  }
  .block-workstyle-models-case.is-3 ._title span {
    background-color: #539bc1;
  }
  .block-workstyle-models-case.is-4 ._title span {
    background-color: #7f609f;
  }
  .block-workstyle-models-case.is-5 ._title span {
    background-color: #c3a013;
  }
  .block-workstyle-models-case.is-6 ._title span {
    background-color: #d65b8a;
  }
  .block-workstyle-models-case ._row-header ._box {
    background: #fff;
    border-radius: 10px;
  }
  .block-workstyle-models-case ._row-body {
    margin-top: 30px;
    display: flex;
    gap: 10px;
  }
  .block-workstyle-models-case ._row-body ._cols {
    display: flex;
    gap: 10px;
    flex-direction: column;
  }
  .mod-workstyle-models-case-prof {
    position: relative;
    padding: 0 0 130px 0;
  }
  .mod-workstyle-models-case-prof ._col-image {
    padding: 15px 0 0 0;
  }
  .mod-workstyle-models-case-prof ._col-image ._names {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 0 0 5px 35px;
    width: 50vw;
    position: relative;
    border-bottom: 2px solid #ccc;
    transform: translate(-20px, 0);
  }
  .mod-workstyle-models-case-prof ._col-image ._names ._label {
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.05em;
    color: #ccc;
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 2px 8px;
  }
  .mod-workstyle-models-case-prof ._col-image ._names ._name {
    font-size: 12px;
    line-height: 1.55;
    letter-spacing: 0.05em;
    color: #ccc;
    font-weight: bold;
  }
  .mod-workstyle-models-case-prof ._col-image ._img {
    position: absolute;
    left: calc(50% - 45px);
    bottom: 0px;
    width: 95px;
    margin: 0 0 0 auto;
    margin-top: 10px;
  }
  .mod-workstyle-models-case-prof ._col-texts {
    margin-top: 10px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .mod-workstyle-models-case-prof ._q {
    display: inline-block;
    font-weight: bold;
    transform: translate(-20px, 0);
    background: #ccc;
    padding: 12px 5px 10px 55px;
    border-radius: 0 5px 5px 0;
    font-size: 12px;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #fff;
    position: relative;
  }
  .mod-workstyle-models-case-prof ._q span {
    display: block;
    position: absolute;
    top: 10px;
    left: 18px;
    font-size: 25px;
    font-weight: bold;
    line-height: 1;
  }
  .mod-workstyle-models-case-prof ._a {
    padding: 10px 5px 8px 50px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #ccc;
    position: relative;
  }
  .mod-workstyle-models-case-prof ._a span {
    display: block;
    position: absolute;
    top: 10px;
    left: 12px;
    font-size: 25px;
    font-weight: bold;
    line-height: 1;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names {
    border-color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names ._label {
    color: #D34E4E;
    border-color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._col-image ._names ._name {
    color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._q {
    background: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-1 ._a {
    color: #D34E4E;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names {
    border-color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names ._label {
    color: #65a34f;
    border-color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._col-image ._names ._name {
    color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._q {
    background: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-2 ._a {
    color: #65a34f;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names {
    border-color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names ._label {
    color: #539bc1;
    border-color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._col-image ._names ._name {
    color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._q {
    background: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-3 ._a {
    color: #539bc1;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names {
    border-color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names ._label {
    color: #7f609f;
    border-color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._col-image ._names ._name {
    color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._q {
    background: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-4 ._a {
    color: #7f609f;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names {
    border-color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names ._label {
    color: #c3a013;
    border-color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._col-image ._names ._name {
    color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._q {
    background: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-5 ._a {
    color: #c3a013;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names {
    border-color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names ._label {
    color: #d65b8a;
    border-color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._col-image ._names ._name {
    color: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._q {
    background: #d65b8a;
  }
  .mod-workstyle-models-case-prof.is-6 ._a {
    color: #d65b8a;
  }
  .mod-workstyle-models-table {
    width: 100%;
  }
  .mod-workstyle-models-table th {
    border-top: 1px solid #ccc;
    padding: 5px 0 40px 0;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    color: #ccc;
    width: 80px;
    position: relative;
  }
  .mod-workstyle-models-table th:before {
    content: "";
    position: absolute;
    bottom: 12px;
    left: 15px;
    width: 5px;
    height: 5px;
    margin-top: -5px;
    box-sizing: border-box;
    border: 5px solid transparent;
    border-top: 5px solid #3C3C3C;
    transform: scale(1.4, 2);
  }
  .mod-workstyle-models-table td {
    border-top: 1px solid #ccc;
    padding: 5px 0 40px 0;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #3C3C3C;
  }
  .mod-workstyle-models-table.is-1 th {
    color: #D34E4E;
    border-color: #D34E4E;
  }
  .mod-workstyle-models-table.is-1 td {
    border-color: #D34E4E;
  }
  .mod-workstyle-models-table.is-2 th {
    color: #65a34f;
    border-color: #65a34f;
  }
  .mod-workstyle-models-table.is-2 td {
    border-color: #65a34f;
  }
  .mod-workstyle-models-table.is-3 th {
    color: #539bc1;
    border-color: #539bc1;
  }
  .mod-workstyle-models-table.is-3 td {
    border-color: #539bc1;
  }
  .mod-workstyle-models-table.is-4 th {
    color: #7f609f;
    border-color: #7f609f;
  }
  .mod-workstyle-models-table.is-4 td {
    border-color: #7f609f;
  }
  .mod-workstyle-models-table.is-5 th {
    color: #c3a013;
    border-color: #c3a013;
  }
  .mod-workstyle-models-table.is-5 td {
    border-color: #c3a013;
  }
  .mod-workstyle-models-table.is-6 th {
    color: #d65b8a;
    border-color: #d65b8a;
  }
  .mod-workstyle-models-table.is-6 td {
    border-color: #d65b8a;
  }
  .block-workstyle-welfare-01 {
    padding: 40px 20px 40px 20px;
    position: relative;
  }
  .block-workstyle-welfare-01 ._row-body {
    margin-top: 30px;
  }
  .block-workstyle-welfare-01 ._row-body img {
    width: 100%;
  }
  .block-workstyle-welfare-01 ._table {
    margin-top: 20px;
  }
  .block-common-recruit-mv {
    position: relative;
  }
  .block-common-recruit-mv ._bg img {
    width: 100%;
  }
  .block-common-recruit-mv ._box {
    position: relative;
    width: 199px;
    height: 89px;
    margin: 0 auto;
    margin-top: -40px;
    color: #fff;
    background: rgba(173, 12, 24, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-common-recruit-mv ._box ._sub {
    display: block;
    margin: 0 auto;
    width: 84px;
    height: 23px;
    border: 1px solid #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.15em;
  }
  .block-common-recruit-mv ._box h1 {
    text-align: center;
    margin-top: 10px;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.2em;
  }
  .block-common-recruit-links {
    margin-top: -50px;
    padding: 60px 0 40px 0;
    background: #F7F4F4;
  }
  .block-common-recruit-links ul {
    width: 180px;
    margin: 0 auto;
  }
  .block-common-recruit-links ul li {
    margin-top: 10px;
  }
  .block-common-recruit-links a {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #3c3c3c;
    display: block;
    padding: 10px 0;
    border-bottom: 1px solid #AD0C18;
  }
  .block-recruit-requirement-01 {
    padding: 0 0 30px 0;
    position: relative;
  }
  .block-recruit-requirement-01.is-BG {
    background: #F8F3EF;
  }
  .block-recruit-requirement-01.is-last {
    padding: 0;
  }
  .block-recruit-requirement-01 ._row-header {
    background: #AD0C18;
    color: #fff;
  }
  .block-recruit-requirement-01 ._row-header h2 {
    font-weight: normal;
    font-size: 20px;
    letter-spacing: 0.2em;
    line-height: 54px;
    text-align: center;
    color: #fff;
  }
  .block-recruit-requirement-01 ._row-body {
    padding: 40px 20px 0 20px;
  }
  .block-recruit-requirement-01 ._set + ._set {
    margin-top: 50px;
  }
  .block-recruit-requirement-01 ._set ._left {
    padding: 5px 0;
    border-top: 2px solid #AD0C18;
  }
  .block-recruit-requirement-01 ._set ._left h3 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 28px;
    text-align: left;
    color: #3c3c3c;
  }
  .block-recruit-requirement-01 ._set ._left ._sub {
    margin-top: 5px;
    font-weight: normal;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .block-recruit-requirement-01 ._set ._right {
    margin-top: 10px;
  }
  .block-recruit-requirement-01 ._cols {
    padding: 10px;
  }
  .block-recruit-requirement-01 ._title-set {
    margin-top: 20px;
  }
  .block-recruit-requirement-01 ._title-set h4 {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    color: #ad0c18;
    margin-bottom: 10px;
  }
  .block-recruit-requirement-01 .mod-table b {
    margin-top: 10px;
    font-size: 14px;
  }
  .block-recruit-requirement-01 ._lead {
    text-align: center;
  }
  .block-recruit-requirement-01 ._step-list {
    margin-top: 30px;
  }
  .block-recruit-requirement-01 ._step-list li + li {
    margin-top: 30px;
  }
  .block-recruit-requirement-01 ._step {
    background: #f8f3ef;
  }
  .block-recruit-requirement-01 ._step ._left {
    color: #fff;
    background: #ad0c18;
    padding: 20px 20px 20px 20px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(1) {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #fff;
    margin-bottom: 5px;
    padding-bottom: 5px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(1) b {
    font-weight: normal;
    font-size: 24px;
    letter-spacing: 0.05em;
    padding-left: 5px;
  }
  .block-recruit-requirement-01 ._step ._left div:nth-child(2) {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 20px;
  }
  .block-recruit-requirement-01 ._step ._right.mod-doc {
    padding: 20px 20px;
  }
  .block-recruit-requirement-01 .row-renraku ._head {
    border-bottom: 0px solid #707070;
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 14px;
    padding-left: 80px;
    position: relative;
    font-size: 14px;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-A:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 10px;
    background: url(/images/recruit/requirement/i1.png) left top no-repeat;
    background-size: contain;
    width: 54px;
    height: 42px;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-B {
    padding-top: 10px;
  }
  .block-recruit-requirement-01 .row-renraku ._head.is-B:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 10px;
    background: url(/images/recruit/requirement/i5.png) left top no-repeat;
    background-size: contain;
    width: 54px;
    height: 42px;
  }
  .block-recruit-requirement-01 .row-renraku ._head span {
    line-height: 1.5;
    display: block;
  }
  .block-recruit-requirement-01 .row-renraku ._head span:nth-child(2) {
    font-size: 12px;
  }
  .block-recruit-requirement-01 .row-renraku ._body ._train {
    padding: 0 0 40px 20px;
  }
  .block-recruit-requirement-01 .row-renraku ._map {
    border-top: 1px solid #333;
    position: relative;
    padding: 20px 0 0 80px;
  }
  .block-recruit-requirement-01 .row-renraku ._map a {
    margin-top: 5px;
    display: block;
    font-weight: bold;
    text-decoration: underline;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 14px;
    text-align: left;
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._map:after {
    content: "";
    display: block;
    position: absolute;
    top: 20px;
    left: 10px;
    background: url(/images/recruit/requirement/i2.png) left top no-repeat;
    background-size: contain;
    width: 48px;
    height: 40px;
  }
  .block-recruit-requirement-01 .row-renraku ._tel {
    margin-top: 20px;
    position: relative;
    padding: 5px 0 0 80px;
  }
  .block-recruit-requirement-01 .row-renraku ._tel:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 10px;
    background: url(/images/recruit/requirement/i3.png) left top no-repeat;
    background-size: contain;
    width: 48px;
    height: 32px;
  }
  .block-recruit-requirement-01 .row-renraku ._mail {
    border-bottom: 1px solid #333;
    margin-top: 10px;
    margin-bottom: 20px;
    position: relative;
    padding: 25px 0 25px 80px;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 14px;
    text-align: left;
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._mail a {
    color: #ad0c18;
  }
  .block-recruit-requirement-01 .row-renraku ._mail:after {
    content: "";
    display: block;
    position: absolute;
    top: 20px;
    left: 10px;
    background: url(/images/recruit/requirement/i4.png) left top no-repeat;
    background-size: contain;
    width: 48px;
    height: 32px;
  }
  .block-recruit-person-01 {
    margin-top: -60px;
    padding: 100px 20px 60px 20px;
    background: #F7F4F4;
  }
  .block-recruit-person-01 ._row-header ._t1 {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 28px;
  }
  .block-recruit-person-01 ._row-header ._t2 {
    margin-top: 20px;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 36px;
    color: #ad0c18;
  }
  .block-recruit-person-01 ._row-header ._t3 {
    margin-top: 20px;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 28px;
  }
  .block-recruit-person-01 ._row-body {
    margin-top: 40px;
  }
  .block-recruit-person-01 ._box {
    position: relative;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
  }
  .block-recruit-person-01 ._box ._title {
    position: absolute;
    top: -15px;
    left: 0;
    width: 118px;
    height: 20px;
    background: #ad0c18;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
  }
  .block-recruit-person-01 ._box li {
    padding-left: 15px;
    margin-bottom: 10px;
    position: relative;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .block-recruit-person-01 ._box li:after {
    content: "";
    display: block;
    position: absolute;
    top: 8px;
    left: 0px;
    width: 8px;
    height: 8px;
    background: #ad0c18;
  }
  .block-recruit-faq-01 {
    position: relative;
  }
  .block-recruit-faq-01.is-last {
    padding: 0;
  }
  .block-recruit-faq-01 ._row-header {
    background: #AD0C18;
    color: #fff;
  }
  .block-recruit-faq-01 ._row-header h2 {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.2em;
    line-height: 50px;
    text-align: center;
    color: #fff;
  }
  .block-recruit-faq-01 .block-inner {
    background: #F7F4F4;
  }
  .block-recruit-faq-01 ._row-body {
    padding: 30px 20px 30px 20px;
  }
  .mod-faq {
    margin-top: 20px;
  }
  .mod-faq dd + dt {
    margin-top: 10px;
  }
  .mod-faq b {
    color: red;
  }
  .mod-faq ._q {
    cursor: pointer;
    border-top: 1px solid #AD0C18;
    padding: 20px 40px 20px 40px;
    position: relative;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .mod-faq ._q:after {
    content: "Q";
    display: block;
    position: absolute;
    top: 5px;
    left: 0;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-faq ._q:before {
    content: "";
    display: block;
    position: absolute;
    top: 25px;
    right: 10px;
    background: url(/common/images/mod-faq/arrow.png) left top no-repeat;
    background-size: contain;
    width: 13.5px;
    height: 12px;
  }
  .mod-faq ._q.js-toggle-open:before {
    background-image: url(/common/images/mod-faq/arrow_on.png);
  }
  .mod-faq ._a {
    padding: 10px 0 20px 40px;
    margin: 0;
    position: relative;
  }
  .mod-faq ._a:after {
    content: "A";
    display: block;
    position: absolute;
    top: 10px;
    left: 0px;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #AD0C18;
  }
  body.page-recruit-alumni {
    background-color: #F7F4F4;
  }
  .block-common-alumni-mv {
    position: relative;
  }
  .block-common-alumni-mv ._bg img {
    width: 100%;
  }
  .block-common-alumni-mv ._t {
    position: absolute;
    top: 0px;
    left: 0px;
    font-size: 42px;
    font-weight: bold;
    line-height: 1.16;
    letter-spacing: 0.12em;
    color: #e9e9e9;
  }
  .block-common-alumni-mv ._box {
    position: relative;
    width: 199px;
    height: 89px;
    margin: 0 auto;
    margin-top: -40px;
    color: #fff;
    background: rgba(173, 12, 24, 0.9);
    border-radius: 40px 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-common-alumni-mv ._box ._sub {
    display: block;
    margin: 0 auto;
    width: 84px;
    height: 23px;
    border: 1px solid #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.15em;
  }
  .block-common-alumni-mv ._box h1 {
    text-align: center;
    margin-top: 10px;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.2em;
  }
  /* ----------------------------------------------------------
  .block-recruit-alumni-main
  ---------------------------------------------------------- */
  .block-recruit-alumni-main {
    padding: 50px 25px 30px 25px;
    position: relative;
  }
  .block-recruit-alumni-main ._row-body {
    margin-top: 20px;
  }
  .block-recruit-alumni-main ._btns {
    margin-top: 30px;
    text-align: center;
  }
  .block-recruit-alumni-main.is-last {
    padding-bottom: 60px;
  }
  .mod-title-alumni:before {
    content: "";
    display: block;
    margin: 0 auto 13px auto;
    background: url(/images/recruit/alumni/icon.png) left top no-repeat;
    background-size: contain;
    width: 45px;
    height: 45px;
  }
  .mod-title-alumni h2 {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 16px;
    text-align: center;
    color: #ad0c18;
  }
  .mod-li.is-alumni li {
    position: relative;
    border-bottom: 1px dashed #AD0C18;
    padding: 10px 10px 10px 25px;
    font-size: 12px;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-li.is-alumni li:after {
    content: "";
    display: block;
    position: absolute;
    top: 14px;
    left: 0px;
    width: 10px;
    height: 10px;
    border: 2px solid #AD0C18;
  }
  .mod-btn.is-entry {
    background-color: #AD0C18;
    width: 285px;
    height: 60px;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.2em;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
  }
  .mod-btn.is-entry span {
    position: relative;
  }
  .mod-btn.is-entry span:after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    right: -20px;
    background: url(/common/images/icon/icon_arrow.png) left top no-repeat;
    background-size: contain;
    width: 13px;
    height: 9px;
  }
  .mod-faq2 {
    background-color: #fff;
  }
  .mod-faq2 dd + dt {
    margin-top: 5px;
  }
  .mod-faq2 ._q {
    cursor: pointer;
    border-bottom: 1px dashed #AD0C18;
    padding: 13px 20px 15px 50px;
    position: relative;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    font-weight: bold;
  }
  .mod-faq2 ._q:after {
    content: "Q";
    display: block;
    position: absolute;
    top: -3px;
    left: 15px;
    font-weight: 500;
    font-size: 30px;
    letter-spacing: 0.05em;
    color: #3c3c3c;
  }
  .mod-faq2 ._a {
    padding: 10px 20px 20px 50px;
    margin: 0;
    position: relative;
  }
  .mod-faq2 ._a:after {
    content: "A";
    display: block;
    position: absolute;
    top: 10px;
    left: 15px;
    font-weight: 500;
    font-size: 30px;
    letter-spacing: 0.05em;
    color: #AD0C18;
  }
  .mod-faq2 a {
    color: #AD0C18;
  }
  /* ----------------------------------------------------------
  .block-form
  ---------------------------------------------------------- */
  .block-form {
    color: #444D67;
    padding: 30px 20px 20px 20px;
  }
  .block-form a {
    color: #444D67;
  }
  .block-form h3 {
    font-size: 18px;
    text-align: center;
    font-weight: bold;
    line-height: 1.33;
    letter-spacing: 0.2em;
    color: #3c3c3c;
    margin: 30px 0 20px 0;
  }
  .block-form ._box {
    background-color: #fff;
    padding: 20px 20px 20px 20px;
  }
  .block-form ._w50 {
    width: 50px;
  }
  .block-form ._w60 {
    width: 60px;
  }
  .block-form ._w70 {
    width: 70px;
  }
  .block-form ._w80 {
    width: 80px;
  }
  .block-form ._w90 {
    width: 90px;
  }
  .block-form ._w100 {
    width: 100px;
  }
  .block-form ._w200 {
    width: 200px;
  }
  .block-form ._w400 {
    width: 400px;
  }
  .block-form ._w10p {
    width: calc(10% - 5px);
  }
  .block-form ._w20p {
    width: calc(20% - 5px);
  }
  .block-form ._w30p {
    width: calc(30% - 5px);
  }
  .block-form ._w45p {
    width: calc(45% - 5px);
  }
  .block-form ._w40p {
    width: calc(40% - 5px);
  }
  .block-form ._w50p {
    width: calc(50% - 5px);
  }
  .block-form ._w60p {
    width: calc(60% - 5px);
  }
  .block-form ._w70p {
    width: calc(70% - 5px);
  }
  .block-form ._w80p {
    width: calc(80% - 5px);
  }
  .block-form ._w90p {
    width: calc(90% - 5px);
  }
  .block-form ._w100p {
    width: 100%;
  }
  .block-form {
    /* ---------- table ---------- ---------- */
    /* ---------- misc ---------- ---------- */
  }
  .block-form table._form-row-table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin: 10px 0;
  }
  .block-form table._form-row-table p {
    margin: 0;
  }
  .block-form table._form-row-table th {
    position: relative;
    display: block;
    padding: 0px 0 15px 40px;
    font-size: 16px;
  }
  .block-form table._form-row-table td {
    position: relative;
    display: block;
    padding: 0px 0 25px 0;
    font-size: 16px;
  }
  .block-form table._form-row-confirm {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin: 10px 0;
  }
  .block-form table._form-row-confirm p {
    margin: 0;
  }
  .block-form table._form-row-confirm th {
    position: relative;
    padding: 30px 0 10px 0;
    font-size: 12px;
    display: block;
    color: #837F7F;
  }
  .block-form table._form-row-confirm td {
    position: relative;
    border-bottom: 1px solid #E9E9E9;
    padding: 0px 0 15px 0;
    display: block;
    font-size: 16px;
  }
  .block-form ._row {
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .block-form ._row.is-fit {
    display: flex;
    justify-content: space-between;
  }
  .block-form ._row._row-error {
    color: #E50000;
    background: #ffe;
    font-size: 85%;
  }
  .block-form ._row._row-error {
    display: none;
  }
  .block-form ._row._row-note {
    color: #888;
    font-size: 16px;
  }
  .block-form ._row span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
  }
  .block-form ._row span._col + ._col {
    margin-left: 5px;
  }
  .block-form ._note {
    font-size: 12px;
    line-height: 1;
    color: #3c3c3c;
  }
  .block-form ._req {
    display: inline-block;
    border: 1px solid #E50000;
    color: #E50000;
    font-weight: normal;
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 3px;
    font-size: 12px;
  }
  .block-form ._not-req {
    display: inline-block;
    background-color: #E9E9E9;
    color: #837F7F;
    font-weight: normal;
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 4px;
    font-size: 12px;
  }
  .block-form ._btn-post {
    padding: 10px 20px;
    margin: 5px 0;
    background: #888;
    color: #fff;
    text-decoration: none;
    transition-duration: 0.2s;
    cursor: pointer;
  }
  .block-form ._btn-post:hover {
    background: #666;
  }
  .block-form ._form-row-btns-comfirm {
    margin: 40px 0;
  }
  .block-form ._form-row-btns-comfirm ._btns {
    display: flex;
    gap: 10px;
    flex-direction: column;
    align-items: center;
  }
  .block-form ._form-row-btns-comfirm ._btn-send {
    position: relative;
    text-align: center;
    text-decoration: none;
    padding: 20px;
    border: none;
    border-radius: 10px;
    display: block;
    width: 260px;
    font-size: 16px;
    color: #fff;
    background: #AD0C18;
    cursor: pointer;
  }
  .block-form ._form-row-btns-comfirm ._btn-send:hover {
    opacity: 0.8;
  }
  .block-form ._form-row-btns-comfirm ._btn-back {
    position: relative;
    text-align: center;
    text-decoration: none;
    padding: 20px;
    border: none;
    border-radius: 10px;
    display: block;
    width: 260px;
    color: #3c3c3c;
    background: #F7F4F4;
    font-size: 16px;
    cursor: pointer;
  }
  .block-form ._form-row-btns-comfirm ._btn-back:hover {
    background: #ddd;
  }
  .block-form ._form-row-btns {
    margin: 20px 0 30px 0;
    text-align: center;
    font-size: 16px;
  }
  .block-form ._form-row-btns a {
    text-decoration: underline;
  }
  .block-form ._form-row-btns ._btns {
    padding: 50px 0;
  }
  .block-form ._form-row-btns ._btn-send {
    position: relative;
    text-align: center;
    border: none;
    outline: none;
    color: #fff;
    text-decoration: none;
    transition-duration: 0.2s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background: #AD0C18;
    border-radius: 0;
    font-size: 16px;
    letter-spacing: 0.2em;
    width: 280px;
    height: 90px;
    margin: 5px 0;
    display: inline-block;
    background-image: url(/common/images/icon/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: right 40px center;
    background-size: 26px 18px;
    pointer-events: none;
    background: #ddd;
  }
  .block-form ._form-row-btns ._btn-send:hover {
    opacity: 0.8;
  }
  .block-form ._form-row-btns ._btn-send.is-active {
    background: #AD0C18;
    pointer-events: auto;
  }
  .block-form ._form-row-thanks {
    text-align: center;
    padding: 30px 0;
  }
  .block-form ._form-row-thanks p {
    font-size: 12px;
    line-height: 1.75;
  }
  /* ----------------------------------------------------------
  .block-contact-form input forms
  ---------------------------------------------------------- */
  .block-form {
    /* ---------- input,textarea ---------- ---------- */
    /* ---------- radio, checkbox ---------- ---------- */
  }
  .block-form input[type=text],
  .block-form input[type=number],
  .block-form textarea,
  .block-form select {
    font-size: 16px;
  }
  .block-form input[type=text]::placeholder,
  .block-form input[type=number]::placeholder,
  .block-form textarea::placeholder,
  .block-form select::placeholder {
    font-size: 16px;
  }
  .block-form input[type=text],
  .block-form input[type=number],
  .block-form textarea,
  .block-form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #E9E9E9;
    border-radius: 0;
    width: calc(100% - 12px);
    padding: 14px 5px;
    background: #F7F4F4;
    vertical-align: top;
    color: #3c3c3c;
  }
  .block-form input[type=text]._error,
  .block-form input[type=number]._error,
  .block-form textarea._error,
  .block-form select._error {
    background: #f7e9eb;
  }
  .block-form input[type=text]:focus,
  .block-form input[type=number]:focus,
  .block-form textarea:focus,
  .block-form select:focus {
    background: #F7F4F4;
    border: 1px solid #837F7F;
  }
  .block-form input[type=text].is-error,
  .block-form input[type=number].is-error,
  .block-form textarea.is-error,
  .block-form select.is-error {
    border: 1px solid #E50000;
  }
  .block-form select {
    width: 100%;
  }
  .block-form input::-webkit-input-placeholder,
  .block-form textarea::-webkit-input-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form input:-ms-input-placeholder,
  .block-form textarea:-ms-input-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form input::-moz-placeholder,
  .block-form textarea::-moz-placeholder {
    color: #bbbbbb;
    font-size: 16px;
  }
  .block-form select {
    padding-right: 30px;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAGCAYAAAAPDoR2AAAAU0lEQVQImWXMsRFAQBhE4c+NlrRwiWpkciqgAzVQjQbEssskvxlzNtl982a2yTnv6P1zJAwolSgYEk6slVxwpoAJV+wLM7zyxhh7DNZ+rjZ00eABf7EPZ13p3eYAAAAASUVORK5CYII=");
    background-size: 8px 8px;
    background-repeat: no-repeat;
    background-position: right 10px top 50%;
  }
  .block-form select::-ms-expand {
    display: none;
  }
  .block-form textarea {
    resize: none;
    height: 200px;
  }
  .block-form ._list li {
    display: inline-block;
    padding: 0 20px 0 0;
  }
  .block-form ._list-radio label,
  .block-form ._list-checkbox label {
    position: relative;
    padding-left: 30px;
    font-size: 16px;
    display: inline-block;
    transition-duration: 0.2s;
    line-height: 1.4;
    cursor: pointer;
  }
  .block-form ._list-radio label:hover,
  .block-form ._list-checkbox label:hover {
    opacity: 0.8;
  }
  .block-form ._list-radio label {
    margin: 5px 0;
  }
  .block-form ._list-radio label:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    margin-top: -12px;
    width: 18px;
    height: 18px;
    background: #fff;
    border-radius: 2px;
  }
  .block-form ._list-radio label:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 5px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    opacity: 0;
    z-index: 10;
  }
  .block-form ._list-radio label:after {
    border: 2px solid #ddd;
  }
  .block-form ._list-radio label:before {
    background: #888;
  }
  .block-form ._list-radio input[type=radio] {
    display: none;
  }
  .block-form ._list-radio input[type=radio]:checked + label:before {
    opacity: 1;
  }
  .block-form ._list-radio label:before {
    border-radius: 50%;
  }
  .block-form ._list-radio label:after {
    border-radius: 50%;
  }
  .block-form ._list-checkbox label {
    margin: 5px 0;
  }
  .block-form ._list-checkbox label:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 4px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border-radius: 1px;
  }
  .block-form ._list-checkbox label:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    margin-top: -11px;
    width: 16px;
    height: 16px;
    border-radius: 2px;
  }
  .block-form ._list-checkbox label:after {
    background: #fff;
  }
  .block-form ._list-checkbox label:before {
    border: 2px solid #ddd;
    background: #fff;
  }
  .block-form ._list-checkbox input[type=checkbox] {
    display: none;
  }
  .block-form ._list-checkbox input[type=checkbox]:checked + label:after {
    background: #888;
  }
  .block-form ._test {
    margin: 30px 0;
    padding: 20px;
    border: 1px solid red;
    color: red;
  }
  .block-form ._test input {
    margin: 10px;
  }
}