@charset "UTF-8";
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-career-main {
    padding: 80px 0 140px 0;
    position: relative;
  }
  .block-career-main img {
    width: 100%;
  }
  .block-career-main ._row-body {
    margin-top: 50px;
    display: flex;
    gap: 140px;
    flex-direction: column;
  }
  .mod-career-main-cols {
    display: flex;
    gap: 100px;
  }
  .mod-career-main-cols.is-l ._img {
    margin-left: min(0, -200px);
  }
  .mod-career-main-cols.is-r {
    flex-direction: row-reverse;
  }
  .mod-career-main-cols.is-r ._img {
    margin-right: min(0, -200px);
  }
  .mod-career-main-cols ._cols-image {
    width: 400px;
  }
  .mod-career-main-cols ._cols-image img {
    width: 100%;
  }
  .mod-career-main-cols ._deco1 {
    margin-top: 80px;
    width: 370px;
  }
  .mod-career-main-cols ._prof {
    position: relative;
    width: 300px;
    padding: 20px;
    background-color: #fff;
    margin-top: -80px;
    color: #002e67;
    box-shadow: 15px 15px 0 #002e67;
  }
  .mod-career-main-cols ._prof.is-B {
    margin-left: auto;
  }
  .mod-career-main-cols ._prof ._job {
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._div {
    margin-top: 7px;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._name {
    border-top: 1px solid #002e67;
    padding-top: 12px;
  }
  .mod-career-main-cols ._prof ._name {
    margin-top: 16px;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: 0.2em;
  }
  .mod-career-main-cols ._prof ._spec {
    margin-top: 11px;
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._cols-texts {
    flex: 1;
    display: flex;
    gap: 60px;
    flex-direction: column;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span {
    background-color: #fff;
    color: #00a0e6;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span:before {
    border-left: 25px solid #fff;
  }
  .mod-career-main-cols ._cols-texts ._title span {
    display: inline-block;
    min-width: 260px;
    background-color: #00a0e6;
    padding: 10px 0 10px 20px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    position: relative;
  }
  .mod-career-main-cols ._cols-texts ._title span:before {
    content: "";
    position: absolute;
    top: 0;
    right: -50px;
    width: 25px;
    height: 25px;
    box-sizing: border-box;
    border: 25px solid transparent;
    border-left: 25px solid #00a0e6;
    transform: scale(1, 1);
  }
  .mod-career-main-cols ._cols-texts ._doc {
    margin-top: 15px;
  }
  .block-career-qa {
    padding: 140px 0 120px 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-career-qa img {
    width: 100%;
  }
  .block-career-qa ._inner {
    max-width: 1000px;
    margin: 0 auto;
  }
  .block-career-qa ._row-body {
    margin-top: 40px;
  }
  .mod-faq-wrap {
    display: flex;
    gap: 40px;
    flex-direction: column;
  }
  .mod-faq ._head {
    position: relative;
    cursor: pointer;
    background: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.74;
    letter-spacing: 0.2em;
    color: #00a0e6;
    border: 1px solid #00a0e6;
    padding: 10px 10px 10px 70px;
  }
  .mod-faq ._head:after {
    content: "Q";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    padding-left: 2px;
    width: 50px;
    background-color: #002e67;
    font-size: 30px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Oswald, sans-serif;
  }
  .mod-faq ._head.is-open ._toggle-icon {
    transform: rotate(0);
  }
  .mod-faq ._head ._toggle-icon {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 40px;
    height: 40px;
    transition-duration: 0.2s;
    transform: rotate(180deg);
  }
  .mod-faq ._head ._toggle-icon:before {
    position: absolute;
    top: 7px;
    left: 12px;
    display: block;
    content: "";
    height: 15px;
    width: 15px;
    border: 2px solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
  }
  .mod-faq ._body {
    padding: 20px 20px 0 120px;
  }
  .mod-faq ._box {
    position: relative;
    background-color: #fff;
    padding: 20px 30px 20px 30px;
  }
  .mod-faq ._box:before {
    content: "";
    position: absolute;
    top: 30px;
    left: -40px;
    width: 20px;
    height: 20px;
    box-sizing: border-box;
    border: 20px solid transparent;
    border-right: 20px solid #fff;
    transform: scale(1, 1);
  }
  .mod-faq ._box ._face {
    position: absolute;
    top: 20px;
    left: -100px;
    width: 60px;
    height: 60px;
  }
  .block-career-info {
    padding: 140px 0 140px 0;
    position: relative;
  }
  .block-career-info ._inner {
    max-width: 1000px;
    margin: 0 auto;
  }
  .block-career-info ._row-body {
    margin-top: 30px;
  }
  .mod-modal-btn-close {
    position: relative;
    width: 80px;
    height: 80px;
    background-color: #fff;
    border-radius: 50%;
    border: 2px solid #00a0e6;
    z-index: 10;
    cursor: pointer;
  }
  .mod-modal-btn-close.is-bk {
    border-color: #002e67;
  }
  .mod-modal-btn-close.is-bk span {
    background: #002e67;
  }
  .mod-modal-btn-close span {
    content: "";
    position: absolute;
    background: #00a0e6;
    top: 36px;
    left: 24px;
    width: 30px;
    height: 2px;
    transform: rotate(-45deg);
  }
  .mod-modal-btn-close span:nth-child(2) {
    transform: rotate(45deg);
  }
  .mod-modal-navi {
    display: flex;
  }
  .mod-modal-navi-btn.is-prev {
    display: block;
    width: 60px;
    height: 100px;
    background: url(../images/icon/arrow_prev_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 50px);
    left: -100px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-modal-navi-btn.is-prev:hover {
    opacity: 0.8;
  }
  .mod-modal-navi-btn.is-next {
    display: block;
    width: 60px;
    height: 100px;
    background: url(../images/icon/arrow_next_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 50px);
    right: -100px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-modal-navi-btn.is-next:hover {
    opacity: 0.8;
  }
  .area-modal-entry {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-entry.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-entry .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-entry ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 46, 103, 0.9);
  }
  .area-modal-entry ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #c6ebfa;
    width: 800px;
    padding: 80px 80px;
  }
  .block-modal-entry {
    position: relative;
  }
  .block-modal-entry ._row-header {
    border-bottom: 2px solid #002e67;
  }
  .block-modal-entry ._row-header h2 {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.2em;
    color: #002e67;
    padding: 0 0 30px 0;
  }
  .block-modal-entry ._row-body {
    margin-top: 40px;
  }
  .block-modal-entry ul {
    display: flex;
    justify-content: center;
    gap: 20px;
  }
  .block-modal-entry ul li {
    width: 320px;
  }
  .mod-btn-modal-entry {
    padding: 20px 50px 20px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 4px solid #002e67;
    border-radius: 50px;
    color: #002e67;
    cursor: pointer;
    background: #fff;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-btn-modal-entry:after {
    content: "";
    display: block;
    position: absolute;
    top: 15px;
    right: 15px;
    background: url(../images/icon/icon2.png) left top no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
  }
  .mod-btn-modal-entry:hover {
    background-color: #002e67;
    color: #fff;
  }
  .mod-btn-modal-entry:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-btn-modal-entry ._ja {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-btn-modal-entry ._en {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .mod-hover {
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-hover:hover {
    opacity: 0.8;
  }
  .mod-deco {
    pointer-events: none;
  }
  .mod-btn-wrap:hover .mod-btn-more {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-wrap:hover .mod-btn-more span {
    color: orange;
  }
  .mod-btn-more {
    width: 180px;
    height: 48px;
    background: url(../img/common/btn_more.svg) left top no-repeat;
    background-size: contain;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
  }
  .mod-btn-more span {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.075em;
    color: #000;
    padding-right: 30px;
    transition-duration: 0.2s;
  }
  .mod-btn-more:hover {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-more:hover span {
    color: #00a0e6;
  }
  .block-common-mv {
    position: relative;
  }
  .block-common-mv img {
    width: 100%;
  }
  .block-common-mv ._image {
    position: relative;
  }
  .block-common-mv ._image img {
    object-fit: cover;
  }
  .block-common-mv ._image img {
    min-height: 560px;
  }
  .block-common-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -58%);
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) and (min-width: 1281px) {
  .block-common-mv ._texts {
    left: max(0, calc(50% - 600px));
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  .block-common-mv ._texts {
    left: 40px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-common-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-common-mv ._texts ._cate {
    font-size: 18px;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #ff8c00;
    padding: 15px 30px;
  }
  .block-common-mv ._texts ._en {
    font-size: 80px;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 10px 20px;
  }
  .block-common-mv ._texts ._en i {
    font-style: italic;
  }
  .block-common-mv ._texts h1 {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 13px 25px;
  }
  .mod-doc {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-doc.is-note {
    font-size: 14px;
    margin-left: 1em;
    text-indent: -1em;
  }
  .mod-common-h2 {
    color: #00a0e6;
  }
  .mod-common-h2.is-center {
    text-align: center;
  }
  .mod-common-h2.is-wh {
    color: #fff;
  }
  .mod-common-h2 ._en {
    font-size: 80px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.075em;
  }
  .mod-common-h2 h2 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
  }
  .block-common-footer-navi {
    padding: 80px 0 120px;
    background-color: #fff;
    position: relative;
  }
  .block-common-footer-navi ._row-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .block-common-footer-navi ._row-header ._en {
    background-color: #00a0e6;
    font-size: 50px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 1px 18px;
  }
  .block-common-footer-navi ._row-header h2 {
    background-color: #00a0e6;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
    color: #fff;
    padding: 10px 20px;
  }
  .block-common-footer-navi ._row-body {
    margin-top: 25px;
  }
  .block-common-footer-navi ._items {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
  }
  .block-common-footer-navi ._item {
    position: relative;
    display: flex;
    gap: 10px;
    padding-right: 40px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .block-common-footer-navi ._item:hover {
    opacity: 0.8;
  }
  .block-common-footer-navi ._item:hover:before {
    right: -10px;
    width: 100px;
  }
  .block-common-footer-navi ._item:before {
    content: "";
    display: block;
    position: absolute;
    top: 40px;
    right: 0;
    width: 100px;
    height: 2px;
    background: #00a0e6;
    transition-duration: 0.2s;
  }
  .block-common-footer-navi ._item ._item-image {
    width: 100px;
  }
  .block-common-footer-navi ._item ._item-image img {
    width: 100%;
  }
  .block-common-footer-navi ._item ._item-texts {
    padding-top: 20px;
    flex: 1;
    color: #00a0e6;
  }
  .block-common-footer-navi ._item ._item-texts ._en {
    display: inline-block;
    position: relative;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.075em;
    background-color: #fff;
    padding: 0 10px 0 0;
  }
  .block-common-footer-navi ._item ._item-texts ._ja {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .block-common-pagelink {
    padding: 60px 0;
  }
  .mod-common-pagelinks {
    display: flex;
    gap: 32px;
  }
  .mod-common-pagelinks li {
    text-align: center;
    line-height: 1;
    position: relative;
  }
  .mod-common-pagelinks li a {
    display: block;
    padding: 0 40px 20px 0;
    font-size: 18px;
    letter-spacing: 0.1em;
    color: #00a0e6;
    border-bottom: 2px solid #00a0e6;
    font-weight: 700;
    position: relative;
    cursor: pointer;
  }
  .mod-common-pagelinks li a:before {
    position: absolute;
    top: 0;
    right: 4px;
    display: block;
    content: "";
    height: 10px;
    width: 10px;
    border: 2px solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
    transition-duration: 0.2s;
  }
  .mod-common-pagelinks li a:hover {
    opacity: 0.8;
  }
  .mod-common-pagelinks li a:hover:before {
    top: 4px;
  }
  .block-crosstalk-intro {
    padding-top: 50px;
    padding-bottom: 110px;
  }
  .block-crosstalk-intro .block-inner {
    position: relative;
  }
  .block-crosstalk-intro .block-inner ._doc {
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
    color: #000;
  }
  .block-crosstalk-prof {
    padding-top: 0;
    padding-bottom: 65px;
    background: #cff0ff;
  }
  .block-crosstalk-prof .block-inner {
    position: relative;
    padding-left: 100px;
  }
  .block-crosstalk-prof h2 {
    position: absolute;
    top: -30px;
    left: -60px;
    font-weight: 300;
    writing-mode: vertical-rl;
    font-size: 100px;
    line-height: 1.8;
    letter-spacing: 0.07em;
    color: #00a0e6;
  }
  .mod-crosstalk-prof-items {
    display: flex;
    justify-content: space-between;
    gap: 80px;
    flex-wrap: wrap;
  }
  .mod-crosstalk-prof-items img {
    width: 100%;
  }
  .mod-crosstalk-prof-items > li {
    width: calc(25% - 60px);
  }
  .mod-crosstalk-prof-items > li .item {
    display: block;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._item-image {
    text-align: center;
  }
  .mod-crosstalk-prof-items > li .item ._item-image img {
    width: 200px;
  }
  .mod-crosstalk-prof-items > li .item ._item-texts {
    margin-top: 20px;
  }
  .mod-crosstalk-prof-items > li .item ._job {
    position: relative;
  }
  .mod-crosstalk-prof-items > li .item ._job span {
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #fff;
    background: #002e67;
    padding: 2px 5px;
  }
  .mod-crosstalk-prof-items > li .item ._place {
    margin-top: 9px;
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._name {
    margin-top: 2px;
    font-size: 24px;
    line-height: 1.8;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._year {
    margin-top: 0;
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    border-top: 1px solid #000;
    padding-top: 15px;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    margin-top: 13px;
    font-size: 16px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-crosstalk-talks {
    padding: 150px 0 100px 0;
    display: flex;
    gap: 140px;
    flex-direction: column;
  }
  .block-crosstalk-talks img {
    width: 100%;
  }
  .block-crosstalk-talk {
    position: relative;
  }
  .block-crosstalk-talk ._row-header {
    width: 100%;
    position: relative;
  }
  .block-crosstalk-talk ._row-header ._title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .block-crosstalk-talk ._row-header ._image {
    position: relative;
    width: 1200px;
    transform: translate(200px, 0);
  }
  .block-crosstalk-talk ._row-header.is-B ._title {
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
  }
  .block-crosstalk-talk ._row-header.is-B ._image {
    position: relative;
    width: 1200px;
    transform: translate(-200px, 0);
  }
  .block-crosstalk-talk ._row-body {
    margin-top: 80px;
    display: flex;
    gap: 60px;
    flex-direction: column;
  }
  .block-crosstalk-talk ._deco1 {
    position: absolute;
    top: 190px;
    left: -55px;
    width: 230px;
  }
  .block-crosstalk-talk ._deco2 {
    position: absolute;
    top: 160px;
    right: -95px;
    width: 260px;
  }
  .block-crosstalk-talk ._deco3 {
    position: absolute;
    top: 300px;
    left: -75px;
    width: 280px;
  }
  .mod-crosstalk-talks-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-crosstalk-talks-head ._en {
    background-color: #002e67;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 8px 18px;
  }
  .mod-crosstalk-talks-head h2 {
    background-color: #00a0e6;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 12px 20px;
  }
  .mod-crosstalk-talks-col1 {
    display: flex;
    gap: 100px;
    flex-direction: row-reverse;
  }
  .mod-crosstalk-talks-col1 ._col-image {
    padding-top: 40px;
    width: 200px;
  }
  .mod-crosstalk-talks-col1 ._col-image img {
    width: 400px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1300px) {
  .mod-crosstalk-talks-col1 ._col-image {
    width: 300px;
  }
  .mod-crosstalk-talks-col1 ._col-image img {
    width: 340px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .mod-crosstalk-talks-col1 ._col-texts {
    flex: 1;
  }
  .mod-crosstalk-talks-col2 {
    display: flex;
    gap: 100px;
  }
  .mod-crosstalk-talks-col2 ._col-image {
    padding-top: 40px;
    width: 300px;
  }
  .mod-crosstalk-talks-col2 ._col-image img {
    width: 500px;
    transform: translate(-200px, 0);
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1300px) {
  .mod-crosstalk-talks-col2 ._col-image {
    width: 300px;
  }
  .mod-crosstalk-talks-col2 ._col-image img {
    width: 300px;
    transform: translate(0, 0);
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .mod-crosstalk-talks-col2 ._col-texts {
    padding-top: 20px;
    flex: 1;
  }
  .mod-talk {
    display: flex;
    gap: 12px;
    flex-direction: column;
  }
  .mod-talk ._talk {
    position: relative;
    display: flex;
    align-items: center;
    gap: 40px;
  }
  .mod-talk ._talk ._talk-face {
    width: 100px;
  }
  .mod-talk ._talk ._talk-texts {
    flex: 1;
  }
  .mod-talk ._talk ._talk-face img {
    width: 100px;
    border-radius: 50%;
  }
  .mod-talk ._talk ._talk-face span {
    margin-top: 10px;
    font-size: 14px;
    display: block;
    text-align: center;
  }
  .mod-talk ._talk ._talk-texts {
    padding-top: 35px;
  }
  .block-crosstalk-last img {
    width: 100%;
  }
  body.page-future {
    background-color: #d6f1fc;
  }
  .block-future-main {
    position: relative;
  }
  .mod-future-main {
    position: relative;
  }
  .mod-future-main img {
    width: 100%;
  }
  .mod-future-main:after {
    display: block;
    content: "";
    padding-top: 385.3333333333%;
  }
  .mod-future-main ._deco10 {
    position: absolute;
    top: 73.46%;
    left: 91.67%;
    width: 19.17%;
  }
  .mod-future-main ._deco11 {
    position: absolute;
    top: 87.74%;
    left: -10.5%;
    width: 23.33%;
  }
  .mod-future-main ._p13 {
    position: absolute;
    top: 76.92%;
    left: 41.67%;
    width: 58.33%;
  }
  .mod-future-main ._p15 {
    position: absolute;
    top: 91.76%;
    left: 8.33%;
    width: 33.33%;
  }
  .mod-future-main ._p14 {
    position: absolute;
    top: 88.6%;
    left: 37.5%;
    width: 25%;
  }
  .mod-future-main ._p16 {
    position: absolute;
    top: 92.6%;
    left: 70.17%;
    width: 18.33%;
  }
  .mod-future-main ._p7 {
    position: absolute;
    top: 48.59%;
    left: 0;
    width: 36.67%;
  }
  .mod-future-main ._p11 {
    position: absolute;
    top: 61.79%;
    left: 65%;
    width: 40%;
  }
  .mod-future-main ._p8 {
    position: absolute;
    top: 50.11%;
    left: 75%;
    width: 20%;
  }
  .mod-future-main ._p12 {
    position: absolute;
    top: 70%;
    left: 75%;
    width: 15%;
  }
  .mod-future-main ._p10 {
    position: absolute;
    top: 66.54%;
    left: 50%;
    width: 20%;
  }
  .mod-future-main ._p9 {
    position: absolute;
    top: 67.41%;
    left: 6.67%;
    width: 33.33%;
  }
  .mod-future-main ._deco8 {
    position: absolute;
    top: 45.7%;
    left: 95%;
    width: 11.67%;
  }
  .mod-future-main ._deco9 {
    position: absolute;
    top: 62.87%;
    left: -4.92%;
    width: 9.83%;
  }
  .mod-future-main ._deco6 {
    position: absolute;
    top: 23.31%;
    left: 91.67%;
    width: 19.17%;
  }
  .mod-future-main ._deco7 {
    position: absolute;
    top: 39.94%;
    left: 1.67%;
    width: 23.33%;
  }
  .mod-future-main ._p6 {
    position: absolute;
    top: 39.08%;
    left: 70%;
    width: 30%;
  }
  .mod-future-main ._p1 {
    position: absolute;
    top: 15.16%;
    left: 42.83%;
    width: 58.33%;
  }
  .mod-future-main ._p4 {
    position: absolute;
    top: 30.64%;
    left: -6.67%;
    width: 21.67%;
  }
  .mod-future-main ._p5 {
    position: absolute;
    top: 35.83%;
    left: 10%;
    width: 41.67%;
  }
  .mod-future-main ._p2 {
    position: absolute;
    top: 27.18%;
    left: 37.5%;
    width: 30%;
  }
  .mod-future-main ._p3 {
    position: absolute;
    top: 29.78%;
    left: 71.67%;
    width: 20%;
  }
  .mod-future-main ._deco3 {
    position: absolute;
    top: 3.11%;
    left: 80.17%;
    width: 6.42%;
  }
  .mod-future-main ._deco2 {
    position: absolute;
    top: 7.31%;
    left: 0;
    width: 25%;
  }
  .mod-future-main ._deco1 {
    position: absolute;
    top: 0;
    left: -10.5%;
    width: 20.42%;
  }
  .mod-future-main ._deco5 {
    position: absolute;
    top: 5.99%;
    left: 93.75%;
    width: 12.5%;
  }
  .mod-future-main ._deco4 {
    position: absolute;
    top: 10.21%;
    left: 75.83%;
    width: 25.5%;
  }
  .mod-future-main ._logo {
    position: absolute;
    top: 8.61%;
    left: 29.17%;
    width: 41.67%;
  }
  .mod-future-main ._titles {
    position: absolute;
    top: 2.96%;
    left: -0.03%;
    width: 100%;
    text-align: center;
    display: flex;
    gap: 30px;
    flex-direction: column;
  }
  .mod-future-main ._titles ._title {
    font-size: 48px;
    line-height: 1.45;
    color: #002e67;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-future-main ._titles ._lead {
    font-size: 18px;
    line-height: 1.88;
    color: #000;
    letter-spacing: 0.075em;
  }
  .mod-future-main ._texts1 {
    position: absolute;
    top: 15.94%;
    left: 0;
  }
  .mod-future-main ._texts2 {
    position: absolute;
    top: 49.44%;
    left: 41.42%;
  }
  .mod-future-main ._texts3 {
    position: absolute;
    top: 77.79%;
    left: 0;
  }
  .block-future-bg {
    padding: 100px 0 0;
  }
  .block-future-bg img {
    width: 100%;
  }
  .mod-future-texts {
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
  }
  .mod-future-texts ._title {
    font-size: 30px;
    line-height: 2.33;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #fff;
    background: #00a0e6;
    padding: 0 20px;
  }
  .mod-future-texts ._doc {
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: flex-start;
  }
  .mod-future-texts ._doc span {
    background: #fff;
    font-size: 16px;
    line-height: 2.5;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #00a0e6;
    padding: 0 20px;
  }
  .block-common-mv ._high-school {
    width: 580px;
  }
  .block-high-school-main {
    padding: 85px 0 40px 0;
    position: relative;
  }
  .block-high-school-main img {
    width: 100%;
  }
  .block-high-school-main ._box {
    position: relative;
    background-color: #cff0ff;
    padding: 80px 95px;
    display: flex;
    gap: 20px;
    flex-direction: column;
  }
  .block-high-school-main ._row1 {
    margin-right: 320px;
  }
  .block-high-school-main ._title {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #000;
    padding-bottom: 20px;
    margin-bottom: 30px;
  }
  .block-high-school-main ._deco1 {
    position: absolute;
    top: 50px;
    right: 0;
    width: 360px;
  }
  .block-high-school-main ._deco2 {
    position: absolute;
    bottom: 40px;
    left: -120px;
    width: 200px;
  }
  .block-high-school-menu {
    padding: 75px 0 100px 0;
    position: relative;
  }
  .block-high-school-menu img {
    width: 100%;
  }
  .block-high-school-menu ._cols {
    display: flex;
    gap: 160px;
  }
  .block-high-school-menu ._cols ._col-title {
    width: 340px;
  }
  .block-high-school-menu ._cols ._col-menus {
    width: 641px;
    display: flex;
    gap: 50px;
    flex-direction: column;
  }
  .block-high-school-menu ._cols ._col-menus a {
    display: block;
  }
  .block-high-school-menu ._deco1 {
    display: block;
    width: 290px;
    margin-top: 20px;
    margin-left: auto;
  }
  .mod-high-school-btn {
    display: block;
    position: relative;
    cursor: pointer;
    transition-duration: 0.2s;
    color: #00a0e6;
  }
  .mod-high-school-btn:hover {
    transform: translate(0.5vw, 0);
  }
  .mod-high-school-btn ._ts {
    position: absolute;
    top: 5px;
    left: 200px;
  }
  .mod-high-school-btn ._en {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.075em;
  }
  .mod-high-school-btn ._ja {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.2;
  }
  .block-high-school-interview {
    padding: 140px 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-high-school-interview img {
    width: 100%;
  }
  .block-high-school-interview ._row-body {
    margin-top: 60px;
    display: flex;
    gap: 120px;
    flex-direction: column;
  }
  .block-high-school-interview .mod-career-main-cols .mod-doc {
    color: #00a0e6;
  }
  .block-high-school-interview ._row-header2 {
    margin-top: 130px;
    position: relative;
  }
  .block-high-school-interview ._row-body2 {
    position: relative;
    margin-top: 30px;
  }
  .block-high-school-interview ._deco1 {
    position: absolute;
    top: -50px;
    right: -220px;
    width: 685px;
  }
  .block-high-school-interview ._deco2 {
    position: absolute;
    bottom: -220px;
    right: -240px;
    width: 220px;
  }
  .block-high-school-interview ._deco3 {
    position: absolute;
    bottom: -220px;
    left: -240px;
    width: 220px;
  }
  .block-high-school-interview ._deco4 {
    position: absolute;
    bottom: 120px;
    right: 300px;
    width: 180px;
  }
  .block-high-school-interview2 {
    padding: 140px 0;
    position: relative;
    background-color: #00a0e6;
  }
  .block-high-school-interview2 img {
    width: 100%;
  }
  .block-high-school-interview2 ._row-body {
    margin-top: 60px;
    display: flex;
    gap: 120px;
    flex-direction: column;
  }
  .block-high-school-interview2 .mod-career-main-cols .mod-doc {
    color: #fff;
  }
  .block-high-school-interview2 ._row-header2 {
    margin-top: 130px;
    position: relative;
  }
  .block-high-school-interview2 ._row-body2 {
    position: relative;
    margin-top: 30px;
  }
  .block-high-school-interview2 ._deco1 {
    position: absolute;
    top: -50px;
    right: -220px;
    width: 685px;
  }
  .block-high-school-interview2 ._deco2 {
    position: absolute;
    bottom: -110px;
    right: -100px;
    width: 200px;
  }
  .block-high-school-interview2 ._deco3 {
    position: absolute;
    bottom: 20px;
    left: -240px;
    width: 240px;
  }
  .block-high-school-interview2 ._deco4 {
    position: absolute;
    bottom: 140px;
    right: 0;
    width: 180px;
  }
  .mod-high-school-flow-items {
    position: relative;
  }
  .mod-high-school-flow-items ul {
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .mod-high-school-flow-items ul > li.is-line {
    position: relative;
    padding: 0 0 100px 0;
  }
  .mod-high-school-flow-items ul > li.is-line:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -1000px;
    right: -1000px;
    background: url(../../images/high-school-graduates/interview1/line.png) center top;
    background-size: auto 100%;
    height: 48px;
  }
  .mod-high-school-flow-items ul > li.is-line.is-wh:after {
    background-image: url(../../images/high-school-graduates/interview1/line_wh.png);
  }
  .mod-high-school-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 50px;
    bottom: 200px;
    left: 35px;
    width: 8px;
    background: #002e67;
  }
  .mod-high-school-flow-item {
    position: relative;
    display: flex;
    gap: 20px;
    padding: 30px 0 20px 0;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._title {
    color: #fff;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._doc {
    color: #fff;
  }
  .mod-high-school-flow-item ._item-no {
    width: 80px;
    height: 80px;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-high-school-flow-item ._item-no > div {
    display: flex;
    gap: 5px;
    flex-direction: column;
    text-align: center;
  }
  .mod-high-school-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(1) {
    font-size: 12px;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(2) {
    font-size: 32px;
  }
  .mod-high-school-flow-item ._item-texts {
    flex: 1;
    padding: 15px 0 0 0;
  }
  .mod-high-school-flow-item ._item-texts ._title {
    font-size: 30px;
    line-height: 1.53;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-high-school-flow-item ._item-texts ._doc {
    margin-top: 5px;
    color: #00a0e6;
    padding: 0 480px 0 0;
  }
  .mod-high-school-flow-item ._item-texts ._image {
    width: 400px;
    position: absolute;
    bottom: 20px;
    right: 0;
  }
  .mod-high-school-flow-item-last {
    padding: 40px 0 0 0;
  }
  .mod-high-school-flow-item-last ._label {
    position: relative;
    width: 241px;
  }
  .mod-high-school-flow-item-last ._image-last {
    width: 664px;
    margin: 0 auto;
    margin-top: -100px;
    transform: translate(30px, 0);
  }
  .block-index-mv {
    position: relative;
    overflow: hidden;
  }
  .block-index-mv img {
    width: 100%;
  }
  .block-index-mv ._pedia {
    position: absolute;
    right: -20px;
    bottom: 110px;
  }
  .block-index-mv ._scroll {
    position: absolute;
    left: 80px;
    bottom: 50px;
  }
  body.js-gmenu-active .block-index-mv ._pounts {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._pedia {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._scroll {
    display: none;
  }
  .mod-index-mv-point ._p1 {
    position: absolute;
    top: 34.11%;
    left: 16.25%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p2 {
    position: absolute;
    top: 3.89%;
    left: 55.06%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p4 {
    position: absolute;
    top: 21.44%;
    left: 35.5%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p3 {
    position: absolute;
    top: 5%;
    left: 46.88%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p5 {
    position: absolute;
    top: 54.67%;
    left: 80.63%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p7 {
    position: absolute;
    top: 81%;
    left: 33.75%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p6 {
    position: absolute;
    top: 57.89%;
    left: 31.88%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._b1 {
    position: absolute;
    top: 21.11%;
    left: 10%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b2 {
    position: absolute;
    top: 2.22%;
    left: 58.75%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b3 {
    position: absolute;
    top: 5%;
    left: 50%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b4 {
    position: absolute;
    top: 10%;
    left: 29.38%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b5 {
    position: absolute;
    top: 39.11%;
    left: 74.38%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b6 {
    position: absolute;
    top: 42.22%;
    left: 25.63%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b7 {
    position: absolute;
    top: 65.44%;
    left: 27.63%;
    width: 17.5%;
  }
  .mod-index-mv-point ._point {
    background: url(../../images/index/mv/pin.png) left top no-repeat;
    background-size: contain;
    width: 5vw;
    height: 5vw;
    cursor: pointer;
    transition-duration: 0.4s;
    z-index: 70;
    opacity: 1;
  }
  .mod-index-mv-point ._point.is-open {
    opacity: 0;
    pointer-events: auto;
  }
  .mod-index-mv-point ._point {
    animation: keyf_index_mv_point 2s ease-in-out 0s infinite;
  }
  .mod-index-mv-baloon-item {
    border-radius: 5px;
    background-color: #ff933c;
    color: #fff;
    z-index: 70;
    padding: 0.625vw 1.25vw;
    pointer-events: none;
    cursor: pointer;
    opacity: 0;
    transition-duration: 0.4s;
    transform: translate(0, -40px);
  }
  .mod-index-mv-baloon-item.is-open {
    opacity: 1;
    transition-delay: 0.2s;
    pointer-events: auto;
    transform: translate(0, 0);
  }
  .mod-index-mv-baloon-item ._no {
    text-align: center;
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._ti {
    text-align: center;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._doc {
    font-weight: 500;
    line-height: 1.71;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._no {
    font-size: 1.5vw;
  }
  .mod-index-mv-baloon-item ._ti {
    font-size: 1.125vw;
  }
  .mod-index-mv-baloon-item ._doc {
    font-size: 0.875vw;
    margin-top: 0.3125vw;
  }
  .mod-index-mv-baloon-item.is-B:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0.9375vw;
    height: 0.9375vw;
    box-sizing: border-box;
    border: 0.9375vw solid transparent;
    border-top: 0.9375vw solid #ff933c;
    transform: scale(0.8, 1) translate(-50%, 100%);
  }
  .mod-index-mv-baloon-item.is-L:before {
    content: "";
    position: absolute;
    top: 40%;
    left: 0;
    width: 0.9375vw;
    height: 0.9375vw;
    box-sizing: border-box;
    border: 0.9375vw solid transparent;
    border-right: 0.9375vw solid #ff933c;
    transform: scale(1, 0.8) translate(-100%, -50%);
  }
  .mod-index-mv-anim {
    position: relative;
  }
  .mod-index-mv-anim ._bg2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  .mod-index-mv-anim ._car1 {
    position: absolute;
    top: 66.78%;
    left: 23.56%;
    width: 3.75%;
    height: 6.67%;
  }
  .mod-index-mv-anim ._car2 {
    position: absolute;
    top: 12.5%;
    left: 100.63%;
    width: 3.75%;
    height: 6.67%;
  }
  .mod-index-mv-anim ._train1 {
    position: absolute;
    top: 85%;
    left: -60%;
    width: 23.13%;
    height: 26.67%;
  }
  .mod-index-mv-anim ._train2 {
    position: absolute;
    top: 39.5%;
    left: 101.5%;
    width: 23.13%;
    height: 26.67%;
  }
  .mod-index-mv-anim ._plane1 {
    position: absolute;
    top: 20.11%;
    left: -17.75%;
    width: 13.13%;
    height: 31.11%;
  }
  .mod-index-mv-anim ._plane2 {
    position: absolute;
    top: 87.22%;
    left: 103.38%;
    width: 13.13%;
    height: 31.11%;
  }
  .mod-index-mv-anim ._clowd2 {
    position: absolute;
    top: 4.22%;
    left: 10.63%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._clowd3 {
    position: absolute;
    top: 49.11%;
    left: 49.88%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._clowd1 {
    position: absolute;
    top: 15.11%;
    left: 80.63%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._car1 {
    animation: keyf_index_mv_car1 30s linear 0s infinite;
  }
  .mod-index-mv-anim ._car2 {
    animation: keyf_index_mv_car2 30s linear 0s infinite;
  }
  .mod-index-mv-anim ._train1 {
    animation: keyf_index_mv_train1 20s linear 0s infinite;
  }
  .mod-index-mv-anim ._train2 {
    animation: keyf_index_mv_train2 20s linear 0s infinite;
  }
  .mod-index-mv-anim ._plane1 {
    animation: keyf_index_mv_plane1 10s linear 0s infinite;
  }
  .mod-index-mv-anim ._plane2 {
    animation: keyf_index_mv_plane2 10s linear 0s infinite;
  }
  .mod-index-mv-anim ._clowd1 {
    animation: keyf_index_mv_cloud1 3.2s ease-in-out 0s infinite;
  }
  .mod-index-mv-anim ._clowd2 {
    animation: keyf_index_mv_cloud2 3.6s ease-in-out 0s infinite;
  }
  .mod-index-mv-anim ._clowd3 {
    animation: keyf_index_mv_cloud3 3s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    48% {
      transform: translate(75vw, -43.275vw);
    }
    100% {
      transform: translate(75vw, -43.275vw);
    }
  }
  @keyframes keyf_index_mv_car2 {
    0% {
      transform: translate(0, 0);
    }
    52% {
      transform: translate(0, 0);
    }
    98% {
      transform: translate(-65.625vw, 37.865625vw);
      opacity: 1;
    }
    100% {
      transform: translate(-65.625vw, 37.865625vw);
      opacity: 0;
    }
  }
  @keyframes keyf_index_mv_train1 {
    100% {
      transform: translate(0, 0);
    }
    0% {
      transform: translate(125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_train2 {
    0% {
      transform: translate(-125vw, -72.125vw);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes keyf_index_mv_plane1 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_plane2 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(-125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_cloud1 {
    0% {
      transform: translate(0, 0.625vw);
    }
    50% {
      transform: translate(0, -0.625vw);
    }
    100% {
      transform: translate(0, 0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud2 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud3 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  .mod-index-mv-pedia {
    display: block;
    background: #002e67;
    color: #fff;
    padding: 27px 85px 25px 30px;
    border-radius: 20px 0 0 20px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-index-mv-pedia:hover {
    transform: translate(-20px, 0);
  }
  .mod-index-mv-pedia span {
    display: block;
    line-height: 1;
  }
  .mod-index-mv-pedia span:nth-child(1) {
    font-size: 35px;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia span:nth-child(2) {
    margin-top: 4px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia ._base {
    position: absolute;
    bottom: 33px;
    left: 100px;
    right: 84px;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
  }
  .mod-index-mv-pedia ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #fff;
    animation: home_mv_scrollbar2 3s ease-in-out 0s infinite;
  }
  .mod-index-scroll-bar {
    display: flex;
    gap: 0;
    z-index: 10;
    flex-direction: column;
    align-items: center;
  }
  .mod-index-scroll-bar ._t {
    border-radius: 25px;
    background: #002e67;
    padding: 18px 10px;
    font-size: 16px;
    writing-mode: vertical-rl;
    letter-spacing: 0.1em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
  }
  body.js-hide-scroll-bar .mod-index-scroll-bar {
    opacity: 0;
  }
  .mod-index-scroll-bar ._base {
    position: relative;
    width: 1px;
    height: 60px;
    inset: 0;
    background: rgba(0, 46, 103, 0.2);
  }
  .mod-index-scroll-bar ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #002e67;
    animation: home_mv_scrollbar 3s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_point {
    0% {
      transform: translate(0, 0);
    }
    15% {
      transform: translate(0, -20px);
    }
    40% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes home_mv_scrollbar2 {
    0% {
      width: 0;
      left: 0;
    }
    20% {
      width: 100%;
      left: 0;
    }
    60% {
      width: 100%;
      left: 0;
    }
    80% {
      width: 0%;
      left: 100%;
    }
    100% {
      width: 0%;
      left: 100%;
    }
  }
  @keyframes home_mv_scrollbar {
    0% {
      height: 0;
      top: 0;
    }
    20% {
      height: 100%;
      top: 0;
    }
    60% {
      height: 100%;
      top: 0;
    }
    80% {
      height: 0%;
      top: 100%;
    }
    100% {
      height: 0%;
      top: 100%;
    }
  }
  .block-index-message {
    position: relative;
    padding-top: 150px;
    padding-top: 75px;
    padding-bottom: 40px;
    background-image: url(../img/common/bg_01.webp);
  }
  .block-index-message img {
    width: 100%;
  }
  .block-index-message ._row1 {
    position: relative;
  }
  .block-index-message ._row1:after {
    display: block;
    content: "";
    padding-top: 53.4166666667%;
  }
  .block-index-message ._row1 ._cloud2 {
    position: absolute;
    top: 51.33%;
    left: -21.08%;
    width: 19.58%;
    height: 71.76%;
    z-index: 10;
  }
  .block-index-message ._row1 ._cloud1 {
    position: absolute;
    top: 11.54%;
    left: 77.58%;
    top: 1.5%;
    left: 67.6%;
    top: -13.5%;
    left: 67.6%;
    width: 20.01%;
    width: 23%;
    height: 79.51%;
  }
  .block-index-message ._row1 ._deco {
    position: absolute;
    top: 19.19%;
    left: 50.17%;
    width: 50%;
    top: 30.2%;
    left: 39.2%;
    width: 71%;
    height: 83.31%;
  }
  .block-index-message ._row1 ._texts {
    position: absolute;
    top: 0.12%;
    left: 0.05%;
  }
  .block-index-message ._row1 ._copy {
    margin-top: 40px;
  }
  .block-index-message ._row1 ._lead {
    margin-top: 70px;
  }
  .block-index-message ._row2 {
    position: relative;
    margin-top: 120px;
    height: 470px;
  }
  .block-index-message ._row2 ._cols ._cols-image {
    position: absolute;
    top: 0;
    left: -200px;
    left: 0;
    width: 1000px;
  }
  .block-index-message ._row2 ._cols ._cols-texts {
    position: absolute;
    top: 30px;
    left: 900px;
    width: 500px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1500px) {
  .block-index-message ._row2 ._cols ._cols-texts {
    right: 100px;
    left: auto;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-index-message ._row2 ._cols ._lead {
    margin-right: -150px;
  }
  .block-index-message ._row3 {
    position: relative;
    height: 470px;
  }
  .block-index-message ._row3 ._cols ._cols-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 1000px;
  }
  .block-index-message ._row3 ._cols ._cols-texts {
    position: absolute;
    top: 40px;
    right: 900px;
    width: 500px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1500px) {
  .block-index-message ._row3 ._cols ._cols-texts {
    left: 50px;
    right: auto;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-index-message ._row3 ._cols ._lead {
    margin-right: -150px;
    z-index: 10;
    position: relative;
  }
  .block-index-message ._row3 ._cloud {
    position: absolute;
    top: -180px;
    right: 1050px;
    width: 240px;
    height: 579px;
  }
  .mod-index-h2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-h2 ._en {
    position: relative;
    font-size: 80px;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
    color: snow;
    padding: 15px 20px;
  }
  .mod-index-h2 ._ja {
    position: relative;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
    color: #00a0e6;
    color: #fff;
    padding: 10px 30px;
  }
  .mod-index-h2.is-wh ._en {
    color: #fff;
    color: #fff352;
  }
  .mod-index-h2.is-wh ._ja {
    color: #fff;
  }
  .mod-index-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-copy ._t1 {
    position: relative;
    font-size: 42px;
    font-weight: 900;
    line-height: 1.52;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-copy ._t2 {
    position: relative;
    margin-top: 26px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-lead p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-lead p span {
    position: relative;
    display: inline-block;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.2em;
    color: #00a0e6;
    color: #f8f4e6;
    padding: 12px 8px 12px 16px;
  }
  .mod-index-lead.is-wh p span {
    color: #fff;
  }
  .block-index-about {
    position: relative;
    background: #bee0c2;
    padding-top: 155px;
    padding-bottom: 80px;
  }
  .block-index-about img {
    width: 100%;
  }
  .block-index-about ._row-header ._lead {
    margin-top: 60px;
  }
  .block-index-about ._row-body {
    margin-top: 80px;
  }
  .mod-index-about-items {
    display: flex;
    gap: 90px;
  }
  .mod-index-about-items > li {
    flex: 1;
  }
  .mod-index-about-item {
    position: relative;
    cursor: pointer;
  }
  .mod-index-about-item ._item-image {
    display: block;
    position: relative;
    transition-duration: 0.2s;
    overflow: hidden;
  }
  .mod-index-about-item ._item-image img {
    width: 100%;
  }
  .mod-index-about-item ._item-image:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background: url(../img/index/shatter.svg) left top no-repeat;
    background-size: contain;
    z-index: 2;
    pointer-events: none;
  }
  .mod-index-about-item ._item-image ._door1,
  .mod-index-about-item ._item-image ._door2 {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 50%;
    height: 100%;
    background-color: silver;
    transition: transform 0.5s ease-in-out;
    z-index: 1;
  }
  .mod-index-about-item ._item-image ._door1 {
    top: 0;
  }
  .mod-index-about-item ._item-image ._door2 {
    bottom: 0;
  }
  .mod-index-about-item:active ._item-image ._door1,
  .mod-index-about-item:hover ._item-image ._door1 {
    transform: translateY(-100%);
  }
  .mod-index-about-item:active ._item-image ._door2,
  .mod-index-about-item:hover ._item-image ._door2 {
    transform: translateY(100%);
  }
  .mod-index-about-item:active ._item-image img,
  .mod-index-about-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-about-item ._item-image ._door1 {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: #e0e0e0;
    transition: transform 0.4s ease-in-out;
    transform: translateY(0);
    z-index: 1;
  }
  .mod-index-about-item ._item-image ._door2 {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: #e0e0e0;
    transition: transform 0.4s ease-in-out;
    transform: translateY(0);
    z-index: 1;
  }
  .mod-index-about-item:hover ._item-image {
    filter: brightness(110%);
  }
  .mod-index-about-item:active ._item-image ._door1,
  .mod-index-about-item:hover ._item-image ._door1 {
    transform: translateY(-100%);
  }
  .mod-index-about-item:active ._item-image ._door2,
  .mod-index-about-item:hover ._item-image ._door2 {
    transform: translateY(100%);
  }
  .mod-index-about-item ._item-texts {
    margin-top: 15px;
  }
  .mod-index-about-item ._item-texts ._name {
    font-size: 30px;
    text-align: center;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.05em;
    color: #0000cd;
  }
  .mod-index-about-item ._item-texts ._btns {
    margin-top: 20px;
    text-align: center;
  }
  .mod-index-about-item ._deco1 {
    position: absolute;
    top: 180px;
    left: -110px;
    width: 123px;
    height: 315px;
    z-index: 10;
  }
  .mod-index-about-item ._deco2 {
    position: absolute;
    top: 175px;
    left: -85px;
    width: 473px;
    height: 299px;
    z-index: 10;
  }
  .mod-index-about-item ._deco3 {
    position: absolute;
    top: 185px;
    left: -65px;
    width: 460px;
    height: 225px;
    z-index: 10;
  }
  .block-index-works {
    position: relative;
    background: #cee0ee;
    padding-top: 70px;
    padding-bottom: 150px;
  }
  .block-index-works img {
    width: 100%;
  }
  .block-index-works ._row-header {
    position: relative;
  }
  .block-index-works ._row-header ._title {
    margin-left: 500px;
  }
  .block-index-works ._row-header ._lead {
    margin-left: 500px;
    margin-top: 60px;
  }
  .block-index-works ._row-body {
    margin-top: 110px;
  }
  .block-index-works ._deco1 {
    position: absolute;
    top: 0;
    left: -40px;
    width: 440px;
    height: 327px;
  }
  .mod-index-works-items {
    display: flex;
    height: 360px;
  }
  .mod-index-works-items img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-index-works-items > li {
    flex: 1;
  }
  .mod-index-works-item {
    position: relative;
    display: block;
    height: 22.5vw;
    width: 100%;
    cursor: pointer;
  }
  .mod-index-works-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-works-item ._item-en {
    font-size: 100px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #00a0e6;
  }
  .mod-index-works-item ._item-texts {
    position: absolute;
    bottom: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
  }
  .mod-index-works-item ._item-texts ._name {
    font-size: 24px;
    font-weight: 500;
    line-height: 2.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-works-item.is-1 ._item-texts {
    right: 300px;
    flex-direction: row-reverse;
  }
  .mod-index-works-item.is-1 ._item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    position: absolute;
    inset: 0;
    mask-position: center right;
    -webkit-mask-position: center right;
    mask-image: url(../../images/index/works/p1_mask.png);
    -webkit-mask-image: url(../../images/index/works/p1_mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-works-item.is-1 ._item-en {
    position: absolute;
    transform-origin: left top;
    top: -140px;
    left: 220px;
    transform: rotate(90deg);
  }
  .mod-index-works-item.is-2 ._item-texts {
    left: 130px;
  }
  .mod-index-works-item.is-2 ._item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    position: absolute;
    inset: 0;
    mask-position: center left;
    -webkit-mask-position: center left;
    mask-image: url(../../images/index/works/p2_mask.png);
    -webkit-mask-image: url(../../images/index/works/p2_mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-works-item.is-2 ._item-image ._image img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-index-works-item.is-2 ._item-en {
    letter-spacing: 0.04em;
    position: absolute;
    transform-origin: left top;
    top: -50px;
    left: 70px;
    width: 800px;
  }
  .block-index-talk {
    padding: 150px 0 80px;
    position: relative;
  }
  .block-index-talk img {
    width: 100%;
  }
  .block-index-talk ._inner {
    position: relative;
  }
  .block-index-talk ._inner:after {
    display: block;
    content: "";
    padding-top: 95.1666666667%;
    padding-top: 50%;
  }
  .block-index-talk ._inner ._row-head {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
  }
  .block-index-talk ._inner ._row-head ._lead {
    margin-top: 60px;
  }
  .block-index-talk ._inner ._deco1 {
    position: absolute;
    top: 17.69%;
    left: 100.17%;
    width: 8.33%;
    height: 21.89%;
  }
  .block-index-talk ._inner ._deco2 {
    position: absolute;
    top: 47.46%;
    left: 80.17%;
    width: 36.67%;
    height: 21.02%;
  }
  .block-index-talk ._inner ._deco3 {
    position: absolute;
    top: 64.97%;
    left: -16.5%;
    width: 56.67%;
    height: 35.03%;
  }
  .block-index-talk ._inner ._item1 {
    position: absolute;
    top: 16.02%;
    left: 36.83%;
    width: 63.33%;
    height: 41.94%;
  }
  .block-index-talk ._inner ._item2 {
    position: absolute;
    top: 49.21%;
    left: 0.17%;
    width: 62.5%;
    height: 43.78%;
  }
  .mod-index-talk-item {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .mod-index-talk-item img {
    transition-duration: 0.2s;
  }
  .mod-index-talk-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-talk-item ._item-image {
    overflow: hidden;
  }
  .mod-index-talk-item ._item-en {
    font-size: 100px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: #32cd32;
  }
  .mod-index-talk-item ._item-texts {
    position: absolute;
    bottom: 10px;
    display: flex;
    align-items: center;
    gap: 15px;
  }
  .mod-index-talk-item ._item-texts ._name {
    font-size: 24px;
    font-weight: 500;
    line-height: 2.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-talk-item.is-1 ._item-texts {
    right: 20px;
  }
  .mod-index-talk-item.is-1 ._item-image {
    transition-duration: 0.2s;
  }
  .mod-index-talk-item.is-1 ._item-en {
    position: absolute;
    transform-origin: right top;
    top: 350px;
    right: -60px;
    transform: rotate(90deg);
  }
  .mod-index-talk-item.is-2 ._item-texts {
    left: 20px;
    flex-direction: row-reverse;
  }
  .mod-index-talk-item.is-2 ._item-en {
    position: absolute;
    bottom: 20px;
    right: -400px;
  }
  .block-index-people {
    padding: 70px 0 150px 0;
    position: relative;
  }
  .block-index-people img {
    width: 100%;
  }
  .block-index-people ._row-head {
    position: relative;
  }
  .block-index-people ._row-head ._title {
    margin-left: 400px;
  }
  .block-index-people ._row-head ._lead {
    margin-top: 60px;
    margin-left: 400px;
  }
  .block-index-people ._row-head ._deco1 {
    position: absolute;
    top: -100px;
    left: -60px;
    width: 1211px;
    height: 517px;
  }
  .block-index-people ._row-body {
    margin-top: 80px;
  }
  .mod-index-people-item {
    display: block;
    width: 600px;
    margin: 0 auto;
    position: relative;
    cursor: pointer;
  }
  .mod-index-people-item:hover img {
    transform: scale(1.05);
  }
  .mod-index-people-item ._item-image {
    flex: 1;
    mask-position: center center;
    -webkit-mask-position: center center;
    mask-image: url(../../images/index/people/mask.png);
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-people-item ._item-image img {
    transition-duration: 0.2s;
    width: 100%;
  }
  .mod-index-people-item ._item-texts {
    color: #000;
    position: absolute;
    left: 0;
    bottom: 0;
    border-top: 6px solid #00a0e6;
    padding-top: 20px;
  }
  .mod-index-people-item ._item-texts ._job {
    font-size: 16px;
    line-height: 2.75;
    letter-spacing: 0.1em;
  }
  .mod-index-people-item ._item-texts ._name {
    margin-top: 5px;
    font-size: 28px;
    font-weight: 200;
    line-height: 1.57;
    letter-spacing: 0.2em;
  }
  .mod-index-people-item ._item-texts ._spec {
    margin-top: 5px;
    font-size: 16px;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-interivew-mv {
    position: relative;
  }
  .block-interivew-mv img {
    width: 100%;
  }
  .block-interivew-mv ._image {
    position: relative;
  }
  .block-interivew-mv ._image img {
    object-fit: cover;
  }
  .block-interivew-mv ._image img {
    min-height: 560px;
  }
  .block-interivew-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -32%);
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) and (min-width: 1281px) {
  .block-interivew-mv ._texts {
    left: max(0, calc(50% - 600px));
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  .block-interivew-mv ._texts {
    left: 40px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-interivew-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-interivew-mv ._texts ._cate {
    font-size: 18px;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #012e67;
    padding: 15px 30px;
  }
  .block-interivew-mv ._texts ._en {
    font-size: 80px;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 10px 20px;
  }
  .block-interivew-mv ._texts h1 {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 13px 25px;
  }
  .block-interivew-mv ._texts ._interview-copy {
    margin-top: 50px;
    font-size: 38px;
    line-height: 1.4;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .block-interivew-mv ._interview-name {
    position: absolute;
    right: 30px;
    bottom: -30px;
    font-size: 80px;
    text-align: right;
    font-weight: 200;
    line-height: 1.05;
    letter-spacing: 0.075em;
    color: #000;
    font-style: italic;
    z-index: 10;
  }
  .block-interview-profile {
    padding-top: 60px;
    padding-bottom: 115px;
  }
  .block-interview-profile img {
    width: 100%;
  }
  .block-interview-profile .block-inner {
    position: relative;
  }
  .block-interview-profile ._image {
    width: 740px;
    position: absolute;
    top: 30px;
    right: -60px;
    z-index: 10;
  }
  .block-interview-profile ._texts {
    position: relative;
    background: #00a0e6;
    padding: 20px 20px 20px 20px;
    display: inline-block;
    width: 300px;
  }
  .block-interview-profile ._job {
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._branch {
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: 0.2em;
    color: #fff;
  }
  .block-interview-profile ._spec {
    margin-top: 9px;
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #fff;
  }
  .block-interview-list {
    display: flex;
    gap: 120px;
    flex-direction: column;
    padding: 0 0 200px 0;
  }
  .block-interview-list ._deco1 {
    position: absolute;
    top: -180px;
    left: calc(50vw - 840px);
    width: 341px;
  }
  .block-interview-list ._deco2 {
    position: absolute;
    bottom: -40px;
    right: 80px;
    width: 380px;
  }
  .block-interview-list ._deco3 {
    position: absolute;
    bottom: -160px;
    left: calc(50vw + 330px);
    width: 241px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  .block-interview-list ._deco3 {
    left: auto;
    right: 20px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-interview-s1 {
    padding: 0 0 70px 0;
    position: relative;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(50vw + 700px);
    background: url(../../images/interview/bg2.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top right;
    background-color: #00a0e6;
    height: 400px;
    z-index: -1;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1 ._cols {
    display: flex;
  }
  .block-interview-s1 ._cols ._col-image {
    width: 34vw;
  }
  .block-interview-s1 ._cols ._col-texts {
    width: 700px;
  }
  .block-interview-s1 ._box {
    background-color: #cff0ff;
    padding: 40px 50px 50px 50px;
  }
  .block-interview-s2 {
    padding: 0 0 70px 0;
    position: relative;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: calc(50vw + 700px);
    background: url(../../images/interview/bg1.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top left;
    background-color: #00a0e6;
    height: 400px;
    z-index: -1;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2 ._cols {
    display: flex;
    flex-direction: row-reverse;
  }
  .block-interview-s2 ._cols ._col-image {
    width: 34vw;
  }
  .block-interview-s2 ._cols ._col-texts {
    width: 700px;
  }
  .block-interview-s2 ._box {
    margin-top: -70px;
    background-color: #cff0ff;
    padding: 110px 50px 50px 50px;
  }
  .mod-interview-h2 {
    color: #fff;
    display: flex;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-no {
    background-color: #002e67;
    font-size: 30px;
    font-weight: 700;
    line-height: 2.4;
    letter-spacing: 0.075em;
    width: 50px;
    text-align: center;
  }
  .mod-interview-h2 ._h2-ti {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-ti span {
    display: block;
    font-size: 30px;
    font-weight: 700;
    line-height: 2.4;
    letter-spacing: 0.2em;
    padding: 0 20px;
    background-color: #00a0e6;
  }
  .block-interview-schedule {
    padding: 80px 0;
    position: relative;
    background-color: #00a0e6;
    color: #fff;
  }
  .block-interview-schedule img {
    width: 100%;
  }
  .block-interview-schedule .block-inner {
    position: relative;
    min-height: 560px;
  }
  .block-interview-schedule ._row-header {
    position: absolute;
    top: 0;
    left: 0;
  }
  .block-interview-schedule ._row-body {
    margin-top: 40px;
    padding-left: 450px;
  }
  .block-interview-schedule ._deco1 {
    margin-top: 40px;
    width: 360px;
  }
  .block-interview-schedule ._deco2 {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    width: 436px;
    margin-top: -20px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  .block-interview-schedule ._deco2 {
    width: 350px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-interview-schedule ._note {
    margin-top: 40px;
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
  }
  .mod-interview-schedule {
    position: relative;
    display: flex;
    gap: 50px;
    flex-direction: column;
  }
  .mod-interview-schedule:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 30px;
    width: 1px;
    background: #fff;
  }
  .mod-interview-schedule dl {
    margin: 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    background-color: #00a0e6;
    font-size: 16px;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-interview-schedule dl dt {
    width: 90px;
    margin: 0;
  }
  .mod-interview-schedule dl dd {
    margin: 0;
    padding: 0;
    flex: 1;
  }
  .block-interview-message {
    padding: 220px 0 50px 100px;
    position: relative;
  }
  .block-interview-message .block-inner {
    position: relative;
  }
  .block-interview-message img {
    width: 100%;
  }
  .block-interview-message ._deco1 {
    position: absolute;
    top: -70px;
    left: 60px;
    width: 241px;
  }
  .block-interview-message ._deco2 {
    position: absolute;
    top: 70px;
    right: -90px;
    width: 600px;
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  .block-interview-message ._deco2 {
    top: 120px;
    width: 500px;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .block-interview-message ._box {
    z-index: 10;
    position: relative;
    background: url(../../images/interview/deco7.png) left top no-repeat;
    background-size: contain;
    width: 891px;
    height: 835px;
    margin-left: -150px;
    color: #fff;
  }
  .block-interview-message ._box ._box-in {
    position: relative;
    width: 500px;
    padding: 165px 0 0 0;
    margin-left: 150px;
  }
  .block-interview-message ._box ._copy {
    margin-top: 30px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.58;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-message ._box ._doc {
    margin-top: 20px;
  }
  .block-interview-off {
    padding: 60px 0 80px 0;
    position: relative;
  }
  .block-interview-off img {
    width: 100%;
  }
  .block-interview-off ._box {
    position: relative;
    border: 10px solid #cff0ff;
    border-radius: 10px;
    padding: 50px 80px 50px 450px;
  }
  .block-interview-off ._image {
    position: absolute;
    top: 0;
    left: 90px;
    width: 300px;
  }
  .block-interview-off ._doc {
    margin-top: 10px;
  }
  .block-interview-off ._deco1 {
    position: absolute;
    top: -100px;
    right: -100px;
    width: 145px;
  }
  .block-interview-other {
    position: relative;
    padding: 65px 0 140px 0;
  }
  .block-interview-other img {
    width: 100%;
  }
  .block-interview-other ._row-body {
    margin-top: 50px;
  }
  .mod-interview-other-items {
    width: 940px;
    margin: 0 auto;
  }
  .mod-interview-other-items ._item {
    display: inline-block;
    width: 290px;
  }
  .mod-interview-other-item {
    display: block;
    width: 240px;
    margin: 0 auto;
    color: #000;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item ._item-image {
    border-radius: 50%;
    overflow: hidden;
  }
  .mod-interview-other-item ._item-image img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item:hover img {
    transform: scale(1.1);
  }
  .mod-interview-other-item ._item-texts {
    margin-top: 30px;
  }
  .mod-interview-other-item ._job {
    font-size: 16px;
    text-align: center;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .mod-interview-other-item ._name {
    font-size: 28px;
    text-align: center;
    font-weight: 200;
    line-height: 1.4;
    letter-spacing: 0.2em;
  }
  .mod-interview-other-item ._spec {
    margin-top: 5px;
    font-size: 16px;
    text-align: center;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-job-type {
    padding: 80px 0 160px 0;
    position: relative;
  }
  .block-job-type img {
    width: 100%;
  }
  .block-job-type ._row-body {
    margin-top: 70px;
  }
  .mod-job-title {
    text-align: center;
  }
  .mod-job-title ._en {
    font-size: 80px;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #002e67;
    line-height: 1;
  }
  .mod-job-title h2 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #002e67;
  }
  .mod-job-title ._doc {
    margin-top: 25px;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-job-image {
    position: relative;
    padding-top: 42px;
  }
  .mod-job-image h3,
  .mod-job-image h4 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
  }
  .mod-job-image h3 span,
  .mod-job-image h4 span {
    display: inline-block;
    background-color: #002e67;
    font-size: 24px;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 0 20px;
  }
  .block-job-type2 {
    position: relative;
    padding: 150px 0 140px 0;
    background: #cee0ee;
  }
  .block-job-type2 img {
    width: 100%;
  }
  .block-job-type2 .block-inner {
    position: relative;
  }
  .block-job-type2 ._deco1 {
    position: absolute;
    top: -225px;
    left: -211px;
    width: 300px;
  }
  .block-job-type2 ._deco2 {
    position: absolute;
    top: 755px;
    right: -250px;
    width: 300px;
  }
  .mod-job-type2-items {
    display: flex;
    flex-direction: column;
    gap: 45px;
  }
  .mod-job-type2-items img {
    width: 100%;
  }
  .mod-job-type2-items > li .item {
    display: block;
    color: #000;
    display: flex;
    flex-direction: row-reverse;
    gap: 40px;
    background: #fff;
    padding: 60px 60px 40px 100px;
  }
  .mod-job-type2-items > li .item ._item-image {
    width: 300px;
  }
  .mod-job-type2-items > li .item ._item-texts {
    flex: 1;
  }
  .mod-job-type2-items > li .item ._title {
    font-size: 30px;
    line-height: 1.74;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
    border-bottom: 2px solid #00a0e6;
    padding: 0 0 15px 0;
  }
  .mod-job-type2-items > li .item ._doc {
    margin-top: 20px;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-job-train {
    padding: 140px 0 100px 0;
    position: relative;
  }
  .block-job-train img {
    width: 100%;
  }
  .block-job-train .block-inner {
    position: relative;
  }
  .block-job-train ._row-body {
    margin-top: 50px;
  }
  .block-job-train ._deco1 {
    position: absolute;
    top: -50px;
    left: -140px;
    width: 300px;
  }
  .block-job-train2 {
    position: relative;
    padding: 150px 0 140px 0;
    background: #cee0ee;
  }
  .block-job-train2 img {
    width: 100%;
  }
  .block-job-train2 .block-inner {
    position: relative;
  }
  .block-job-train2 ._deco1 {
    position: absolute;
    top: -58px;
    right: -200px;
    width: 300px;
  }
  .block-job-train2 ._deco3 {
    position: absolute;
    top: 1454px;
    right: -250px;
    width: 300px;
  }
  .block-job-train2 ._deco2 {
    position: absolute;
    top: 738px;
    left: -246px;
    width: 300px;
  }
  .mod-job-train2-items {
    display: flex;
    gap: 60px;
    flex-direction: column;
  }
  .mod-job-train2-item {
    background-color: #fff;
    padding: 60px 100px 100px 100px;
  }
  .mod-job-train2-item h3 {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.27;
    letter-spacing: 0.2em;
  }
  .mod-job-train2-item ._doc {
    margin-top: 28px;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-job-train2-item ._1 {
    margin: 0 auto;
    margin-top: 30px;
    width: 1020px;
  }
  .mod-job-train2-item ._2 {
    margin: 0 auto;
    margin-top: 30px;
  }
  .block-new-graduate-info {
    padding: 80px 0 140px 0;
    position: relative;
  }
  .block-new-graduate-info ._inner {
    max-width: 1000px;
    margin: 0 auto;
  }
  .block-new-graduate-info ._row-body {
    margin-top: 40px;
  }
  .mod-new-graduate-table {
    width: 100%;
    border-bottom: 1px solid #00a0e6;
  }
  .mod-new-graduate-table th {
    border-top: 1px solid #00a0e6;
    padding: 25px 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.1em;
    color: #000;
    width: 200px;
  }
  .mod-new-graduate-table td {
    border-top: 1px solid #00a0e6;
    padding: 25px 0;
    font-size: 16px;
    line-height: 1.87;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-new-graduate-qa {
    overflow: hidden;
    padding: 120px 0 250px 0;
    position: relative;
    background-color: #00a0e6;
  }
  .block-new-graduate-qa ._inner {
    max-width: 1120px;
    margin: 0 auto;
  }
  .block-new-graduate-qa ._row-body {
    position: relative;
    margin-top: 130px;
  }
  .mod-new-graduate-title.is-wh ._en {
    color: #fff;
  }
  .mod-new-graduate-title.is-wh h2 {
    color: #fff;
  }
  .mod-new-graduate-title.is-left ._en {
    text-align: left;
  }
  .mod-new-graduate-title.is-left h2 {
    text-align: left;
  }
  .mod-new-graduate-title ._en {
    font-size: 80px;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .mod-new-graduate-title ._en small {
    font-size: 60px;
  }
  .mod-new-graduate-title h2 {
    font-size: 16px;
    text-align: center;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 84px 80px;
    position: relative;
  }
  .mod-new-graduate-qa-items > li {
    position: relative;
    width: calc(33.33% - 54px);
  }
  .mod-new-graduate-qa-item {
    display: block;
    height: 100%;
    gap: 30px;
    position: relative;
    background-color: #002f63;
    border-radius: 20px;
    padding: 40px 20px 90px 20px;
  }
  .mod-new-graduate-qa-item.is-wh {
    background-color: #cee0ee;
  }
  .mod-new-graduate-qa-item.is-wh p {
    color: #002f63;
  }
  .mod-new-graduate-qa-item:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -70%);
    background: url(../../images/new-graduate/qa/icon.png) left top no-repeat;
    background-size: contain;
    width: 40px;
    height: 70px;
  }
  .mod-new-graduate-qa-item ._btns {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 25px;
    text-align: center;
  }
  .mod-new-graduate-qa-item p {
    font-size: 20px;
    text-align: center;
    font-weight: 700;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-new-graduate-qa-btn {
    display: inline-block;
    background-color: #fff;
    border: 4px solid #00a0e6;
    padding: 8px 20px 8px 0;
    border-radius: 20px;
    width: 130px;
    text-align: center;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-new-graduate-qa-btn span {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover {
    background-color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-new-graduate-qa-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-new-graduate-qa-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
  }
  .mod-new-graduate-qa-cl {
    position: absolute;
    inset: 0;
  }
  .mod-new-graduate-qa-cl img {
    width: 100%;
  }
  .mod-new-graduate-qa-cl:after {
    display: block;
    content: "";
    padding-top: 169.7321428571%;
  }
  .mod-new-graduate-qa-cl ._deco8 {
    position: absolute;
    top: 89.53%;
    left: 72.95%;
    width: 39.55%;
    height: 10.47%;
  }
  .mod-new-graduate-qa-cl ._deco7 {
    position: absolute;
    top: 105.05%;
    left: -22.77%;
    width: 66.96%;
    height: 15.78%;
  }
  .mod-new-graduate-qa-cl ._deco5 {
    position: absolute;
    top: 48.4%;
    left: 96.79%;
    width: 53.57%;
    height: 12.62%;
  }
  .mod-new-graduate-qa-cl ._deco3 {
    position: absolute;
    top: 26.93%;
    left: 24.82%;
    width: 26.96%;
    height: 6.89%;
  }
  .mod-new-graduate-qa-cl ._deco6 {
    position: absolute;
    top: 79.59%;
    left: 43.13%;
    width: 26.88%;
    height: 6.84%;
  }
  .mod-new-graduate-qa-cl ._deco4 {
    position: absolute;
    top: 56.18%;
    left: -14.29%;
    width: 26.79%;
    height: 10.42%;
  }
  .mod-new-graduate-qa-cl ._deco2 {
    position: absolute;
    top: 10.84%;
    left: 81.96%;
    width: 26.79%;
    height: 10.47%;
  }
  .mod-new-graduate-qa-cl ._deco1 {
    position: absolute;
    top: -14.26%;
    left: -44.73%;
    width: 53.57%;
    height: 12.62%;
  }
  .mod-new-graduate-qa-cl ._title {
    position: absolute;
    top: -13.94%;
    left: 80.18%;
    width: 33.13%;
    height: 11.78%;
  }
  .block-new-graduate-flow {
    padding: 140px 0 140px 0;
    position: relative;
  }
  .block-new-graduate-flow ._inner {
    max-width: 1000px;
    margin: 0 auto;
  }
  .block-new-graduate-flow ._row-body {
    margin-top: 50px;
  }
  .block-new-graduate-flow ._row-body ._note {
    margin-top: 5px;
    font-size: 14px;
    text-align: right;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-items {
    position: relative;
  }
  .mod-new-graduate-flow-items ul {
    display: flex;
    flex-direction: column;
    background-image: linear-gradient(to right, #00a0e6 4px, transparent 4px);
    background-size: 20px 4px;
    background-repeat: repeat-x;
    position: relative;
  }
  .mod-new-graduate-flow-items ul > li {
    background-image: linear-gradient(to right, #00a0e6 4px, transparent 4px);
    background-size: 20px 4px;
    background-repeat: repeat-x;
  }
  .mod-new-graduate-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 50px;
    bottom: 50px;
    left: 75px;
    width: 8px;
    background: #002e67;
  }
  .mod-new-graduate-flow-item {
    display: flex;
    gap: 30px;
    position: relative;
    padding: 38px 38px 30px 38px;
  }
  .mod-new-graduate-flow-item ._item-no {
    width: 80px;
    height: 80px;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-new-graduate-flow-item ._item-no > div {
    display: flex;
    gap: 5px;
    flex-direction: column;
    text-align: center;
  }
  .mod-new-graduate-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(1) {
    font-size: 12px;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(2) {
    font-size: 32px;
  }
  .mod-new-graduate-flow-item ._item-texts {
    flex: 1;
    padding: 15px 0 0 0;
  }
  .mod-new-graduate-flow-item ._item-texts ._t1 {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.53;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-item ._item-texts ._t2 {
    margin-top: 10px;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-new-graduate-person {
    padding: 130px 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-new-graduate-person ._row-header h2 {
    text-align: center;
    font-size: 24px;
    line-height: 1.8;
  }
  .block-new-graduate-person ._row-body {
    margin-top: 40px;
  }
  .mod-new-graduate-person-items {
    display: flex;
    gap: 60px;
    flex-direction: column;
  }
  .mod-new-graduate-person-item {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-image {
    margin-right: 120px;
  }
  .mod-new-graduate-person-item.is-2 ._item-image {
    margin-right: 0;
  }
  .mod-new-graduate-person-item.is-3 ._item-image {
    margin-right: 80px;
  }
  .mod-new-graduate-person-item ._item-image {
    margin-left: auto;
    width: 420px;
  }
  .mod-new-graduate-person-item ._item-image img {
    width: 100%;
  }
  .mod-new-graduate-person-item ._item-texts {
    width: 670px;
    position: absolute;
    top: 20px;
    left: 0;
  }
  .mod-new-graduate-person-item ._item-texts ._title {
    padding: 28px 0 28px 40px;
    background-color: #fff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #00a0e6;
    display: flex;
    align-items: center;
    position: relative;
  }
  .mod-new-graduate-person-item ._item-texts ._title span {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-texts ._title:before {
    content: "";
    position: absolute;
    top: 15px;
    right: -35px;
    width: 70px;
    height: 70px;
    background-color: #fff;
    transform: rotate(-45deg);
  }
  .mod-new-graduate-person-item ._item-texts ._doc {
    padding: 30px;
    font-size: 20px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .area-modal-new-graduate {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-new-graduate.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-new-graduate .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-new-graduate ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 47, 99, 0.9);
  }
  .area-modal-new-graduate ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 800px;
    min-height: 200px;
    padding: 70px 80px;
    box-sizing: border-box;
    height: 660px;
    border: 1px solid #000;
  }
  .area-modal-new-graduate ._modal-box-body {
    height: 100%;
    overflow-y: auto;
  }
  .area-modal-new-graduate ._page {
    display: none;
  }
  .block-modal-new-graduate ._title {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #002e67;
  }
  .block-modal-new-graduate ._place {
    font-size: 14px;
    line-height: 2.14;
    letter-spacing: 0.1em;
    color: #002e67;
    border-bottom: 1px solid #002e67;
  }
  .block-modal-new-graduate ._name {
    margin-top: 17px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-modal-new-graduate ._cols {
    width: 400px;
    margin: 0 auto;
    margin-top: 40px;
    display: flex;
    align-items: flex-end;
    gap: 40px;
  }
  .block-modal-new-graduate ._cols ._col-image {
    padding: 10px;
    background-color: #fff;
    width: 200px;
  }
  .block-modal-new-graduate ._cols ._col-image img {
    width: 100%;
  }
  .block-modal-new-graduate ._cols ._col-texts {
    width: 200px;
    padding: 10px 20px;
    background-color: #fff;
  }
  .block-modal-new-graduate ._doc {
    border-top: 1px solid #002e67;
    padding: 30px 0 0 0;
    margin-top: 40px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-common-mv-wrap {
    position: relative;
    height: 100vh;
    max-height: 100vw;
    z-index: -1;
  }
  .block-door-mv {
    position: fixed;
    background: #00a0e6;
    height: 100vh;
    max-height: 100vw;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .block-door-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
  }
  .block-door-mv ._texts ._door-t1 {
    margin-top: 20px;
    font-size: 42px;
    line-height: 1.66;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  .block-door-mv ._texts ._door-t2 {
    margin-top: 60px;
    font-size: 18px;
    line-height: 1.88;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  .block-door-mv ._event {
    position: absolute;
    top: calc(50% - 15vw);
    left: 50%;
    width: 62.5%;
  }
  .block-door-mv ._event:after {
    display: block;
    content: "";
    padding-top: 43.137254902%;
  }
  .block-door-mv ._event ._bar2 {
    position: absolute;
    top: 93.18%;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar1 {
    position: absolute;
    top: 0;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 21.57%;
    height: 100%;
  }
  .block-door-mv ._event ._gear {
    position: absolute;
    top: 3.41%;
    left: 1.47%;
    width: 40.2%;
    height: 93.18%;
  }
  .block-door-mv ._event ._bar1 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar1 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar1.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear2 8s linear 0s infinite;
  }
  .block-door-mv ._event ._bar2 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar2 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar2.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear3 8s linear 0s infinite;
  }
  .block-door-mv ._event ._gear {
    animation: keyf_door_mv_gear 12s linear 0s infinite;
  }
  body.is-door-pedia-open .block-door-open {
    background-color: transparent;
  }
  body.is-door-pedia-open .block-door-open ._left {
    transform: translate(-51vw, 0);
  }
  body.is-door-pedia-open .block-door-open ._right {
    transform: translate(51vw, 0);
  }
  body.is-Dev .block-door-open {
    display: none;
  }
  .block-door-open {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    pointer-events: none;
    background-color: #529ed1;
  }
  .block-door-open ._left {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/door1.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  .block-door-open ._right {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/door2.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  @keyframes keyf_door_mv_gear {
    0% {
      rotate: 0deg;
    }
    33% {
      rotate: -120deg;
    }
    66% {
      rotate: -240deg;
    }
    100% {
      rotate: -360deg;
    }
  }
  @keyframes keyf_door_mv_gear2 {
    0% {
      transform: translate3d(0, 0, 0);
    }
    100% {
      transform: translate3d(-50vw, 0, 0);
    }
  }
  @keyframes keyf_door_mv_gear3 {
    0% {
      transform: translate3d(-50%, 0, 0);
    }
    100% {
      transform: translate3d(0, 0, 0);
    }
  }
  .block-door-wrap {
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-basic {
    padding: 120px 0 60px 0;
    position: relative;
  }
  .block-door-basic ._row-header {
    margin-left: -25px;
  }
  .block-door-basic ._row-body {
    margin-top: 80px;
    background-color: #e3f4fc;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    border-radius: 80px;
    padding: 60px 0;
  }
  .block-door-basic ._row-body ._map-sp {
    display: none;
  }
  .block-door-basic ._row-body ._map {
    max-width: 1063px;
    margin: 0 auto;
  }
  .mod-door-title {
    position: relative;
    display: inline-block;
    width: 560px;
  }
  .mod-door-title img {
    width: 100%;
  }
  .mod-door-title.is-right img {
    position: relative;
    transform: rotate(-180deg);
  }
  .mod-door-title.is-right ._text {
    left: 60px;
    right: 0;
  }
  .mod-door-title ._text {
    position: absolute;
    top: 0;
    left: 0;
    right: 60px;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-door-title h2 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.15em;
    color: #00a0e6;
  }
  .mod-door-basic {
    display: block;
    position: relative;
  }
  .mod-door-basic img {
    width: 100%;
  }
  .mod-door-basic ._p1 {
    position: absolute;
    top: 1.42%;
    left: 38.19%;
    width: 19.1%;
    height: 6.54%;
  }
  .mod-door-basic ._p2 {
    position: absolute;
    top: 4.27%;
    left: 61.52%;
    width: 31.42%;
    height: 6.54%;
  }
  .mod-door-basic ._p3 {
    position: absolute;
    top: 17.92%;
    left: 65.85%;
    width: 20.47%;
    height: 6.54%;
  }
  .mod-door-basic ._p4 {
    position: absolute;
    top: 31.72%;
    left: 79.49%;
    width: 17.4%;
    height: 6.54%;
  }
  .mod-door-basic ._p5 {
    position: absolute;
    top: 47.23%;
    left: 74.32%;
    width: 25.12%;
    height: 6.54%;
  }
  .mod-door-basic ._p6 {
    position: absolute;
    top: 73.4%;
    left: 76.01%;
    width: 20.51%;
    height: 6.54%;
  }
  .mod-door-basic ._p7 {
    position: absolute;
    top: 87.62%;
    left: 78.08%;
    width: 12.7%;
    height: 6.54%;
  }
  .mod-door-basic ._p8 {
    position: absolute;
    top: 88.76%;
    left: 49.11%;
    width: 11.01%;
    height: 6.54%;
  }
  .mod-door-basic ._p9 {
    position: absolute;
    top: 88.76%;
    left: 26.34%;
    width: 11.01%;
    height: 6.54%;
  }
  .mod-door-basic ._p10 {
    position: absolute;
    top: 70.55%;
    left: 11.1%;
    width: 18.81%;
    height: 6.54%;
  }
  .mod-door-basic ._p11 {
    position: absolute;
    top: 49.36%;
    left: 0.94%;
    width: 34.05%;
    height: 6.54%;
  }
  .mod-door-basic ._p12 {
    position: absolute;
    top: 39.69%;
    left: 2.82%;
    width: 18.34%;
    height: 6.54%;
  }
  .mod-door-basic ._p13 {
    position: absolute;
    top: 29.02%;
    left: 4.7%;
    width: 20.88%;
    height: 6.54%;
  }
  .mod-door-basic ._p14 {
    position: absolute;
    top: 16.5%;
    left: 7.53%;
    width: 12.04%;
    height: 6.54%;
  }
  .mod-door-basic ._p15 {
    position: absolute;
    top: 2.84%;
    left: 10.35%;
    width: 14.11%;
    height: 6.54%;
  }
  .mod-door-basic-btn {
    display: block;
    background-color: #fff;
    border: 4px solid #00a0e6;
    padding: 12px 0 12px 16px;
    border-radius: 40px;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-door-basic-btn span {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-door-basic-btn:hover {
    background-color: #00a0e6;
  }
  .mod-door-basic-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-door-basic-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-door-basic-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
  }
  .block-door-place {
    padding: 60px 0 60px 0;
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-place img {
    width: 100%;
  }
  .block-door-place ._row-header {
    margin-right: -25px;
    text-align: right;
  }
  .block-door-place ._row-body {
    margin-top: 80px;
  }
  .block-door-pedia-items {
    padding: 100px 0;
  }
  .block-door-pedia-items .block-inner {
    display: flex;
    gap: 250px;
    flex-direction: column;
  }
  .block-door-pedia-item1 {
    position: relative;
  }
  .block-door-pedia-item1:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item1 ._illust {
    position: absolute;
    top: 18.17%;
    left: 0;
    width: 50%;
    height: 79.39%;
  }
  .block-door-pedia-item1 ._car {
    position: absolute;
    top: 85.24%;
    left: 10%;
    width: 8.67%;
    height: 8.54%;
  }
  .block-door-pedia-item1 ._cl {
    position: absolute;
    top: -32.93%;
    left: -20%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item1 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item1 ._title {
    position: absolute;
    top: -13.29%;
    left: 0;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item2 {
    position: relative;
  }
  .block-door-pedia-item2:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item2 ._illust {
    position: absolute;
    top: 50.24%;
    left: 56.67%;
    width: 43.33%;
    height: 47.56%;
  }
  .block-door-pedia-item2 ._car {
    position: absolute;
    top: 58%;
    left: 78%;
    width: 4%;
    height: 5.12%;
  }
  .block-door-pedia-item2 ._texts {
    position: absolute;
    top: 0.24%;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item2 ._cl {
    position: absolute;
    top: 8%;
    left: 80%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item2 ._title {
    position: absolute;
    top: -13.17%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item3 {
    position: relative;
  }
  .block-door-pedia-item3:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item3 ._illust {
    position: absolute;
    top: 41.46%;
    left: 0;
    width: 50.83%;
    height: 56.1%;
  }
  .block-door-pedia-item3 ._car {
    position: absolute;
    top: 90%;
    left: 5%;
    width: 4.75%;
    height: 5.98%;
  }
  .block-door-pedia-item3 ._cl {
    position: absolute;
    top: 2.32%;
    left: 26.67%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item3 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item3 ._title {
    position: absolute;
    top: -13.41%;
    left: 0;
    width: 70.83%;
    height: 33.05%;
  }
  .block-door-pedia-item4 {
    position: relative;
  }
  .block-door-pedia-item4:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item4 ._illust {
    position: absolute;
    top: 28.17%;
    left: 55.83%;
    width: 52.5%;
    height: 69.39%;
  }
  .block-door-pedia-item4 ._car {
    position: absolute;
    top: 55.2%;
    left: 103%;
    width: 4.67%;
    height: 6.1%;
  }
  .block-door-pedia-item4 ._texts {
    position: absolute;
    top: 0;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item4 ._cl {
    position: absolute;
    top: 3.66%;
    left: 68.33%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item4 ._title {
    position: absolute;
    top: -13.66%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item5 {
    position: relative;
  }
  .block-door-pedia-item5:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item5 ._illust {
    position: absolute;
    top: 35.37%;
    left: -5.08%;
    width: 62.5%;
    height: 62.2%;
  }
  .block-door-pedia-item5 ._car {
    position: absolute;
    top: 56%;
    left: -4%;
    width: 4.75%;
    height: 6.1%;
  }
  .block-door-pedia-item5 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item5 ._cl {
    position: absolute;
    top: -5%;
    left: 22.08%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item5 ._title {
    position: absolute;
    top: -13.66%;
    left: 0;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item6 {
    position: relative;
  }
  .block-door-pedia-item6:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item6 ._illust {
    position: absolute;
    top: 47.56%;
    left: 50%;
    width: 56.67%;
    height: 50%;
  }
  .block-door-pedia-item6 ._car {
    position: absolute;
    top: 78.66%;
    left: 76.67%;
    width: 2.83%;
    height: 3.9%;
  }
  .block-door-pedia-item6 ._cl {
    position: absolute;
    top: 23.05%;
    left: 60%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item6 ._texts {
    position: absolute;
    top: 0;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item6 ._title {
    position: absolute;
    top: -13.66%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item1 ._car {
    animation: keyf_door_car1 5s linear 0s infinite;
  }
  .block-door-pedia-item2 ._car {
    animation: keyf_door_car2 5s linear 0s infinite;
  }
  .block-door-pedia-item3 ._car {
    animation: keyf_door_car3 5s linear 0s infinite;
  }
  .block-door-pedia-item4 ._car {
    animation: keyf_door_car4 7s linear 0s infinite;
  }
  .block-door-pedia-item5 ._car {
    animation: keyf_door_car5 5s linear 0s infinite;
  }
  .block-door-pedia-item6 ._car {
    animation: keyf_door_car6 5s linear 0s infinite;
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) and (min-width: 1281px) {
  @keyframes keyf_door_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(400px, -230.8px);
      opacity: 1;
    }
    80% {
      transform: translate(400px, -230.8px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car2 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-260px, 150.02px);
      opacity: 1;
    }
    80% {
      transform: translate(-260px, 150.02px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car3 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(400px, -230.8px);
      opacity: 1;
    }
    80% {
      transform: translate(400px, -230.8px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car4 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-500px, 288.5px);
      opacity: 1;
    }
    80% {
      transform: translate(-500px, 288.5px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car5 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(500px, 288.5px);
      opacity: 1;
    }
    80% {
      transform: translate(500px, 288.5px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car6 {
    0% {
      transform: translate(0, 0);
    }
    40% {
      transform: translate(-100px, 57.7px);
      opacity: 1;
    }
    50% {
      transform: translate(-100px, 57.7px);
      opacity: 1;
    }
    90% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
}
@media screen and (min-width: 810px) and (min-width: 1281px) and (max-width: 1280px) {
  @keyframes keyf_door_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(25vw, -14.425vw);
      opacity: 1;
    }
    80% {
      transform: translate(25vw, -14.425vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car2 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-16.25vw, 9.37625vw);
      opacity: 1;
    }
    80% {
      transform: translate(-16.25vw, 9.37625vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car3 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(25vw, -14.425vw);
      opacity: 1;
    }
    80% {
      transform: translate(25vw, -14.425vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car4 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-31.25vw, 18.03125vw);
      opacity: 1;
    }
    80% {
      transform: translate(-31.25vw, 18.03125vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car5 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(31.25vw, 18.03125vw);
      opacity: 1;
    }
    80% {
      transform: translate(31.25vw, 18.03125vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car6 {
    0% {
      transform: translate(0, 0);
    }
    40% {
      transform: translate(-6.25vw, 3.60625vw);
      opacity: 1;
    }
    50% {
      transform: translate(-6.25vw, 3.60625vw);
      opacity: 1;
    }
    90% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
}
@media print, screen and (min-width: 810px) and (min-width: 1281px) {
  .mod-door-pedia-item ._link {
    position: absolute;
    top: -12vw;
    left: 0;
    width: 40px;
    height: 40px;
  }
  .mod-door-pedia-item ._title {
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-door-pedia-item ._title ._en {
    background-color: #00a0e6;
    font-size: 80px;
    line-height: 1.25;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #fff;
    padding: 10px 20px;
  }
  .mod-door-pedia-item ._title h3 {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 15px 25px;
  }
  .mod-door-pedia-item ._title ._leads {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-door-pedia-item ._title ._leads span {
    font-size: 18px;
    letter-spacing: 0.15em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 10px 15px;
  }
  .mod-door-pedia-item ._texts {
    height: 100%;
    border-radius: 50%;
    background-color: #00a0e6;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-door-pedia-item ._texts ._texts-in {
    width: 500px;
    padding: 0 0 80px 0;
  }
  .mod-door-pedia-item ._texts ._texts-in.is-item3 {
    padding-bottom: 0;
  }
  .mod-door-pedia-item ._texts h4 {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.37;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc b {
    font-weight: 800;
  }
  .mod-door-pedia-item ._texts ._note {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
    margin-right: -2em;
  }
  .mod-door-pedia-item ._texts ._image {
    margin-top: 30px;
  }
  .block-door-pedia-navi {
    position: fixed;
    z-index: 20;
    right: 0;
    top: 50%;
    transform: translate(110%, -50%);
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.4s;
  }
  .block-door-pedia-navi img {
    width: 100%;
  }
  body.js-pedia-active .block-door-pedia-navi {
    transform: translate(0, -50%);
    visibility: visible;
    opacity: 1;
  }
  .mod-door-pedia-navi {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border: 2px solid #00a0e6;
    border-right: none;
    border-radius: 30px 0 0 30px;
    overflow: hidden;
    width: 160px;
  }
  .mod-door-pedia-navi li + li {
    position: relative;
  }
  .mod-door-pedia-navi li + li:after {
    content: "";
    display: block;
    position: absolute;
    top: -3px;
    left: 0;
    right: 0;
    height: 6px;
    background: url(../../images/door-pedia/navi/bar.png) left top no-repeat;
    background-size: contain;
  }
  .mod-door-pedia-navi ._item {
    display: block;
    position: relative;
    padding: 17px 0 13px 0;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-door-pedia-navi ._item:hover {
    background-color: rgba(0, 160, 230, 0.5);
  }
  .mod-door-pedia-navi ._item:hover ._item-texts {
    color: #fff;
  }
  .mod-door-pedia-navi ._item ._item-image {
    width: 70px;
    margin: 0 auto;
  }
  .mod-door-pedia-navi ._item ._item-texts {
    font-size: 14px;
    text-align: center;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .area-modal-door-pedia {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-door-pedia.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-door-pedia .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-door-pedia ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 160, 230, 0.9);
  }
  .area-modal-door-pedia ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 800px;
    min-height: 200px;
    padding: 80px;
  }
  .area-modal-door-pedia ._page {
    display: none;
  }
  .block-modal-door-pedia ._title {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #00a0e6;
    padding-bottom: 30px;
    border-bottom: 2px solid #00a0e6;
  }
  .block-modal-door-pedia ._doc {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-profile-keyword-wrap {
    background-color: #d6f1fc;
  }
  .block-profile-keyword-lead {
    position: relative;
  }
  .block-profile-keyword-lead img {
    width: 100%;
  }
  .block-profile-keyword-lead ._layout {
    position: relative;
  }
  .block-profile-keyword-lead ._layout:after {
    display: block;
    content: "";
    padding-top: 70.1666666667%;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    position: absolute;
    top: 16.24%;
    left: 12.98%;
    width: 74.5%;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    position: absolute;
    top: 36.52%;
    left: 10.8%;
    width: 78.33%;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    position: absolute;
    top: 62.26%;
    left: 14.7%;
    width: 71%;
  }
  .block-profile-keyword-lead ._layout ._door1 {
    position: absolute;
    top: 12%;
    left: 3.83%;
    width: 16.25%;
    height: 47.62%;
  }
  .block-profile-keyword-lead ._layout ._door2 {
    position: absolute;
    top: 12%;
    left: 80%;
    width: 16.25%;
    height: 47.62%;
  }
  .block-profile-keyword-lead ._layout ._deco1 {
    position: absolute;
    top: 65.44%;
    left: 1.92%;
    width: 98.08%;
    height: 29.93%;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    font-size: 36px;
    line-height: 1.45;
    letter-spacing: 0.1em;
    color: #002e67;
    text-align: center;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t1 b {
    font-size: 48px;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    font-size: 18px;
    line-height: 1.88;
    letter-spacing: 0.1em;
    color: #000;
    text-align: center;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    font-size: 28px;
    line-height: 1.64;
    letter-spacing: 0.1em;
    color: #00a0e6;
    text-align: center;
    font-weight: 500;
  }
  .block-profile-keyword-network {
    position: relative;
  }
  .block-profile-keyword-network img {
    width: 100%;
  }
  .block-profile-keyword-network .block-inner {
    display: flex;
    gap: 150px;
    flex-direction: column;
  }
  .block-profile-keyword-network ._box {
    padding: 60px 0;
    background-color: #fff;
  }
  .block-profile-keyword-network ._box-inner {
    padding: 50px 100px 0 100px;
  }
  .block-profile-keyword-network ._texts {
    margin-top: 40px;
  }
  .block-profile-keyword-network ._texts ._t1 {
    font-size: 24px;
    text-align: center;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.2em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._texts ._t2 {
    font-size: 60px;
    text-align: center;
    font-weight: 700;
    line-height: 1.74;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._image {
    width: 980px;
    margin: 0 auto;
    margin-top: 20px;
  }
  .block-profile-keyword-network ._image2 {
    width: 1005px;
    margin: 0 auto;
  }
  .mod-profile-keyword-lead {
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead span {
    display: block;
    background-color: #00a0e6;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 20px 10px 20px 20px;
    color: #fff;
  }
  .mod-profile-keyword-lead2 {
    margin-top: 20px;
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead2 span {
    display: block;
    background-color: #00a0e6;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 13px 7px 13px 20px;
    color: #fff;
  }
  .block-profile-keyword-pionnier {
    padding: 120px 0 60px 0;
    position: relative;
  }
  .block-profile-keyword-pionnier img {
    width: 100%;
  }
  .block-profile-keyword-pionnier ._image {
    margin-top: -40px;
    padding: 0 50px;
  }
  .block-profile-keyword-pionnier ._list {
    margin-top: 30px;
  }
  .block-profile-keyword-env {
    padding: 90px 0 150px 0;
    position: relative;
  }
  .block-profile-keyword-env img {
    width: 100%;
  }
  .block-profile-keyword-env ._list {
    margin-top: 50px;
  }
  .mod-profile-keyword-list {
    display: flex;
    justify-content: space-between;
  }
  .mod-profile-keyword-list li {
    width: 580px;
    position: relative;
  }
  .mod-profile-keyword-list li div {
    position: relative;
  }
  .mod-profile-keyword-list li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-profile-keyword-list2 {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
  }
  .mod-profile-keyword-list2 li {
    width: 380px;
    position: relative;
  }
  .mod-profile-keyword-list2 li div {
    position: relative;
  }
  .mod-profile-keyword-list2 li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-project-story-head {
    font-size: 30px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 700;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 15px;
    border-bottom: 1px solid #00a0e6;
  }
  .mod-project-story-head.is-B {
    letter-spacing: 0.2em;
    padding-bottom: 35px;
    margin-bottom: 30px;
  }
  .block-project-story-intro {
    padding-top: 45px;
    padding-bottom: 110px;
  }
  .block-project-story-intro img {
    width: 100%;
  }
  .block-project-story-intro .block-inner {
    position: relative;
  }
  .block-project-story-intro ._doc {
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
  .block-project-story-profs {
    padding-bottom: 80px;
  }
  .block-project-story-profs img {
    width: 100%;
  }
  .block-project-story-profs ._bg {
    position: relative;
  }
  .block-project-story-profs ._bg h2 {
    font-size: 100px;
    line-height: 1.2;
    letter-spacing: 0.07em;
    font-weight: 200;
    color: #00a0e6;
    z-index: 1;
    position: absolute;
    top: -50px;
    left: calc(50% - 610px);
  }
  .block-project-story-profs ._bg ._image {
    position: relative;
  }
  .block-project-story-profs .block-inner {
    position: relative;
    padding-top: 50px;
    margin-top: -160px;
  }
  .mod-project-story-profs-items {
    display: flex;
    justify-content: space-between;
    gap: 27px;
    flex-wrap: wrap;
  }
  .mod-project-story-profs-items img {
    width: 100%;
  }
  .mod-project-story-profs-items li {
    width: calc(25% - 20.25px);
    background: #002e67;
  }
  .mod-project-story-profs-item {
    display: block;
    color: #000;
    background: #002e67;
    padding: 25px 30px 20px 30px;
    position: relative;
  }
  .mod-project-story-profs-item ._item-image {
    width: 100px;
    position: absolute;
    right: 30px;
  }
  .mod-project-story-profs-item ._item-texts {
    position: relative;
    color: #fff;
  }
  .mod-project-story-profs-item ._name {
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.2em;
    font-weight: 700;
  }
  .mod-project-story-profs-item ._yar {
    margin-top: 7px;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-project-story-profs-item ._job {
    margin-top: 18px;
    position: relative;
  }
  .mod-project-story-profs-item ._job span {
    display: inline-block;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0.1em;
    background: #00a0e6;
    padding: 2px 5px;
  }
  .mod-project-story-profs-item ._doc {
    margin-top: 42px;
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.1em;
  }
  .block-project-story-bg {
    background-color: #cee0ee;
  }
  .block-project-story-storys {
    display: flex;
    gap: 140px;
    flex-direction: column;
    padding-top: 110px;
    padding-bottom: 150px;
  }
  .block-project-story-story {
    position: relative;
  }
  .block-project-story-story img {
    width: 100%;
  }
  .block-project-story-story .block-inner {
    position: relative;
  }
  .block-project-story-story ._deco1 {
    position: absolute;
    top: 180px;
    right: -140px;
    width: 220px;
    z-index: 10;
  }
  .block-project-story-story ._deco2 {
    position: absolute;
    top: 30px;
    right: -160px;
    width: 220px;
    z-index: 10;
  }
  .block-project-story-story ._deco3 {
    position: absolute;
    bottom: 70px;
    left: -150px;
    width: 220px;
    z-index: 10;
  }
  .block-project-story-story ._deco4 {
    position: absolute;
    top: 170px;
    right: -140px;
    width: 220px;
    z-index: 10;
  }
  .block-project-story-story ._deco5 {
    position: absolute;
    top: -50px;
    right: -140px;
    width: 220px;
    z-index: 10;
  }
  .block-project-story-story ._deco6 {
    position: absolute;
    bottom: 290px;
    left: -150px;
    width: 220px;
    z-index: 10;
  }
  .mod-project-story-box {
    position: relative;
    background: #fff;
    padding: 40px 100px 75px 100px;
    padding-right: 100px;
  }
  .mod-project-story-box ._title {
    position: absolute;
    top: -40px;
    left: 50%;
  }
  .mod-project-story-box ._title p {
    font-size: 18px;
    line-height: 1;
    letter-spacing: 0.07em;
    font-weight: 700;
    background: #002e67;
    color: #fff;
    padding: 11px 20px;
    transform: translate(-50%, 0);
  }
  .mod-project-story-box ._prof {
    position: absolute;
    top: -40px;
    right: -50px;
    width: 300px;
  }
  .mod-project-story-box ._prof.is-left {
    left: -50px;
    right: auto;
  }
  .mod-project-story-box ._body {
    display: flex;
    gap: 25px;
    flex-direction: column;
  }
  .mod-project-story-box ._row-main {
    width: 800px;
  }
  .mod-project-story-box ._row-main.is-left {
    margin-left: auto;
  }
  .mod-project-story-box ._row-left {
    display: flex;
    justify-content: space-between;
    gap: 50px;
  }
  .mod-project-story-box ._row-left ._image {
    margin-top: 10px;
  }
  .mod-project-story-box ._row-left img {
    text-align: right;
    width: 450px;
  }
  .mod-project-story-box ._row-right {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 50px;
  }
  .mod-project-story-box ._row-right ._image {
    margin-top: 10px;
  }
  .mod-project-story-box ._row-right img {
    text-align: right;
    width: 450px;
  }
  .block-project-story-last img {
    width: 100%;
  }
  .block-questionnaire-intro {
    padding-top: 50px;
    padding-bottom: 110px;
  }
  .block-questionnaire-intro .block-inner {
    position: relative;
  }
  .block-questionnaire-intro .block-inner p {
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
  }
  .block-questionnaire-items {
    display: flex;
    gap: 150px;
    flex-direction: column;
  }
  .block-questionnaire-item {
    position: relative;
  }
  .block-questionnaire-item img {
    width: 100%;
  }
  .block-questionnaire-item ._row-body {
    position: relative;
    margin-top: 40px;
  }
  .block-questionnaire-item ._row-body.is-bar:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -200px;
    right: -200px;
    height: 4px;
    background: #000;
    z-index: -1;
  }
  .block-questionnaire-item ._box {
    margin-top: -40px;
    padding: 50px;
    background-color: #cff0ff;
  }
  .block-questionnaire-item ._box-in {
    padding: 45px 100px 50px 30px;
    background-image: url(../../images/questionnaire/bg.png);
  }
  .block-questionnaire-item ._deco1 {
    position: absolute;
    bottom: 20px;
    right: -35px;
    width: 120px;
  }
  .block-questionnaire-item ._deco2 {
    position: absolute;
    bottom: 20px;
    right: -10px;
    width: 140px;
  }
  .block-questionnaire-item ._deco3 {
    position: absolute;
    top: -100px;
    right: -100px;
    width: 550px;
  }
  .block-questionnaire-item ._deco4 {
    position: absolute;
    bottom: 30px;
    right: -20px;
    width: 300px;
  }
  .block-questionnaire-item ._deco5 {
    position: absolute;
    bottom: 20px;
    right: -20px;
    width: 110px;
  }
  .mod-questionnaire-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-questionnaire-head ._en {
    background-color: #002e67;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 8px 18px;
  }
  .mod-questionnaire-head h2 {
    background-color: #00a0e6;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 12px 20px;
  }
  .mod-questionnairelist-A {
    display: flex;
    gap: 20px;
    flex-direction: column;
  }
  .mod-questionnairelist-A li {
    margin-left: 70px;
    position: relative;
  }
  .mod-questionnairelist-A li span {
    display: inline;
    border-bottom: 2px solid #cff0ff;
    font-size: 16px;
    line-height: 2.62;
    letter-spacing: 0.1em;
    padding: 8px 0;
  }
  .mod-questionnairelist-A li:after {
    content: "";
    display: block;
    position: absolute;
    top: -5px;
    left: -70px;
    background: url(../../images/questionnaire/icon1.png) left top no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
  }
  .mod-questionnairelist-B {
    display: flex;
    gap: 17px;
    flex-direction: column;
  }
  .mod-questionnairelist-B li {
    margin-left: 80px;
    position: relative;
  }
  .mod-questionnairelist-B li span {
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: 0.1em;
  }
  .mod-questionnairelist-B li span b {
    font-size: 24px;
    font-weight: 700;
    color: #00a0e6;
  }
  .mod-questionnairelist-B li:after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    left: -80px;
    background: url(../../images/questionnaire/icon2.png) left top no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-career-main {
    padding: 6.1538461538vw 0 10.7692307692vw 0;
    position: relative;
  }
  .block-career-main img {
    width: 100%;
  }
  .block-career-main ._row-body {
    margin-top: 3.8461538462vw;
    display: flex;
    gap: 140px;
    flex-direction: column;
  }
  .mod-career-main-cols {
    display: flex;
    gap: 7.6923076923vw;
  }
  .mod-career-main-cols.is-l ._img {
    margin-left: min(0, -200px);
  }
  .mod-career-main-cols.is-r {
    flex-direction: row-reverse;
  }
  .mod-career-main-cols.is-r ._img {
    margin-right: min(0, -200px);
  }
  .mod-career-main-cols ._cols-image {
    width: 30.7692307692vw;
  }
  .mod-career-main-cols ._cols-image img {
    width: 100%;
  }
  .mod-career-main-cols ._deco1 {
    margin-top: 6.1538461538vw;
    width: 28.4615384615vw;
  }
  .mod-career-main-cols ._prof {
    position: relative;
    width: 23.0769230769vw;
    padding: 1.5384615385vw;
    background-color: #fff;
    margin-top: -6.1538461538vw;
    color: #002e67;
    box-shadow: 1.1538461538vw 1.1538461538vw 0 #002e67;
  }
  .mod-career-main-cols ._prof.is-B {
    margin-left: auto;
  }
  .mod-career-main-cols ._prof ._job {
    font-size: 1.2307692308vw;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._div {
    margin-top: 0.5384615385vw;
    font-size: 1.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._name {
    border-top: 1px solid #002e67;
    padding-top: 0.9230769231vw;
  }
  .mod-career-main-cols ._prof ._name {
    margin-top: 1.2307692308vw;
    font-size: 1.5384615385vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
  }
  .mod-career-main-cols ._prof ._spec {
    margin-top: 0.8461538462vw;
    font-size: 1.0769230769vw;
    line-height: 1.71;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._cols-texts {
    flex: 1;
    display: flex;
    gap: 4.6153846154vw;
    flex-direction: column;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span {
    background-color: #fff;
    color: #00a0e6;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span:before {
    border-left: 1.9230769231vw solid #fff;
  }
  .mod-career-main-cols ._cols-texts ._title span {
    display: inline-block;
    min-width: 20vw;
    background-color: #00a0e6;
    padding: 0.7692307692vw 0 0.7692307692vw 1.5384615385vw;
    font-size: 1.5384615385vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    position: relative;
  }
  .mod-career-main-cols ._cols-texts ._title span:before {
    content: "";
    position: absolute;
    top: 0;
    right: -3.8461538462vw;
    width: 1.9230769231vw;
    height: 1.9230769231vw;
    box-sizing: border-box;
    border: 1.9230769231vw solid transparent;
    border-left: 1.9230769231vw solid #00a0e6;
    transform: scale(1, 1);
  }
  .mod-career-main-cols ._cols-texts ._doc {
    margin-top: 1.1538461538vw;
  }
  .block-career-qa {
    padding: 10.7692307692vw 0 9.2307692308vw 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-career-qa img {
    width: 100%;
  }
  .block-career-qa ._inner {
    max-width: 76.9230769231vw;
    margin: 0 auto;
  }
  .block-career-qa ._row-body {
    margin-top: 3.0769230769vw;
  }
  .mod-faq-wrap {
    display: flex;
    gap: 3.0769230769vw;
    flex-direction: column;
  }
  .mod-faq ._head {
    position: relative;
    cursor: pointer;
    background: #fff;
    font-size: 1.5384615385vw;
    font-weight: 700;
    line-height: 1.74;
    letter-spacing: 0.2em;
    color: #00a0e6;
    border: 1px solid #00a0e6;
    padding: 0.7692307692vw 0.7692307692vw 0.7692307692vw 5.3846153846vw;
  }
  .mod-faq ._head:after {
    content: "Q";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    padding-left: 2px;
    width: 3.8461538462vw;
    background-color: #002e67;
    font-size: 2.3076923077vw;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Oswald, sans-serif;
  }
  .mod-faq ._head.is-open ._toggle-icon {
    transform: rotate(0);
  }
  .mod-faq ._head ._toggle-icon {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 40px;
    height: 40px;
    transition-duration: 0.2s;
    transform: rotate(180deg);
  }
  .mod-faq ._head ._toggle-icon:before {
    position: absolute;
    top: 7px;
    left: 12px;
    display: block;
    content: "";
    height: 15px;
    width: 15px;
    border: 2px solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
  }
  .mod-faq ._body {
    padding: 1.5384615385vw 1.5384615385vw 0 9.2307692308vw;
  }
  .mod-faq ._box {
    position: relative;
    background-color: #fff;
    padding: 1.5384615385vw 2.3076923077vw 1.5384615385vw 2.3076923077vw;
  }
  .mod-faq ._box:before {
    content: "";
    position: absolute;
    top: 2.3076923077vw;
    left: -3.0769230769vw;
    width: 1.5384615385vw;
    height: 1.5384615385vw;
    box-sizing: border-box;
    border: 1.5384615385vw solid transparent;
    border-right: 1.5384615385vw solid #fff;
    transform: scale(1, 1);
  }
  .mod-faq ._box ._face {
    position: absolute;
    top: 1.5384615385vw;
    left: -7.6923076923vw;
    width: 4.6153846154vw;
    height: 4.6153846154vw;
  }
  .block-career-info {
    padding: 10.7692307692vw 0 10.7692307692vw 0;
    position: relative;
  }
  .block-career-info ._inner {
    max-width: 76.9230769231vw;
    margin: 0 auto;
  }
  .block-career-info ._row-body {
    margin-top: 2.3076923077vw;
  }
  .mod-modal-btn-close {
    position: relative;
    width: 80px;
    height: 80px;
    background-color: #fff;
    border-radius: 50%;
    border: 2px solid #00a0e6;
    z-index: 10;
    cursor: pointer;
  }
  .mod-modal-btn-close.is-bk {
    border-color: #002e67;
  }
  .mod-modal-btn-close.is-bk span {
    background: #002e67;
  }
  .mod-modal-btn-close span {
    content: "";
    position: absolute;
    background: #00a0e6;
    top: 36px;
    left: 24px;
    width: 30px;
    height: 2px;
    transform: rotate(-45deg);
  }
  .mod-modal-btn-close span:nth-child(2) {
    transform: rotate(45deg);
  }
  .mod-modal-navi {
    display: flex;
  }
  .mod-modal-navi-btn.is-prev {
    display: block;
    width: 60px;
    height: 100px;
    background: url(../images/icon/arrow_prev_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 50px);
    left: -100px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-modal-navi-btn.is-prev:hover {
    opacity: 0.8;
  }
  .mod-modal-navi-btn.is-next {
    display: block;
    width: 60px;
    height: 100px;
    background: url(../images/icon/arrow_next_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: calc(50% - 50px);
    right: -100px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-modal-navi-btn.is-next:hover {
    opacity: 0.8;
  }
  .area-modal-entry {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-entry.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-entry .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-entry ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 46, 103, 0.9);
  }
  .area-modal-entry ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #c6ebfa;
    width: 800px;
    padding: 80px 80px;
  }
  .block-modal-entry {
    position: relative;
  }
  .block-modal-entry ._row-header {
    border-bottom: 2px solid #002e67;
  }
  .block-modal-entry ._row-header h2 {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.2em;
    color: #002e67;
    padding: 0 0 30px 0;
  }
  .block-modal-entry ._row-body {
    margin-top: 40px;
  }
  .block-modal-entry ul {
    display: flex;
    justify-content: center;
    gap: 20px;
  }
  .block-modal-entry ul li {
    width: 320px;
  }
  .mod-btn-modal-entry {
    padding: 20px 50px 20px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 4px solid #002e67;
    border-radius: 50px;
    color: #002e67;
    cursor: pointer;
    background: #fff;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-btn-modal-entry:after {
    content: "";
    display: block;
    position: absolute;
    top: 15px;
    right: 15px;
    background: url(../images/icon/icon2.png) left top no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
  }
  .mod-btn-modal-entry:hover {
    background-color: #002e67;
    color: #fff;
  }
  .mod-btn-modal-entry:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-btn-modal-entry ._ja {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-btn-modal-entry ._en {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .mod-hover {
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-hover:hover {
    opacity: 0.8;
  }
  .mod-deco {
    pointer-events: none;
  }
  .mod-btn-wrap:hover .mod-btn-more {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-wrap:hover .mod-btn-more span {
    color: orange;
  }
  .mod-btn-more {
    width: 13.8461538462vw;
    height: 3.6923076923vw;
    background: url(../img/common/btn_more.svg) left top no-repeat;
    background-size: contain;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
  }
  .mod-btn-more span {
    font-size: 1.5384615385vw;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.075em;
    color: #000;
    padding-right: 2.3076923077vw;
    transition-duration: 0.2s;
  }
  .mod-btn-more:hover {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-more:hover span {
    color: #00a0e6;
  }
  .block-common-mv {
    position: relative;
  }
  .block-common-mv img {
    width: 100%;
  }
  .block-common-mv ._image {
    position: relative;
  }
  .block-common-mv ._image img {
    object-fit: cover;
  }
  .block-common-mv ._image img {
    min-height: 560px;
  }
  .block-common-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -58%);
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (min-width: 1281px) {
  .block-common-mv ._texts {
    left: max(0, calc(50% - 600px));
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  .block-common-mv ._texts {
    left: 40px;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-common-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-common-mv ._texts ._cate {
    font-size: 1.3846153846vw;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #ff8c00;
    padding: 1.1538461538vw 2.3076923077vw;
  }
  .block-common-mv ._texts ._en {
    font-size: 6.1538461538vw;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 0.7692307692vw 1.5384615385vw;
  }
  .block-common-mv ._texts ._en i {
    font-style: italic;
  }
  .block-common-mv ._texts h1 {
    font-size: 1.2307692308vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1vw 1.9230769231vw;
  }
  .mod-doc {
    font-size: 1.2307692308vw;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-doc.is-note {
    font-size: 1.0769230769vw;
    margin-left: 1em;
    text-indent: -1em;
  }
  .mod-common-h2 {
    color: #00a0e6;
  }
  .mod-common-h2.is-center {
    text-align: center;
  }
  .mod-common-h2.is-wh {
    color: #fff;
  }
  .mod-common-h2 ._en {
    font-size: 6.1538461538vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.075em;
  }
  .mod-common-h2 h2 {
    font-size: 1.2307692308vw;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
  }
  .block-common-footer-navi {
    padding: 6.1538461538vw 0 9.2307692308vw;
    background-color: #fff;
    position: relative;
  }
  .block-common-footer-navi ._row-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .block-common-footer-navi ._row-header ._en {
    background-color: #00a0e6;
    font-size: 3.8461538462vw;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 1px 1.3846153846vw;
  }
  .block-common-footer-navi ._row-header h2 {
    background-color: #00a0e6;
    font-size: 1.2307692308vw;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
    color: #fff;
    padding: 0.7692307692vw 1.5384615385vw;
  }
  .block-common-footer-navi ._row-body {
    margin-top: 1.9230769231vw;
  }
  .block-common-footer-navi ._items {
    display: flex;
    flex-wrap: wrap;
    gap: 2.3076923077vw;
  }
  .block-common-footer-navi ._item {
    position: relative;
    display: flex;
    gap: 0.7692307692vw;
    padding-right: 3.0769230769vw;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .block-common-footer-navi ._item:hover {
    opacity: 0.8;
  }
  .block-common-footer-navi ._item:hover:before {
    right: -0.7692307692vw;
    width: 7.6923076923vw;
  }
  .block-common-footer-navi ._item:before {
    content: "";
    display: block;
    position: absolute;
    top: 3.0769230769vw;
    right: 0;
    width: 7.6923076923vw;
    height: 2px;
    background: #00a0e6;
    transition-duration: 0.2s;
  }
  .block-common-footer-navi ._item ._item-image {
    width: 7.6923076923vw;
  }
  .block-common-footer-navi ._item ._item-image img {
    width: 100%;
  }
  .block-common-footer-navi ._item ._item-texts {
    padding-top: 1.5384615385vw;
    flex: 1;
    color: #00a0e6;
  }
  .block-common-footer-navi ._item ._item-texts ._en {
    display: inline-block;
    position: relative;
    font-size: 1.8461538462vw;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.075em;
    background-color: #fff;
    padding: 0 0.7692307692vw 0 0;
  }
  .block-common-footer-navi ._item ._item-texts ._ja {
    font-size: 1.0769230769vw;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .block-common-pagelink {
    padding: 4.6153846154vw 0;
  }
  .mod-common-pagelinks {
    display: flex;
    gap: 2.4615384615vw;
  }
  .mod-common-pagelinks li {
    text-align: center;
    line-height: 1;
    position: relative;
  }
  .mod-common-pagelinks li a {
    display: block;
    padding: 0 3.0769230769vw 1.5384615385vw 0;
    font-size: 1.3846153846vw;
    letter-spacing: 0.1em;
    color: #00a0e6;
    border-bottom: 0.1538461538vw solid #00a0e6;
    font-weight: 700;
    position: relative;
    cursor: pointer;
  }
  .mod-common-pagelinks li a:before {
    position: absolute;
    top: 0;
    right: 0.3076923077vw;
    display: block;
    content: "";
    height: 0.7692307692vw;
    width: 0.7692307692vw;
    border: 0.1538461538vw solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
    transition-duration: 0.2s;
  }
  .mod-common-pagelinks li a:hover {
    opacity: 0.8;
  }
  .mod-common-pagelinks li a:hover:before {
    top: 0.3076923077vw;
  }
  .block-crosstalk-intro {
    padding-top: 3.8461538462vw;
    padding-bottom: 8.4615384615vw;
  }
  .block-crosstalk-intro .block-inner {
    position: relative;
  }
  .block-crosstalk-intro .block-inner ._doc {
    font-size: 1.3846153846vw;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
    color: #000;
  }
  .block-crosstalk-prof {
    padding-top: 0;
    padding-bottom: 5vw;
    background: #cff0ff;
  }
  .block-crosstalk-prof .block-inner {
    position: relative;
    padding-left: 7.6923076923vw;
  }
  .block-crosstalk-prof h2 {
    position: absolute;
    top: -2.3076923077vw;
    left: -4.6153846154vw;
    font-weight: 300;
    writing-mode: vertical-rl;
    font-size: 7.6923076923vw;
    line-height: 1.8;
    letter-spacing: 0.07em;
    color: #00a0e6;
  }
  .mod-crosstalk-prof-items {
    display: flex;
    justify-content: space-between;
    gap: 6.1538461538vw;
    flex-wrap: wrap;
  }
  .mod-crosstalk-prof-items img {
    width: 100%;
  }
  .mod-crosstalk-prof-items > li {
    width: calc(25% - 4.6153846154vw);
  }
  .mod-crosstalk-prof-items > li .item {
    display: block;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._item-image {
    text-align: center;
  }
  .mod-crosstalk-prof-items > li .item ._item-image img {
    width: 15.3846153846vw;
  }
  .mod-crosstalk-prof-items > li .item ._item-texts {
    margin-top: 1.5384615385vw;
  }
  .mod-crosstalk-prof-items > li .item ._job {
    position: relative;
  }
  .mod-crosstalk-prof-items > li .item ._job span {
    font-size: 1.0769230769vw;
    letter-spacing: 0.1em;
    color: #fff;
    background: #002e67;
    padding: 0.1538461538vw 0.3846153846vw;
  }
  .mod-crosstalk-prof-items > li .item ._place {
    margin-top: 0.6923076923vw;
    font-size: 1.0769230769vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._name {
    margin-top: 0.1538461538vw;
    font-size: 1.8461538462vw;
    line-height: 1.8;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._year {
    margin-top: 0;
    font-size: 1.0769230769vw;
    line-height: 1.6;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    border-top: 1px solid #000;
    padding-top: 1.1538461538vw;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    margin-top: 1vw;
    font-size: 1.2307692308vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-crosstalk-talks {
    padding: 11.5384615385vw 0 7.6923076923vw 0;
    display: flex;
    gap: 10.7692307692vw;
    flex-direction: column;
  }
  .block-crosstalk-talks img {
    width: 100%;
  }
  .block-crosstalk-talk {
    position: relative;
  }
  .block-crosstalk-talk ._row-header {
    width: 100%;
    position: relative;
  }
  .block-crosstalk-talk ._row-header ._title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .block-crosstalk-talk ._row-header ._image {
    position: relative;
    width: 92.3076923077vw;
    transform: translate(15.3846153846vw, 0);
  }
  .block-crosstalk-talk ._row-header.is-B ._title {
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
  }
  .block-crosstalk-talk ._row-header.is-B ._image {
    position: relative;
    width: 92.3076923077vw;
    transform: translate(-15.3846153846vw, 0);
  }
  .block-crosstalk-talk ._row-body {
    margin-top: 6.1538461538vw;
    display: flex;
    gap: 4.6153846154vw;
    flex-direction: column;
  }
  .block-crosstalk-talk ._deco1 {
    position: absolute;
    top: 14.6153846154vw;
    left: -4.2307692308vw;
    width: 17.6923076923vw;
  }
  .block-crosstalk-talk ._deco2 {
    position: absolute;
    top: 12.3076923077vw;
    right: -7.3076923077vw;
    width: 20vw;
  }
  .block-crosstalk-talk ._deco3 {
    position: absolute;
    top: 23.0769230769vw;
    left: -5.7692307692vw;
    width: 21.5384615385vw;
  }
  .mod-crosstalk-talks-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-crosstalk-talks-head ._en {
    background-color: #002e67;
    font-size: 1.3846153846vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 0.6153846154vw 1.3846153846vw;
  }
  .mod-crosstalk-talks-head h2 {
    background-color: #00a0e6;
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 0.9230769231vw 1.5384615385vw;
  }
  .mod-crosstalk-talks-col1 {
    display: flex;
    gap: 7.6923076923vw;
    flex-direction: row-reverse;
  }
  .mod-crosstalk-talks-col1 ._col-image {
    padding-top: 3.0769230769vw;
    width: 15.3846153846vw;
  }
  .mod-crosstalk-talks-col1 ._col-image img {
    width: 30.7692307692vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1300px) {
  .mod-crosstalk-talks-col1 ._col-image {
    width: 23.0769230769vw;
  }
  .mod-crosstalk-talks-col1 ._col-image img {
    width: 26.1538461538vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .mod-crosstalk-talks-col1 ._col-texts {
    flex: 1;
  }
  .mod-crosstalk-talks-col2 {
    display: flex;
    gap: 7.6923076923vw;
  }
  .mod-crosstalk-talks-col2 ._col-image {
    padding-top: 3.0769230769vw;
    width: 23.0769230769vw;
  }
  .mod-crosstalk-talks-col2 ._col-image img {
    width: 38.4615384615vw;
    transform: translate(-15.3846153846vw, 0);
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1300px) {
  .mod-crosstalk-talks-col2 ._col-image {
    width: 23.0769230769vw;
  }
  .mod-crosstalk-talks-col2 ._col-image img {
    width: 23.0769230769vw;
    transform: translate(0, 0);
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .mod-crosstalk-talks-col2 ._col-texts {
    padding-top: 1.5384615385vw;
    flex: 1;
  }
  .mod-talk {
    display: flex;
    gap: 0.9230769231vw;
    flex-direction: column;
  }
  .mod-talk ._talk {
    position: relative;
    display: flex;
    align-items: center;
    gap: 3.0769230769vw;
  }
  .mod-talk ._talk ._talk-face {
    width: 7.6923076923vw;
  }
  .mod-talk ._talk ._talk-texts {
    flex: 1;
  }
  .mod-talk ._talk ._talk-face img {
    width: 7.6923076923vw;
    border-radius: 50%;
  }
  .mod-talk ._talk ._talk-face span {
    margin-top: 0.7692307692vw;
    font-size: 1.0769230769vw;
    display: block;
    text-align: center;
  }
  .mod-talk ._talk ._talk-texts {
    padding-top: 2.6923076923vw;
  }
  .block-crosstalk-last img {
    width: 100%;
  }
  body.page-future {
    background-color: #d6f1fc;
  }
  .block-future-main {
    position: relative;
  }
  .mod-future-main {
    position: relative;
  }
  .mod-future-main img {
    width: 100%;
  }
  .mod-future-main:after {
    display: block;
    content: "";
    padding-top: 385.3333333333%;
  }
  .mod-future-main ._deco10 {
    position: absolute;
    top: 73.46%;
    left: 91.67%;
    width: 19.17%;
  }
  .mod-future-main ._deco11 {
    position: absolute;
    top: 87.74%;
    left: -10.5%;
    width: 23.33%;
  }
  .mod-future-main ._p13 {
    position: absolute;
    top: 76.92%;
    left: 41.67%;
    width: 58.33%;
  }
  .mod-future-main ._p15 {
    position: absolute;
    top: 91.76%;
    left: 8.33%;
    width: 33.33%;
  }
  .mod-future-main ._p14 {
    position: absolute;
    top: 88.6%;
    left: 37.5%;
    width: 25%;
  }
  .mod-future-main ._p16 {
    position: absolute;
    top: 92.6%;
    left: 70.17%;
    width: 18.33%;
  }
  .mod-future-main ._p7 {
    position: absolute;
    top: 48.59%;
    left: 0;
    width: 36.67%;
  }
  .mod-future-main ._p11 {
    position: absolute;
    top: 61.79%;
    left: 65%;
    width: 40%;
  }
  .mod-future-main ._p8 {
    position: absolute;
    top: 50.11%;
    left: 75%;
    width: 20%;
  }
  .mod-future-main ._p12 {
    position: absolute;
    top: 70%;
    left: 75%;
    width: 15%;
  }
  .mod-future-main ._p10 {
    position: absolute;
    top: 66.54%;
    left: 50%;
    width: 20%;
  }
  .mod-future-main ._p9 {
    position: absolute;
    top: 67.41%;
    left: 6.67%;
    width: 33.33%;
  }
  .mod-future-main ._deco8 {
    position: absolute;
    top: 45.7%;
    left: 95%;
    width: 11.67%;
  }
  .mod-future-main ._deco9 {
    position: absolute;
    top: 62.87%;
    left: -4.92%;
    width: 9.83%;
  }
  .mod-future-main ._deco6 {
    position: absolute;
    top: 23.31%;
    left: 91.67%;
    width: 19.17%;
  }
  .mod-future-main ._deco7 {
    position: absolute;
    top: 39.94%;
    left: 1.67%;
    width: 23.33%;
  }
  .mod-future-main ._p6 {
    position: absolute;
    top: 39.08%;
    left: 70%;
    width: 30%;
  }
  .mod-future-main ._p1 {
    position: absolute;
    top: 15.16%;
    left: 42.83%;
    width: 58.33%;
  }
  .mod-future-main ._p4 {
    position: absolute;
    top: 30.64%;
    left: -6.67%;
    width: 21.67%;
  }
  .mod-future-main ._p5 {
    position: absolute;
    top: 35.83%;
    left: 10%;
    width: 41.67%;
  }
  .mod-future-main ._p2 {
    position: absolute;
    top: 27.18%;
    left: 37.5%;
    width: 30%;
  }
  .mod-future-main ._p3 {
    position: absolute;
    top: 29.78%;
    left: 71.67%;
    width: 20%;
  }
  .mod-future-main ._deco3 {
    position: absolute;
    top: 3.11%;
    left: 80.17%;
    width: 6.42%;
  }
  .mod-future-main ._deco2 {
    position: absolute;
    top: 7.31%;
    left: 0;
    width: 25%;
  }
  .mod-future-main ._deco1 {
    position: absolute;
    top: 0;
    left: -10.5%;
    width: 20.42%;
  }
  .mod-future-main ._deco5 {
    position: absolute;
    top: 5.99%;
    left: 93.75%;
    width: 12.5%;
  }
  .mod-future-main ._deco4 {
    position: absolute;
    top: 10.21%;
    left: 75.83%;
    width: 25.5%;
  }
  .mod-future-main ._logo {
    position: absolute;
    top: 8.61%;
    left: 29.17%;
    width: 41.67%;
  }
  .mod-future-main ._titles {
    position: absolute;
    top: 2.96%;
    left: -0.03%;
    width: 100%;
    text-align: center;
    display: flex;
    gap: 30px;
    flex-direction: column;
  }
  .mod-future-main ._titles ._title {
    font-size: 48px;
    line-height: 1.45;
    color: #002e67;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-future-main ._titles ._lead {
    font-size: 18px;
    line-height: 1.88;
    color: #000;
    letter-spacing: 0.075em;
  }
  .mod-future-main ._texts1 {
    position: absolute;
    top: 15.94%;
    left: 0;
  }
  .mod-future-main ._texts2 {
    position: absolute;
    top: 49.44%;
    left: 41.42%;
  }
  .mod-future-main ._texts3 {
    position: absolute;
    top: 77.79%;
    left: 0;
  }
  .block-future-bg {
    padding: 100px 0 0;
  }
  .block-future-bg img {
    width: 100%;
  }
  .mod-future-texts {
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
  }
  .mod-future-texts ._title {
    font-size: 30px;
    line-height: 2.33;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #fff;
    background: #00a0e6;
    padding: 0 20px;
  }
  .mod-future-texts ._doc {
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: flex-start;
  }
  .mod-future-texts ._doc span {
    background: #fff;
    font-size: 16px;
    line-height: 2.5;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #00a0e6;
    padding: 0 20px;
  }
  .block-common-mv ._high-school {
    width: 44.6153846154vw;
  }
  .block-high-school-main {
    padding: 6.5384615385vw 0 3.0769230769vw 0;
    position: relative;
  }
  .block-high-school-main img {
    width: 100%;
  }
  .block-high-school-main ._box {
    position: relative;
    background-color: #cff0ff;
    padding: 6.1538461538vw 7.3076923077vw;
    display: flex;
    gap: 1.5384615385vw;
    flex-direction: column;
  }
  .block-high-school-main ._row1 {
    margin-right: 24.6153846154vw;
  }
  .block-high-school-main ._title {
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #000;
    padding-bottom: 1.5384615385vw;
    margin-bottom: 2.3076923077vw;
  }
  .block-high-school-main ._deco1 {
    position: absolute;
    top: 3.8461538462vw;
    right: 0;
    width: 27.6923076923vw;
  }
  .block-high-school-main ._deco2 {
    position: absolute;
    bottom: 3.0769230769vw;
    left: -9.2307692308vw;
    width: 15.3846153846vw;
  }
  .block-high-school-menu {
    padding: 5.7692307692vw 0 7.6923076923vw 0;
    position: relative;
  }
  .block-high-school-menu img {
    width: 100%;
  }
  .block-high-school-menu ._cols {
    display: flex;
    gap: 12.3076923077vw;
  }
  .block-high-school-menu ._cols ._col-title {
    width: 26.1538461538vw;
  }
  .block-high-school-menu ._cols ._col-menus {
    width: 49.3076923077vw;
    display: flex;
    gap: 3.8461538462vw;
    flex-direction: column;
  }
  .block-high-school-menu ._cols ._col-menus a {
    display: block;
  }
  .block-high-school-menu ._deco1 {
    display: block;
    width: 22.3076923077vw;
    margin-top: 1.5384615385vw;
    margin-left: auto;
  }
  .mod-high-school-btn {
    display: block;
    position: relative;
    cursor: pointer;
    transition-duration: 0.2s;
    color: #00a0e6;
  }
  .mod-high-school-btn:hover {
    transform: translate(0.5vw, 0);
  }
  .mod-high-school-btn ._ts {
    position: absolute;
    top: 0.3846153846vw;
    left: 15.3846153846vw;
  }
  .mod-high-school-btn ._en {
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.075em;
  }
  .mod-high-school-btn ._ja {
    font-size: 1.0769230769vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.2;
  }
  .block-high-school-interview {
    padding: 10.7692307692vw 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-high-school-interview img {
    width: 100%;
  }
  .block-high-school-interview ._row-body {
    margin-top: 4.6153846154vw;
    display: flex;
    gap: 9.2307692308vw;
    flex-direction: column;
  }
  .block-high-school-interview .mod-career-main-cols .mod-doc {
    color: #00a0e6;
  }
  .block-high-school-interview ._row-header2 {
    margin-top: 10vw;
    position: relative;
  }
  .block-high-school-interview ._row-body2 {
    position: relative;
    margin-top: 2.3076923077vw;
  }
  .block-high-school-interview ._deco1 {
    position: absolute;
    top: -3.8461538462vw;
    right: -16.9230769231vw;
    width: 52.6923076923vw;
  }
  .block-high-school-interview ._deco2 {
    position: absolute;
    bottom: -16.9230769231vw;
    right: -18.4615384615vw;
    width: 16.9230769231vw;
  }
  .block-high-school-interview ._deco3 {
    position: absolute;
    bottom: -16.9230769231vw;
    left: -18.4615384615vw;
    width: 16.9230769231vw;
  }
  .block-high-school-interview ._deco4 {
    position: absolute;
    bottom: 9.2307692308vw;
    right: 23.0769230769vw;
    width: 13.8461538462vw;
  }
  .block-high-school-interview2 {
    padding: 10.7692307692vw 0;
    position: relative;
    background-color: #00a0e6;
  }
  .block-high-school-interview2 img {
    width: 100%;
  }
  .block-high-school-interview2 ._row-body {
    margin-top: 4.6153846154vw;
    display: flex;
    gap: 9.2307692308vw;
    flex-direction: column;
  }
  .block-high-school-interview2 .mod-career-main-cols .mod-doc {
    color: #fff;
  }
  .block-high-school-interview2 ._row-header2 {
    margin-top: 10vw;
    position: relative;
  }
  .block-high-school-interview2 ._row-body2 {
    position: relative;
    margin-top: 2.3076923077vw;
  }
  .block-high-school-interview2 ._deco1 {
    position: absolute;
    top: -3.8461538462vw;
    right: -16.9230769231vw;
    width: 52.6923076923vw;
  }
  .block-high-school-interview2 ._deco2 {
    position: absolute;
    bottom: -8.4615384615vw;
    right: -7.6923076923vw;
    width: 15.3846153846vw;
  }
  .block-high-school-interview2 ._deco3 {
    position: absolute;
    bottom: 1.5384615385vw;
    left: -18.4615384615vw;
    width: 18.4615384615vw;
  }
  .block-high-school-interview2 ._deco4 {
    position: absolute;
    bottom: 10.7692307692vw;
    right: 0;
    width: 13.8461538462vw;
  }
  .mod-high-school-flow-items {
    position: relative;
  }
  .mod-high-school-flow-items ul {
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .mod-high-school-flow-items ul > li.is-line {
    position: relative;
    padding: 0 0 7.6923076923vw 0;
  }
  .mod-high-school-flow-items ul > li.is-line:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -76.9230769231vw;
    right: -76.9230769231vw;
    background: url(../../images/high-school-graduates/interview1/line.png) center top;
    background-size: auto 100%;
    height: 3.6923076923vw;
  }
  .mod-high-school-flow-items ul > li.is-line.is-wh:after {
    background-image: url(../../images/high-school-graduates/interview1/line_wh.png);
  }
  .mod-high-school-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 3.8461538462vw;
    bottom: 15.3846153846vw;
    left: 2.6923076923vw;
    width: 0.6153846154vw;
    background: #002e67;
  }
  .mod-high-school-flow-item {
    position: relative;
    display: flex;
    gap: 1.5384615385vw;
    padding: 2.3076923077vw 0 1.5384615385vw 0;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._title {
    color: #fff;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._doc {
    color: #fff;
  }
  .mod-high-school-flow-item ._item-no {
    width: 6.1538461538vw;
    height: 6.1538461538vw;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-high-school-flow-item ._item-no > div {
    display: flex;
    gap: 0.3846153846vw;
    flex-direction: column;
    text-align: center;
  }
  .mod-high-school-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(1) {
    font-size: 0.9230769231vw;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(2) {
    font-size: 2.4615384615vw;
  }
  .mod-high-school-flow-item ._item-texts {
    flex: 1;
    padding: 1.1538461538vw 0 0 0;
  }
  .mod-high-school-flow-item ._item-texts ._title {
    font-size: 2.3076923077vw;
    line-height: 1.53;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-high-school-flow-item ._item-texts ._doc {
    margin-top: 0.3846153846vw;
    color: #00a0e6;
    padding: 0 36.9230769231vw 0 0;
  }
  .mod-high-school-flow-item ._item-texts ._image {
    width: 30.7692307692vw;
    position: absolute;
    bottom: 1.5384615385vw;
    right: 0;
  }
  .mod-high-school-flow-item-last {
    padding: 3.0769230769vw 0 0 0;
  }
  .mod-high-school-flow-item-last ._label {
    position: relative;
    width: 18.5384615385vw;
  }
  .mod-high-school-flow-item-last ._image-last {
    width: 51.0769230769vw;
    margin: 0 auto;
    margin-top: -7.6923076923vw;
    transform: translate(2.3076923077vw, 0);
  }
  .block-index-mv {
    position: relative;
    overflow: hidden;
  }
  .block-index-mv img {
    width: 100%;
  }
  .block-index-mv ._pedia {
    position: absolute;
    right: -1.5384615385vw;
    bottom: 8.4615384615vw;
  }
  .block-index-mv ._scroll {
    position: absolute;
    left: 6.1538461538vw;
    bottom: 3.8461538462vw;
  }
  body.js-gmenu-active .block-index-mv ._pounts {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._pedia {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._scroll {
    display: none;
  }
  .mod-index-mv-point ._p1 {
    position: absolute;
    top: 34.11%;
    left: 16.25%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p2 {
    position: absolute;
    top: 3.89%;
    left: 55.06%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p4 {
    position: absolute;
    top: 21.44%;
    left: 35.5%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p3 {
    position: absolute;
    top: 5%;
    left: 46.88%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p5 {
    position: absolute;
    top: 54.67%;
    left: 80.63%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p7 {
    position: absolute;
    top: 81%;
    left: 33.75%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._p6 {
    position: absolute;
    top: 57.89%;
    left: 31.88%;
    width: 5%;
    height: 8.89%;
  }
  .mod-index-mv-point ._b1 {
    position: absolute;
    top: 21.11%;
    left: 10%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b2 {
    position: absolute;
    top: 2.22%;
    left: 58.75%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b3 {
    position: absolute;
    top: 5%;
    left: 50%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b4 {
    position: absolute;
    top: 10%;
    left: 29.38%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b5 {
    position: absolute;
    top: 39.11%;
    left: 74.38%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b6 {
    position: absolute;
    top: 42.22%;
    left: 25.63%;
    width: 17.5%;
  }
  .mod-index-mv-point ._b7 {
    position: absolute;
    top: 65.44%;
    left: 27.63%;
    width: 17.5%;
  }
  .mod-index-mv-point ._point {
    background: url(../../images/index/mv/pin.png) left top no-repeat;
    background-size: contain;
    width: 5vw;
    height: 5vw;
    cursor: pointer;
    transition-duration: 0.4s;
    z-index: 70;
    opacity: 1;
  }
  .mod-index-mv-point ._point.is-open {
    opacity: 0;
    pointer-events: auto;
  }
  .mod-index-mv-point ._point {
    animation: keyf_index_mv_point 2s ease-in-out 0s infinite;
  }
  .mod-index-mv-baloon-item {
    border-radius: 0.3846153846vw;
    background-color: #ff933c;
    color: #fff;
    z-index: 70;
    padding: 0.625vw 1.25vw;
    pointer-events: none;
    cursor: pointer;
    opacity: 0;
    transition-duration: 0.4s;
    transform: translate(0, -3.0769230769vw);
  }
  .mod-index-mv-baloon-item.is-open {
    opacity: 1;
    transition-delay: 0.2s;
    pointer-events: auto;
    transform: translate(0, 0);
  }
  .mod-index-mv-baloon-item ._no {
    text-align: center;
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._ti {
    text-align: center;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._doc {
    font-weight: 500;
    line-height: 1.71;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._no {
    font-size: 1.5vw;
  }
  .mod-index-mv-baloon-item ._ti {
    font-size: 1.125vw;
  }
  .mod-index-mv-baloon-item ._doc {
    font-size: 0.875vw;
    margin-top: 0.3125vw;
  }
  .mod-index-mv-baloon-item.is-B:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0.9375vw;
    height: 0.9375vw;
    box-sizing: border-box;
    border: 0.9375vw solid transparent;
    border-top: 0.9375vw solid #ff933c;
    transform: scale(0.8, 1) translate(-50%, 100%);
  }
  .mod-index-mv-baloon-item.is-L:before {
    content: "";
    position: absolute;
    top: 40%;
    left: 0;
    width: 0.9375vw;
    height: 0.9375vw;
    box-sizing: border-box;
    border: 0.9375vw solid transparent;
    border-right: 0.9375vw solid #ff933c;
    transform: scale(1, 0.8) translate(-100%, -50%);
  }
  .mod-index-mv-anim {
    position: relative;
  }
  .mod-index-mv-anim ._bg2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  .mod-index-mv-anim ._car1 {
    position: absolute;
    top: 66.78%;
    left: 23.56%;
    width: 3.75%;
    height: 6.67%;
  }
  .mod-index-mv-anim ._car2 {
    position: absolute;
    top: 12.5%;
    left: 100.63%;
    width: 3.75%;
    height: 6.67%;
  }
  .mod-index-mv-anim ._train1 {
    position: absolute;
    top: 85%;
    left: -60%;
    width: 23.13%;
    height: 26.67%;
  }
  .mod-index-mv-anim ._train2 {
    position: absolute;
    top: 39.5%;
    left: 101.5%;
    width: 23.13%;
    height: 26.67%;
  }
  .mod-index-mv-anim ._plane1 {
    position: absolute;
    top: 20.11%;
    left: -17.75%;
    width: 13.13%;
    height: 31.11%;
  }
  .mod-index-mv-anim ._plane2 {
    position: absolute;
    top: 87.22%;
    left: 103.38%;
    width: 13.13%;
    height: 31.11%;
  }
  .mod-index-mv-anim ._clowd2 {
    position: absolute;
    top: 4.22%;
    left: 10.63%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._clowd3 {
    position: absolute;
    top: 49.11%;
    left: 49.88%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._clowd1 {
    position: absolute;
    top: 15.11%;
    left: 80.63%;
    width: 15.63%;
    height: 45.56%;
  }
  .mod-index-mv-anim ._car1 {
    animation: keyf_index_mv_car1 30s linear 0s infinite;
  }
  .mod-index-mv-anim ._car2 {
    animation: keyf_index_mv_car2 30s linear 0s infinite;
  }
  .mod-index-mv-anim ._train1 {
    animation: keyf_index_mv_train1 20s linear 0s infinite;
  }
  .mod-index-mv-anim ._train2 {
    animation: keyf_index_mv_train2 20s linear 0s infinite;
  }
  .mod-index-mv-anim ._plane1 {
    animation: keyf_index_mv_plane1 10s linear 0s infinite;
  }
  .mod-index-mv-anim ._plane2 {
    animation: keyf_index_mv_plane2 10s linear 0s infinite;
  }
  .mod-index-mv-anim ._clowd1 {
    animation: keyf_index_mv_cloud1 3.2s ease-in-out 0s infinite;
  }
  .mod-index-mv-anim ._clowd2 {
    animation: keyf_index_mv_cloud2 3.6s ease-in-out 0s infinite;
  }
  .mod-index-mv-anim ._clowd3 {
    animation: keyf_index_mv_cloud3 3s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    48% {
      transform: translate(75vw, -43.275vw);
    }
    100% {
      transform: translate(75vw, -43.275vw);
    }
  }
  @keyframes keyf_index_mv_car2 {
    0% {
      transform: translate(0, 0);
    }
    52% {
      transform: translate(0, 0);
    }
    98% {
      transform: translate(-65.625vw, 37.865625vw);
      opacity: 1;
    }
    100% {
      transform: translate(-65.625vw, 37.865625vw);
      opacity: 0;
    }
  }
  @keyframes keyf_index_mv_train1 {
    100% {
      transform: translate(0, 0);
    }
    0% {
      transform: translate(125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_train2 {
    0% {
      transform: translate(-125vw, -72.125vw);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes keyf_index_mv_plane1 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_plane2 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(-125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_cloud1 {
    0% {
      transform: translate(0, 0.625vw);
    }
    50% {
      transform: translate(0, -0.625vw);
    }
    100% {
      transform: translate(0, 0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud2 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud3 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  .mod-index-mv-pedia {
    display: block;
    background: #002e67;
    color: #fff;
    padding: 27px 85px 25px 30px;
    border-radius: 20px 0 0 20px;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-index-mv-pedia:hover {
    transform: translate(-20px, 0);
  }
  .mod-index-mv-pedia span {
    display: block;
    line-height: 1;
  }
  .mod-index-mv-pedia span:nth-child(1) {
    font-size: 35px;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia span:nth-child(2) {
    margin-top: 4px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia ._base {
    position: absolute;
    bottom: 33px;
    left: 100px;
    right: 84px;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
  }
  .mod-index-mv-pedia ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #fff;
    animation: home_mv_scrollbar2 3s ease-in-out 0s infinite;
  }
  .mod-index-scroll-bar {
    display: flex;
    gap: 0;
    z-index: 10;
    flex-direction: column;
    align-items: center;
  }
  .mod-index-scroll-bar ._t {
    border-radius: 25px;
    background: #002e67;
    padding: 18px 10px;
    font-size: 16px;
    writing-mode: vertical-rl;
    letter-spacing: 0.1em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
  }
  body.js-hide-scroll-bar .mod-index-scroll-bar {
    opacity: 0;
  }
  .mod-index-scroll-bar ._base {
    position: relative;
    width: 1px;
    height: 60px;
    inset: 0;
    background: rgba(0, 46, 103, 0.2);
  }
  .mod-index-scroll-bar ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #002e67;
    animation: home_mv_scrollbar 3s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_point {
    0% {
      transform: translate(0, 0);
    }
    15% {
      transform: translate(0, -20px);
    }
    40% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes home_mv_scrollbar2 {
    0% {
      width: 0;
      left: 0;
    }
    20% {
      width: 100%;
      left: 0;
    }
    60% {
      width: 100%;
      left: 0;
    }
    80% {
      width: 0%;
      left: 100%;
    }
    100% {
      width: 0%;
      left: 100%;
    }
  }
  @keyframes home_mv_scrollbar {
    0% {
      height: 0;
      top: 0;
    }
    20% {
      height: 100%;
      top: 0;
    }
    60% {
      height: 100%;
      top: 0;
    }
    80% {
      height: 0%;
      top: 100%;
    }
    100% {
      height: 0%;
      top: 100%;
    }
  }
  .block-index-message {
    position: relative;
    padding-top: 11.5384615385vw;
    padding-bottom: 3.0769230769vw;
    background-image: url(../img/common/bg_01.webp);
  }
  .block-index-message img {
    width: 100%;
  }
  .block-index-message ._row1 {
    position: relative;
  }
  .block-index-message ._row1:after {
    display: block;
    content: "";
    padding-top: 53.4166666667%;
  }
  .block-index-message ._row1 ._cloud2 {
    position: absolute;
    top: 51.33%;
    left: -21.08%;
    width: 19.58%;
    height: 71.76%;
    z-index: 10;
  }
  .block-index-message ._row1 ._cloud1 {
    position: absolute;
    top: 11.54%;
    left: 77.58%;
    top: -13.5%;
    left: 67.6%;
    width: 20.01%;
    width: 23%;
    height: 79.51%;
  }
  .block-index-message ._row1 ._deco {
    position: absolute;
    top: 19.19%;
    left: 50.17%;
    width: 50%;
    top: 30.2%;
    left: 39.2%;
    width: 71%;
    height: 83.31%;
  }
  .block-index-message ._row1 ._texts {
    position: absolute;
    top: 0.12%;
    left: 0.05%;
  }
  .block-index-message ._row1 ._copy {
    margin-top: 3.0769230769vw;
  }
  .block-index-message ._row1 ._lead {
    margin-top: 5.3846153846vw;
  }
  .block-index-message ._row2 {
    position: relative;
    margin-top: 9.2307692308vw;
    height: 36.1538461538vw;
  }
  .block-index-message ._row2 ._cols ._cols-image {
    position: absolute;
    top: 0;
    left: -15.3846153846vw;
    left: 0;
    width: 76.9230769231vw;
  }
  .block-index-message ._row2 ._cols ._cols-texts {
    position: absolute;
    top: 2.3076923077vw;
    left: 69.2307692308vw;
    width: 38.4615384615vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1500px) {
  .block-index-message ._row2 ._cols ._cols-texts {
    right: 7.6923076923vw;
    left: auto;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-index-message ._row2 ._cols ._lead {
    margin-right: -11.5384615385vw;
  }
  .block-index-message ._row3 {
    position: relative;
    height: 36.1538461538vw;
  }
  .block-index-message ._row3 ._cols ._cols-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 76.9230769231vw;
  }
  .block-index-message ._row3 ._cols ._cols-texts {
    position: absolute;
    top: 3.0769230769vw;
    right: 69.2307692308vw;
    width: 38.4615384615vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1500px) {
  .block-index-message ._row3 ._cols ._cols-texts {
    left: 3.8461538462vw;
    right: auto;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-index-message ._row3 ._cols ._lead {
    margin-right: -11.5384615385vw;
    z-index: 10;
    position: relative;
  }
  .block-index-message ._row3 ._cloud {
    position: absolute;
    top: -13.8461538462vw;
    right: 80.7692307692vw;
    width: 18.4615384615vw;
    height: 44.5384615385vw;
  }
  .mod-index-h2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-h2 ._en {
    position: relative;
    font-size: 6.1538461538vw;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
    color: snow;
    padding: 1.1538461538vw 1.5384615385vw;
  }
  .mod-index-h2 ._ja {
    position: relative;
    font-size: 1.2307692308vw;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
    color: #00a0e6;
    color: #fff;
    padding: 0.7692307692vw 2.3076923077vw;
  }
  .mod-index-h2.is-wh ._en {
    color: #fff;
    color: #fff352;
  }
  .mod-index-h2.is-wh ._ja {
    color: #fff;
  }
  .mod-index-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-copy ._t1 {
    position: relative;
    font-size: 3.2307692308vw;
    font-weight: 900;
    line-height: 1.52;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-copy ._t2 {
    position: relative;
    margin-top: 2vw;
    font-size: 1.8461538462vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-lead p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-lead p span {
    position: relative;
    display: inline-block;
    font-size: 1.5384615385vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.2em;
    color: #00a0e6;
    padding: 0.9230769231vw 0.6153846154vw 0.9230769231vw 1.2307692308vw;
  }
  .mod-index-lead.is-wh p span {
    color: #fff;
  }
  .block-index-about {
    position: relative;
    background: #bee0c2;
    padding-top: 11.9230769231vw;
    padding-bottom: 6.1538461538vw;
  }
  .block-index-about img {
    width: 100%;
  }
  .block-index-about ._row-header ._lead {
    margin-top: 4.6153846154vw;
  }
  .block-index-about ._row-body {
    margin-top: 6.1538461538vw;
  }
  .mod-index-about-items {
    display: flex;
    gap: 6.9230769231vw;
  }
  .mod-index-about-items > li {
    flex: 1;
  }
  .mod-index-about-item {
    position: relative;
    cursor: pointer;
  }
  .mod-index-about-item ._item-image {
    display: block;
    position: relative;
    transition-duration: 0.2s;
    overflow: hidden;
  }
  .mod-index-about-item ._item-image img {
    width: 100%;
  }
  .mod-index-about-item ._item-image:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background: url(../img/index/shatter.svg) left top no-repeat;
    background-size: contain;
    z-index: 2;
    pointer-events: none;
  }
  .mod-index-about-item ._item-image ._door1,
  .mod-index-about-item ._item-image ._door2 {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 50%;
    height: 100%;
    background-color: silver;
    transition: transform 0.5s ease-in-out;
    z-index: 1;
  }
  .mod-index-about-item ._item-image ._door1 {
    top: 0;
  }
  .mod-index-about-item ._item-image ._door2 {
    bottom: 0;
  }
  .mod-index-about-item:active ._item-image ._door1,
  .mod-index-about-item:hover ._item-image ._door1 {
    transform: translateY(-100%);
  }
  .mod-index-about-item:active ._item-image ._door2,
  .mod-index-about-item:hover ._item-image ._door2 {
    transform: translateY(100%);
  }
  .mod-index-about-item:active ._item-image img,
  .mod-index-about-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-about-item ._item-image ._door1 {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: #e0e0e0;
    transition: transform 0.4s ease-in-out;
    transform: translateY(0);
    z-index: 1;
  }
  .mod-index-about-item ._item-image ._door2 {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: #e0e0e0;
    transition: transform 0.4s ease-in-out;
    transform: translateY(0);
    z-index: 1;
  }
  .mod-index-about-item:hover ._item-image {
    filter: brightness(110%);
  }
  .mod-index-about-item:active ._item-image ._door1,
  .mod-index-about-item:hover ._item-image ._door1 {
    transform: translateY(-100%);
  }
  .mod-index-about-item:active ._item-image ._door2,
  .mod-index-about-item:hover ._item-image ._door2 {
    transform: translateY(100%);
  }
  .mod-index-about-item ._item-texts {
    margin-top: 1.1538461538vw;
  }
  .mod-index-about-item ._item-texts ._name {
    font-size: 2.3076923077vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.05em;
    color: #0000cd;
  }
  .mod-index-about-item ._item-texts ._btns {
    margin-top: 1.5384615385vw;
    text-align: center;
  }
  .mod-index-about-item ._deco1 {
    position: absolute;
    top: 13.8461538462vw;
    left: -8.4615384615vw;
    width: 9.4615384615vw;
    height: 24.2307692308vw;
    z-index: 10;
  }
  .mod-index-about-item ._deco2 {
    position: absolute;
    top: 13.4615384615vw;
    left: -6.5384615385vw;
    width: 36.3846153846vw;
    height: 23vw;
    z-index: 10;
  }
  .mod-index-about-item ._deco3 {
    position: absolute;
    top: 14.2307692308vw;
    left: -5vw;
    width: 35.3846153846vw;
    height: 17.3076923077vw;
    z-index: 10;
  }
  .block-index-works {
    position: relative;
    background: #cee0ee;
    padding-top: 5.3846153846vw;
    padding-bottom: 11.5384615385vw;
  }
  .block-index-works img {
    width: 100%;
  }
  .block-index-works ._row-header {
    position: relative;
  }
  .block-index-works ._row-header ._title {
    margin-left: 38.4615384615vw;
  }
  .block-index-works ._row-header ._lead {
    margin-left: 38.4615384615vw;
    margin-top: 4.6153846154vw;
  }
  .block-index-works ._row-body {
    margin-top: 8.4615384615vw;
  }
  .block-index-works ._deco1 {
    position: absolute;
    top: 0;
    left: -3.0769230769vw;
    width: 33.8461538462vw;
    height: 25.1538461538vw;
  }
  .mod-index-works-items {
    display: flex;
    height: 27.6923076923vw;
  }
  .mod-index-works-items img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-index-works-items > li {
    flex: 1;
  }
  .mod-index-works-item {
    position: relative;
    display: block;
    height: 22.5vw;
    width: 50vw;
    cursor: pointer;
  }
  .mod-index-works-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-works-item ._item-en {
    font-size: 7.6923076923vw;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #00a0e6;
  }
  .mod-index-works-item ._item-texts {
    position: absolute;
    bottom: 1.5384615385vw;
    display: flex;
    align-items: center;
    gap: 1.1538461538vw;
  }
  .mod-index-works-item ._item-texts ._name {
    font-size: 1.8461538462vw;
    font-weight: 500;
    line-height: 2.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-works-item.is-1 ._item-texts {
    right: 23.0769230769vw;
    flex-direction: row-reverse;
  }
  .mod-index-works-item.is-1 ._item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    position: absolute;
    inset: 0;
    mask-position: center right;
    -webkit-mask-position: center right;
    mask-image: url(../../images/index/works/p1_mask.png);
    -webkit-mask-image: url(../../images/index/works/p1_mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-works-item.is-1 ._item-en {
    position: absolute;
    transform-origin: left top;
    top: -10.7692307692vw;
    left: 16.9230769231vw;
    transform: rotate(90deg);
  }
  .mod-index-works-item.is-2 ._item-texts {
    left: 10vw;
  }
  .mod-index-works-item.is-2 ._item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    position: absolute;
    inset: 0;
    mask-position: center left;
    -webkit-mask-position: center left;
    mask-image: url(../../images/index/works/p2_mask.png);
    -webkit-mask-image: url(../../images/index/works/p2_mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-works-item.is-2 ._item-image ._image img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-index-works-item.is-2 ._item-en {
    letter-spacing: 0.04em;
    position: absolute;
    transform-origin: left top;
    top: -3.8461538462vw;
    left: 5.3846153846vw;
    width: 61.5384615385vw;
  }
  .block-index-talk {
    padding: 11.5384615385vw 0 6.1538461538vw;
    position: relative;
  }
  .block-index-talk img {
    width: 100%;
  }
  .block-index-talk ._inner {
    position: relative;
  }
  .block-index-talk ._inner:after {
    display: block;
    content: "";
    padding-top: 95.1666666667%;
    padding-top: 50%;
  }
  .block-index-talk ._inner ._row-head {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
  }
  .block-index-talk ._inner ._row-head ._lead {
    margin-top: 4.6153846154vw;
  }
  .block-index-talk ._inner ._deco1 {
    position: absolute;
    top: 17.69%;
    left: 100.17%;
    width: 8.33%;
    height: 21.89%;
  }
  .block-index-talk ._inner ._deco2 {
    position: absolute;
    top: 47.46%;
    left: 80.17%;
    width: 36.67%;
    height: 21.02%;
  }
  .block-index-talk ._inner ._deco3 {
    position: absolute;
    top: 64.97%;
    left: -16.5%;
    width: 56.67%;
    height: 35.03%;
  }
  .block-index-talk ._inner ._item1 {
    position: absolute;
    top: 16.02%;
    left: 36.83%;
    width: 63.33%;
    height: 41.94%;
  }
  .block-index-talk ._inner ._item2 {
    position: absolute;
    top: 49.21%;
    left: 0.17%;
    width: 62.5%;
    height: 43.78%;
  }
  .mod-index-talk-item {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .mod-index-talk-item img {
    transition-duration: 0.2s;
  }
  .mod-index-talk-item:hover ._item-image img {
    transform: scale(1.05);
  }
  .mod-index-talk-item ._item-image {
    overflow: hidden;
  }
  .mod-index-talk-item ._item-en {
    font-size: 7.6923076923vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: #32cd32;
  }
  .mod-index-talk-item ._item-texts {
    position: absolute;
    bottom: 0.7692307692vw;
    display: flex;
    align-items: center;
    gap: 1.1538461538vw;
  }
  .mod-index-talk-item ._item-texts ._name {
    font-size: 1.8461538462vw;
    font-weight: 500;
    line-height: 2.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-talk-item.is-1 ._item-texts {
    right: 1.5384615385vw;
  }
  .mod-index-talk-item.is-1 ._item-image {
    transition-duration: 0.2s;
  }
  .mod-index-talk-item.is-1 ._item-en {
    position: absolute;
    transform-origin: right top;
    top: 26.9230769231vw;
    right: -4.6153846154vw;
    transform: rotate(90deg);
  }
  .mod-index-talk-item.is-2 ._item-texts {
    left: 1.5384615385vw;
    flex-direction: row-reverse;
  }
  .mod-index-talk-item.is-2 ._item-en {
    position: absolute;
    bottom: 1.5384615385vw;
    right: -30.7692307692vw;
  }
  .block-index-people {
    padding: 5.3846153846vw 0 11.5384615385vw 0;
    position: relative;
  }
  .block-index-people img {
    width: 100%;
  }
  .block-index-people ._row-head {
    position: relative;
  }
  .block-index-people ._row-head ._title {
    margin-left: 30.7692307692vw;
  }
  .block-index-people ._row-head ._lead {
    margin-top: 4.6153846154vw;
    margin-left: 30.7692307692vw;
  }
  .block-index-people ._row-head ._deco1 {
    position: absolute;
    top: -7.6923076923vw;
    left: -4.6153846154vw;
    width: 93.1538461538vw;
    height: 39.7692307692vw;
  }
  .block-index-people ._row-body {
    margin-top: 6.1538461538vw;
  }
  .mod-index-people-item {
    display: block;
    width: 46.1538461538vw;
    margin: 0 auto;
    position: relative;
    cursor: pointer;
  }
  .mod-index-people-item:hover img {
    transform: scale(1.05);
  }
  .mod-index-people-item ._item-image {
    flex: 1;
    mask-position: center center;
    -webkit-mask-position: center center;
    mask-image: url(../../images/index/people/mask.png);
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-people-item ._item-image img {
    transition-duration: 0.2s;
    width: 100%;
  }
  .mod-index-people-item ._item-texts {
    color: #000;
    position: absolute;
    left: 0;
    bottom: 0;
    border-top: 0.4615384615vw solid #00a0e6;
    padding-top: 1.5384615385vw;
  }
  .mod-index-people-item ._item-texts ._job {
    font-size: 1.2307692308vw;
    line-height: 2.75;
    letter-spacing: 0.1em;
  }
  .mod-index-people-item ._item-texts ._name {
    margin-top: 0.3846153846vw;
    font-size: 2.1538461538vw;
    font-weight: 200;
    line-height: 1.57;
    letter-spacing: 0.2em;
  }
  .mod-index-people-item ._item-texts ._spec {
    margin-top: 0.3846153846vw;
    font-size: 1.2307692308vw;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-interivew-mv {
    position: relative;
  }
  .block-interivew-mv img {
    width: 100%;
  }
  .block-interivew-mv ._image {
    position: relative;
  }
  .block-interivew-mv ._image img {
    object-fit: cover;
  }
  .block-interivew-mv ._image img {
    min-height: 560px;
  }
  .block-interivew-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -32%);
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (min-width: 1281px) {
  .block-interivew-mv ._texts {
    left: max(0, calc(50% - 600px));
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  .block-interivew-mv ._texts {
    left: 40px;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-interivew-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-interivew-mv ._texts ._cate {
    font-size: 1.3846153846vw;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #012e67;
    padding: 1.1538461538vw 2.3076923077vw;
  }
  .block-interivew-mv ._texts ._en {
    font-size: 6.1538461538vw;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 0.7692307692vw 1.5384615385vw;
  }
  .block-interivew-mv ._texts h1 {
    font-size: 1.2307692308vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1vw 1.9230769231vw;
  }
  .block-interivew-mv ._texts ._interview-copy {
    margin-top: 3.8461538462vw;
    font-size: 2.9230769231vw;
    line-height: 1.4;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .block-interivew-mv ._interview-name {
    position: absolute;
    right: 2.3076923077vw;
    bottom: -2.3076923077vw;
    font-size: 6.1538461538vw;
    text-align: right;
    font-weight: 200;
    line-height: 1.05;
    letter-spacing: 0.075em;
    color: #000;
    font-style: italic;
    z-index: 10;
  }
  .block-interview-profile {
    padding-top: 4.6153846154vw;
    padding-bottom: 8.8461538462vw;
  }
  .block-interview-profile img {
    width: 100%;
  }
  .block-interview-profile .block-inner {
    position: relative;
  }
  .block-interview-profile ._image {
    width: 56.9230769231vw;
    position: absolute;
    top: 2.3076923077vw;
    right: -4.6153846154vw;
    z-index: 10;
  }
  .block-interview-profile ._texts {
    position: relative;
    background: #00a0e6;
    padding: 1.5384615385vw 1.5384615385vw 1.5384615385vw 1.5384615385vw;
    display: inline-block;
    width: 23.0769230769vw;
  }
  .block-interview-profile ._job {
    font-size: 1.2307692308vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._branch {
    font-size: 1.0769230769vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    font-size: 1.5384615385vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
    color: #fff;
  }
  .block-interview-profile ._spec {
    margin-top: 0.6923076923vw;
    font-size: 1.0769230769vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    margin-top: 0.7692307692vw;
    padding-top: 0.7692307692vw;
    border-top: 1px solid #fff;
  }
  .block-interview-list {
    display: flex;
    gap: 9.2307692308vw;
    flex-direction: column;
    padding: 0 0 15.3846153846vw 0;
  }
  .block-interview-list ._deco1 {
    position: absolute;
    top: -13.8461538462vw;
    left: -14.6153846154vw;
    width: 26.2307692308vw;
  }
  .block-interview-list ._deco2 {
    position: absolute;
    bottom: -3.0769230769vw;
    right: 6.1538461538vw;
    width: 29.2307692308vw;
  }
  .block-interview-list ._deco3 {
    position: absolute;
    bottom: -12.3076923077vw;
    left: 75.3846153846vw;
    width: 18.5384615385vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  .block-interview-list ._deco3 {
    left: auto;
    right: 20px;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-interview-s1 {
    padding: 0 0 5.3846153846vw 0;
    position: relative;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 103.8461538462vw;
    background: url(../../images/interview/bg2.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top right;
    background-color: #00a0e6;
    height: 30.7692307692vw;
    z-index: -1;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1 ._cols {
    display: flex;
  }
  .block-interview-s1 ._cols ._col-image {
    width: 34vw;
  }
  .block-interview-s1 ._cols ._col-texts {
    width: 53.8461538462vw;
  }
  .block-interview-s1 ._box {
    background-color: #cff0ff;
    padding: 3.0769230769vw 3.8461538462vw 3.8461538462vw 3.8461538462vw;
  }
  .block-interview-s2 {
    padding: 0 0 5.3846153846vw 0;
    position: relative;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 103.8461538462vw;
    background: url(../../images/interview/bg1.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top left;
    background-color: #00a0e6;
    height: 30.7692307692vw;
    z-index: -1;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2 ._cols {
    display: flex;
    flex-direction: row-reverse;
  }
  .block-interview-s2 ._cols ._col-image {
    width: 34vw;
  }
  .block-interview-s2 ._cols ._col-texts {
    width: 53.8461538462vw;
  }
  .block-interview-s2 ._box {
    margin-top: -5.3846153846vw;
    background-color: #cff0ff;
    padding: 8.4615384615vw 3.8461538462vw 3.8461538462vw 3.8461538462vw;
  }
  .mod-interview-h2 {
    color: #fff;
    display: flex;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-no {
    background-color: #002e67;
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 2.4;
    letter-spacing: 0.075em;
    width: 3.8461538462vw;
    text-align: center;
  }
  .mod-interview-h2 ._h2-ti {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-ti span {
    display: block;
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 2.4;
    letter-spacing: 0.2em;
    padding: 0 1.5384615385vw;
    background-color: #00a0e6;
  }
  .block-interview-schedule {
    padding: 6.1538461538vw 0;
    position: relative;
    background-color: #00a0e6;
    color: #fff;
  }
  .block-interview-schedule img {
    width: 100%;
  }
  .block-interview-schedule .block-inner {
    position: relative;
    min-height: 43.0769230769vw;
  }
  .block-interview-schedule ._row-header {
    position: absolute;
    top: 0;
    left: 0;
  }
  .block-interview-schedule ._row-body {
    margin-top: 3.0769230769vw;
    padding-left: 34.6153846154vw;
  }
  .block-interview-schedule ._deco1 {
    margin-top: 3.0769230769vw;
    width: 27.6923076923vw;
  }
  .block-interview-schedule ._deco2 {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    width: 33.5384615385vw;
    margin-top: -1.5384615385vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  .block-interview-schedule ._deco2 {
    width: 26.9230769231vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-interview-schedule ._note {
    margin-top: 3.0769230769vw;
    font-size: 1.0769230769vw;
    line-height: 1.71;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
  }
  .mod-interview-schedule {
    position: relative;
    display: flex;
    gap: 3.8461538462vw;
    flex-direction: column;
  }
  .mod-interview-schedule:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 2.3076923077vw;
    width: 1px;
    background: #fff;
  }
  .mod-interview-schedule dl {
    margin: 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    background-color: #00a0e6;
    font-size: 1.2307692308vw;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-interview-schedule dl dt {
    width: 6.9230769231vw;
    margin: 0;
  }
  .mod-interview-schedule dl dd {
    margin: 0;
    padding: 0;
    flex: 1;
  }
  .block-interview-message {
    padding: 16.9230769231vw 0 3.8461538462vw 7.6923076923vw;
    position: relative;
  }
  .block-interview-message .block-inner {
    position: relative;
  }
  .block-interview-message img {
    width: 100%;
  }
  .block-interview-message ._deco1 {
    position: absolute;
    top: -5.3846153846vw;
    left: 4.6153846154vw;
    width: 18.5384615385vw;
  }
  .block-interview-message ._deco2 {
    position: absolute;
    top: 5.3846153846vw;
    right: -6.9230769231vw;
    width: 46.1538461538vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  .block-interview-message ._deco2 {
    top: 9.2307692308vw;
    width: 38.4615384615vw;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .block-interview-message ._box {
    z-index: 10;
    position: relative;
    background: url(../../images/interview/deco7.png) left top no-repeat;
    background-size: contain;
    width: 68.5384615385vw;
    height: 64.2307692308vw;
    margin-left: -11.5384615385vw;
    color: #fff;
  }
  .block-interview-message ._box ._box-in {
    position: relative;
    width: 38.4615384615vw;
    padding: 12.6923076923vw 0 0 0;
    margin-left: 11.5384615385vw;
  }
  .block-interview-message ._box ._copy {
    margin-top: 2.3076923077vw;
    font-size: 1.8461538462vw;
    font-weight: 700;
    line-height: 1.58;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-message ._box ._doc {
    margin-top: 1.5384615385vw;
  }
  .block-interview-off {
    padding: 4.6153846154vw 0 6.1538461538vw 0;
    position: relative;
  }
  .block-interview-off img {
    width: 100%;
  }
  .block-interview-off ._box {
    position: relative;
    border: 0.7692307692vw solid #cff0ff;
    border-radius: 0.7692307692vw;
    padding: 3.8461538462vw 6.1538461538vw 3.8461538462vw 34.6153846154vw;
  }
  .block-interview-off ._image {
    position: absolute;
    top: 0;
    left: 6.9230769231vw;
    width: 23.0769230769vw;
  }
  .block-interview-off ._doc {
    margin-top: 0.7692307692vw;
  }
  .block-interview-off ._deco1 {
    position: absolute;
    top: -7.6923076923vw;
    right: -7.6923076923vw;
    width: 11.1538461538vw;
  }
  .block-interview-other {
    position: relative;
    padding: 5vw 0 10.7692307692vw 0;
  }
  .block-interview-other img {
    width: 100%;
  }
  .block-interview-other ._row-body {
    margin-top: 3.8461538462vw;
  }
  .mod-interview-other-items {
    width: 72.3076923077vw;
    margin: 0 auto;
  }
  .mod-interview-other-items ._item {
    display: inline-block;
    width: 22.3076923077vw;
  }
  .mod-interview-other-item {
    display: block;
    width: 18.4615384615vw;
    margin: 0 auto;
    color: #000;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item ._item-image {
    border-radius: 50%;
    overflow: hidden;
  }
  .mod-interview-other-item ._item-image img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item:hover img {
    transform: scale(1.1);
  }
  .mod-interview-other-item ._item-texts {
    margin-top: 2.3076923077vw;
  }
  .mod-interview-other-item ._job {
    font-size: 1.2307692308vw;
    text-align: center;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .mod-interview-other-item ._name {
    font-size: 2.1538461538vw;
    text-align: center;
    font-weight: 200;
    line-height: 1.4;
    letter-spacing: 0.2em;
  }
  .mod-interview-other-item ._spec {
    margin-top: 0.3846153846vw;
    font-size: 1.2307692308vw;
    text-align: center;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-job-type {
    padding: 80px 0 160px 0;
    position: relative;
  }
  .block-job-type img {
    width: 100%;
  }
  .block-job-type ._row-body {
    margin-top: 70px;
  }
  .mod-job-title {
    text-align: center;
  }
  .mod-job-title ._en {
    font-size: 80px;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #002e67;
    line-height: 1;
  }
  .mod-job-title h2 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #002e67;
  }
  .mod-job-title ._doc {
    margin-top: 25px;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-job-image {
    position: relative;
    padding-top: 42px;
  }
  .mod-job-image h3,
  .mod-job-image h4 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
  }
  .mod-job-image h3 span,
  .mod-job-image h4 span {
    display: inline-block;
    background-color: #002e67;
    font-size: 24px;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 0 20px;
  }
  .block-job-type2 {
    position: relative;
    padding: 150px 0 140px 0;
    background: #cee0ee;
  }
  .block-job-type2 img {
    width: 100%;
  }
  .block-job-type2 .block-inner {
    position: relative;
  }
  .block-job-type2 ._deco1 {
    position: absolute;
    top: -17.3076923077vw;
    left: -16.2307692308vw;
    width: 23.0769230769vw;
  }
  .block-job-type2 ._deco2 {
    position: absolute;
    top: 58.0769230769vw;
    right: -19.2307692308vw;
    width: 23.0769230769vw;
  }
  .mod-job-type2-items {
    display: flex;
    flex-direction: column;
    gap: 45px;
  }
  .mod-job-type2-items img {
    width: 100%;
  }
  .mod-job-type2-items > li .item {
    display: block;
    color: #000;
    display: flex;
    flex-direction: row-reverse;
    gap: 40px;
    background: #fff;
    padding: 60px 60px 40px 100px;
  }
  .mod-job-type2-items > li .item ._item-image {
    width: 300px;
  }
  .mod-job-type2-items > li .item ._item-texts {
    flex: 1;
  }
  .mod-job-type2-items > li .item ._title {
    font-size: 30px;
    line-height: 1.74;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
    border-bottom: 2px solid #00a0e6;
    padding: 0 0 15px 0;
  }
  .mod-job-type2-items > li .item ._doc {
    margin-top: 20px;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-job-train {
    padding: 140px 0 100px 0;
    position: relative;
  }
  .block-job-train img {
    width: 100%;
  }
  .block-job-train .block-inner {
    position: relative;
  }
  .block-job-train ._row-body {
    margin-top: 50px;
  }
  .block-job-train ._deco1 {
    position: absolute;
    top: -3.8461538462vw;
    left: -10.7692307692vw;
    width: 23.0769230769vw;
  }
  .block-job-train2 {
    position: relative;
    padding: 150px 0 140px 0;
    background: #cee0ee;
  }
  .block-job-train2 img {
    width: 100%;
  }
  .block-job-train2 .block-inner {
    position: relative;
  }
  .block-job-train2 ._deco1 {
    position: absolute;
    top: -4.4615384615vw;
    right: -15.3846153846vw;
    width: 23.0769230769vw;
  }
  .block-job-train2 ._deco3 {
    position: absolute;
    top: 111.8461538462vw;
    right: -19.2307692308vw;
    width: 23.0769230769vw;
  }
  .block-job-train2 ._deco2 {
    position: absolute;
    top: 56.7692307692vw;
    left: -18.9230769231vw;
    width: 23.0769230769vw;
  }
  .mod-job-train2-items {
    display: flex;
    gap: 60px;
    flex-direction: column;
  }
  .mod-job-train2-item {
    background-color: #fff;
    padding: 60px 100px 100px 100px;
  }
  .mod-job-train2-item h3 {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.27;
    letter-spacing: 0.2em;
  }
  .mod-job-train2-item ._doc {
    margin-top: 28px;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-job-train2-item ._1 {
    margin: 0 auto;
    margin-top: 30px;
    width: 1020px;
  }
  .mod-job-train2-item ._2 {
    margin: 0 auto;
    margin-top: 30px;
  }
  .block-new-graduate-info {
    padding: 6.1538461538vw 0 10.7692307692vw 0;
    position: relative;
  }
  .block-new-graduate-info ._inner {
    max-width: 76.9230769231vw;
    margin: 0 auto;
  }
  .block-new-graduate-info ._row-body {
    margin-top: 3.0769230769vw;
  }
  .mod-new-graduate-table {
    width: 100%;
    border-bottom: 1px solid #00a0e6;
  }
  .mod-new-graduate-table th {
    border-top: 1px solid #00a0e6;
    padding: 1.9230769231vw 0;
    font-size: 1.3846153846vw;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.1em;
    color: #000;
    width: 15.3846153846vw;
  }
  .mod-new-graduate-table td {
    border-top: 1px solid #00a0e6;
    padding: 1.9230769231vw 0;
    font-size: 1.2307692308vw;
    line-height: 1.87;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-new-graduate-qa {
    overflow: hidden;
    padding: 9.2307692308vw 0 19.2307692308vw 0;
    position: relative;
    background-color: #00a0e6;
  }
  .block-new-graduate-qa ._inner {
    max-width: 86.1538461538vw;
    margin: 0 auto;
  }
  .block-new-graduate-qa ._row-body {
    position: relative;
    margin-top: 10vw;
  }
  .mod-new-graduate-title.is-wh ._en {
    color: #fff;
  }
  .mod-new-graduate-title.is-wh h2 {
    color: #fff;
  }
  .mod-new-graduate-title.is-left ._en {
    text-align: left;
  }
  .mod-new-graduate-title.is-left h2 {
    text-align: left;
  }
  .mod-new-graduate-title ._en {
    font-size: 6.1538461538vw;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .mod-new-graduate-title ._en small {
    font-size: 4.6153846154vw;
  }
  .mod-new-graduate-title h2 {
    font-size: 1.2307692308vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6.4615384615vw 6.1538461538vw;
    position: relative;
  }
  .mod-new-graduate-qa-items > li {
    position: relative;
    width: calc(33.33% - 4.1538461538vw);
  }
  .mod-new-graduate-qa-item {
    display: block;
    height: 100%;
    gap: 2.3076923077vw;
    position: relative;
    background-color: #002f63;
    border-radius: 1.5384615385vw;
    padding: 3.0769230769vw 1.5384615385vw 6.9230769231vw 1.5384615385vw;
  }
  .mod-new-graduate-qa-item.is-wh {
    background-color: #cee0ee;
  }
  .mod-new-graduate-qa-item.is-wh p {
    color: #002f63;
  }
  .mod-new-graduate-qa-item:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -70%);
    background: url(../../images/new-graduate/qa/icon.png) left top no-repeat;
    background-size: contain;
    width: 3.0769230769vw;
    height: 5.3846153846vw;
  }
  .mod-new-graduate-qa-item ._btns {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1.9230769231vw;
    text-align: center;
  }
  .mod-new-graduate-qa-item p {
    font-size: 1.5384615385vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-new-graduate-qa-btn {
    display: inline-block;
    background-color: #fff;
    border: 0.3076923077vw solid #00a0e6;
    padding: 0.6153846154vw 1.5384615385vw 0.6153846154vw 0;
    border-radius: 1.5384615385vw;
    width: 10vw;
    text-align: center;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-new-graduate-qa-btn span {
    display: inline-block;
    font-size: 1.2307692308vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover {
    background-color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-new-graduate-qa-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-new-graduate-qa-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0.3076923077vw;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 1.6923076923vw;
    height: 1.6923076923vw;
  }
  .mod-new-graduate-qa-cl {
    position: absolute;
    inset: 0;
  }
  .mod-new-graduate-qa-cl img {
    width: 100%;
  }
  .mod-new-graduate-qa-cl:after {
    display: block;
    content: "";
    padding-top: 169.7321428571%;
  }
  .mod-new-graduate-qa-cl ._deco8 {
    position: absolute;
    top: 89.53%;
    left: 72.95%;
    width: 39.55%;
    height: 10.47%;
  }
  .mod-new-graduate-qa-cl ._deco7 {
    position: absolute;
    top: 105.05%;
    left: -22.77%;
    width: 66.96%;
    height: 15.78%;
  }
  .mod-new-graduate-qa-cl ._deco5 {
    position: absolute;
    top: 48.4%;
    left: 96.79%;
    width: 53.57%;
    height: 12.62%;
  }
  .mod-new-graduate-qa-cl ._deco3 {
    position: absolute;
    top: 26.93%;
    left: 24.82%;
    width: 26.96%;
    height: 6.89%;
  }
  .mod-new-graduate-qa-cl ._deco6 {
    position: absolute;
    top: 79.59%;
    left: 43.13%;
    width: 26.88%;
    height: 6.84%;
  }
  .mod-new-graduate-qa-cl ._deco4 {
    position: absolute;
    top: 56.18%;
    left: -14.29%;
    width: 26.79%;
    height: 10.42%;
  }
  .mod-new-graduate-qa-cl ._deco2 {
    position: absolute;
    top: 10.84%;
    left: 81.96%;
    width: 26.79%;
    height: 10.47%;
  }
  .mod-new-graduate-qa-cl ._deco1 {
    position: absolute;
    top: -14.26%;
    left: -44.73%;
    width: 53.57%;
    height: 12.62%;
  }
  .mod-new-graduate-qa-cl ._title {
    position: absolute;
    top: -13.94%;
    left: 80.18%;
    width: 33.13%;
    height: 11.78%;
  }
  .block-new-graduate-flow {
    padding: 10.7692307692vw 0 10.7692307692vw 0;
    position: relative;
  }
  .block-new-graduate-flow ._inner {
    max-width: 76.9230769231vw;
    margin: 0 auto;
  }
  .block-new-graduate-flow ._row-body {
    margin-top: 3.8461538462vw;
  }
  .block-new-graduate-flow ._row-body ._note {
    margin-top: 0.3846153846vw;
    font-size: 1.0769230769vw;
    text-align: right;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-items {
    position: relative;
  }
  .mod-new-graduate-flow-items ul {
    display: flex;
    flex-direction: column;
    background-image: linear-gradient(to right, #00a0e6 0.3076923077vw, transparent 0.3076923077vw);
    background-size: 1.5384615385vw 0.3076923077vw;
    background-repeat: repeat-x;
    position: relative;
  }
  .mod-new-graduate-flow-items ul > li {
    background-image: linear-gradient(to right, #00a0e6 0.3076923077vw, transparent 0.3076923077vw);
    background-size: 1.5384615385vw 0.3076923077vw;
    background-repeat: repeat-x;
  }
  .mod-new-graduate-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 3.8461538462vw;
    bottom: 3.8461538462vw;
    left: 5.7692307692vw;
    width: 0.6153846154vw;
    background: #002e67;
  }
  .mod-new-graduate-flow-item {
    display: flex;
    gap: 2.3076923077vw;
    position: relative;
    padding: 2.9230769231vw 2.9230769231vw 2.3076923077vw 2.9230769231vw;
  }
  .mod-new-graduate-flow-item ._item-no {
    width: 6.1538461538vw;
    height: 6.1538461538vw;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-new-graduate-flow-item ._item-no > div {
    display: flex;
    gap: 0.3846153846vw;
    flex-direction: column;
    text-align: center;
  }
  .mod-new-graduate-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(1) {
    font-size: 0.9230769231vw;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(2) {
    font-size: 2.4615384615vw;
  }
  .mod-new-graduate-flow-item ._item-texts {
    flex: 1;
    padding: 1.1538461538vw 0 0 0;
  }
  .mod-new-graduate-flow-item ._item-texts ._t1 {
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.53;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-item ._item-texts ._t2 {
    margin-top: 0.7692307692vw;
    font-size: 1.2307692308vw;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-new-graduate-person {
    padding: 10vw 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-new-graduate-person ._row-header h2 {
    text-align: center;
    font-size: 1.8461538462vw;
    line-height: 1.8;
  }
  .block-new-graduate-person ._row-body {
    margin-top: 3.0769230769vw;
  }
  .mod-new-graduate-person-items {
    display: flex;
    gap: 4.6153846154vw;
    flex-direction: column;
  }
  .mod-new-graduate-person-item {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-image {
    margin-right: 9.2307692308vw;
  }
  .mod-new-graduate-person-item.is-2 ._item-image {
    margin-right: 0;
  }
  .mod-new-graduate-person-item.is-3 ._item-image {
    margin-right: 6.1538461538vw;
  }
  .mod-new-graduate-person-item ._item-image {
    margin-left: auto;
    width: 32.3076923077vw;
  }
  .mod-new-graduate-person-item ._item-image img {
    width: 100%;
  }
  .mod-new-graduate-person-item ._item-texts {
    width: 51.5384615385vw;
    position: absolute;
    top: 1.5384615385vw;
    left: 0;
  }
  .mod-new-graduate-person-item ._item-texts ._title {
    padding: 2.1538461538vw 0 2.1538461538vw 3.0769230769vw;
    background-color: #fff;
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #00a0e6;
    display: flex;
    align-items: center;
    position: relative;
  }
  .mod-new-graduate-person-item ._item-texts ._title span {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-texts ._title:before {
    content: "";
    position: absolute;
    top: 1.1538461538vw;
    right: -2.6923076923vw;
    width: 5.3846153846vw;
    height: 5.3846153846vw;
    background-color: #fff;
    transform: rotate(-45deg);
  }
  .mod-new-graduate-person-item ._item-texts ._doc {
    padding: 2.3076923077vw;
    font-size: 1.5384615385vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .area-modal-new-graduate {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-new-graduate.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-new-graduate .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-new-graduate ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 47, 99, 0.9);
  }
  .area-modal-new-graduate ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 800px;
    min-height: 200px;
    padding: 70px 80px;
    box-sizing: border-box;
    height: 660px;
    border: 1px solid #000;
  }
  .area-modal-new-graduate ._modal-box-body {
    height: 100%;
    overflow-y: auto;
  }
  .area-modal-new-graduate ._page {
    display: none;
  }
  .block-modal-new-graduate ._title {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #002e67;
  }
  .block-modal-new-graduate ._place {
    font-size: 14px;
    line-height: 2.14;
    letter-spacing: 0.1em;
    color: #002e67;
    border-bottom: 1px solid #002e67;
  }
  .block-modal-new-graduate ._name {
    margin-top: 17px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-modal-new-graduate ._cols {
    width: 400px;
    margin: 0 auto;
    margin-top: 40px;
    display: flex;
    align-items: flex-end;
    gap: 40px;
  }
  .block-modal-new-graduate ._cols ._col-image {
    padding: 10px;
    background-color: #fff;
    width: 200px;
  }
  .block-modal-new-graduate ._cols ._col-image img {
    width: 100%;
  }
  .block-modal-new-graduate ._cols ._col-texts {
    width: 200px;
    padding: 10px 20px;
    background-color: #fff;
  }
  .block-modal-new-graduate ._doc {
    border-top: 1px solid #002e67;
    padding: 30px 0 0 0;
    margin-top: 40px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-common-mv-wrap {
    position: relative;
    height: 100vh;
    max-height: 100vw;
    z-index: -1;
  }
  .block-door-mv {
    position: fixed;
    background: #00a0e6;
    height: 100vh;
    max-height: 100vw;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .block-door-mv ._texts {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
  }
  .block-door-mv ._texts ._door-t1 {
    margin-top: 1.5384615385vw;
    font-size: 3.2307692308vw;
    line-height: 1.66;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  .block-door-mv ._texts ._door-t2 {
    margin-top: 4.6153846154vw;
    font-size: 1.3846153846vw;
    line-height: 1.88;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  .block-door-mv ._event {
    position: absolute;
    top: calc(50% - 15vw);
    left: 50%;
    width: 62.5%;
  }
  .block-door-mv ._event:after {
    display: block;
    content: "";
    padding-top: 43.137254902%;
  }
  .block-door-mv ._event ._bar2 {
    position: absolute;
    top: 93.18%;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar1 {
    position: absolute;
    top: 0;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 21.57%;
    height: 100%;
  }
  .block-door-mv ._event ._gear {
    position: absolute;
    top: 3.41%;
    left: 1.47%;
    width: 40.2%;
    height: 93.18%;
  }
  .block-door-mv ._event ._bar1 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar1 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar1.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear2 8s linear 0s infinite;
  }
  .block-door-mv ._event ._bar2 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar2 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar2.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear3 8s linear 0s infinite;
  }
  .block-door-mv ._event ._gear {
    animation: keyf_door_mv_gear 12s linear 0s infinite;
  }
  body.is-door-pedia-open .block-door-open {
    background-color: transparent;
  }
  body.is-door-pedia-open .block-door-open ._left {
    transform: translate(-51vw, 0);
  }
  body.is-door-pedia-open .block-door-open ._right {
    transform: translate(51vw, 0);
  }
  body.is-Dev .block-door-open {
    display: none;
  }
  .block-door-open {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    pointer-events: none;
    background-color: #529ed1;
  }
  .block-door-open ._left {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/door1.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  .block-door-open ._right {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/door2.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  @keyframes keyf_door_mv_gear {
    0% {
      rotate: 0deg;
    }
    33% {
      rotate: -120deg;
    }
    66% {
      rotate: -240deg;
    }
    100% {
      rotate: -360deg;
    }
  }
  @keyframes keyf_door_mv_gear2 {
    0% {
      transform: translate3d(0, 0, 0);
    }
    100% {
      transform: translate3d(-50vw, 0, 0);
    }
  }
  @keyframes keyf_door_mv_gear3 {
    0% {
      transform: translate3d(-50%, 0, 0);
    }
    100% {
      transform: translate3d(0, 0, 0);
    }
  }
  .block-door-wrap {
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-basic {
    padding: 9.2307692308vw 0 4.6153846154vw 0;
    position: relative;
  }
  .block-door-basic ._row-header {
    margin-left: -1.9230769231vw;
  }
  .block-door-basic ._row-body {
    margin-top: 6.1538461538vw;
    background-color: #e3f4fc;
    box-shadow: 0 0 0.3846153846vw rgba(0, 0, 0, 0.1);
    border-radius: 6.1538461538vw;
    padding: 4.6153846154vw 0;
  }
  .block-door-basic ._row-body ._map-sp {
    display: none;
  }
  .block-door-basic ._row-body ._map {
    max-width: 81.7692307692vw;
    margin: 0 auto;
  }
  .mod-door-title {
    position: relative;
    display: inline-block;
    width: 43.0769230769vw;
  }
  .mod-door-title img {
    width: 100%;
  }
  .mod-door-title.is-right img {
    position: relative;
    transform: rotate(-180deg);
  }
  .mod-door-title.is-right ._text {
    left: 4.6153846154vw;
    right: 0;
  }
  .mod-door-title ._text {
    position: absolute;
    top: 0;
    left: 0;
    right: 4.6153846154vw;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-door-title h2 {
    font-size: 3.0769230769vw;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.15em;
    color: #00a0e6;
  }
  .mod-door-basic {
    display: block;
    position: relative;
  }
  .mod-door-basic img {
    width: 100%;
  }
  .mod-door-basic ._p1 {
    position: absolute;
    top: 1.42%;
    left: 38.19%;
    width: 19.1%;
    height: 6.54%;
  }
  .mod-door-basic ._p2 {
    position: absolute;
    top: 4.27%;
    left: 61.52%;
    width: 31.42%;
    height: 6.54%;
  }
  .mod-door-basic ._p3 {
    position: absolute;
    top: 17.92%;
    left: 65.85%;
    width: 20.47%;
    height: 6.54%;
  }
  .mod-door-basic ._p4 {
    position: absolute;
    top: 31.72%;
    left: 79.49%;
    width: 17.4%;
    height: 6.54%;
  }
  .mod-door-basic ._p5 {
    position: absolute;
    top: 47.23%;
    left: 74.32%;
    width: 25.12%;
    height: 6.54%;
  }
  .mod-door-basic ._p6 {
    position: absolute;
    top: 73.4%;
    left: 76.01%;
    width: 20.51%;
    height: 6.54%;
  }
  .mod-door-basic ._p7 {
    position: absolute;
    top: 87.62%;
    left: 78.08%;
    width: 12.7%;
    height: 6.54%;
  }
  .mod-door-basic ._p8 {
    position: absolute;
    top: 88.76%;
    left: 49.11%;
    width: 11.01%;
    height: 6.54%;
  }
  .mod-door-basic ._p9 {
    position: absolute;
    top: 88.76%;
    left: 26.34%;
    width: 11.01%;
    height: 6.54%;
  }
  .mod-door-basic ._p10 {
    position: absolute;
    top: 70.55%;
    left: 11.1%;
    width: 18.81%;
    height: 6.54%;
  }
  .mod-door-basic ._p11 {
    position: absolute;
    top: 49.36%;
    left: 0.94%;
    width: 34.05%;
    height: 6.54%;
  }
  .mod-door-basic ._p12 {
    position: absolute;
    top: 39.69%;
    left: 2.82%;
    width: 18.34%;
    height: 6.54%;
  }
  .mod-door-basic ._p13 {
    position: absolute;
    top: 29.02%;
    left: 4.7%;
    width: 20.88%;
    height: 6.54%;
  }
  .mod-door-basic ._p14 {
    position: absolute;
    top: 16.5%;
    left: 7.53%;
    width: 12.04%;
    height: 6.54%;
  }
  .mod-door-basic ._p15 {
    position: absolute;
    top: 2.84%;
    left: 10.35%;
    width: 14.11%;
    height: 6.54%;
  }
  .mod-door-basic-btn {
    display: block;
    background-color: #fff;
    border: 0.3076923077vw solid #00a0e6;
    padding: 0.9230769231vw 0 0.9230769231vw 1.2307692308vw;
    border-radius: 3.0769230769vw;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-door-basic-btn span {
    font-size: 1.2307692308vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-door-basic-btn:hover {
    background-color: #00a0e6;
  }
  .mod-door-basic-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-door-basic-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-door-basic-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0.6153846154vw;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 2vw;
    height: 2vw;
  }
  .block-door-place {
    padding: 4.6153846154vw 0 4.6153846154vw 0;
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-place img {
    width: 100%;
  }
  .block-door-place ._row-header {
    margin-right: -1.9230769231vw;
    text-align: right;
  }
  .block-door-place ._row-body {
    margin-top: 6.1538461538vw;
  }
  .block-door-pedia-items {
    padding: 7.6923076923vw 0;
  }
  .block-door-pedia-items .block-inner {
    display: flex;
    gap: 19.2307692308vw;
    flex-direction: column;
  }
  .block-door-pedia-item1 {
    position: relative;
  }
  .block-door-pedia-item1:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item1 ._illust {
    position: absolute;
    top: 18.17%;
    left: 0;
    width: 50%;
    height: 79.39%;
  }
  .block-door-pedia-item1 ._car {
    position: absolute;
    top: 85.24%;
    left: 10%;
    width: 8.67%;
    height: 8.54%;
  }
  .block-door-pedia-item1 ._cl {
    position: absolute;
    top: -32.93%;
    left: -20%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item1 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item1 ._title {
    position: absolute;
    top: -13.29%;
    left: 0;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item2 {
    position: relative;
  }
  .block-door-pedia-item2:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item2 ._illust {
    position: absolute;
    top: 50.24%;
    left: 56.67%;
    width: 43.33%;
    height: 47.56%;
  }
  .block-door-pedia-item2 ._car {
    position: absolute;
    top: 58%;
    left: 78%;
    width: 4%;
    height: 5.12%;
  }
  .block-door-pedia-item2 ._texts {
    position: absolute;
    top: 0.24%;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item2 ._cl {
    position: absolute;
    top: 8%;
    left: 80%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item2 ._title {
    position: absolute;
    top: -13.17%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item3 {
    position: relative;
  }
  .block-door-pedia-item3:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item3 ._illust {
    position: absolute;
    top: 41.46%;
    left: 0;
    width: 50.83%;
    height: 56.1%;
  }
  .block-door-pedia-item3 ._car {
    position: absolute;
    top: 90%;
    left: 5%;
    width: 4.75%;
    height: 5.98%;
  }
  .block-door-pedia-item3 ._cl {
    position: absolute;
    top: 2.32%;
    left: 26.67%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item3 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item3 ._title {
    position: absolute;
    top: -13.41%;
    left: 0;
    width: 70.83%;
    height: 33.05%;
  }
  .block-door-pedia-item4 {
    position: relative;
  }
  .block-door-pedia-item4:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item4 ._illust {
    position: absolute;
    top: 28.17%;
    left: 55.83%;
    width: 52.5%;
    height: 69.39%;
  }
  .block-door-pedia-item4 ._car {
    position: absolute;
    top: 55.2%;
    left: 103%;
    width: 4.67%;
    height: 6.1%;
  }
  .block-door-pedia-item4 ._texts {
    position: absolute;
    top: 0;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item4 ._cl {
    position: absolute;
    top: 3.66%;
    left: 68.33%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item4 ._title {
    position: absolute;
    top: -13.66%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item5 {
    position: relative;
  }
  .block-door-pedia-item5:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item5 ._illust {
    position: absolute;
    top: 35.37%;
    left: -5.08%;
    width: 62.5%;
    height: 62.2%;
  }
  .block-door-pedia-item5 ._car {
    position: absolute;
    top: 56%;
    left: -4%;
    width: 4.75%;
    height: 6.1%;
  }
  .block-door-pedia-item5 ._texts {
    position: absolute;
    top: 0;
    left: 37.5%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item5 ._cl {
    position: absolute;
    top: -5%;
    left: 22.08%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item5 ._title {
    position: absolute;
    top: -13.66%;
    left: 0;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item6 {
    position: relative;
  }
  .block-door-pedia-item6:after {
    display: block;
    content: "";
    padding-top: 68.3333333333%;
  }
  .block-door-pedia-item6 ._illust {
    position: absolute;
    top: 47.56%;
    left: 50%;
    width: 56.67%;
    height: 50%;
  }
  .block-door-pedia-item6 ._car {
    position: absolute;
    top: 78.66%;
    left: 76.67%;
    width: 2.83%;
    height: 3.9%;
  }
  .block-door-pedia-item6 ._cl {
    position: absolute;
    top: 23.05%;
    left: 60%;
    width: 23.33%;
    height: 48.78%;
  }
  .block-door-pedia-item6 ._texts {
    position: absolute;
    top: 0;
    left: -3.83%;
    width: 66.67%;
    height: 97.56%;
  }
  .block-door-pedia-item6 ._title {
    position: absolute;
    top: -13.66%;
    left: 58.33%;
    width: 50%;
    height: 33.05%;
  }
  .block-door-pedia-item1 ._car {
    animation: keyf_door_car1 5s linear 0s infinite;
  }
  .block-door-pedia-item2 ._car {
    animation: keyf_door_car2 5s linear 0s infinite;
  }
  .block-door-pedia-item3 ._car {
    animation: keyf_door_car3 5s linear 0s infinite;
  }
  .block-door-pedia-item4 ._car {
    animation: keyf_door_car4 7s linear 0s infinite;
  }
  .block-door-pedia-item5 ._car {
    animation: keyf_door_car5 5s linear 0s infinite;
  }
  .block-door-pedia-item6 ._car {
    animation: keyf_door_car6 5s linear 0s infinite;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (min-width: 1281px) {
  @keyframes keyf_door_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(400px, -230.8px);
      opacity: 1;
    }
    80% {
      transform: translate(400px, -230.8px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car2 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-260px, 150.02px);
      opacity: 1;
    }
    80% {
      transform: translate(-260px, 150.02px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car3 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(400px, -230.8px);
      opacity: 1;
    }
    80% {
      transform: translate(400px, -230.8px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car4 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-500px, 288.5px);
      opacity: 1;
    }
    80% {
      transform: translate(-500px, 288.5px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car5 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(500px, 288.5px);
      opacity: 1;
    }
    80% {
      transform: translate(500px, 288.5px);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car6 {
    0% {
      transform: translate(0, 0);
    }
    40% {
      transform: translate(-100px, 57.7px);
      opacity: 1;
    }
    50% {
      transform: translate(-100px, 57.7px);
      opacity: 1;
    }
    90% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) and (max-width: 1280px) {
  @keyframes keyf_door_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(25vw, -14.425vw);
      opacity: 1;
    }
    80% {
      transform: translate(25vw, -14.425vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car2 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-16.25vw, 9.37625vw);
      opacity: 1;
    }
    80% {
      transform: translate(-16.25vw, 9.37625vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car3 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(25vw, -14.425vw);
      opacity: 1;
    }
    80% {
      transform: translate(25vw, -14.425vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car4 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-31.25vw, 18.03125vw);
      opacity: 1;
    }
    80% {
      transform: translate(-31.25vw, 18.03125vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car5 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(31.25vw, 18.03125vw);
      opacity: 1;
    }
    80% {
      transform: translate(31.25vw, 18.03125vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car6 {
    0% {
      transform: translate(0, 0);
    }
    40% {
      transform: translate(-6.25vw, 3.60625vw);
      opacity: 1;
    }
    50% {
      transform: translate(-6.25vw, 3.60625vw);
      opacity: 1;
    }
    90% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .mod-door-pedia-item ._link {
    position: absolute;
    top: -12vw;
    left: 0;
    width: 3.0769230769vw;
    height: 3.0769230769vw;
  }
  .mod-door-pedia-item ._title {
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-door-pedia-item ._title ._en {
    background-color: #00a0e6;
    font-size: 6.1538461538vw;
    line-height: 1.25;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #fff;
    padding: 0.7692307692vw 1.5384615385vw;
  }
  .mod-door-pedia-item ._title h3 {
    font-size: 1.2307692308vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1.1538461538vw 1.9230769231vw;
  }
  .mod-door-pedia-item ._title ._leads {
    margin-top: 6.1538461538vw;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-door-pedia-item ._title ._leads span {
    font-size: 1.3846153846vw;
    letter-spacing: 0.15em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 0.7692307692vw 1.1538461538vw;
  }
  .mod-door-pedia-item ._texts {
    height: 100%;
    border-radius: 50%;
    background-color: #00a0e6;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-door-pedia-item ._texts ._texts-in {
    width: 38.4615384615vw;
    padding: 0 0 6.1538461538vw 0;
  }
  .mod-door-pedia-item ._texts ._texts-in.is-item3 {
    padding-bottom: 0;
  }
  .mod-door-pedia-item ._texts h4 {
    font-size: 2.4615384615vw;
    font-weight: 700;
    line-height: 1.37;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc {
    margin-top: 1.5384615385vw;
    font-size: 1.2307692308vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc b {
    font-weight: 800;
  }
  .mod-door-pedia-item ._texts ._note {
    margin-top: 0.7692307692vw;
    font-size: 1.0769230769vw;
    font-weight: 500;
    line-height: 1.42;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
    margin-right: -2em;
  }
  .mod-door-pedia-item ._texts ._image {
    margin-top: 2.3076923077vw;
  }
  .block-door-pedia-navi {
    position: fixed;
    z-index: 20;
    right: 0;
    top: 50%;
    transform: translate(110%, -50%);
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.4s;
  }
  .block-door-pedia-navi img {
    width: 100%;
  }
  body.js-pedia-active .block-door-pedia-navi {
    transform: translate(0, -50%);
    visibility: visible;
    opacity: 1;
  }
  .mod-door-pedia-navi {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border: 0.1538461538vw solid #00a0e6;
    border-right: none;
    border-radius: 2.3076923077vw 0 0 2.3076923077vw;
    overflow: hidden;
    width: 12.3076923077vw;
  }
  .mod-door-pedia-navi li + li {
    position: relative;
  }
  .mod-door-pedia-navi li + li:after {
    content: "";
    display: block;
    position: absolute;
    top: -3px;
    left: 0;
    right: 0;
    height: 6px;
    background: url(../../images/door-pedia/navi/bar.png) left top no-repeat;
    background-size: contain;
  }
  .mod-door-pedia-navi ._item {
    display: block;
    position: relative;
    padding: 1.3076923077vw 0 1vw 0;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-door-pedia-navi ._item:hover {
    background-color: rgba(0, 160, 230, 0.5);
  }
  .mod-door-pedia-navi ._item:hover ._item-texts {
    color: #fff;
  }
  .mod-door-pedia-navi ._item ._item-image {
    width: 5.3846153846vw;
    margin: 0 auto;
  }
  .mod-door-pedia-navi ._item ._item-texts {
    font-size: 1.0769230769vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .area-modal-door-pedia {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-door-pedia.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-door-pedia .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-door-pedia ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 160, 230, 0.9);
  }
  .area-modal-door-pedia ._modal-box {
    border-radius: 80px;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 800px;
    min-height: 200px;
    padding: 80px;
  }
  .area-modal-door-pedia ._page {
    display: none;
  }
  .block-modal-door-pedia ._title {
    font-size: 36px;
    text-align: center;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #00a0e6;
    padding-bottom: 30px;
    border-bottom: 2px solid #00a0e6;
  }
  .block-modal-door-pedia ._doc {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-profile-keyword-wrap {
    background-color: #d6f1fc;
  }
  .block-profile-keyword-lead {
    position: relative;
  }
  .block-profile-keyword-lead img {
    width: 100%;
  }
  .block-profile-keyword-lead ._layout {
    position: relative;
  }
  .block-profile-keyword-lead ._layout:after {
    display: block;
    content: "";
    padding-top: 70.1666666667%;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    position: absolute;
    top: 16.24%;
    left: 12.98%;
    width: 74.5%;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    position: absolute;
    top: 36.52%;
    left: 10.8%;
    width: 78.33%;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    position: absolute;
    top: 62.26%;
    left: 14.7%;
    width: 71%;
  }
  .block-profile-keyword-lead ._layout ._door1 {
    position: absolute;
    top: 12%;
    left: 3.83%;
    width: 16.25%;
    height: 47.62%;
  }
  .block-profile-keyword-lead ._layout ._door2 {
    position: absolute;
    top: 12%;
    left: 80%;
    width: 16.25%;
    height: 47.62%;
  }
  .block-profile-keyword-lead ._layout ._deco1 {
    position: absolute;
    top: 65.44%;
    left: 1.92%;
    width: 98.08%;
    height: 29.93%;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    font-size: 2.7692307692vw;
    line-height: 1.45;
    letter-spacing: 0.1em;
    color: #002e67;
    text-align: center;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t1 b {
    font-size: 3.6923076923vw;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    font-size: 1.3846153846vw;
    line-height: 1.88;
    letter-spacing: 0.1em;
    color: #000;
    text-align: center;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    font-size: 2.1538461538vw;
    line-height: 1.64;
    letter-spacing: 0.1em;
    color: #00a0e6;
    text-align: center;
    font-weight: 500;
  }
  .block-profile-keyword-network {
    position: relative;
  }
  .block-profile-keyword-network img {
    width: 100%;
  }
  .block-profile-keyword-network .block-inner {
    display: flex;
    gap: 11.5384615385vw;
    flex-direction: column;
  }
  .block-profile-keyword-network ._box {
    padding: 4.6153846154vw 0;
    background-color: #fff;
  }
  .block-profile-keyword-network ._box-inner {
    padding: 3.8461538462vw 7.6923076923vw 0 7.6923076923vw;
  }
  .block-profile-keyword-network ._texts {
    margin-top: 3.0769230769vw;
  }
  .block-profile-keyword-network ._texts ._t1 {
    font-size: 1.8461538462vw;
    text-align: center;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.2em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._texts ._t2 {
    font-size: 4.6153846154vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.74;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._image {
    width: 75.3846153846vw;
    margin: 0 auto;
    margin-top: 1.5384615385vw;
  }
  .block-profile-keyword-network ._image2 {
    width: 77.3076923077vw;
    margin: 0 auto;
  }
  .mod-profile-keyword-lead {
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead span {
    display: block;
    background-color: #00a0e6;
    font-size: 2.3076923077vw;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 1.5384615385vw 0.7692307692vw 1.5384615385vw 1.5384615385vw;
    color: #fff;
  }
  .mod-profile-keyword-lead2 {
    margin-top: 1.5384615385vw;
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead2 span {
    display: block;
    background-color: #00a0e6;
    font-size: 1.2307692308vw;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 1vw 0.5384615385vw 1vw 1.5384615385vw;
    color: #fff;
  }
  .block-profile-keyword-pionnier {
    padding: 9.2307692308vw 0 4.6153846154vw 0;
    position: relative;
  }
  .block-profile-keyword-pionnier img {
    width: 100%;
  }
  .block-profile-keyword-pionnier ._image {
    margin-top: -3.0769230769vw;
    padding: 0 3.8461538462vw;
  }
  .block-profile-keyword-pionnier ._list {
    margin-top: 2.3076923077vw;
  }
  .block-profile-keyword-env {
    padding: 6.9230769231vw 0 11.5384615385vw 0;
    position: relative;
  }
  .block-profile-keyword-env img {
    width: 100%;
  }
  .block-profile-keyword-env ._list {
    margin-top: 3.8461538462vw;
  }
  .mod-profile-keyword-list {
    display: flex;
    justify-content: space-between;
  }
  .mod-profile-keyword-list li {
    width: 44.6153846154vw;
    position: relative;
  }
  .mod-profile-keyword-list li div {
    position: relative;
  }
  .mod-profile-keyword-list li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-profile-keyword-list2 {
    display: flex;
    justify-content: space-between;
    gap: 2.3076923077vw;
    flex-wrap: wrap;
  }
  .mod-profile-keyword-list2 li {
    width: 29.2307692308vw;
    position: relative;
  }
  .mod-profile-keyword-list2 li div {
    position: relative;
  }
  .mod-profile-keyword-list2 li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-project-story-head {
    font-size: 2.3076923077vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 700;
    padding-top: 0.7692307692vw;
    padding-bottom: 1.5384615385vw;
    margin-bottom: 1.1538461538vw;
    border-bottom: 1px solid #00a0e6;
  }
  .mod-project-story-head.is-B {
    letter-spacing: 0.2em;
    padding-bottom: 2.6923076923vw;
    margin-bottom: 2.3076923077vw;
  }
  .block-project-story-intro {
    padding-top: 3.4615384615vw;
    padding-bottom: 8.4615384615vw;
  }
  .block-project-story-intro img {
    width: 100%;
  }
  .block-project-story-intro .block-inner {
    position: relative;
  }
  .block-project-story-intro ._doc {
    font-size: 1.3846153846vw;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
  .block-project-story-profs {
    padding-bottom: 6.1538461538vw;
  }
  .block-project-story-profs img {
    width: 100%;
  }
  .block-project-story-profs ._bg {
    position: relative;
  }
  .block-project-story-profs ._bg h2 {
    font-size: 7.6923076923vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
    font-weight: 200;
    color: #00a0e6;
    z-index: 1;
    position: absolute;
    top: -3.8461538462vw;
    left: calc(50% - 46.9230769231vw);
  }
  .block-project-story-profs ._bg ._image {
    position: relative;
  }
  .block-project-story-profs .block-inner {
    position: relative;
    padding-top: 3.8461538462vw;
    margin-top: -12.3076923077vw;
  }
  .mod-project-story-profs-items {
    display: flex;
    justify-content: space-between;
    gap: 2.0769230769vw;
    flex-wrap: wrap;
  }
  .mod-project-story-profs-items img {
    width: 100%;
  }
  .mod-project-story-profs-items li {
    width: calc(25% - 1.5576923077vw);
    background: #002e67;
  }
  .mod-project-story-profs-item {
    display: block;
    color: #000;
    background: #002e67;
    padding: 1.9230769231vw 2.3076923077vw 1.5384615385vw 2.3076923077vw;
    position: relative;
  }
  .mod-project-story-profs-item ._item-image {
    width: 7.6923076923vw;
    position: absolute;
    right: 2.3076923077vw;
  }
  .mod-project-story-profs-item ._item-texts {
    position: relative;
    color: #fff;
  }
  .mod-project-story-profs-item ._name {
    font-size: 1.3846153846vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
    font-weight: 700;
  }
  .mod-project-story-profs-item ._yar {
    margin-top: 0.5384615385vw;
    font-size: 1.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-project-story-profs-item ._job {
    margin-top: 1.3846153846vw;
    position: relative;
  }
  .mod-project-story-profs-item ._job span {
    display: inline-block;
    font-size: 1.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
    background: #00a0e6;
    padding: 0.1538461538vw 0.3846153846vw;
  }
  .mod-project-story-profs-item ._doc {
    margin-top: 3.2307692308vw;
    font-size: 1.0769230769vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
  }
  .block-project-story-bg {
    background-color: #cee0ee;
  }
  .block-project-story-storys {
    display: flex;
    gap: 10.7692307692vw;
    flex-direction: column;
    padding-top: 8.4615384615vw;
    padding-bottom: 11.5384615385vw;
  }
  .block-project-story-story {
    position: relative;
  }
  .block-project-story-story img {
    width: 100%;
  }
  .block-project-story-story .block-inner {
    position: relative;
  }
  .block-project-story-story ._deco1 {
    position: absolute;
    top: 13.8461538462vw;
    right: -10.7692307692vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .block-project-story-story ._deco2 {
    position: absolute;
    top: 2.3076923077vw;
    right: -12.3076923077vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .block-project-story-story ._deco3 {
    position: absolute;
    bottom: 5.3846153846vw;
    left: -11.5384615385vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .block-project-story-story ._deco4 {
    position: absolute;
    top: 13.0769230769vw;
    right: -10.7692307692vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .block-project-story-story ._deco5 {
    position: absolute;
    top: -3.8461538462vw;
    right: -10.7692307692vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .block-project-story-story ._deco6 {
    position: absolute;
    bottom: 22.3076923077vw;
    left: -11.5384615385vw;
    width: 16.9230769231vw;
    z-index: 10;
  }
  .mod-project-story-box {
    position: relative;
    background: #fff;
    padding: 3.0769230769vw 7.6923076923vw 5.7692307692vw 7.6923076923vw;
    padding-right: 7.6923076923vw;
  }
  .mod-project-story-box ._title {
    position: absolute;
    top: -3.0769230769vw;
    left: 50%;
  }
  .mod-project-story-box ._title p {
    font-size: 1.3846153846vw;
    line-height: 1;
    letter-spacing: 0.07em;
    font-weight: 700;
    background: #002e67;
    color: #fff;
    padding: 0.8461538462vw 1.5384615385vw;
    transform: translate(-50%, 0);
  }
  .mod-project-story-box ._prof {
    position: absolute;
    top: -3.0769230769vw;
    right: -3.8461538462vw;
    width: 23.0769230769vw;
  }
  .mod-project-story-box ._prof.is-left {
    left: -3.8461538462vw;
    right: auto;
  }
  .mod-project-story-box ._body {
    display: flex;
    gap: 1.9230769231vw;
    flex-direction: column;
  }
  .mod-project-story-box ._row-main {
    width: 61.5384615385vw;
  }
  .mod-project-story-box ._row-main.is-left {
    margin-left: auto;
  }
  .mod-project-story-box ._row-left {
    display: flex;
    justify-content: space-between;
    gap: 3.8461538462vw;
  }
  .mod-project-story-box ._row-left ._image {
    margin-top: 0.7692307692vw;
  }
  .mod-project-story-box ._row-left img {
    text-align: right;
    width: 34.6153846154vw;
  }
  .mod-project-story-box ._row-right {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 3.8461538462vw;
  }
  .mod-project-story-box ._row-right ._image {
    margin-top: 0.7692307692vw;
  }
  .mod-project-story-box ._row-right img {
    text-align: right;
    width: 34.6153846154vw;
  }
  .block-project-story-last img {
    width: 100%;
  }
  .block-questionnaire-intro {
    padding-top: 3.8461538462vw;
    padding-bottom: 8.4615384615vw;
  }
  .block-questionnaire-intro .block-inner {
    position: relative;
  }
  .block-questionnaire-intro .block-inner p {
    font-size: 1.3846153846vw;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
  }
  .block-questionnaire-items {
    display: flex;
    gap: 11.5384615385vw;
    flex-direction: column;
  }
  .block-questionnaire-item {
    position: relative;
  }
  .block-questionnaire-item img {
    width: 100%;
  }
  .block-questionnaire-item ._row-body {
    position: relative;
    margin-top: 3.0769230769vw;
  }
  .block-questionnaire-item ._row-body.is-bar:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -15.3846153846vw;
    right: -15.3846153846vw;
    height: 0.3076923077vw;
    background: #000;
    z-index: -1;
  }
  .block-questionnaire-item ._box {
    margin-top: -3.0769230769vw;
    padding: 3.8461538462vw;
    background-color: #cff0ff;
  }
  .block-questionnaire-item ._box-in {
    padding: 3.4615384615vw 7.6923076923vw 3.8461538462vw 2.3076923077vw;
    background-image: url(../../images/questionnaire/bg.png);
  }
  .block-questionnaire-item ._deco1 {
    position: absolute;
    bottom: 1.5384615385vw;
    right: -2.6923076923vw;
    width: 9.2307692308vw;
  }
  .block-questionnaire-item ._deco2 {
    position: absolute;
    bottom: 1.5384615385vw;
    right: -0.7692307692vw;
    width: 10.7692307692vw;
  }
  .block-questionnaire-item ._deco3 {
    position: absolute;
    top: -7.6923076923vw;
    right: -7.6923076923vw;
    width: 42.3076923077vw;
  }
  .block-questionnaire-item ._deco4 {
    position: absolute;
    bottom: 2.3076923077vw;
    right: -1.5384615385vw;
    width: 23.0769230769vw;
  }
  .block-questionnaire-item ._deco5 {
    position: absolute;
    bottom: 1.5384615385vw;
    right: -1.5384615385vw;
    width: 8.4615384615vw;
  }
  .mod-questionnaire-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-questionnaire-head ._en {
    background-color: #002e67;
    font-size: 1.3846153846vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 0.6153846154vw 1.3846153846vw;
  }
  .mod-questionnaire-head h2 {
    background-color: #00a0e6;
    font-size: 2.3076923077vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 0.9230769231vw 1.5384615385vw;
  }
  .mod-questionnairelist-A {
    display: flex;
    gap: 1.5384615385vw;
    flex-direction: column;
  }
  .mod-questionnairelist-A li {
    margin-left: 5.3846153846vw;
    position: relative;
  }
  .mod-questionnairelist-A li span {
    display: inline;
    border-bottom: 0.1538461538vw solid #cff0ff;
    font-size: 1.2307692308vw;
    line-height: 2.62;
    letter-spacing: 0.1em;
    padding: 0.6153846154vw 0;
  }
  .mod-questionnairelist-A li:after {
    content: "";
    display: block;
    position: absolute;
    top: -0.3846153846vw;
    left: -5.3846153846vw;
    background: url(../../images/questionnaire/icon1.png) left top no-repeat;
    background-size: contain;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
  .mod-questionnairelist-B {
    display: flex;
    gap: 1.3076923077vw;
    flex-direction: column;
  }
  .mod-questionnairelist-B li {
    margin-left: 6.1538461538vw;
    position: relative;
  }
  .mod-questionnairelist-B li span {
    font-size: 1.3846153846vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
  }
  .mod-questionnairelist-B li span b {
    font-size: 1.8461538462vw;
    font-weight: 700;
    color: #00a0e6;
  }
  .mod-questionnairelist-B li:after {
    content: "";
    display: block;
    position: absolute;
    top: 0.5384615385vw;
    left: -6.1538461538vw;
    background: url(../../images/questionnaire/icon2.png) left top no-repeat;
    background-size: contain;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
}
@media screen and (max-width: 809px) {
  .block-career-main {
    padding: 16.6666666667vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
  }
  .block-career-main img {
    width: 100%;
  }
  .block-career-main ._row-body {
    margin-top: 8.9743589744vw;
    display: flex;
    gap: 16.6666666667vw;
    flex-direction: column;
  }
  .mod-career-main-cols.is-l ._cols-image img {
    transform: translate(-7vw, 0);
  }
  .mod-career-main-cols.is-r ._cols-image img {
    transform: translate(7vw, 0);
  }
  .mod-career-main-cols ._cols-image img {
    width: 100%;
  }
  .mod-career-main-cols ._prof {
    position: relative;
    width: 64.1025641026vw;
    padding: 5.1282051282vw;
    background-color: #fff;
    margin-top: -8.9743589744vw;
    color: #002e67;
    box-shadow: 1.9230769231vw 1.9230769231vw 0 #002e67;
  }
  .mod-career-main-cols ._prof.is-B {
    margin-left: auto;
  }
  .mod-career-main-cols ._prof ._job {
    font-size: 3.3333333333vw;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._div {
    margin-top: 1.7948717949vw;
    font-size: 3.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._prof ._name {
    border-top: 1px solid #002e67;
    padding-top: 2.5641025641vw;
  }
  .mod-career-main-cols ._prof ._name {
    margin-top: 2.5641025641vw;
    font-size: 3.8461538462vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
  }
  .mod-career-main-cols ._prof ._spec {
    margin-top: 2.6923076923vw;
    font-size: 3.0769230769vw;
    line-height: 1.71;
    letter-spacing: 0.1em;
  }
  .mod-career-main-cols ._cols-texts {
    margin-top: 50px;
    flex: 1;
    display: flex;
    gap: 7.6923076923vw;
    flex-direction: column;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span {
    background-color: #fff;
    color: #00a0e6;
  }
  .mod-career-main-cols ._cols-texts ._title.is-wh span:before {
    border-left: 4.8717948718vw solid #fff;
  }
  .mod-career-main-cols ._cols-texts ._title span {
    display: inline-block;
    min-width: 50vw;
    background-color: #00a0e6;
    padding: 1.9230769231vw 0 1.9230769231vw 3.8461538462vw;
    font-size: 3.8461538462vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    position: relative;
  }
  .mod-career-main-cols ._cols-texts ._title span:before {
    content: "";
    position: absolute;
    top: 0;
    right: -9.6153846154vw;
    width: 4.8717948718vw;
    height: 4.8717948718vw;
    box-sizing: border-box;
    border: 4.8717948718vw solid transparent;
    border-left: 4.8717948718vw solid #00a0e6;
    transform: scale(1, 1);
  }
  .mod-career-main-cols ._cols-texts ._doc {
    margin-top: 3.2051282051vw;
  }
  .mod-career-main-cols ._deco1 {
    margin: 0 auto;
    margin-top: 20px;
    width: 52.5641025641vw;
  }
  .block-career-qa {
    padding: 19.2307692308vw 6.9230769231vw 15.3846153846vw 6.9230769231vw;
    position: relative;
    background-color: #cff0ff;
  }
  .block-career-qa img {
    width: 100%;
  }
  .block-career-qa ._inner {
    max-width: 128.2051282051vw;
    margin: 0 auto;
  }
  .block-career-qa ._row-body {
    margin-top: 5.1282051282vw;
  }
  .mod-faq-wrap {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
  }
  .mod-faq ._head {
    position: relative;
    cursor: pointer;
    background: #fff;
    font-size: 3.8461538462vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #00a0e6;
    border: 1px solid #00a0e6;
    padding: 1.9230769231vw 10.2564102564vw 1.9230769231vw 14.1025641026vw;
  }
  .mod-faq ._head:after {
    content: "Q";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    padding-left: 2px;
    width: 10.2564102564vw;
    background-color: #002e67;
    font-size: 5.1282051282vw;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Oswald, sans-serif;
  }
  .mod-faq ._head.is-open ._toggle-icon {
    transform: rotate(0);
  }
  .mod-faq ._head ._toggle-icon {
    position: absolute;
    top: calc(50% - 15px);
    right: 10px;
    width: 27px;
    height: 27px;
    transition-duration: 0.2s;
    transform: rotate(180deg);
  }
  .mod-faq ._head ._toggle-icon:before {
    position: absolute;
    top: 5px;
    left: 8px;
    display: block;
    content: "";
    height: 9px;
    width: 9px;
    border: 2px solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
  }
  .mod-faq ._body {
    padding: 5.1282051282vw 0 0 21.7948717949vw;
  }
  .mod-faq ._box {
    position: relative;
    background-color: #fff;
    padding: 5.1282051282vw 6.4102564103vw 5.1282051282vw 6.4102564103vw;
  }
  .mod-faq ._box:before {
    content: "";
    position: absolute;
    top: 8.9743589744vw;
    left: -5.1282051282vw;
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    box-sizing: border-box;
    border: 2.5641025641vw solid transparent;
    border-right: 2.5641025641vw solid #fff;
    transform: scale(1, 1);
  }
  .mod-faq ._box ._face {
    position: absolute;
    top: 5.1282051282vw;
    left: -21.7948717949vw;
    width: 15.3846153846vw;
    height: 15.3846153846vw;
  }
  .block-career-info {
    padding: 19.2307692308vw 6.9230769231vw 20.5128205128vw 6.9230769231vw;
    position: relative;
  }
  .block-career-info ._inner {
    max-width: 128.2051282051vw;
    margin: 0 auto;
  }
  .block-career-info ._row-body {
    margin-top: 3.8461538462vw;
  }
  .mod-modal-btn-close {
    position: relative;
    width: 12.8205128205vw;
    height: 12.8205128205vw;
    background-color: #fff;
    border-radius: 50%;
    border: 0.5128205128vw solid #00a0e6;
    z-index: 10;
    cursor: pointer;
  }
  .mod-modal-btn-close.is-bk {
    border-color: #002e67;
  }
  .mod-modal-btn-close.is-bk span {
    background: #002e67;
  }
  .mod-modal-btn-close span {
    content: "";
    position: absolute;
    background: #00a0e6;
    top: 5.8974358974vw;
    left: 3.3333333333vw;
    width: 5.1282051282vw;
    height: 0.5128205128vw;
    transform: rotate(-45deg);
  }
  .mod-modal-btn-close span:nth-child(2) {
    transform: rotate(45deg);
  }
  .mod-modal-navi {
    display: flex;
  }
  .mod-modal-navi-btn.is-prev {
    display: block;
    width: 7.6923076923vw;
    height: 12.8205128205vw;
    background: url(../images/icon/arrow_prev_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -10.2564102564vw;
  }
  .mod-modal-navi-btn.is-next {
    display: block;
    width: 7.6923076923vw;
    height: 12.8205128205vw;
    background: url(../images/icon/arrow_next_wh.png) left top no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: -10.2564102564vw;
  }
  .area-modal-entry {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-entry.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-entry .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-entry ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 46, 103, 0.9);
  }
  .area-modal-entry ._modal-box {
    border-radius: 7.6923076923vw;
    position: absolute;
    background: #c6ebfa;
    width: 71.7948717949vw;
    min-height: 102.5641025641vw;
    padding: 10.2564102564vw 7.6923076923vw;
  }
  .block-modal-entry {
    position: relative;
  }
  .block-modal-entry ._row-header {
    border-bottom: 0.2564102564vw solid #002e67;
  }
  .block-modal-entry ._row-header h2 {
    font-size: 5.8974358974vw;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.2em;
    color: #002e67;
    padding: 0 0 3.8461538462vw 0;
  }
  .block-modal-entry ._row-body {
    margin-top: 5.1282051282vw;
  }
  .block-modal-entry ul {
    display: flex;
    gap: 3.8461538462vw;
    flex-direction: column;
  }
  .mod-btn-modal-entry {
    padding: 3.2051282051vw 8.9743589744vw 3.2051282051vw 2.5641025641vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 0.5128205128vw solid #002e67;
    border-radius: 6.4102564103vw;
    color: #002e67;
    cursor: pointer;
    background-color: #fff;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-btn-modal-entry:after {
    content: "";
    display: block;
    position: absolute;
    top: 2.1794871795vw;
    right: 2.1794871795vw;
    background: url(../images/icon/icon2.png) left top no-repeat;
    background-size: contain;
    width: 5.1282051282vw;
    height: 5.1282051282vw;
  }
  .mod-btn-modal-entry ._ja {
    font-size: 3.3333333333vw;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-btn-modal-entry ._en {
    font-size: 3.3333333333vw;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
  .mod-deco {
    pointer-events: none;
  }
  .mod-btn-wrap:hover .mod-btn-more {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-wrap:hover .mod-btn-more span {
    color: orange;
  }
  .mod-btn-more {
    width: 34.6153846154vw;
    height: 9.2307692308vw;
    background: url(../img/common/btn_more.svg) left top no-repeat;
    background-size: contain;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
  }
  .mod-btn-more span {
    font-size: 3.8461538462vw;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.075em;
    color: #000;
    padding-right: 5.7692307692vw;
    transition-duration: 0.2s;
  }
  .mod-btn-more:hover {
    background-image: url(../img/common/btn_on.svg);
  }
  .mod-btn-more:hover span {
    color: #00a0e6;
  }
  .block-common-mv {
    position: relative;
  }
  .block-common-mv img {
    width: 100%;
  }
  .block-common-mv ._image {
    position: relative;
  }
  .block-common-mv ._image img {
    object-fit: cover;
  }
  .block-common-mv ._image img {
    min-height: 71.7948717949vw;
  }
  .block-common-mv ._texts {
    margin-top: -17.9487179487vw;
    margin-left: 3.4615384615vw;
    padding-bottom: 6.4102564103vw;
  }
  .block-common-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-common-mv ._texts ._cate {
    font-size: 3.5897435897vw;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #ff8c00;
    padding: 2.8205128205vw 3.3333333333vw;
  }
  .block-common-mv ._texts ._en {
    font-size: 11.5384615385vw;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1.2820512821vw 2.5641025641vw;
  }
  .block-common-mv ._texts ._en i {
    font-style: italic;
  }
  .block-common-mv ._texts h1 {
    font-size: 3.0769230769vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1.2820512821vw 3.3333333333vw;
  }
  .mod-doc {
    font-size: 3.3333333333vw;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-common-h2 {
    color: #00a0e6;
  }
  .mod-common-h2.is-center {
    text-align: center;
  }
  .mod-common-h2.is-center-sp {
    text-align: center;
  }
  .mod-common-h2.is-wh {
    color: #fff;
  }
  .mod-common-h2 ._en {
    font-size: 11.5384615385vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.075em;
  }
  .mod-common-h2 h2 {
    margin-top: 1.2820512821vw;
    font-size: 3.0769230769vw;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
  }
  .block-common-footer-navi {
    padding: 11.5384615385vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
    background-color: #fff;
  }
  .block-common-footer-navi ._row-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .block-common-footer-navi ._row-header ._en {
    background-color: #00a0e6;
    font-size: 7.6923076923vw;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 0.2564102564vw 3.2051282051vw;
  }
  .block-common-footer-navi ._row-header h2 {
    background-color: #00a0e6;
    font-size: 3.3333333333vw;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
    color: #fff;
    padding: 1.7948717949vw 3.4615384615vw;
  }
  .block-common-footer-navi ._row-body {
    margin-top: 4.4871794872vw;
  }
  .block-common-footer-navi ._items {
    display: flex;
    gap: 1.5384615385vw;
    flex-direction: column;
  }
  .block-common-footer-navi ._item {
    position: relative;
    display: flex;
    gap: 2.5641025641vw;
    width: 100%;
  }
  .block-common-footer-navi ._item:after {
    content: "";
    display: block;
    position: absolute;
    top: 4.7435897436vw;
    right: 0;
    width: 64.1025641026vw;
    height: 1px;
    background: #00a0e6;
  }
  .block-common-footer-navi ._item ._item-image {
    width: 14.1025641026vw;
  }
  .block-common-footer-navi ._item ._item-image img {
    width: 100%;
  }
  .block-common-footer-navi ._item ._item-texts {
    padding-top: 1.2820512821vw;
    flex: 1;
    color: #00a0e6;
  }
  .block-common-footer-navi ._item ._item-texts ._en {
    display: inline-block;
    position: relative;
    font-size: 4.358974359vw;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.075em;
    background-color: #fff;
    padding: 0 2.5641025641vw 0 0;
    z-index: 10;
  }
  .block-common-footer-navi ._item ._item-texts ._ja {
    font-size: 3.0769230769vw;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .block-common-pagelink {
    padding: 2.5641025641vw 6.9230769231vw;
  }
  .mod-common-pagelinks {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6.4102564103vw 5%;
  }
  .mod-common-pagelinks li {
    width: 47.5%;
    line-height: 1;
    position: relative;
  }
  .mod-common-pagelinks li a {
    display: block;
    padding: 0 3.8461538462vw 1.9230769231vw 0;
    font-size: 3.5897435897vw;
    letter-spacing: 0.1em;
    line-height: 1.3;
    color: #00a0e6;
    border-bottom: 0.5128205128vw solid #00a0e6;
    font-weight: 700;
    position: relative;
  }
  .mod-common-pagelinks li a:before {
    position: absolute;
    top: calc(50% - 10px);
    right: 1.0256410256vw;
    display: block;
    content: "";
    height: 2.0512820513vw;
    width: 2.0512820513vw;
    border: 0.5128205128vw solid #00a0e6;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(45deg);
  }
  .block-crosstalk-intro {
    padding: 0 6.9230769231vw 16.6666666667vw 6.9230769231vw;
  }
  .block-crosstalk-intro .block-inner {
    position: relative;
  }
  .block-crosstalk-intro ._doc {
    font-size: 3.5897435897vw;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
    color: #000;
  }
  .block-crosstalk-prof {
    padding: 10.2564102564vw 6.9230769231vw 6.9230769231vw 6.9230769231vw;
    background: #cff0ff;
  }
  .block-crosstalk-prof .block-inner {
    position: relative;
  }
  .block-crosstalk-prof h2 {
    position: absolute;
    top: -21.7948717949vw;
    left: -1.2820512821vw;
    font-weight: 300;
    font-size: 14.1025641026vw;
    line-height: 1.8;
    letter-spacing: 0.07em;
    color: #00a0e6;
  }
  .mod-crosstalk-prof-items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8.3333333333vw 5%;
  }
  .mod-crosstalk-prof-items img {
    width: 100%;
  }
  .mod-crosstalk-prof-items > li {
    width: 46%;
  }
  .mod-crosstalk-prof-items > li .item {
    display: block;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._item-image {
    text-align: center;
  }
  .mod-crosstalk-prof-items > li .item ._item-image img {
    width: 34.6153846154vw;
  }
  .mod-crosstalk-prof-items > li .item ._item-texts {
    margin-top: 5.1282051282vw;
  }
  .mod-crosstalk-prof-items > li .item ._job {
    position: relative;
  }
  .mod-crosstalk-prof-items > li .item ._job span {
    font-size: 3.0769230769vw;
    letter-spacing: 0.1em;
    color: #fff;
    background: #002e67;
    padding: 0.2564102564vw 0.641025641vw;
  }
  .mod-crosstalk-prof-items > li .item ._place {
    margin-top: 1.1538461538vw;
    font-size: 3.0769230769vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._name {
    margin-top: 1.5384615385vw;
    font-size: 4.358974359vw;
    line-height: 1.8;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._year {
    margin-top: 1.2820512821vw;
    font-size: 3.0769230769vw;
    line-height: 1.6;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    border-top: 1px solid #000;
    padding-top: 1.9230769231vw;
  }
  .mod-crosstalk-prof-items > li .item ._txt {
    margin-top: 1.6666666667vw;
    font-size: 3.3333333333vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-crosstalk-talks {
    padding: 20.5128205128vw 0 6.9230769231vw 0;
    display: flex;
    gap: 17.9487179487vw;
    flex-direction: column;
  }
  .block-crosstalk-talks img {
    width: 100%;
  }
  .block-crosstalk-talk {
    position: relative;
  }
  .block-crosstalk-talk ._row-header {
    width: 100%;
    position: relative;
    padding-top: 11.5384615385vw;
  }
  .block-crosstalk-talk ._row-header ._title {
    position: absolute;
    top: 0;
    left: 6.4102564103vw;
  }
  .block-crosstalk-talk ._row-header ._image {
    position: relative;
  }
  .block-crosstalk-talk ._row-body {
    padding: 7.6923076923vw 6.9230769231vw 6.9230769231vw 6.9230769231vw;
    display: flex;
    gap: 7.6923076923vw;
    flex-direction: column;
  }
  .block-crosstalk-talk ._deco1 {
    display: none;
  }
  .block-crosstalk-talk ._deco2 {
    display: none;
  }
  .block-crosstalk-talk ._deco3 {
    display: none;
  }
  .mod-crosstalk-talks-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-crosstalk-talks-head ._en {
    background-color: #002e67;
    font-size: 3.5897435897vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 1.0256410256vw 2.3076923077vw;
  }
  .mod-crosstalk-talks-head h2 {
    background-color: #00a0e6;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 1.5384615385vw 2.5641025641vw;
  }
  .mod-crosstalk-talks-col1 {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
  }
  .mod-crosstalk-talks-col1 ._col-image {
    display: none;
  }
  .mod-crosstalk-talks-col2 {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
  }
  .mod-crosstalk-talks-col2 ._col-image {
    display: none;
  }
  .mod-talk {
    display: flex;
    gap: 3.2051282051vw;
    flex-direction: column;
  }
  .mod-talk ._talk {
    position: relative;
    display: flex;
    gap: 5.1282051282vw;
  }
  .mod-talk ._talk ._talk-face {
    width: 16.6666666667vw;
  }
  .mod-talk ._talk ._talk-texts {
    flex: 1;
  }
  .mod-talk ._talk ._talk-face img {
    width: 16.6666666667vw;
    border-radius: 50%;
  }
  .mod-talk ._talk ._talk-face span {
    margin-top: 2.5641025641vw;
    display: block;
    text-align: center;
    font-size: 3.0769230769vw;
  }
  .mod-talk ._talk ._talk-texts {
    padding-top: 4.4871794872vw;
  }
  .mod-talk ._talk-image {
    margin: 5.1282051282vw 0;
  }
  .block-crosstalk-last img {
    width: 100%;
  }
  body.page-future {
    background-color: #d6f1fc;
  }
  .block-future- main {
    position: relative;
  }
  .mod-future-main {
    margin-top: -20px;
    position: relative;
    height: 1300.27vw;
  }
  .mod-future-main img {
    width: 100%;
  }
  .mod-future-main ._deco1 {
    position: absolute;
    top: 8.67vw;
    left: -6.4vw;
    width: 25.47vw;
  }
  .mod-future-main ._deco2 {
    position: absolute;
    top: 57.2vw;
    left: -13.87vw;
    width: 38.53vw;
  }
  .mod-future-main ._deco3 {
    position: absolute;
    top: 6.27vw;
    left: 80.53vw;
    width: 10.93vw;
  }
  .mod-future-main ._deco4 {
    position: absolute;
    top: 101.33vw;
    left: 53.73vw;
    width: 40.4vw;
  }
  .mod-future-main ._deco5 {
    position: absolute;
    top: 68.93vw;
    left: 80.53vw;
    width: 21.33vw;
  }
  .mod-future-main ._p1 {
    position: absolute;
    top: 125.6vw;
    left: 0;
    width: 92.93vw;
  }
  .mod-future-main ._p2 {
    position: absolute;
    top: 249.33vw;
    left: 17.2vw;
    width: 39.07vw;
  }
  .mod-future-main ._p3 {
    position: absolute;
    top: 270.4vw;
    left: 71.07vw;
    width: 21.87vw;
  }
  .mod-future-main ._p4 {
    position: absolute;
    top: 362.53vw;
    left: 0;
    width: 32.27vw;
  }
  .mod-future-main ._p5 {
    position: absolute;
    top: 393.6vw;
    left: 25.07vw;
    width: 61.2vw;
  }
  .mod-future-main ._p6 {
    position: absolute;
    top: 504vw;
    left: 46.93vw;
    width: 46.4vw;
  }
  .mod-future-main ._p7 {
    position: absolute;
    top: 560.53vw;
    left: 20.53vw;
    width: 79.47vw;
  }
  .mod-future-main ._p8 {
    position: absolute;
    top: 703.73vw;
    left: 0;
    width: 30.53vw;
  }
  .mod-future-main ._p9 {
    position: absolute;
    top: 921.47vw;
    left: 6.67vw;
    width: 58vw;
  }
  .mod-future-main ._p10 {
    position: absolute;
    top: 805.73vw;
    left: 14.53vw;
    width: 30.8vw;
  }
  .mod-future-main ._p11 {
    position: absolute;
    top: 778vw;
    left: 37.2vw;
    width: 62.8vw;
  }
  .mod-future-main ._p12 {
    position: absolute;
    top: 824.8vw;
    left: 60.67vw;
    width: 22vw;
  }
  .mod-future-main ._p13 {
    position: absolute;
    top: 984.27vw;
    left: 0;
    width: 92.93vw;
  }
  .mod-future-main ._p14 {
    position: absolute;
    top: 1097.47vw;
    left: 45.07vw;
    width: 33.47vw;
  }
  .mod-future-main ._p15 {
    position: absolute;
    top: 1114vw;
    left: 13.87vw;
    width: 44.67vw;
  }
  .mod-future-main ._p16 {
    position: absolute;
    top: 1248.67vw;
    left: 57.07vw;
    width: 36.4vw;
  }
  .mod-future-main ._deco7 {
    position: absolute;
    top: 523.6vw;
    left: -5.33vw;
    width: 39.33vw;
    z-index: -1;
  }
  .mod-future-main ._deco10 {
    position: absolute;
    top: 195.87vw;
    left: 75.2vw;
    width: 32.13vw;
  }
  .mod-future-main ._logo {
    position: absolute;
    top: 77.47vw;
    left: 15.2vw;
    width: 69.33vw;
  }
  .mod-future-main ._deco6 {
    position: absolute;
    top: 923.6vw;
    left: 71.2vw;
    width: 32.8vw;
  }
  .mod-future-main ._deco8 {
    position: absolute;
    top: 708vw;
    left: 72.8vw;
    width: 18vw;
  }
  .mod-future-main ._deco9 {
    position: absolute;
    top: 877.47vw;
    left: 74.13vw;
    width: 17.33vw;
  }
  .mod-future-main ._deco11 {
    position: absolute;
    top: 1243.73vw;
    left: 9.33vw;
    width: 35.73vw;
  }
  .mod-future-main ._texts3 {
    position: absolute;
    top: 1036.67vw;
    left: 6.67vw;
  }
  .mod-future-main ._texts2 {
    position: absolute;
    top: 628.4vw;
    left: 6.67vw;
  }
  .mod-future-main ._texts1 {
    position: absolute;
    top: 180.8vw;
    left: 7.07vw;
  }
  .mod-future-main ._titles {
    position: absolute;
    top: 10vw;
    left: 0;
    right: 0;
  }
  .mod-future-main ._titles {
    text-align: center;
    display: flex;
    gap: 20px;
    flex-direction: column;
  }
  .mod-future-main ._titles ._title {
    font-size: 28px;
    line-height: 1.45;
    color: #002e67;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .mod-future-main ._titles ._lead {
    font-size: 14px;
    line-height: 1.88;
    color: #000;
    letter-spacing: 0.075em;
  }
  .block-future-bg {
    padding: 50px 0 0;
  }
  .block-future-bg img {
    width: 100%;
  }
  .mod-future-texts {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
  }
  .mod-future-texts ._title {
    font-size: 20px;
    line-height: 2.1;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #fff;
    background: #00a0e6;
    padding: 0 10px;
  }
  .mod-future-texts ._doc {
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: flex-start;
  }
  .mod-future-texts ._doc._12 {
    margin-top: 28.2051282051vw;
  }
  .mod-future-texts ._doc._13 {
    margin-top: 56.4102564103vw;
  }
  .mod-future-texts ._doc._22 {
    margin-top: 26.9230769231vw;
  }
  .mod-future-texts ._doc._23 {
    margin-top: 55.1282051282vw;
  }
  .mod-future-texts ._doc._32 {
    margin-top: 46.1538461538vw;
  }
  .mod-future-texts ._doc._33 {
    margin-top: 2.5641025641vw;
  }
  .mod-future-texts ._doc span {
    background: #fff;
    font-size: 13px;
    line-height: 2.5;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #00a0e6;
    padding: 0 10px;
  }
  .block-common-mv ._high-school {
    width: 84.6153846154vw;
  }
  .block-high-school-main {
    padding: 10.8974358974vw 6.9230769231vw 5.1282051282vw 6.9230769231vw;
    position: relative;
  }
  .block-high-school-main img {
    width: 100%;
  }
  .block-high-school-main ._box {
    position: relative;
    background-color: #cff0ff;
    padding: 14.1025641026vw 7.0512820513vw;
    display: flex;
    gap: 2.5641025641vw;
    flex-direction: column;
  }
  .block-high-school-main ._margin-sp {
    display: block;
    margin-right: 30.7692307692vw;
  }
  .block-high-school-main ._margin-sp2 {
    display: block;
    margin-left: 15.3846153846vw;
  }
  .block-high-school-main ._title {
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.1em;
    border-bottom: 2px solid #000;
    padding-bottom: 2.5641025641vw;
    margin-bottom: 5.1282051282vw;
  }
  .block-high-school-main ._deco1 {
    position: absolute;
    top: 32.0512820513vw;
    right: 0;
    width: 33.3333333333vw;
  }
  .block-high-school-main ._deco2 {
    position: absolute;
    bottom: -7.6923076923vw;
    left: -10.2564102564vw;
    width: 28.2051282051vw;
  }
  .block-high-school-menu {
    padding: 10.8974358974vw 6.9230769231vw 20.5128205128vw 6.9230769231vw;
    position: relative;
  }
  .block-high-school-menu img {
    width: 100%;
  }
  .block-high-school-menu ._cols ._col-menus {
    margin-top: 6.4102564103vw;
    display: flex;
    gap: 3.8461538462vw;
    flex-direction: column;
  }
  .block-high-school-menu ._cols ._col-menus a {
    display: block;
  }
  .block-high-school-menu ._deco1 {
    display: block;
    width: 41.0256410256vw;
    margin-top: -15.3846153846vw;
    margin-left: auto;
    margin-right: 3.8461538462vw;
  }
  .mod-high-school-btn {
    display: block;
    position: relative;
    cursor: pointer;
    transition-duration: 0.2s;
    color: #00a0e6;
  }
  .mod-high-school-btn:hover {
    transform: translate(0.5vw, 0);
  }
  .mod-high-school-btn ._ts {
    position: absolute;
    top: 2.3076923077vw;
    left: 21.7948717949vw;
  }
  .mod-high-school-btn ._ts.is-1 {
    top: 1.2820512821vw;
  }
  .mod-high-school-btn ._en {
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.075em;
  }
  .mod-high-school-btn ._ja {
    font-size: 2.8205128205vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.2;
  }
  .block-high-school-interview {
    padding: 17.9487179487vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
    background-color: #cff0ff;
  }
  .block-high-school-interview img {
    width: 100%;
  }
  .block-high-school-interview ._row-body {
    margin-top: 8.9743589744vw;
    display: flex;
    gap: 15.3846153846vw;
    flex-direction: column;
  }
  .block-high-school-interview .mod-career-main-cols .mod-doc {
    color: #00a0e6;
  }
  .block-high-school-interview ._row-header2 {
    margin-top: 47.4358974359vw;
    position: relative;
  }
  .block-high-school-interview ._row-body2 {
    position: relative;
    margin-top: 3.8461538462vw;
  }
  .block-high-school-interview ._deco1 {
    position: absolute;
    top: -34.6153846154vw;
    right: -10.2564102564vw;
    width: 97.4358974359vw;
  }
  .block-high-school-interview ._deco2 {
    display: none;
  }
  .block-high-school-interview ._deco3 {
    display: none;
  }
  .block-high-school-interview ._deco4 {
    display: none;
  }
  .block-high-school-interview2 {
    padding: 17.9487179487vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
    background-color: #00a0e6;
  }
  .block-high-school-interview2 img {
    width: 100%;
  }
  .block-high-school-interview2 ._row-body {
    margin-top: 7.6923076923vw;
    display: flex;
    gap: 15.3846153846vw;
    flex-direction: column;
  }
  .block-high-school-interview2 .mod-career-main-cols .mod-doc {
    color: #fff;
  }
  .block-high-school-interview2 ._row-header2 {
    margin-top: 47.4358974359vw;
    position: relative;
  }
  .block-high-school-interview2 ._row-body2 {
    position: relative;
    margin-top: 3.8461538462vw;
  }
  .block-high-school-interview2 ._deco1 {
    position: absolute;
    top: -34.6153846154vw;
    right: -10.2564102564vw;
    width: 97.4358974359vw;
  }
  .block-high-school-interview2 ._deco2 {
    display: none;
  }
  .block-high-school-interview2 ._deco3 {
    display: none;
  }
  .block-high-school-interview2 ._deco4 {
    display: none;
  }
  .mod-high-school-flow-items {
    position: relative;
  }
  .mod-high-school-flow-items ul {
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .mod-high-school-flow-items ul > li.is-line {
    position: relative;
    padding: 0 0 15.3846153846vw 0;
  }
  .mod-high-school-flow-items ul > li.is-line:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -12.8205128205vw;
    right: -12.8205128205vw;
    background: url(../../images/high-school-graduates/interview1/line.png) center top;
    background-size: auto 100%;
    height: 6.1538461538vw;
  }
  .mod-high-school-flow-items ul > li.is-line.is-wh:after {
    background-image: url(../../images/high-school-graduates/interview1/line_wh.png);
  }
  .mod-high-school-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 6.4102564103vw;
    bottom: 66.6666666667vw;
    left: 5.7692307692vw;
    width: 1.0256410256vw;
    background: #002e67;
  }
  .mod-high-school-flow-item {
    position: relative;
    display: flex;
    gap: 2.5641025641vw;
    padding: 5.1282051282vw 0 2.5641025641vw 0;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._title {
    color: #fff;
  }
  .mod-high-school-flow-item.is-wh ._item-texts ._doc {
    color: #fff;
  }
  .mod-high-school-flow-item ._item-no {
    width: 12.3076923077vw;
    height: 12.3076923077vw;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-high-school-flow-item ._item-no > div {
    display: flex;
    gap: 0.641025641vw;
    flex-direction: column;
    text-align: center;
  }
  .mod-high-school-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(1) {
    font-size: 1.5384615385vw;
  }
  .mod-high-school-flow-item ._item-no > div span:nth-child(2) {
    font-size: 4.1025641026vw;
  }
  .mod-high-school-flow-item ._item-texts {
    flex: 1;
    padding: 3.2051282051vw 0 0 0;
  }
  .mod-high-school-flow-item ._item-texts ._title {
    font-size: 5.1282051282vw;
    line-height: 1.3;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-high-school-flow-item ._item-texts ._doc {
    margin-top: 5.1282051282vw;
    color: #00a0e6;
  }
  .mod-high-school-flow-item ._item-texts ._image {
    width: 56.4102564103vw;
    margin: 0 auto;
    margin-top: 5.1282051282vw;
  }
  .mod-high-school-flow-item-last {
    padding: 5.1282051282vw 0 0 0;
  }
  .mod-high-school-flow-item-last ._label {
    position: relative;
    width: 30.8974358974vw;
  }
  .mod-high-school-flow-item-last ._image-last {
    width: 80.7692307692vw;
    margin: 0 auto;
  }
  .block-index-mv {
    position: relative;
    height: 151.28vw;
  }
  .block-index-mv img {
    width: 100%;
  }
  .block-index-mv ._pedia {
    position: absolute;
    right: -3.8461538462vw;
    bottom: -2.5641025641vw;
    z-index: 10;
  }
  .block-index-mv ._scroll {
    position: absolute;
    left: 2.5641025641vw;
    bottom: 0;
  }
  body.js-gmenu-active .block-index-mv ._pounts {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._pedia {
    display: none;
  }
  body.js-gmenu-active .block-index-mv ._scroll {
    display: none;
  }
  .mod-index-mv-point ._p1 {
    position: absolute;
    top: 34.72vw;
    left: 9.07vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p2 {
    position: absolute;
    top: 82.18vw;
    left: 62.53vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p3 {
    position: absolute;
    top: 85.38vw;
    left: 43.77vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p4 {
    position: absolute;
    top: 13.19vw;
    left: 52.14vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p5 {
    position: absolute;
    top: 42.81vw;
    left: 86.01vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p6 {
    position: absolute;
    top: 94vw;
    left: 16vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._p7 {
    position: absolute;
    top: 118.08vw;
    left: 16.92vw;
    width: 10.26vw;
    height: 10.26vw;
  }
  .mod-index-mv-point ._b1 {
    position: absolute;
    top: 37.1794871795vw;
    left: 24.358974359vw;
  }
  .mod-index-mv-point ._b2 {
    position: absolute;
    top: 58.9743589744vw;
    left: 43.5897435897vw;
  }
  .mod-index-mv-point ._b3 {
    position: absolute;
    top: 61.5384615385vw;
    left: 25.641025641vw;
  }
  .mod-index-mv-point ._b4 {
    position: absolute;
    top: 14.1025641026vw;
    left: 2.5641025641vw;
  }
  .mod-index-mv-point ._b5 {
    position: absolute;
    top: 12.8205128205vw;
    left: 51.2820512821vw;
  }
  .mod-index-mv-point ._b6 {
    position: absolute;
    top: 65.3846153846vw;
    left: 2.5641025641vw;
  }
  .mod-index-mv-point ._b7 {
    position: absolute;
    top: 89.7435897436vw;
    left: 2.5641025641vw;
  }
  .mod-index-mv-point ._point {
    background: url(../../images/index/mv/pin.png) left top no-repeat;
    background-size: contain;
    width: 10.1265822785vw;
    height: 10.1265822785vw;
    cursor: pointer;
    transition-duration: 0.4s;
    z-index: 70;
    opacity: 1;
  }
  .mod-index-mv-point ._point.is-open {
    opacity: 0;
    pointer-events: auto;
  }
  .mod-index-mv-point ._point {
    animation: keyf_index_mv_point 2s ease-in-out 0s infinite;
  }
  .mod-index-mv-baloon-item {
    width: 45.5696202532vw;
    border-radius: 2.5641025641vw;
    background-color: #ff933c;
    color: #fff;
    z-index: 70;
    padding: 2.5641025641vw 2.5641025641vw 2.5641025641vw 3.8461538462vw;
    pointer-events: none;
    cursor: pointer;
    opacity: 0;
    transition-duration: 0.4s;
    transform: translate(0, -5.1282051282vw);
  }
  .mod-index-mv-baloon-item.is-open {
    opacity: 1;
    transition-delay: 0.2s;
    pointer-events: auto;
    transform: translate(0, 0);
  }
  .mod-index-mv-baloon-item ._no {
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._no {
    position: absolute;
    top: 2.5641025641vw;
    left: 3.3333333333vw;
  }
  .mod-index-mv-baloon-item ._ti {
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .mod-index-mv-baloon-item ._ti {
    padding-left: 6.4102564103vw;
    margin-right: -2vw;
  }
  .mod-index-mv-baloon-item ._doc {
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.04em;
  }
  .mod-index-mv-baloon-item ._no {
    font-size: 4.358974359vw;
  }
  .mod-index-mv-baloon-item ._ti {
    font-size: 3.5897435897vw;
  }
  .mod-index-mv-baloon-item ._doc {
    font-size: 3.0769230769vw;
    margin-top: 1.2820512821vw;
  }
  .mod-index-mv-baloon-item.is-B-sp:before,
  .mod-index-mv-baloon-item.is-B2-sp:before,
  .mod-index-mv-baloon-item.is-B3-sp:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    box-sizing: border-box;
    border: 2.5641025641vw solid transparent;
    border-top: 2.5641025641vw solid #ff933c;
    transform: scale(0.8, 1) translate(-50%, 100%);
  }
  .mod-index-mv-baloon-item.is-B2-sp:before {
    left: 82%;
  }
  .mod-index-mv-baloon-item.is-B3-sp:before {
    left: 42%;
  }
  .mod-index-mv-baloon-item.is-L-sp:before {
    content: "";
    position: absolute;
    top: 40%;
    left: 0;
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    box-sizing: border-box;
    border: 2.5641025641vw solid transparent;
    border-right: 2.5641025641vw solid #ff933c;
    transform: scale(1, 0.8) translate(-100%, -50%);
  }
  .mod-index-mv-baloon-item.is-R-sp:before {
    content: "";
    position: absolute;
    top: 25%;
    right: 0;
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    box-sizing: border-box;
    border: 2.5641025641vw solid transparent;
    border-left: 2.5641025641vw solid #ff933c;
    transform: scale(1, 0.8) translate(100%, -50%);
  }
  .mod-index-mv-anim-sp {
    position: relative;
  }
  .mod-index-mv-anim-sp ._bg2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  .mod-index-mv-anim-sp ._car1 {
    position: absolute;
    top: 74vw;
    left: 7vw;
    width: 8vw;
  }
  .mod-index-mv-anim-sp ._car2 {
    position: absolute;
    top: 54vw;
    left: 100vw;
    width: 8vw;
  }
  .mod-index-mv-anim-sp ._train1 {
    position: absolute;
    top: 25.5vw;
    left: 100vw;
    width: 48vw;
  }
  .mod-index-mv-anim-sp ._plane1 {
    position: absolute;
    top: 16vw;
    left: -20vw;
    width: 24vw;
  }
  .mod-index-mv-anim-sp ._clowd1 {
    position: absolute;
    top: 22vw;
    left: 72vw;
    width: 32vw;
  }
  .mod-index-mv-anim-sp ._car1 {
    animation: keyf_index_mv_car1 30s linear 0s infinite;
  }
  .mod-index-mv-anim-sp ._car2 {
    animation: keyf_index_mv_car2 30s linear 0s infinite;
  }
  .mod-index-mv-anim-sp ._train1 {
    animation: keyf_index_mv_train2 20s linear 0s infinite;
  }
  .mod-index-mv-anim-sp ._plane1 {
    animation: keyf_index_mv_plane1 10s linear 0s infinite;
  }
  .mod-index-mv-anim-sp ._clowd1 {
    animation: keyf_index_mv_cloud1 3.2s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    48% {
      transform: translate(93.75vw, -54.09375vw);
    }
    100% {
      transform: translate(93.75vw, -54.09375vw);
    }
  }
  @keyframes keyf_index_mv_car2 {
    0% {
      transform: translate(0, 0);
    }
    52% {
      transform: translate(0, 0);
    }
    90% {
      transform: translate(-81.25vw, 46.88125vw);
      opacity: 1;
    }
    100% {
      transform: translate(-81.25vw, 46.88125vw);
      opacity: 0;
    }
  }
  @keyframes keyf_index_mv_train1 {
    0% {
      transform: translate(125vw, -72.125vw);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes keyf_index_mv_train2 {
    0% {
      transform: translate(-125vw, -72.125vw);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes keyf_index_mv_plane1 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_plane2 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(-125vw, -72.125vw);
    }
  }
  @keyframes keyf_index_mv_cloud1 {
    0% {
      transform: translate(0, 0.625vw);
    }
    50% {
      transform: translate(0, -0.625vw);
    }
    100% {
      transform: translate(0, 0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud2 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  @keyframes keyf_index_mv_cloud3 {
    0% {
      transform: translate(0, -0.625vw);
    }
    50% {
      transform: translate(0, 0.625vw);
    }
    100% {
      transform: translate(0, -0.625vw);
    }
  }
  .mod-index-mv-pedia {
    display: block;
    background: #002e67;
    color: #fff;
    padding: 4.6153846154vw 10.2564102564vw 4.358974359vw 5.1282051282vw;
    border-radius: 3.8461538462vw 0 0 3.8461538462vw;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-index-mv-pedia span {
    display: block;
    line-height: 1;
  }
  .mod-index-mv-pedia span:nth-child(1) {
    font-size: 5.8974358974vw;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia span:nth-child(2) {
    margin-top: 0.7692307692vw;
    font-size: 3.8461538462vw;
    font-weight: 700;
    letter-spacing: 0.02em;
  }
  .mod-index-mv-pedia ._base {
    position: absolute;
    bottom: 6.4102564103vw;
    left: 19.2307692308vw;
    right: 11.0256410256vw;
    height: 0.5128205128vw;
    background: rgba(255, 255, 255, 0.2);
  }
  .mod-index-mv-pedia ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #fff;
    animation: home_mv_scrollbar2 3s ease-in-out 0s infinite;
  }
  .mod-index-scroll-bar {
    display: flex;
    gap: 0;
    z-index: 10;
    flex-direction: column;
    align-items: center;
  }
  .mod-index-scroll-bar ._t {
    border-radius: 4.8717948718vw;
    background: #002e67;
    padding: 3.5897435897vw 2.0512820513vw;
    font-size: 3.0769230769vw;
    writing-mode: vertical-rl;
    letter-spacing: 0.1em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
  }
  body.js-hide-scroll-bar .mod-index-scroll-bar {
    opacity: 0;
  }
  .mod-index-scroll-bar ._base {
    position: relative;
    width: 0.5128205128vw;
    height: 8.9743589744vw;
    inset: 0;
    background: rgba(0, 46, 103, 0.2);
  }
  .mod-index-scroll-bar ._tar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: #002e67;
    animation: home_mv_scrollbar 3s ease-in-out 0s infinite;
  }
  @keyframes keyf_index_mv_point {
    0% {
      transform: translate(0, 0);
    }
    15% {
      transform: translate(0, -2.5641025641vw);
    }
    40% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  @keyframes home_mv_scrollbar2 {
    0% {
      width: 0;
      left: 0;
    }
    20% {
      width: 100%;
      left: 0;
    }
    60% {
      width: 100%;
      left: 0;
    }
    80% {
      width: 0%;
      left: 100%;
    }
    100% {
      width: 0%;
      left: 100%;
    }
  }
  @keyframes home_mv_scrollbar {
    0% {
      height: 0;
      top: 0;
    }
    20% {
      height: 100%;
      top: 0;
    }
    60% {
      height: 100%;
      top: 0;
    }
    80% {
      height: 0%;
      top: 100%;
    }
    100% {
      height: 0%;
      top: 100%;
    }
  }
  .block-index-message {
    position: relative;
    padding: 20.5128205128vw 0 20.5128205128vw 0;
    background-image: url(../img/common/bg_01.webp);
  }
  .block-index-message img {
    width: 100%;
  }
  .block-index-message ._row1 {
    position: relative;
    height: 230.77vw;
  }
  .block-index-message ._row1 ._cloud2 {
    position: absolute;
    top: 51.33%;
    left: -21.08%;
    width: 19.58%;
    height: 71.76%;
    height: auto;
    z-index: 10;
  }
  .block-index-message ._row1 ._cloud1 {
    position: absolute;
    top: 11.54%;
    left: 77.58%;
    width: 20.01%;
    height: 79.51%;
  }
  .block-index-message ._row1 ._deco {
    position: absolute;
    top: 19.19%;
    left: 50.17%;
    width: 50%;
    height: 83.31%;
  }
  .block-index-message ._row1 ._texts {
    position: absolute;
    top: 0;
    left: 6.9230769231vw;
  }
  .block-index-message ._row1 ._cloud1 {
    position: absolute;
    top: 135.77vw;
    left: 58.72vw;
    width: 35.77vw;
    top: 124.8vw;
    left: 58.72vw;
    width: 32.8vw;
    height: 75.77vw;
    height: auto;
  }
  .block-index-message ._row1 ._cloud2 {
    position: absolute;
    top: 5.77vw;
    left: 72vw;
    width: 34vw;
    top: 13.8vw;
    left: 55vw;
    width: 38vw;
  }
  .block-index-message ._row1 ._deco {
    position: absolute;
    top: 147.44vw;
    left: 6.92vw;
    width: 85vw;
    top: 154.4vw;
    left: 4.9vw;
    width: 95vw;
    height: 75.64vw;
    height: auto;
  }
  .block-index-message ._row1 ._copy {
    margin-top: 7.6923076923vw;
  }
  .block-index-message ._row1 ._lead {
    margin-top: 8.9743589744vw;
  }
  .block-index-message ._row2 {
    position: relative;
    margin-top: 10.2564102564vw;
    margin-top: 1.3vw;
  }
  .block-index-message ._row2 ._cols ._cols-image {
    margin-left: -35.8974358974vw;
    margin-right: 7.6923076923vw;
    margin-left: -19.9vw;
    margin-right: 1.7vw;
  }
  .block-index-message ._row2 ._cols ._cols-texts {
    margin-top: -5.1282051282vw;
    padding: 0 0 0 6.9230769231vw;
  }
  .block-index-message ._row3 {
    position: relative;
    margin-top: 19.2307692308vw;
  }
  .block-index-message ._row3 ._cols ._cols-image {
    margin-right: -35.8974358974vw;
    margin-left: 7.6923076923vw;
  }
  .block-index-message ._row3 ._cols ._cols-texts {
    position: relative;
    margin-top: -3.8461538462vw;
    padding: 0 0 0 6.9230769231vw;
    z-index: 10;
  }
  .block-index-message ._row3 ._cloud {
    position: absolute;
    top: -14.1025641026vw;
    right: -7.6923076923vw;
    width: 35.8974358974vw;
  }
  .mod-index-h2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-h2 ._en {
    position: relative;
    font-size: 11.5384615385vw;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
    color: snow;
    padding: 1.7948717949vw 2.3076923077vw;
  }
  .mod-index-h2 ._ja {
    position: relative;
    font-size: 3.0769230769vw;
    font-weight: 700;
    line-height: 1.87;
    letter-spacing: 0.05em;
    color: #00a0e6;
    color: #fff;
    padding: 1.0256410256vw 2.0512820513vw;
  }
  .mod-index-h2.is-wh ._en {
    color: #fff;
  }
  .mod-index-h2.is-wh ._ja {
    color: #fff;
  }
  .mod-index-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-copy ._t1 {
    position: relative;
    font-size: 6.6666666667vw;
    font-weight: 900;
    line-height: 1.52;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-copy ._t2 {
    position: relative;
    margin-top: 3.0769230769vw;
    font-size: 4.358974359vw;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0.25em;
    color: #fff;
  }
  .mod-index-copy ._t2 p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-lead p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-index-lead p span {
    position: relative;
    display: inline-block;
    font-size: 3.8461538462vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.2em;
    color: #00a0e6;
    color: #f8f4e6;
    padding: 2.3076923077vw 1.5384615385vw 2.3076923077vw 3.0769230769vw;
  }
  .mod-index-lead.is-wh p span {
    color: #fff;
  }
  .block-index-about {
    position: relative;
    background: #cee0ee;
    padding: 20.5128205128vw 6.9230769231vw 5.1282051282vw 6.9230769231vw;
  }
  .block-index-about img {
    width: 100%;
  }
  .block-index-about ._row-header ._lead {
    margin-top: 10.2564102564vw;
  }
  .block-index-about ._row-body {
    margin-top: 17.9487179487vw;
  }
  .mod-index-about-items {
    display: flex;
    gap: 13.3333333333vw;
    flex-direction: column;
  }
  .mod-index-about-item {
    position: relative;
    display: block;
    margin: 0 auto;
    width: 57.1794871795vw;
    cursor: pointer;
  }
  .mod-index-about-item ._item-image {
    display: block;
    position: relative;
    transition-duration: 0.2s;
    overflow: hidden;
  }
  .mod-index-about-item ._item-image img {
    width: 100%;
  }
  .mod-index-about-item ._item-image:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background: url(../img/index/shatter.svg) left top no-repeat;
    background-size: contain;
  }
  .mod-index-about-item ._item-image ._door1 {
    transform: translate(-13%, 0);
  }
  .mod-index-about-item ._item-image ._door2 {
    transform: translate(13%, 0);
  }
  .mod-index-about-item ._item-texts {
    margin-top: 3.5897435897vw;
  }
  .mod-index-about-item ._item-texts ._name {
    font-size: 5.1282051282vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.05em;
    color: #0000cd;
  }
  .mod-index-about-item ._item-texts ._btns {
    margin-top: 3.8461538462vw;
    text-align: center;
  }
  .mod-index-about-item ._deco1 {
    position: absolute;
    top: 32.0512820513vw;
    left: -12.8205128205vw;
    width: 17.1794871795vw;
    z-index: 10;
  }
  .mod-index-about-item ._deco2 {
    position: absolute;
    top: 27.6923076923vw;
    left: -11.0256410256vw;
    width: 71.7948717949vw;
    z-index: 10;
  }
  .mod-index-about-item ._deco3 {
    position: absolute;
    top: 30.7692307692vw;
    left: -3.8461538462vw;
    width: 65.3846153846vw;
    z-index: 10;
  }
  .block-index-works {
    position: relative;
    background: #cee0ee;
    padding: 15.3846153846vw 0 19.2307692308vw 0;
  }
  .block-index-works img {
    width: 100%;
  }
  .block-index-works ._row-header {
    position: relative;
    padding: 0 6.9230769231vw;
  }
  .block-index-works ._row-header ._lead {
    margin-top: 10.2564102564vw;
  }
  .block-index-works ._row-body {
    margin-top: 10.2564102564vw;
  }
  .block-index-works ._deco1 {
    width: 61.5384615385vw;
    margin: 0 0 0 auto;
    transform: translate(3vw, 0);
  }
  .mod-index-works-items img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-index-works-item {
    position: relative;
    display: block;
  }
  .mod-index-works-item ._item-en {
    font-size: 12.8205128205vw;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #00a0e6;
  }
  .mod-index-works-item ._item-texts {
    display: flex;
    flex-direction: column;
    gap: 0.5128205128vw;
  }
  .mod-index-works-item ._item-texts ._name {
    font-size: 4.1025641026vw;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-works-item.is-1 ._item-texts {
    position: absolute;
    bottom: 5.1282051282vw;
    left: 23.0769230769vw;
  }
  .mod-index-works-item.is-1 ._item-image {
    width: 104vw;
    margin-left: -10vw;
  }
  .mod-index-works-item.is-1 ._item-en {
    position: absolute;
    transform-origin: left top;
    top: -20.5128205128vw;
    left: 17.9487179487vw;
    transform: rotate(90deg);
  }
  .mod-index-works-item.is-2 {
    margin-top: 30.7692307692vw;
  }
  .mod-index-works-item.is-2 ._item-texts {
    position: absolute;
    bottom: 5.1282051282vw;
    left: 38.4615384615vw;
  }
  .mod-index-works-item.is-2 ._item-image {
    width: 104vw;
    margin-left: 7vw;
  }
  .mod-index-works-item.is-2 ._item-en {
    position: absolute;
    transform-origin: left top;
    top: -20.5128205128vw;
    left: 17.9487179487vw;
    text-align: right;
  }
  .block-index-talk {
    padding: 20.5128205128vw 0 10.2564102564vw 0;
    position: relative;
  }
  .block-index-talk ._inner {
    position: relative;
    width: 100vw;
    height: 244.23vw;
    height: 50vh;
  }
  .block-index-talk ._inner ._row-head {
    position: absolute;
    top: 0;
    left: 6.9230769231vw;
    z-index: 10;
  }
  .block-index-talk ._inner ._row-head ._lead {
    margin-top: 10.2564102564vw;
  }
  .block-index-talk ._inner ._deco1 {
    position: absolute;
    top: 94vw;
    left: 81.92vw;
    width: 11.03vw;
    height: 27.69vw;
  }
  .block-index-talk ._inner ._deco2 {
    position: absolute;
    top: 130vw;
    left: 57.31vw;
    width: 49.23vw;
    height: 26.79vw;
  }
  .block-index-talk ._inner ._deco3 {
    position: absolute;
    top: 184vw;
    left: -23.33vw;
    width: 95.38vw;
    height: 56.03vw;
  }
  .block-index-talk ._inner ._item1 {
    position: absolute;
    top: 87vw;
    top: 47vw;
    left: -11vw;
    width: 96.92vw;
    height: 61.15vw;
  }
  .block-index-talk ._inner ._item2 {
    position: absolute;
    top: 173vw;
    left: 7.18vw;
    width: 92.82vw;
    height: 61.92vw;
  }
  .mod-index-talk-item {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .mod-index-talk-item ._item-image {
    overflow: hidden;
  }
  .mod-index-talk-item ._item-en {
    font-size: 12.8205128205vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: #32cd32;
  }
  .mod-index-talk-item ._item-texts {
    display: flex;
    flex-direction: column;
    gap: 0.5128205128vw;
  }
  .mod-index-talk-item ._item-texts ._name {
    font-size: 4.358974359vw;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod-index-talk-item.is-1 ._item-texts {
    position: absolute;
    bottom: 5.1282051282vw;
    left: 20.5128205128vw;
  }
  .mod-index-talk-item.is-1 ._item-image {
    transition-duration: 0.2s;
  }
  .mod-index-talk-item.is-1 ._item-en {
    position: absolute;
    transform-origin: right top;
    top: 25.641025641vw;
    right: -15.3846153846vw;
    transform: rotate(90deg);
  }
  .mod-index-talk-item.is-2 ._item-texts {
    position: absolute;
    bottom: 5.1282051282vw;
    left: 5.1282051282vw;
  }
  .mod-index-talk-item.is-2 ._item-en {
    position: absolute;
    top: -7.6923076923vw;
    left: 1.2820512821vw;
  }
  .block-index-people {
    padding: 6.4102564103vw 0 24.358974359vw 0;
    position: relative;
  }
  .block-index-people img {
    width: 100%;
  }
  .block-index-people ._row-head {
    position: relative;
    padding: 0 6.9230769231vw;
  }
  .block-index-people ._row-head ._lead {
    margin-top: 10.2564102564vw;
  }
  .block-index-people ._row-head ._deco1 {
    margin: 0 auto;
    margin-top: 5.1282051282vw;
    width: 87vw;
  }
  .block-index-people ._row-body {
    margin-top: 12.8205128205vw;
  }
  .mod-index-people-item {
    display: block;
    width: 66.6666666667vw;
    padding: 0 0 19.2307692308vw 0;
    margin: 0 auto;
    position: relative;
  }
  .mod-index-people-item ._item-image {
    flex: 1;
    mask-position: center center;
    -webkit-mask-position: center center;
    mask-image: url(../../images/index/people/mask.png);
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-size: cover;
    -webkit-mask-size: cover;
  }
  .mod-index-people-item ._item-image img {
    width: 100%;
  }
  .mod-index-people-item ._item-texts {
    color: #000;
    position: absolute;
    left: 0;
    bottom: 0;
    border-top: 0.7692307692vw solid #00a0e6;
    padding-top: 1.2820512821vw;
  }
  .mod-index-people-item ._item-texts ._job {
    font-size: 3.3333333333vw;
    line-height: 2.75;
    letter-spacing: 0.1em;
  }
  .mod-index-people-item ._item-texts ._name {
    font-size: 4.8717948718vw;
    font-weight: 200;
    line-height: 1.57;
    letter-spacing: 0.2em;
  }
  .mod-index-people-item ._item-texts ._spec {
    margin-top: 0.7692307692vw;
    font-size: 3.3333333333vw;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-interivew-mv {
    height: 148vw;
  }
  .block-interivew-mv ._image {
    position: relative;
  }
  .block-interivew-mv ._image img {
    object-fit: cover;
  }
  .block-interivew-mv ._image img {
    min-height: 71.7948717949vw;
  }
  .block-interivew-mv ._texts {
    position: absolute;
    top: 55.641025641vw;
    left: 6.9230769231vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .block-interivew-mv ._texts ._texts-inner {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .block-interivew-mv ._texts ._cate {
    font-size: 3.5897435897vw;
    line-height: 1.01;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #fff;
    background: #012e67;
    padding: 2.8205128205vw 3.3333333333vw;
  }
  .block-interivew-mv ._texts ._en {
    font-size: 11.5384615385vw;
    line-height: 1.01;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1.2820512821vw 2.5641025641vw;
  }
  .block-interivew-mv ._texts h1 {
    font-size: 3.0769230769vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 2.3076923077vw 3.3333333333vw;
  }
  .block-interivew-mv ._texts ._interview-copy {
    position: absolute;
    top: 60.2564102564vw;
    left: 0;
    right: -7.6923076923vw;
    font-size: 6.1538461538vw;
    line-height: 1.4;
    letter-spacing: 0.05em;
    font-weight: 700;
  }
  .block-interivew-mv ._interview-name {
    position: absolute;
    right: 2.5641025641vw;
    top: 84.6153846154vw;
    font-size: 10.2564102564vw;
    text-align: right;
    font-weight: 200;
    line-height: 1.05;
    letter-spacing: 0.075em;
    color: #000;
    font-style: italic;
    z-index: 10;
  }
  .block-interview-profile {
    position: relative;
    padding: 0 5.1282051282vw 60.2564102564vw 6.9230769231vw;
  }
  .block-interview-profile img {
    width: 100%;
  }
  .block-interview-profile ._image {
    width: 81.5384615385vw;
    position: absolute;
    bottom: 16.6666666667vw;
    left: 8.9743589744vw;
    z-index: 10;
  }
  .block-interview-profile ._texts {
    position: relative;
    background: #00a0e6;
    padding: 3.8461538462vw 5.1282051282vw 2.5641025641vw 5.1282051282vw;
    display: inline-block;
    width: 64.1025641026vw;
  }
  .block-interview-profile ._job {
    font-size: 3.3333333333vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._branch {
    font-size: 3.0769230769vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    font-size: 3.8461538462vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
    color: #fff;
  }
  .block-interview-profile ._spec {
    margin-top: 1.0256410256vw;
    font-size: 3.0769230769vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-profile ._name {
    margin-top: 2.5641025641vw;
    padding-top: 2.5641025641vw;
    border-top: 0.2564102564vw solid #fff;
  }
  .block-interview-list {
    display: flex;
    gap: 24.358974359vw;
    flex-direction: column;
    padding: 0 0 38.4615384615vw 0;
  }
  .block-interview-list ._deco1 {
    display: none;
    position: absolute;
    top: -23.0769230769vw;
    left: -57.6923076923vw;
    width: 43.8461538462vw;
  }
  .block-interview-list ._deco2 {
    position: absolute;
    bottom: -34.6153846154vw;
    right: 5.1282051282vw;
    width: 53.8461538462vw;
    z-index: 1;
  }
  .block-interview-list ._deco3 {
    position: absolute;
    bottom: -20.5128205128vw;
    right: 7.6923076923vw;
    width: 33.3333333333vw;
    z-index: 10;
  }
  .block-interview-s1 {
    padding: 0 0 20.5128205128vw 0;
    position: relative;
  }
  .block-interview-s1.is-B {
    margin-top: 16.6666666667vw;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 2.5641025641vw;
    left: 0;
    background: url(../../images/interview/bg2.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top right;
    background-color: #00a0e6;
    height: 51.2820512821vw;
    z-index: -1;
  }
  .block-interview-s1:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -3px;
    right: 0;
    left: 0;
    height: 6px;
    background-color: #fff;
  }
  .block-interview-s1 img {
    width: 100%;
  }
  .block-interview-s1 ._cols {
    background-color: #cff0ff;
    width: 85.8974358974vw;
  }
  .block-interview-s1 ._cols ._col-texts {
    margin-top: -10.2564102564vw;
  }
  .block-interview-s1 ._box {
    padding: 3.8461538462vw 7.6923076923vw 8.9743589744vw 6.9230769231vw;
  }
  .block-interview-s2 {
    padding: 0 0 20.5128205128vw 0;
    position: relative;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 2.5641025641vw;
    background: url(../../images/interview/bg1.png) left top no-repeat;
    background-size: auto 100%;
    background-position: top left;
    background-color: #00a0e6;
    height: 51.2820512821vw;
    z-index: -1;
  }
  .block-interview-s2:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -3px;
    right: 0;
    left: 0;
    height: 6px;
    background-color: #fff;
  }
  .block-interview-s2 img {
    width: 100%;
  }
  .block-interview-s2 ._cols {
    background-color: #cff0ff;
    width: 85.8974358974vw;
    margin-left: auto;
  }
  .block-interview-s2 ._cols ._col-texts {
    margin-top: -10.2564102564vw;
  }
  .block-interview-s2 ._box {
    padding: 3.8461538462vw 7.6923076923vw 8.9743589744vw 6.9230769231vw;
  }
  .mod-interview-h2 {
    color: #fff;
    display: flex;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-no {
    background-color: #002e67;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.075em;
    width: 6.4102564103vw;
    text-align: center;
  }
  .mod-interview-h2 ._h2-ti {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-interview-h2 ._h2-ti span {
    display: block;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.2em;
    padding: 0 2.5641025641vw;
    background-color: #00a0e6;
  }
  .block-interview-schedule {
    padding: 19.2307692308vw 14.1025641026vw 21.7948717949vw 14.1025641026vw;
    position: relative;
    background-color: #00a0e6;
    color: #fff;
  }
  .block-interview-schedule img {
    width: 100%;
  }
  .block-interview-schedule .block-inner {
    position: relative;
  }
  .block-interview-schedule ._row-body {
    margin-top: 8.9743589744vw;
  }
  .block-interview-schedule ._deco1 {
    margin-top: 2.5641025641vw;
    width: 51.2820512821vw;
  }
  .block-interview-schedule ._deco2 {
    margin-top: 10.2564102564vw;
    width: 85.8974358974vw;
    margin-left: auto;
    margin-right: -14.1025641026vw;
  }
  .block-interview-schedule ._note {
    margin-top: 10.2564102564vw;
    font-size: 3.5897435897vw;
    line-height: 1.71;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
  }
  .block-interview-schedule ._note br {
    display: none;
  }
  .mod-interview-schedule {
    position: relative;
    display: flex;
    gap: 7.9487179487vw;
    flex-direction: column;
  }
  .mod-interview-schedule:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5.1282051282vw;
    width: 0.2564102564vw;
    background: #fff;
  }
  .mod-interview-schedule dl {
    margin: 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    background-color: #00a0e6;
    font-size: 3.3333333333vw;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-interview-schedule dl dt {
    width: 17.9487179487vw;
    margin: 0;
  }
  .mod-interview-schedule dl dd {
    margin: 0;
    padding: 0;
    flex: 1;
  }
  .block-interview-message {
    padding: 23.0769230769vw 0 12.8205128205vw 0;
    position: relative;
  }
  .block-interview-message .block-inner {
    position: relative;
  }
  .block-interview-message img {
    width: 100%;
  }
  .block-interview-message ._deco1 {
    position: absolute;
    top: -2.5641025641vw;
    left: 15.3846153846vw;
    width: 33.3333333333vw;
  }
  .block-interview-message ._deco2 {
    width: 83.3333333333vw;
    margin: 0 auto;
    margin-top: 5.3846153846vw;
  }
  .block-interview-message ._box {
    z-index: 10;
    position: relative;
    background: url(../../images/interview/deco7_sp.png) left top no-repeat;
    background-size: contain;
    width: 157.6923076923vw;
    height: 169.2307692308vw;
    margin-left: -17.9487179487vw;
    color: #fff;
  }
  .block-interview-message ._box ._box-in {
    position: relative;
    padding: 28.2051282051vw 0 0 0;
    margin-left: 32.0512820513vw;
    width: 74.358974359vw;
  }
  .block-interview-message ._box ._copy {
    margin-top: 5.1282051282vw;
    font-size: 4.358974359vw;
    font-weight: 700;
    line-height: 1.58;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .block-interview-message ._box ._doc {
    margin-top: 2.5641025641vw;
  }
  .block-interview-off {
    padding: 2.5641025641vw 6.9230769231vw 12.8205128205vw 6.9230769231vw;
    position: relative;
  }
  .block-interview-off img {
    width: 100%;
  }
  .block-interview-off ._box {
    position: relative;
    border: 1.2820512821vw solid #cff0ff;
    border-radius: 2.5641025641vw;
    padding: 0 6.4102564103vw 11.5384615385vw 6.4102564103vw;
  }
  .block-interview-off ._image {
    width: 58.9743589744vw;
    margin: 0 auto;
  }
  .block-interview-off ._texts {
    margin-top: 8.9743589744vw;
  }
  .block-interview-off ._doc {
    margin-top: 1.2820512821vw;
  }
  .block-interview-off ._deco1 {
    display: none;
  }
  .block-interview-other {
    position: relative;
    padding: 8.4615384615vw 0 24.358974359vw 0;
  }
  .block-interview-other img {
    width: 100%;
  }
  .block-interview-other ._row-body {
    margin-top: 6.4102564103vw;
  }
  .mod-interview-other-items {
    width: 57.6923076923vw;
    margin: 0 auto;
  }
  .mod-interview-other-items ._item {
    display: inline-block;
  }
  .mod-interview-other-item {
    display: block;
    width: 57.6923076923vw;
    margin: 0 auto;
    color: #000;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item ._item-image {
    border-radius: 50%;
    overflow: hidden;
  }
  .mod-interview-other-item ._item-image img {
    width: 100%;
    transition-duration: 0.2s;
  }
  .mod-interview-other-item:hover img {
    transform: scale(1.1);
  }
  .mod-interview-other-item ._item-texts {
    margin-top: 5.1282051282vw;
  }
  .mod-interview-other-item ._job {
    font-size: 3.3333333333vw;
    text-align: center;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .mod-interview-other-item ._name {
    margin-top: 2.5641025641vw;
    font-size: 4.8717948718vw;
    text-align: center;
    font-weight: 200;
    line-height: 1.4;
    letter-spacing: 0.2em;
  }
  .mod-interview-other-item ._spec {
    margin-top: 0.7692307692vw;
    font-size: 3.3333333333vw;
    text-align: center;
    line-height: 1.87;
    letter-spacing: 0.1em;
  }
  .block-job-type {
    padding: 16.6666666667vw 0 20.5128205128vw 0;
    position: relative;
  }
  .block-job-type ._row-body {
    margin-top: 14.1025641026vw;
  }
  .mod-job-title {
    text-align: center;
  }
  .mod-job-title ._en {
    font-size: 11.5384615385vw;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #002e67;
    line-height: 1;
  }
  .mod-job-title h2 {
    font-size: 3.0769230769vw;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #002e67;
  }
  .mod-job-title ._doc {
    margin-top: 2.5641025641vw;
    font-size: 3.3333333333vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-scroll-sp-in {
    padding: 0 5.1282051282vw;
    width: 210vw;
  }
  .mod-scroll-sp-in2 {
    width: 170vw;
  }
  .mod-job-image {
    position: relative;
    padding-top: 8.2051282051vw;
  }
  .mod-job-image h3,
  .mod-job-image h4 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
  }
  .mod-job-image h3 span,
  .mod-job-image h4 span {
    display: inline-block;
    background-color: #002e67;
    font-size: 4.358974359vw;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 0 2.5641025641vw;
  }
  .block-job-type2 {
    position: relative;
    padding: 19.2307692308vw 5.1282051282vw 17.9487179487vw 5.1282051282vw;
    background: #cee0ee;
  }
  .block-job-type2 .block-inner {
    position: relative;
  }
  .block-job-type2 ._deco1 {
    display: none;
  }
  .block-job-type2 ._deco2 {
    display: none;
  }
  .mod-job-type2-items {
    display: flex;
    flex-direction: column;
    gap: 5.7692307692vw;
  }
  .mod-job-type2-items img {
    width: 100%;
  }
  .mod-job-type2-items > li .item {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column-reverse;
    color: #000;
    background: #fff;
    padding: 7.6923076923vw 7.6923076923vw 10.2564102564vw 7.6923076923vw;
  }
  .mod-job-type2-items > li .item ._item-image {
    width: 42.3076923077vw;
    margin: 0 auto;
  }
  .mod-job-type2-items > li .item ._item-texts {
    flex: 1;
  }
  .mod-job-type2-items > li .item ._title {
    font-size: 5.8974358974vw;
    line-height: 1.74;
    letter-spacing: 0.2em;
    font-weight: 700;
    color: #000;
    border-bottom: 0.5128205128vw solid #00a0e6;
    padding: 0 0 3.2051282051vw 0;
  }
  .mod-job-type2-items > li .item ._doc {
    margin-top: 4.4871794872vw;
    font-size: 3.3333333333vw;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-job-train {
    padding: 17.9487179487vw 6.4102564103vw 12.8205128205vw 6.4102564103vw;
    position: relative;
  }
  .block-job-train .block-inner {
    position: relative;
  }
  .block-job-train ._row-body {
    margin-top: 6.4102564103vw;
  }
  .block-job-train ._deco1 {
    display: none;
  }
  .block-job-train2 {
    position: relative;
    padding: 19.2307692308vw 6.4102564103vw 17.9487179487vw 6.4102564103vw;
    background: #cee0ee;
  }
  .block-job-train2 .block-inner {
    position: relative;
  }
  .block-job-train2 ._deco1 {
    display: none;
  }
  .block-job-train2 ._deco2 {
    display: none;
  }
  .block-job-train2 ._deco3 {
    display: none;
  }
  .mod-job-train2-items {
    display: flex;
    gap: 10.2564102564vw;
    flex-direction: column;
  }
  .mod-job-train2-item {
    background-color: #fff;
    padding: 10.2564102564vw 6.4102564103vw 12.8205128205vw 6.4102564103vw;
  }
  .mod-job-train2-item h3 {
    font-size: 5.8974358974vw;
    font-weight: 700;
    line-height: 1.27;
    letter-spacing: 0.2em;
  }
  .mod-job-train2-item ._doc {
    margin-top: 3.5897435897vw;
    font-size: 3.5897435897vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-job-train2-item ._1 {
    margin: 0 auto;
    margin-top: 3.8461538462vw;
  }
  .mod-job-train2-item ._2 {
    margin: 0 auto;
    margin-top: 3.8461538462vw;
  }
  .mod-job-train2-item ._3 {
    margin: 0 auto;
    margin-top: 3.8461538462vw;
  }
  .block-new-graduate-info {
    padding: 16.6666666667vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
  }
  .block-new-graduate-info ._row-body {
    margin-top: 5.1282051282vw;
  }
  .mod-new-graduate-table {
    width: 100%;
    border-bottom: 1px solid #00a0e6;
  }
  .mod-new-graduate-table th {
    display: block;
    border-top: 1px solid #00a0e6;
    padding: 4.4871794872vw 0 0 0;
    font-size: 3.5897435897vw;
    font-weight: 700;
    line-height: 1.66;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-new-graduate-table td {
    display: block;
    padding: 0.641025641vw 0 4.4871794872vw 0;
    font-size: 3.3333333333vw;
    line-height: 1.87;
    letter-spacing: 0.1em;
    color: #000;
  }
  .mod-new-graduate-table a {
    color: #000;
  }
  .block-new-graduate-qa {
    overflow: hidden;
    padding: 15.3846153846vw 0 19.2307692308vw 0;
    position: relative;
    background-color: #00a0e6;
  }
  .block-new-graduate-qa ._row-body {
    position: relative;
    margin-top: 17.9487179487vw;
  }
  .mod-new-graduate-title.is-wh ._en {
    color: #fff;
  }
  .mod-new-graduate-title.is-wh h2 {
    color: #fff;
  }
  .mod-new-graduate-title.is-left ._en {
    text-align: left;
  }
  .mod-new-graduate-title.is-left h2 {
    text-align: left;
  }
  .mod-new-graduate-title ._en {
    font-size: 11.5384615385vw;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .mod-new-graduate-title ._en small {
    font-size: 7.6923076923vw;
  }
  .mod-new-graduate-title h2 {
    font-size: 3.3333333333vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-items {
    margin: 0 6.9230769231vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10.7692307692vw 5%;
    position: relative;
  }
  .mod-new-graduate-qa-items > li {
    position: relative;
    width: 47.5%;
  }
  .mod-new-graduate-qa-item {
    display: block;
    height: 100%;
    gap: 3.8461538462vw;
    position: relative;
    background-color: #002f63;
    border-radius: 3.8461538462vw;
    padding: 8.3333333333vw 2.5641025641vw 17.9487179487vw 2.5641025641vw;
  }
  .mod-new-graduate-qa-item.is-wh {
    background-color: #cee0ee;
  }
  .mod-new-graduate-qa-item.is-wh p {
    color: #002f63;
  }
  .mod-new-graduate-qa-item:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -45%);
    background: url(../../images/new-graduate/qa/icon.png) left top no-repeat;
    background-size: contain;
    width: 6.1538461538vw;
    height: 10.8974358974vw;
  }
  .mod-new-graduate-qa-item ._btns {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5.1282051282vw;
    text-align: center;
  }
  .mod-new-graduate-qa-item p {
    font-size: 3.3333333333vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.49;
    letter-spacing: 0.1em;
    color: #fff;
  }
  .mod-new-graduate-qa-btn {
    display: inline-block;
    background-color: #fff;
    border: 0.5128205128vw solid #00a0e6;
    padding: 1.5384615385vw 1.2820512821vw 1.5384615385vw 0;
    border-radius: 3.8461538462vw;
    width: 32.0512820513vw;
    text-align: center;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-new-graduate-qa-btn span {
    display: inline-block;
    font-size: 3.3333333333vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover {
    background-color: #00a0e6;
  }
  .mod-new-graduate-qa-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-new-graduate-qa-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-new-graduate-qa-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 1.2820512821vw;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 4.1025641026vw;
    height: 4.1025641026vw;
  }
  .mod-new-graduate-qa-cl {
    position: absolute;
    inset: 0;
  }
  .mod-new-graduate-qa-cl img {
    width: 100%;
  }
  .mod-new-graduate-qa-cl ._deco1 {
    position: absolute;
    top: -170px;
    left: -200px;
    width: 300px;
    height: 120px;
  }
  .mod-new-graduate-qa-cl ._title {
    position: absolute;
    top: -180px;
    right: 0;
    width: 127px;
    height: 126px;
  }
  .mod-new-graduate-qa-cl ._deco7 {
    position: absolute;
    bottom: -150px;
    left: -210px;
    width: 375px;
    height: 150px;
  }
  .mod-new-graduate-qa-cl ._deco8 {
    position: absolute;
    bottom: -95px;
    right: -120px;
    width: 251px;
    height: 113px;
  }
  .block-new-graduate-flow {
    padding: 17.9487179487vw 6.9230769231vw 17.9487179487vw 6.9230769231vw;
    position: relative;
  }
  .block-new-graduate-flow ._inner {
    max-width: 128.2051282051vw;
    margin: 0 auto;
  }
  .block-new-graduate-flow ._row-body {
    margin-top: 8.9743589744vw;
  }
  .block-new-graduate-flow ._row-body ._note {
    margin-top: 1.2820512821vw;
    font-size: 3.0769230769vw;
    text-align: right;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-items {
    position: relative;
  }
  .mod-new-graduate-flow-items ul {
    display: flex;
    flex-direction: column;
    background-image: linear-gradient(to right, #00a0e6 0.5128205128vw, transparent 0.5128205128vw);
    background-size: 2.5641025641vw 0.5128205128vw;
    background-repeat: repeat-x;
    position: relative;
  }
  .mod-new-graduate-flow-items ul > li {
    background-image: linear-gradient(to right, #00a0e6 0.5128205128vw, transparent 0.5128205128vw);
    background-size: 2.5641025641vw 0.5128205128vw;
    background-repeat: repeat-x;
  }
  .mod-new-graduate-flow-items ul:before {
    content: "";
    display: block;
    position: absolute;
    top: 6.4102564103vw;
    bottom: 8.9743589744vw;
    left: 10.8974358974vw;
    width: 1.0256410256vw;
    background: #002e67;
  }
  .mod-new-graduate-flow-item {
    display: flex;
    gap: 3.8461538462vw;
    position: relative;
    padding: 4.8717948718vw 4.8717948718vw 5.1282051282vw 4.8717948718vw;
  }
  .mod-new-graduate-flow-item ._item-no {
    width: 12.3076923077vw;
    height: 12.3076923077vw;
    background-color: #002e67;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-new-graduate-flow-item ._item-no > div {
    display: flex;
    gap: 0.641025641vw;
    flex-direction: column;
    text-align: center;
  }
  .mod-new-graduate-flow-item ._item-no > div span {
    display: block;
    color: #fff;
    font-weight: 800;
    line-height: 1;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(1) {
    font-size: 1.7948717949vw;
  }
  .mod-new-graduate-flow-item ._item-no > div span:nth-child(2) {
    font-size: 4.8717948718vw;
  }
  .mod-new-graduate-flow-item ._item-texts {
    flex: 1;
    padding: 1.9230769231vw 0 0 0;
  }
  .mod-new-graduate-flow-item ._item-texts ._t1 {
    font-size: 5.1282051282vw;
    line-height: 1.53;
    letter-spacing: 0.2em;
    font-weight: 900;
    color: #00a0e6;
  }
  .mod-new-graduate-flow-item ._item-texts ._t2 {
    margin-top: 1.2820512821vw;
    font-size: 3.3333333333vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-new-graduate-person {
    padding: 16.6666666667vw 0;
    position: relative;
    background-color: #cff0ff;
  }
  .block-new-graduate-person ._row-header h2 {
    text-align: center;
    font-size: 3.0769230769vw;
    line-height: 1.8;
  }
  .block-new-graduate-person ._row-body {
    margin-top: 7.6923076923vw;
  }
  .mod-new-graduate-person-items {
    display: flex;
    gap: 7.6923076923vw;
    flex-direction: column;
  }
  .mod-new-graduate-person-item {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-image {
    padding: 0 6.9230769231vw;
  }
  .mod-new-graduate-person-item ._item-image img {
    width: 100%;
  }
  .mod-new-graduate-person-item ._item-texts {
    position: relative;
    margin-top: -8.9743589744vw;
    width: 80vw;
  }
  .mod-new-graduate-person-item ._item-texts ._title {
    padding-left: 5.8974358974vw;
    background-color: #fff;
    font-size: 4.358974359vw;
    font-weight: 700;
    line-height: 1.53;
    letter-spacing: 0.2em;
    color: #00a0e6;
    height: 19.2307692308vw;
    display: flex;
    align-items: center;
  }
  .mod-new-graduate-person-item ._item-texts ._title span {
    position: relative;
  }
  .mod-new-graduate-person-item ._item-texts ._title:before {
    content: "";
    position: absolute;
    top: 2.8205128205vw;
    right: -6.7948717949vw;
    width: 13.5897435897vw;
    height: 13.5897435897vw;
    background-color: #fff;
    transform: rotate(-45deg);
  }
  .mod-new-graduate-person-item ._item-texts ._doc {
    margin-right: -17.9487179487vw;
    padding: 3.8461538462vw 3.8461538462vw 3.8461538462vw 6.4102564103vw;
    font-size: 3.5897435897vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .area-modal-new-graduate {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-new-graduate.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-new-graduate .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-new-graduate ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 47, 99, 0.9);
  }
  .area-modal-new-graduate ._modal-box {
    border-radius: 6.4102564103vw;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 72vw;
    height: 115.3846153846vw;
    padding: 11.5384615385vw 1.9230769231vw;
  }
  .area-modal-new-graduate ._modal-box-body {
    height: 100%;
    overflow: auto;
  }
  .area-modal-new-graduate ._page {
    display: none;
  }
  .block-modal-new-graduate ._title {
    font-size: 24px;
    text-align: center;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #002e67;
  }
  .block-modal-new-graduate ._place {
    font-size: 12px;
    line-height: 2.14;
    letter-spacing: 0.1em;
    color: #002e67;
    border-bottom: 1px solid #002e67;
    padding-bottom: 5px;
  }
  .block-modal-new-graduate ._name {
    margin-top: 5px;
    font-size: 13px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-modal-new-graduate ._cols {
    margin: 0 auto;
    margin-top: 20px;
    display: flex;
    gap: 15px;
    flex-direction: column;
    align-items: center;
  }
  .block-modal-new-graduate ._cols ._col-image {
    padding: 5px;
    background-color: #fff;
    width: 120px;
  }
  .block-modal-new-graduate ._cols ._col-image img {
    width: 100%;
  }
  .block-modal-new-graduate ._cols ._col-texts {
    width: 180px;
    padding: 7px 15px;
    background-color: #fff;
  }
  .block-modal-new-graduate ._doc {
    border-top: 1px solid #002e67;
    padding: 10px 0 0 0;
    margin-top: 20px;
    margin-left: 20px;
    margin-right: 20px;
    font-size: 13px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #002e67;
  }
  .block-common-mv-wrap {
    position: relative;
    height: 100svh;
    max-height: 200vw;
    z-index: -1;
  }
  .block-door-mv {
    position: fixed;
    background: #00a0e6;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .block-door-mv ._texts {
    position: absolute;
    top: 135px;
  }
  .block-door-mv ._event {
    position: absolute;
    top: 77vw;
    left: 20vw;
    width: 130vw;
    height: 56.069vw;
  }
  .block-door-mv ._event ._bar2 {
    position: absolute;
    top: 93.18%;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar1 {
    position: absolute;
    top: 0;
    left: 21.57%;
    width: 78.43%;
    height: 6.82%;
  }
  .block-door-mv ._event ._bar3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 21.57%;
    height: 100%;
  }
  .block-door-mv ._event ._gear {
    position: absolute;
    top: 3.41%;
    left: 1.47%;
    width: 40.2%;
    height: 93.18%;
  }
  .block-door-mv ._event ._bar1 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar1 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar1.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear2 8s linear 0s infinite;
  }
  .block-door-mv ._event ._bar2 {
    overflow: hidden;
  }
  .block-door-mv ._event ._bar2 > div {
    width: 200%;
    height: 100%;
    background: url(../../images/door-pedia/mv/bar2.png) left top;
    background-size: 25% auto;
    animation: keyf_door_mv_gear3 8s linear 0s infinite;
  }
  .block-door-mv ._event ._gear {
    animation: keyf_door_mv_gear 12s linear 0s infinite;
  }
  .block-door-mv ._door-t1 {
    position: absolute;
    left: 10px;
    top: 200px;
    font-size: 6.6666666667vw;
    line-height: 1.66;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  .block-door-mv ._door-t2 {
    position: absolute;
    left: 10px;
    bottom: 20px;
    font-size: 3.5897435897vw;
    line-height: 1.57;
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 700;
  }
  body.is-door-pedia-open .block-door-open {
    background-color: transparent;
  }
  body.is-door-pedia-open .block-door-open ._left {
    transform: translate(-51vw, 0);
  }
  body.is-door-pedia-open .block-door-open ._right {
    transform: translate(51vw, 0);
  }
  body.is-Dev .block-door-open {
    display: none;
  }
  .block-door-open {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    pointer-events: none;
    background-color: #529ed1;
  }
  .block-door-open ._left {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/sp/door1.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  .block-door-open ._right {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    background-image: url(../../images/door-pedia/mv/sp/door2.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    transition-duration: 1.2s;
  }
  @keyframes keyf_door_mv_gear {
    0% {
      rotate: 0deg;
    }
    33% {
      rotate: -120deg;
    }
    66% {
      rotate: -240deg;
    }
    100% {
      rotate: -360deg;
    }
  }
  @keyframes keyf_door_mv_gear2 {
    0% {
      transform: translate3d(0, 0, 0);
    }
    100% {
      transform: translate3d(-50vw, 0, 0);
    }
  }
  @keyframes keyf_door_mv_gear3 {
    0% {
      transform: translate3d(-50%, 0, 0);
    }
    100% {
      transform: translate3d(0, 0, 0);
    }
  }
  .block-door-wrap {
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-basic {
    padding: 15.3846153846vw 0 12.8205128205vw 0;
    position: relative;
  }
  .block-door-basic ._row-header {
    margin-left: -3.8461538462vw;
  }
  .block-door-basic ._row-body {
    margin-top: 10.2564102564vw;
    padding: 0 6.0256410256vw;
  }
  .block-door-basic ._row-body ._map-sp {
    background-color: #e3f4fc;
    box-shadow: 0 0 0.641025641vw rgba(0, 0, 0, 0.1);
    border-radius: 5.1282051282vw;
    padding: 5.1282051282vw;
    margin-bottom: 7.6923076923vw;
  }
  .mod-door-title {
    position: relative;
    display: inline-block;
    width: 82.0512820513vw;
  }
  .mod-door-title img {
    width: 100%;
  }
  .mod-door-title.is-right img {
    position: relative;
    transform: rotate(-180deg);
  }
  .mod-door-title.is-right ._text {
    left: 1.2820512821vw;
    right: 0;
  }
  .mod-door-title ._text {
    position: absolute;
    top: 0;
    left: 0;
    right: 1.2820512821vw;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod-door-title h2 {
    font-size: 6.4102564103vw;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.15em;
    color: #00a0e6;
  }
  .mod-door-basic {
    padding: 0 5.7692307692vw;
    display: flex;
    gap: 1.9230769231vw;
    flex-direction: column;
  }
  .mod-door-basic img {
    display: none;
  }
  .mod-door-basic-btn {
    display: block;
    background-color: #fff;
    border: 0.5128205128vw solid #00a0e6;
    padding: 2.8205128205vw 0 2.8205128205vw 4.1025641026vw;
    border-radius: 5.1282051282vw;
    cursor: pointer;
    transition-duration: 0.2s;
    position: relative;
  }
  .mod-door-basic-btn span {
    font-size: 3.3333333333vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #00a0e6;
  }
  .mod-door-basic-btn:hover {
    background-color: #00a0e6;
  }
  .mod-door-basic-btn:hover span {
    transition-duration: 0.2s;
    color: #fff;
  }
  .mod-door-basic-btn:hover:after {
    background-image: url(../images/icon/icon_on.png);
  }
  .mod-door-basic-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 1.6666666667vw;
    transform: translate(0, -50%);
    background: url(../images/icon/icon.png) left top no-repeat;
    background-size: contain;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
  .block-door-place {
    padding: 7.6923076923vw 0 7.6923076923vw 0;
    position: relative;
    background-color: #d6f1fc;
  }
  .block-door-place img {
    width: 100%;
  }
  .block-door-place ._row-header {
    margin-right: -10.2564102564vw;
    text-align: right;
  }
  .block-door-place ._row-body {
    margin-top: 3.8461538462vw;
  }
  .block-door-pedia-items {
    padding: 12.8205128205vw 0;
  }
  .block-door-pedia-items .block-inner {
    display: flex;
    gap: 16.6666666667vw;
    flex-direction: column;
  }
  .block-door-pedia-item1 {
    position: relative;
    width: 100vw;
    height: 239.74vw;
  }
  .block-door-pedia-item1 ._illust {
    position: absolute;
    top: 156.15vw;
    left: 7.18vw;
    width: 76.92vw;
    height: 83.59vw;
  }
  .block-door-pedia-item1 ._car {
    position: absolute;
    top: 225.38vw;
    left: 24.87vw;
    width: 13.33vw;
    height: 8.97vw;
  }
  .block-door-pedia-item1 ._cl {
    position: absolute;
    top: 152.56vw;
    left: 71.54vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item1 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item1 ._texts {
    position: absolute;
    top: 20.26vw;
    left: -25.64vw;
    width: 151.28vw;
    height: 148.21vw;
  }
  .block-door-pedia-item2 {
    position: relative;
    width: 100vw;
    height: 201.03vw;
  }
  .block-door-pedia-item2 ._cl {
    position: absolute;
    top: 143.08vw;
    left: 7.18vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item2 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item2 ._texts {
    position: absolute;
    top: 20.26vw;
    left: -25.64vw;
    width: 151.28vw;
    height: 137.18vw;
  }
  .block-door-pedia-item2 ._illust {
    position: absolute;
    top: 151.03vw;
    left: 26.41vw;
    width: 66.67vw;
    height: 50vw;
  }
  .block-door-pedia-item2 ._car {
    position: absolute;
    top: 159.49vw;
    left: 59.49vw;
    width: 6.15vw;
    height: 5.38vw;
  }
  .block-door-pedia-item3 {
    position: relative;
    width: 100vw;
    height: 262.05vw;
  }
  .block-door-pedia-item3 ._cl {
    position: absolute;
    top: 187.69vw;
    left: 64.1vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item3 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item3 ._texts {
    position: absolute;
    top: 35.13vw;
    left: -33.59vw;
    width: 167.44vw;
    height: 165.9vw;
  }
  .block-door-pedia-item3 ._illust {
    position: absolute;
    top: 202.31vw;
    left: 7.18vw;
    width: 78.21vw;
    height: 58.97vw;
  }
  .block-door-pedia-item3 ._car {
    position: absolute;
    top: 253.33vw;
    left: 14.87vw;
    width: 7.44vw;
    height: 6.41vw;
  }
  .block-door-pedia-item4 {
    position: relative;
    width: 100vw;
    height: 239.74vw;
  }
  .block-door-pedia-item4 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item4 ._texts {
    position: absolute;
    top: 20.26vw;
    left: -25.64vw;
    width: 151.28vw;
    height: 148.21vw;
  }
  .block-door-pedia-item4 ._illust {
    position: absolute;
    top: 167.95vw;
    left: 12.56vw;
    width: 80.77vw;
    height: 73.08vw;
  }
  .block-door-pedia-item4 ._car {
    position: absolute;
    top: 198.72vw;
    left: 81.28vw;
    width: 7.18vw;
    height: 6.41vw;
  }
  .block-door-pedia-item4 ._cl {
    position: absolute;
    top: 148.21vw;
    left: -6.15vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item5 {
    position: relative;
    width: 100vw;
    height: 239.74vw;
  }
  .block-door-pedia-item5 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item5 ._texts {
    position: absolute;
    top: 20.26vw;
    left: -25.64vw;
    width: 151.28vw;
    height: 148.21vw;
  }
  .block-door-pedia-item5 ._cl {
    position: absolute;
    top: 147.69vw;
    left: 66.92vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item5 ._illust {
    position: absolute;
    top: 172.31vw;
    left: -1.79vw;
    width: 96.15vw;
    height: 65.38vw;
  }
  .block-door-pedia-item5 ._car {
    position: absolute;
    top: 194.36vw;
    left: 0.51vw;
    width: 7.44vw;
    height: 6.41vw;
  }
  .block-door-pedia-item6 {
    position: relative;
    width: 100vw;
    height: 259.74vw;
  }
  .block-door-pedia-item6 ._title {
    position: absolute;
    top: 0;
    left: 7.18vw;
    width: 50.26vw;
    height: 43.33vw;
  }
  .block-door-pedia-item6 ._texts {
    position: absolute;
    top: 33vw;
    left: -34.1vw;
    width: 168.21vw;
    height: 164.1vw;
  }
  .block-door-pedia-item6 ._illust {
    position: absolute;
    top: 198.21vw;
    left: 14.1vw;
    width: 87.18vw;
    height: 52.56vw;
  }
  .block-door-pedia-item6 ._car {
    position: absolute;
    top: 221.03vw;
    left: 55.13vw;
    width: 4.36vw;
    height: 4.1vw;
  }
  .block-door-pedia-item6 ._cl {
    position: absolute;
    top: 164.1vw;
    left: 3.08vw;
    width: 35.9vw;
    height: 51.28vw;
  }
  .block-door-pedia-item1 ._car {
    animation: keyf_door_car1 5s linear 0s infinite;
  }
  .block-door-pedia-item2 ._car {
    animation: keyf_door_car2 5s linear 0s infinite;
  }
  .block-door-pedia-item3 ._car {
    animation: keyf_door_car3 5s linear 0s infinite;
  }
  .block-door-pedia-item4 ._car {
    animation: keyf_door_car4 7s linear 0s infinite;
  }
  .block-door-pedia-item5 ._car {
    animation: keyf_door_car5 5s linear 0s infinite;
  }
  .block-door-pedia-item6 ._car {
    animation: keyf_door_car6 5s linear 0s infinite;
  }
  .mod-door-pedia-item ._link {
    position: absolute;
    top: -15vw;
    left: 0;
    width: 5.1282051282vw;
    height: 5.1282051282vw;
  }
  .mod-door-pedia-item ._cl {
    z-index: 20;
  }
  .mod-door-pedia-item.block-door-pedia-item2 ._texts ._texts-in {
    padding-top: 35.8974358974vw;
  }
  .mod-door-pedia-item.block-door-pedia-item2 ._texts br {
    display: none;
  }
  .mod-door-pedia-item.block-door-pedia-item4 ._texts ._texts-in {
    padding-top: 38.4615384615vw;
  }
  .mod-door-pedia-item.block-door-pedia-item5 ._texts ._texts-in {
    padding-top: 38.4615384615vw;
  }
  .mod-door-pedia-item.block-door-pedia-item6 ._texts ._texts-in {
    padding-top: 44.8717948718vw;
  }
  .mod-door-pedia-item.block-door-pedia-item6 ._texts br {
    display: none;
  }
  .mod-door-pedia-item ._title {
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 92.3076923077vw;
  }
  .mod-door-pedia-item ._title ._en {
    background-color: #00a0e6;
    font-size: 11.5384615385vw;
    line-height: 1.25;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #fff;
    padding: 0 1.5384615385vw;
  }
  .mod-door-pedia-item ._title h3 {
    font-size: 3.3333333333vw;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 2.5641025641vw 2.5641025641vw;
  }
  .mod-door-pedia-item ._title ._leads {
    margin-top: 7.6923076923vw;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-door-pedia-item ._title ._leads span {
    font-size: 3.5897435897vw;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #00a0e6;
    background: #fff;
    padding: 1.2820512821vw 1.9230769231vw;
  }
  .mod-door-pedia-item ._texts {
    border-radius: 50%;
    background-color: #00a0e6;
    color: #fff;
  }
  .mod-door-pedia-item ._texts ._texts-in {
    width: 87.1794871795vw;
    margin: 0 auto;
    padding: 42.3076923077vw 0 0 0;
  }
  .mod-door-pedia-item ._texts ._texts-in.is-item3 {
    padding-bottom: 0;
  }
  .mod-door-pedia-item ._texts h4 {
    font-size: 5.3846153846vw;
    font-weight: 700;
    line-height: 1.37;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc {
    margin-top: 2.5641025641vw;
    font-size: 3.3333333333vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .mod-door-pedia-item ._texts ._doc b {
    font-weight: 800;
  }
  .mod-door-pedia-item ._texts ._note {
    margin-top: 1.2820512821vw;
    font-size: 3.0769230769vw;
    font-weight: 500;
    line-height: 1.42;
    letter-spacing: 0.1em;
    text-indent: -1em;
    margin-left: 1em;
  }
  .mod-door-pedia-item ._texts ._image {
    margin-top: 3.8461538462vw;
  }
  .block-door-pedia-navi {
    position: fixed;
    z-index: 20;
    left: 0;
    right: 0;
    bottom: 0;
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.4s;
    transform: translate(0, 100%);
  }
  .block-door-pedia-navi img {
    width: 100%;
  }
  body.js-pedia-active .block-door-pedia-navi {
    visibility: visible;
    opacity: 1;
    transform: translate(0, 0);
  }
  .mod-door-pedia-navi {
    display: flex;
    justify-content: space-between;
    background-color: #fff;
    border: 0.5128205128vw solid #00a0e6;
    border-bottom: none;
    border-radius: 6.4102564103vw 6.4102564103vw 0 0;
    overflow: hidden;
  }
  .mod-door-pedia-navi li {
    flex: 1;
  }
  .mod-door-pedia-navi li + li {
    position: relative;
  }
  .mod-door-pedia-navi li + li:after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: -1px;
    right: 0;
    width: 4px;
    background: url(../../images/door-pedia/navi/sp/bar.png) left top no-repeat;
    background-size: contain;
  }
  .mod-door-pedia-navi ._item {
    display: block;
    position: relative;
    padding: 2.1794871795vw 0 1.6666666667vw 0;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  .mod-door-pedia-navi ._item:hover {
    background-color: rgba(0, 160, 230, 0.5);
  }
  .mod-door-pedia-navi ._item ._item-image {
    width: 8.9743589744vw;
    margin: 0 auto;
  }
  .mod-door-pedia-navi ._item ._item-texts {
    font-size: 3.0769230769vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: 0.05em;
    color: #00a0e6;
    height: 7.6923076923vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-door-pedia {
    visibility: hidden;
    opacity: 0;
    transition-duration: 0.2s;
    transform: scale(0.9);
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .area-modal-door-pedia.js-show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
    z-index: 1000;
  }
  .area-modal-door-pedia .mod-modal-btn-close {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  .area-modal-door-pedia ._modal-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 160, 230, 0.9);
  }
  .area-modal-door-pedia ._modal-box {
    border-radius: 6.4102564103vw;
    position: absolute;
    background: #d6f1fc;
    background-image: url(../images/bg2.png);
    width: 70vw;
    height: 115.3846153846vw;
    padding: 10.2564102564vw 5.7692307692vw;
  }
  .area-modal-door-pedia ._page {
    display: none;
  }
  .block-modal-door-pedia ._title {
    font-size: 5.8974358974vw;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.2em;
    color: #00a0e6;
    padding-bottom: 5.1282051282vw;
    border-bottom: 0.2564102564vw solid #00a0e6;
  }
  .block-modal-door-pedia ._doc {
    margin-top: 2.5641025641vw;
    font-size: 3.3333333333vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  @keyframes keyf_door_car1 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(76.9230769231vw, -44.3846153846vw);
      opacity: 1;
    }
    80% {
      transform: translate(76.9230769231vw, -44.3846153846vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car2 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-33.3333333333vw, 19.2333333333vw);
      opacity: 1;
    }
    80% {
      transform: translate(-33.3333333333vw, 19.2333333333vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car3 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(64.1025641026vw, -36.9871794872vw);
      opacity: 1;
    }
    80% {
      transform: translate(64.1025641026vw, -36.9871794872vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car4 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(-60.2564102564vw, 34.7679487179vw);
      opacity: 1;
    }
    80% {
      transform: translate(-60.2564102564vw, 34.7679487179vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car5 {
    0% {
      transform: translate(0, 0);
      opacity: 0;
    }
    2% {
      transform: translate(0, 0);
      opacity: 1;
    }
    78% {
      transform: translate(61.5384615385vw, 35.5076923077vw);
      opacity: 1;
    }
    80% {
      transform: translate(61.5384615385vw, 35.5076923077vw);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes keyf_door_car6 {
    0% {
      transform: translate(0, 0);
    }
    40% {
      transform: translate(-12.8205128205vw, 7.3974358974vw);
      opacity: 1;
    }
    50% {
      transform: translate(-12.8205128205vw, 7.3974358974vw);
      opacity: 1;
    }
    90% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(0, 0);
    }
  }
  .block-profile-keyword-wrap {
    background-color: #d6f1fc;
  }
  .block-profile-keyword-lead {
    padding: 0.641025641vw 0 0 0;
    position: relative;
  }
  .block-profile-keyword-lead img {
    width: 100%;
  }
  .block-profile-keyword-lead ._layout {
    position: relative;
    height: 201.92vw;
  }
  .block-profile-keyword-lead ._layout ._deco1 {
    position: absolute;
    top: 130vw;
    left: 0;
    width: 100vw;
    height: 61.54vw;
  }
  .block-profile-keyword-lead ._layout ._door1 {
    position: absolute;
    top: 39.61vw;
    left: 24.24vw;
    width: 52vw;
    height: 37.99vw;
  }
  .block-profile-keyword-lead ._layout ._door2 {
    display: none;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    position: absolute;
    top: 3.3vw;
    left: 16.64vw;
    width: 65.64vw;
    height: 30.9vw;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    position: absolute;
    top: 85.51vw;
    left: 6.87vw;
    width: 86.2vw;
    height: 59.91vw;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    position: absolute;
    top: 140.92vw;
    left: 9.44vw;
    width: 81.05vw;
    height: 42.16vw;
  }
  .block-profile-keyword-lead ._layout ._t1 {
    font-size: 5.7692307692vw;
    text-align: center;
    line-height: 1.37;
    letter-spacing: 0.1em;
    color: #002e67;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t1 b {
    font-size: 7.4358974359vw;
    font-weight: 900;
  }
  .block-profile-keyword-lead ._layout ._t2 {
    font-size: 3.5897435897vw;
    text-align: center;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #000;
  }
  .block-profile-keyword-lead ._layout ._t3 {
    font-size: 4.8717948718vw;
    text-align: center;
    font-weight: 500;
    line-height: 1.84;
    letter-spacing: 0.1em;
    color: #00a0e6;
  }
  .block-profile-keyword-network {
    position: relative;
    padding: 0 6.9230769231vw;
  }
  .block-profile-keyword-network img {
    width: 100%;
  }
  .block-profile-keyword-network .block-inner {
    display: flex;
    gap: 19.2307692308vw;
    flex-direction: column;
  }
  .block-profile-keyword-network ._box {
    padding: 10.2564102564vw 0;
    background-color: #fff;
  }
  .block-profile-keyword-network ._box-inner {
    padding: 5.1282051282vw 7.0512820513vw 0 7.0512820513vw;
  }
  .block-profile-keyword-network ._texts {
    margin-top: 12.8205128205vw;
    margin-left: -5.1282051282vw;
    margin-right: -5.1282051282vw;
  }
  .block-profile-keyword-network ._texts ._t1 {
    font-size: 4.358974359vw;
    text-align: center;
    font-weight: 500;
    line-height: 1.76;
    letter-spacing: 0.2em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._texts ._t2 {
    margin-top: 4.4871794872vw;
    font-size: 8.9743589744vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.14;
    letter-spacing: 0.075em;
    color: #00a0e6;
  }
  .block-profile-keyword-network ._image {
    margin: 0 auto;
    margin-top: 10.2564102564vw;
    margin-left: -1.2820512821vw;
    width: 74.358974359vw;
    display: flex;
    gap: 10.2564102564vw;
    flex-direction: column;
  }
  .block-profile-keyword-network ._image2 {
    margin: 0 auto;
    margin-left: -1.2820512821vw;
    width: 74.358974359vw;
    margin-top: 2.5641025641vw;
  }
  .mod-profile-keyword-lead {
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead span {
    display: block;
    background-color: #00a0e6;
    font-size: 5.1282051282vw;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 2.5641025641vw 1.2820512821vw 2.5641025641vw 2.5641025641vw;
    color: #fff;
  }
  .mod-profile-keyword-lead2 {
    margin-top: 7.6923076923vw;
    display: flex;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-profile-keyword-lead2 span {
    display: block;
    background-color: #00a0e6;
    font-size: 3.3333333333vw;
    font-weight: 700;
    letter-spacing: 0.2em;
    padding: 3.3333333333vw 1.2820512821vw 1.6666666667vw 2.5641025641vw;
    color: #fff;
  }
  .block-profile-keyword-pionnier {
    padding: 17.9487179487vw 6.9230769231vw 7.6923076923vw 6.9230769231vw;
    position: relative;
  }
  .block-profile-keyword-pionnier img {
    width: 100%;
  }
  .block-profile-keyword-pionnier ._image {
    margin-left: -6.9230769231vw;
    margin-right: -6.9230769231vw;
  }
  .block-profile-keyword-pionnier ._list {
    margin-top: 3.8461538462vw;
  }
  .block-profile-keyword-env {
    padding: 17.9487179487vw 6.9230769231vw 7.6923076923vw 6.9230769231vw;
    position: relative;
  }
  .block-profile-keyword-env img {
    width: 100%;
  }
  .block-profile-keyword-env ._list {
    margin-top: 6.4102564103vw;
  }
  .mod-profile-keyword-list {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
  }
  .mod-profile-keyword-list li {
    position: relative;
  }
  .mod-profile-keyword-list li div {
    position: relative;
  }
  .mod-profile-keyword-list li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-profile-keyword-list2 {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
  }
  .mod-profile-keyword-list2 li {
    position: relative;
  }
  .mod-profile-keyword-list2 li div {
    position: relative;
  }
  .mod-profile-keyword-list2 li div:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #99e0fd;
  }
  .mod-project-story-head {
    font-size: 5.1282051282vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 700;
    padding-top: 0.641025641vw;
    padding-bottom: 5.1282051282vw;
    margin-bottom: 5.1282051282vw;
    border-bottom: 2px solid #00a0e6;
  }
  .mod-project-story-head.is-B {
    letter-spacing: 0.2em;
    padding-bottom: 4.6153846154vw;
    margin-bottom: 3.8461538462vw;
  }
  .block-project-story-intro {
    padding: 2.5641025641vw 6.9230769231vw 14.1025641026vw 6.9230769231vw;
  }
  .block-project-story-intro img {
    width: 100%;
  }
  .block-project-story-intro .block-inner {
    position: relative;
  }
  .block-project-story-intro .block-inner ._doc {
    font-size: 3.5897435897vw;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .block-project-story-profs {
    padding-bottom: 23.0769230769vw;
  }
  .block-project-story-profs img {
    width: 100%;
  }
  .block-project-story-profs ._bg {
    position: relative;
  }
  .block-project-story-profs ._bg h2 {
    font-size: 14.1025641026vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
    font-weight: 300;
    color: #00a0e6;
    z-index: 1;
    position: absolute;
    top: -6.4102564103vw;
    left: 6.0256410256vw;
  }
  .block-project-story-profs ._bg ._image {
    position: relative;
  }
  .block-project-story-profs .block-inner {
    position: relative;
    margin-top: -15.3846153846vw;
    padding: 6.4102564103vw 6.9230769231vw 6.4102564103vw 6.9230769231vw;
  }
  .mod-project-story-profs-items {
    display: flex;
    gap: 15px;
    flex-direction: column;
  }
  .mod-project-story-profs-items img {
    width: 100%;
  }
  .mod-project-story-profs-items li {
    background: #002e67;
  }
  .mod-project-story-profs-item {
    display: block;
    color: #000;
    background: #002e67;
    padding: 5.1282051282vw 6.4102564103vw 3.8461538462vw 6.4102564103vw;
    position: relative;
  }
  .mod-project-story-profs-item ._item-image {
    width: 24.358974359vw;
    position: absolute;
    left: 6.4102564103vw;
  }
  .mod-project-story-profs-item ._item-texts {
    position: relative;
    color: #fff;
    padding-top: 3.8461538462vw;
  }
  .mod-project-story-profs-item ._name {
    font-size: 3.5897435897vw;
    line-height: 1.2;
    letter-spacing: 0.2em;
    font-weight: 700;
    padding-left: 32.0512820513vw;
  }
  .mod-project-story-profs-item ._yar {
    margin-top: 0.8974358974vw;
    font-size: 3.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
    padding-left: 32.0512820513vw;
  }
  .mod-project-story-profs-item ._job {
    margin-top: 3.8461538462vw;
    position: relative;
    padding-left: 32.0512820513vw;
  }
  .mod-project-story-profs-item ._job span {
    display: inline-block;
    font-size: 3.0769230769vw;
    line-height: 1.2;
    letter-spacing: 0.1em;
    background: #00a0e6;
    padding: 0.2564102564vw 0.641025641vw;
  }
  .mod-project-story-profs-item ._doc {
    margin-top: 7.6923076923vw;
    font-size: 3.0769230769vw;
    line-height: 1.9;
    letter-spacing: 0.1em;
  }
  .block-project-story-bg {
    background-color: #cee0ee;
  }
  .block-project-story-storys {
    display: flex;
    gap: 23.7179487179vw;
    flex-direction: column;
    padding: 19.2307692308vw 6.9230769231vw 19.2307692308vw 6.9230769231vw;
  }
  .block-project-story-story {
    position: relative;
  }
  .block-project-story-story img {
    width: 100%;
  }
  .block-project-story-story .block-inner {
    position: relative;
  }
  .block-project-story-story ._deco1 {
    position: absolute;
    top: -12.8205128205vw;
    right: -13.3333333333vw;
    width: 31.0256410256vw;
    z-index: 10;
  }
  .block-project-story-story ._deco2 {
    display: none;
  }
  .block-project-story-story ._deco3 {
    position: absolute;
    top: -14.1025641026vw;
    left: -13.4615384615vw;
    width: 31.0256410256vw;
    z-index: 10;
  }
  .block-project-story-story ._deco4 {
    position: absolute;
    top: -16.2820512821vw;
    right: -14.1025641026vw;
    width: 31.0256410256vw;
    z-index: 10;
  }
  .block-project-story-story ._deco5 {
    display: none;
  }
  .block-project-story-story ._deco6 {
    position: absolute;
    top: -14.1025641026vw;
    left: -12.8205128205vw;
    width: 31.0256410256vw;
    z-index: 10;
  }
  .mod-project-story-box {
    position: relative;
    background: #fff;
    padding: 8.9743589744vw 6.4102564103vw 9.6153846154vw 6.9230769231vw;
  }
  .mod-project-story-box ._title {
    position: absolute;
    top: -8.4615384615vw;
    left: 50%;
  }
  .mod-project-story-box ._title p {
    font-size: 3.5897435897vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
    font-weight: 700;
    background: #002e67;
    color: #fff;
    padding: 2.1794871795vw 3.2051282051vw;
    transform: translate(-50%, 0);
  }
  .mod-project-story-box ._prof {
    width: 42.3076923077vw;
    margin: 0 auto;
  }
  .mod-project-story-box ._prof.is-left {
    left: -6.4102564103vw;
    right: auto;
  }
  .mod-project-story-box ._body {
    margin-top: 30px;
    display: flex;
    gap: 3.2051282051vw;
    flex-direction: column;
  }
  .mod-project-story-box ._row-main.is-left {
    margin-left: auto;
  }
  .mod-project-story-box ._row-normal {
    border: 1px solid #000;
  }
  .mod-project-story-box ._row-left {
    display: flex;
    gap: 20px;
    flex-direction: column;
  }
  .mod-project-story-box ._row-right {
    display: flex;
    gap: 20px;
    flex-direction: column;
  }
  .block-project-story-last img {
    width: 100%;
  }
  .block-questionnaire-intro {
    padding: 0 6.9230769231vw 12.8205128205vw 6.9230769231vw;
  }
  .block-questionnaire-intro ._doc {
    font-size: 3.5897435897vw;
    line-height: 2;
    letter-spacing: 0.2em;
    font-weight: 500;
    color: #000;
  }
  .block-questionnaire-items {
    padding: 0 6.9230769231vw 16.6666666667vw 6.9230769231vw;
    display: flex;
    gap: 19.2307692308vw;
    flex-direction: column;
  }
  .block-questionnaire-item {
    position: relative;
  }
  .block-questionnaire-item img {
    width: 100%;
  }
  .block-questionnaire-item ._row-body {
    position: relative;
    margin-top: 10.2564102564vw;
  }
  .block-questionnaire-item ._row-body.is-image {
    width: 92.3076923077vw;
    margin-left: -2.5641025641vw;
  }
  .block-questionnaire-item ._box {
    margin-top: -10.2564102564vw;
    padding: 3.8461538462vw;
    background-color: #cff0ff;
  }
  .block-questionnaire-item ._box-in {
    padding: 5.7692307692vw 3.8461538462vw 12.8205128205vw 2.5641025641vw;
    background-image: url(../../images/questionnaire/bg.png);
  }
  .block-questionnaire-item ._box-in.is-pb {
    padding-bottom: 25.641025641vw;
  }
  .block-questionnaire-item ._deco1 {
    position: absolute;
    bottom: 1.2820512821vw;
    right: -4.4871794872vw;
    width: 17.9487179487vw;
  }
  .block-questionnaire-item ._deco2 {
    position: absolute;
    bottom: 1.2820512821vw;
    right: -1.2820512821vw;
    width: 19.2307692308vw;
  }
  .block-questionnaire-item ._deco3 {
    margin-top: 2.5641025641vw;
  }
  .block-questionnaire-item ._deco4 {
    position: absolute;
    bottom: 2.5641025641vw;
    left: 8.9743589744vw;
    width: 70.7692307692vw;
  }
  .block-questionnaire-item ._deco5 {
    position: absolute;
    bottom: 1.2820512821vw;
    right: -2.5641025641vw;
    width: 15.3846153846vw;
  }
  .mod-questionnaire-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mod-questionnaire-head ._en {
    background-color: #002e67;
    font-size: 3.5897435897vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.075em;
    color: #fff;
    padding: 1.0256410256vw 2.3076923077vw;
  }
  .mod-questionnaire-head h2 {
    background-color: #00a0e6;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #fff;
    padding: 1.5384615385vw 2.5641025641vw;
  }
  .mod-questionnairelist-A {
    display: flex;
    gap: 2.5641025641vw;
    flex-direction: column;
  }
  .mod-questionnairelist-A li {
    margin-left: 8.9743589744vw;
    position: relative;
  }
  .mod-questionnairelist-A li span {
    display: inline;
    border-bottom: 0.5128205128vw solid #cff0ff;
    font-size: 3.3333333333vw;
    line-height: 2.62;
    letter-spacing: 0.1em;
    padding: 1.0256410256vw 0;
  }
  .mod-questionnairelist-A li:after {
    content: "";
    display: block;
    position: absolute;
    top: 0.7692307692vw;
    left: -8.9743589744vw;
    background: url(../../images/questionnaire/icon1.png) left top no-repeat;
    background-size: contain;
    width: 7.6923076923vw;
    height: 7.6923076923vw;
  }
  .mod-questionnairelist-B {
    display: flex;
    gap: 2.1794871795vw;
    flex-direction: column;
  }
  .mod-questionnairelist-B li {
    margin-left: 12.8205128205vw;
    position: relative;
  }
  .mod-questionnairelist-B li span {
    font-size: 3.5897435897vw;
    line-height: 1.7;
    letter-spacing: 0.1em;
  }
  .mod-questionnairelist-B li span b {
    font-size: 4.358974359vw;
    font-weight: 700;
    color: #00a0e6;
  }
  .mod-questionnairelist-B li:after {
    content: "";
    display: block;
    position: absolute;
    top: 0.8974358974vw;
    left: -12.8205128205vw;
    background: url(../../images/questionnaire/icon2.png) left top no-repeat;
    background-size: contain;
    width: 10.2564102564vw;
    height: 10.2564102564vw;
  }
  .mod-questionnaire-q9-sp {
    display: flex;
    padding: 0 6.4102564103vw;
    gap: 3.8461538462vw;
    flex-direction: column;
  }
}
.block-index-mv {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.block-index-mv ._main {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.block-index-mv .hero-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  object-fit: cover;
  z-index: -1;
}
@media screen and (max-width: 809px) {
  .block-index-mv {
    height: 100svh;
    height: 24svh;
  }
  .block-index-mv .hero-video {
    /* 横幅をコンテナの100%に合わせる */
    width: 100%;
    /* 高さはアスペクト比を維持するように自動調整 */
    height: auto;

    /* 縦方向の最小サイズの指定をリセット。これが左右カットの主な原因でした。 */
    min-height: unset;
  }
}
.mod-index-about-item ._item-image {
  overflow: hidden;
}
.mod-index-about-item ._item-image:after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: url(../img/index/shatter.svg) center/contain no-repeat;
  z-index: 2;
  pointer-events: none;
}
.mod-index-about-item ._item-image ._door1,
.mod-index-about-item ._item-image ._door2 {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 50%;
  height: 100%;
  /*
  background-color: silver;
  */
  background-image: url(../img/index/shatter3.webp);
  transition: transform 0.5s ease-in-out;
  z-index: 1;
}
@media screen and (max-width: 809px) {
  .mod-index-about-item ._item-image ._door1,
  .mod-index-about-item ._item-image ._door2 {
    background-position: center;
  }
}
.mod-index-about-item ._item-image ._door1 {
  top: 0;
}
.mod-index-about-item ._item-image ._door2 {
  bottom: 0;
}
.mod-index-about-item:active ._item-image ._door1,
.mod-index-about-item:hover ._item-image ._door1 {
  transform: translateY(-100%);
}
.mod-index-about-item:active ._item-image ._door2,
.mod-index-about-item:hover ._item-image ._door2 {
  transform: translateY(100%);
}
.mod-index-about-item:active ._item-image img,
.mod-index-about-item:hover ._item-image img {
  transform: scale(1.05);
}
@media screen and (min-width: 1281px) {
  .mod-index-works-item {
    width: 100%;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    -webkit-mask-image: url(../../images/index/works/p1_mask.png);
    mask-image: url(../../images/index/works/p1_mask.png);
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    -webkit-mask-image: url(../../images/index/works/p2_mask.png);
    mask-image: url(../../images/index/works/p2_mask.png);
  }
  .mod-index-people-item ._item-image {
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-image: url(../../images/index/people/mask.png);
  }
  .mod-index-people-item ._item-image,
  .mod-index-works-item ._item-image ._image {
    -webkit-mask-size: cover;
    mask-size: cover;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    -webkit-mask-position: center right;
    mask-position: center right;
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .mod-index-people-item ._item-image {
    -webkit-mask-position: center center;
    mask-position: center center;
  }
}
@media screen and (min-width: 810px) and (max-width: 1280px) {
  .mod-index-works-item {
    width: 100%;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    -webkit-mask-image: url(../../images/index/works/p1_mask.png);
    mask-image: url(../../images/index/works/p1_mask.png);
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    -webkit-mask-image: url(../../images/index/works/p2_mask.png);
    mask-image: url(../../images/index/works/p2_mask.png);
  }
  .mod-index-people-item ._item-image {
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-image: url(../../images/index/people/mask.png);
  }
  .mod-index-people-item ._item-image,
  .mod-index-works-item ._item-image ._image {
    -webkit-mask-size: cover;
    mask-size: cover;
  }
  .mod-index-works-item.is-1 ._item-image ._image {
    -webkit-mask-position: center right;
    mask-position: center right;
  }
  .mod-index-works-item.is-2 ._item-image ._image {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .mod-index-people-item ._item-image {
    -webkit-mask-position: center center;
    mask-position: center center;
  }
}
@media screen and (max-width: 809px) {
  .mod-index-people-item ._item-image {
    -webkit-mask-image: url(../../images/index/people/mask.png);
    mask-image: url(../../images/index/people/mask.png);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-size: cover;
    mask-size: cover;
  }
  .mod-index-about-item ._item-image ._door1 {
    left: 13%;
  }
}

/* */
/* =======================================
  YouTubeリンクセクション
 ======================================= */

/* セクション全体の間隔調整 */
.youtube-link-section {
  padding: 60px 20px;
  background-color: #f7f7f7; /* 背景色（任意） */
}

/* 2つのカードを横並びにするためのFlexコンテナ */
.youtube-link-container {
  display: flex;
  justify-content: center;
  gap: 30px; /* カード間の隙間 */
  flex-wrap: wrap; /* 画面が狭くなったら折り返す */
  max-width: 1200px;
  margin: 0 auto;
}

/* カード全体のスタイル */
.youtube-card {
  display: flex;
  align-items: center; /* 要素を垂直方向中央揃え */
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 16px;
  padding: 24px;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  flex: 1; /* 横幅を均等に分ける */
  min-width: 320px; /* 最小幅を指定 */
  max-width: 550px; /* 最大幅を指定 */
}

.youtube-card:hover {
  transform: translateY(-5px); /* 少し浮き上がるアニメーション */
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

/* 左カラム：サムネイル */
.card-thumbnail {
  position: relative;
  width: 160px;
  flex-shrink: 0; /* コンテナが縮んでも画像サイズを維持 */
  width: 40%;
}

.card-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

/* サムネイル上の中央再生ボタン */
.card-thumbnail::after {
  content: "▶";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 48px;
  height: 48px;
  background-color: rgba(255, 0, 0, 0.9);
  color: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  padding-left: 4px; /* 見た目の微調整 */
  box-sizing: border-box;
  transition: background-color 0.3s ease;
}

.youtube-card:hover .card-thumbnail::after {
  background-color: rgba(255, 0, 0, 1);
}

/* 右カラム：テキストとボタン */
.card-content {
  padding-left: 24px;
  display: flex;
  flex-direction: column;
}

.card-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 16px 0;
}

/* =======================================
  レスポンシブ対応
 ======================================= */
/* 画面幅が768px以下の場合（スマートフォンなど） */
@media (max-width: 768px) {
  .youtube-card {
    flex-direction: column; /* カラムを縦積みに変更 */
    text-align: center;
  }

  .card-content {
    padding-left: 0;
    padding-top: 20px;
    align-items: center;
  }
  .card-thumbnail {
    width: 100%;
  }
}

/* =======================================
  バナー
 ======================================= */

/* バナー全体を中央寄せするためのラッパー */
.one-column-banner-wrapper {
    max-width: 1200px; /* youtube-link-container と最大幅を合わせる */
    margin: 40px auto 0 auto; /* 上に40pxの間隔、左右中央寄せ、下は0 */
}

/* バナーのリンク要素 */
.one-column-banner-wrapper .banner-link {
    display: block; /* エリア全体をクリッカブルにする */
    text-decoration: none;
    border-radius: 8px; /* 少し角を丸める */
    overflow: hidden; /* 角丸を画像に適用させるため */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); /* 既存のカードと影を合わせる */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* ホバー時のアニメーション */
}

/* ホバーエフェクト */
.one-column-banner-wrapper .banner-link:hover {
    transform: translateY(-5px); /* 少し上に動かす */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1); /* 既存のカードと影を合わせる */
}

/* バナー画像 (SVG) */
.one-column-banner-wrapper .banner-link img {
    display: block; /* 画像下の余分なスペースを消す */
    width: 100%;    /* 親要素の幅いっぱいに広げる */
    height: auto;   /* アスペクト比を維持 */
}

/* スマホ表示用の調整 */
@media (max-width: 767px) {
    .one-column-banner-wrapper {
        margin-top: 30px; /* スマホでは少し間隔を詰める */
    }
}