/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./src/scss/style.scss ***!
  \********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*レスポンシブ用*/
/*-----------------------------------------
animation
-----------------------------------------*/
@keyframes wave_anim {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top 0 left 120px;
  }
}
@keyframes ticker_anim {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top -61.4rem left 0;
  }
}
@keyframes ticker_anim_sp {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top -45rem left 0;
  }
}
:root {
  --sidebar: 5.5rem;
  --mainarea: calc(100vw - 5.5rem);
  --sidemargin: 2.4rem;
  --color-white: #FFF;
  --color-black: #333;
  --color-txt: #333;
  --color-bg: #FFF;
  --color-darkblue: #2E2683;
  --color-blue: #363BB3;
  --color-gray: #DADADA;
}

body {
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1;
}

div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
textarea {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
}

img {
  vertical-align: bottom;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
div,
address,
iframe,
canvas,
hr,
textarea {
  display: block;
}

iframe {
  max-width: 100% !important;
}

img,
embed,
object,
video {
  max-width: 100%;
}

a, label {
  cursor: pointer;
}

blockquote {
  padding: 0;
  margin: 0;
  display: block;
}

address, em {
  font-style: normal;
}

hr {
  border: 0;
  margin: 0;
  padding: 0;
}

ul, ol, li {
  list-style: none;
}

textarea {
  resize: vertical;
  overflow: hidden;
  -ms-appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: 0;
}

input, button, select {
  vertical-align: middle;
  border-radius: 0;
  box-sizing: border-box;
  border: 0;
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  cursor: pointer;
  white-space: normal;
  outline: 0;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
}

button,
input[type=reset],
input[type=button],
input[type=submit],
input[type=checkbox],
input[type=radio],
select {
  box-sizing: border-box;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

select::-ms-expand {
  display: none;
}

table {
  border-collapse: collapse;
}

*:before, *:after {
  padding: 0;
  margin: 0;
  line-height: 1;
}

* {
  box-sizing: border-box;
}

*:before, *:after {
  box-sizing: border-box;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

br {
  font-size: 0;
}

::-moz-selection {
  background: #000000;
  color: #FFFFFF;
}

::selection {
  background: #000000;
  color: #FFFFFF;
}

input::-moz-selection, textarea::-moz-selection {
  color: #363BB3;
}

input::selection, textarea::selection {
  color: #363BB3;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  padding: 0;
}

body {
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -o-font-smoothing: antialiased;
  font-smooth: antialiased;
  line-height: 2;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
  font-size: 1.6rem;
  color: var(--color-txt);
  background-color: var(--color-bg);
}
body.is-fixed {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
  left: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1.4rem;
}

input,
button,
select,
textarea {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

input:focus,
button:focus,
select:focus,
textarea:focus,
a:focus,
div:focus,
aside:focus {
  outline: none;
}

a {
  color: inherit;
  text-decoration: underline;
}

a.is-hover {
  text-decoration: none;
}

br.is-pcbr {
  display: block;
}

br.is-splbr {
  display: none;
}

br.is-spbr {
  display: none;
}

br.is-tabbr {
  display: none;
}

br.is-spslbr {
  display: none;
}

br.is-spsbr {
  display: none;
}

@media screen and (max-width: 1023px) {
  br.is-pcbr {
    display: none;
  }
}
@media only screen and (max-width: 979px) {
  br.is-tabbr {
    display: block;
  }
}
@media only screen and (max-width: 740px) {
  br.is-splbr {
    display: block;
  }
}
@media only screen and (max-width: 560px) {
  br.is-spbr {
    display: block;
  }
}
@media screen and (max-width: 320px) {
  br.is-spsbr {
    display: block;
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
animation
-----------------------------------------*/
@keyframes wave_anim {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top 0 left 120px;
  }
}
@keyframes ticker_anim {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top -61.4rem left 0;
  }
}
@keyframes ticker_anim_sp {
  0% {
    background-position: top 0 left 0;
  }
  100% {
    background-position: top -45rem left 0;
  }
}
:root {
  --sidebar: 5.5rem;
  --mainarea: calc(100vw - 5.5rem);
  --sidemargin: 2.4rem;
  --color-white: #FFF;
  --color-black: #333;
  --color-txt: #333;
  --color-bg: #FFF;
  --color-darkblue: #2E2683;
  --color-blue: #363BB3;
  --color-gray: #DADADA;
}

.l-wrapper {
  display: grid;
  grid-template: "sidebar header" auto "sidebar container" 1fr "sidebar footer" auto/var(--sidebar) 1fr;
  min-height: 100vh;
}
@media only screen and (max-width: 740px) {
  .l-wrapper {
    grid-template: "header" auto "container" 1fr "footer" auto/1fr;
    overflow-x: hidden;
  }
}

.l-header {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: header;
}
@media only screen and (max-width: 740px) {
  .l-header {
    position: absolute;
    z-index: 100;
  }
}

.l-header__inner {
  display: grid;
  grid-template: "sitename gnav cvnav" auto/auto 1fr auto;
  justify-content: space-between;
  padding-left: 5.6rem;
  gap: 0 5.6rem;
}
@media only screen and (max-width: 1199px) {
  .l-header__inner {
    padding-left: var(--sidemargin);
    grid-template: "sitename cvnav" auto/auto auto;
  }
}
@media only screen and (max-width: 740px) {
  .l-header__inner {
    grid-template: "sitename" auto/auto;
    padding: 1.2rem 0 1.2rem 0.8rem;
  }
}

.l-header__sitename {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: sitename;
  align-self: center;
}

.l-footer__inner > .l-header__sitename {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.l-header__gnav {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: gnav;
  padding: 3.2rem 0;
  width: clamp(20rem, 31.25vw, 60rem);
  margin-left: auto;
  margin-right: 2.4rem;
}
@media only screen and (max-width: 1440px) {
  .l-header__gnav {
    margin-right: auto;
    width: auto;
  }
}
@media only screen and (max-width: 1199px) {
  .l-header__gnav {
    display: none;
  }
}

.l-header__gnav__list {
  justify-content: center;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(2, auto);
  gap: 0.8rem clamp(1.6rem, 2.5vw, 5.6rem);
  justify-content: space-between;
}

.l-header__cvnav {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: cvnav;
  display: flex;
}
@media only screen and (max-width: 740px) {
  .l-header__cvnav {
    display: none;
  }
}

.l-header__hambbtn {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  width: 5rem;
}
@media only screen and (max-width: 740px) {
  .l-header__hambbtn {
    display: block;
  }
}

.l-footer {
  -ms-grid-row: 3;
  -ms-grid-column: 2;
  grid-area: footer;
}

.l-footer__banners {
  padding: 0 var(--sidemargin);
}

.l-footer__banners__inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4rem;
  max-width: 110rem;
  width: 100%;
  margin-inline: auto;
  padding: 5.4rem 0;
}
@media only screen and (max-width: 979px) {
  .l-footer__banners__inner {
    gap: 2.4rem;
  }
}
@media only screen and (max-width: 740px) {
  .l-footer__banners__inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

.l-footer__inner {
  max-width: 110rem;
  width: 100%;
  margin-inline: auto;
  display: grid;
  grid-template: "sitename nav" auto "info nav" auto "copyright copyright" auto/auto 1fr;
  gap: 0 4rem;
  padding: 5.4rem 0;
}
@media only screen and (max-width: 979px) {
  .l-footer__inner {
    grid-template: "sitename" auto "info" auto "nav" auto "copyright" auto/1fr;
    gap: 0;
  }
  .l-footer__inner > .l-header__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
@media only screen and (max-width: 740px) {
  .l-footer__inner {
    grid-template: "sitename" auto "info" auto "copyright" auto/1fr;
  }
  .l-footer__inner > .l-header__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

.l-footer__sitename {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: sitename;
  margin-bottom: 3.2rem;
}

.l-footer__inner > .l-footer__sitename {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media only screen and (max-width: 740px) {
  .l-footer__sitename {
    margin-bottom: 1.6rem;
  }
}

.l-footer__info {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: info;
  line-height: 1.6;
}

.l-footer__nav {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: nav;
  justify-self: end;
}
@media only screen and (max-width: 979px) {
  .l-footer__nav {
    justify-self: start;
  }
}
@media only screen and (max-width: 740px) {
  .l-footer__nav {
    display: none;
  }
}

.l-footer__copyright {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  margin-top: 5.4rem;
  grid-area: copyright;
  text-align: right;
}

@media only screen and (max-width: 1199px){
  .l-header__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-header__cvnav {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .l-footer__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

@media only screen and (max-width: 740px){
  .l-header__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-footer__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-footer__inner > .l-footer__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-footer__info {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .l-footer__copyright {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}

@media only screen and (max-width: 979px){
  .l-footer__inner > .l-footer__sitename {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-footer__info {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .l-footer__nav {
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .l-footer__copyright {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}

.l-footer__nav__list {
  display: grid;
  grid-template-rows: repeat(4, auto);
  grid-auto-flow: column;
  gap: 0.8rem 6.4rem;
  padding-right: 6.4rem;
}
@media only screen and (max-width: 979px) {
  .l-footer__nav__list {
    padding-top: 6.4rem;
    padding-right: 0;
  }
}

.l-main {
  display: grid;
  grid-template: "head" auto "breadcrumb" auto "content" auto/100%;
  gap: 3.2rem;
  max-width: 110rem;
  width: 100%;
  margin-inline: auto;
}
.l-main--home {
  gap: 0;
  grid-template-columns: 1fr;
}
.l-main--page2column {
  display: grid;
  grid-template: "head head" auto "breadcrumb breadcrumb" auto "sidenav content" auto/20% 1fr;
}
@media only screen and (max-width: 979px) {
  .l-main--page2column {
    grid-template: "head" auto "breadcrumb" auto "content" 1fr "sidenav" auto/1fr;
    padding-bottom: 4rem;
  }
}

.l-main__head {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: head;
}

.l-main--page2column > .l-main__head {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
}

.l-main__breadcrumb {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: breadcrumb;
}

.l-main--page2column > .l-main__breadcrumb {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
}

.l-main__sidenav {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: sidenav;
  position: relative;
}

.l-main__sidenav__inner {
  position: sticky;
  top: 0;
  left: 0;
}

.l-main__content {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: content;
  padding-bottom: 7.2rem;
  overflow: hidden;
}

.l-main--page2column > .l-main__content {
  -ms-grid-row: 3;
  -ms-grid-column: 2;
}

@media only screen and (max-width: 979px){
  .l-main--page2column > .l-main__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .l-main--page2column > .l-main__breadcrumb {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .l-main__sidenav {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .l-main--page2column > .l-main__content {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
.l-main__content > *:first-child {
  margin-top: 0 !important;
}
@media only screen and (max-width: 979px) {
  .l-main__content {
    padding-bottom: 5.6rem;
  }
}
.l-main__content--short {
  max-width: 88rem;
  width: 100%;
  margin-inline: auto;
}

.l-container {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: container;
  padding: 0 var(--sidemargin);
  position: relative;
  z-index: 0;
}

.l-sidebar {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: sidebar;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 740px){
  .l-header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-footer {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .l-container {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}
@media only screen and (max-width: 740px) {
  .l-sidebar {
    display: none;
  }
}

.l-sidebar__inner {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.l-home__contentindex {
  display: grid;
  grid-template: "interview results" auto "interview instructor" auto/1fr 1fr;
  gap: 5.4rem;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 979px) {
  .l-home__contentindex {
    gap: 3.2rem;
  }
}
@media only screen and (max-width: 740px) {
  .l-home__contentindex {
    grid-template: "interview" auto "results" auto "instructor" auto/1fr;
  }
}

.l-home__contentindex__item--interview {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: interview;
}
.l-home__contentindex__item--results {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: results;
}
.l-home__contentindex__item--instructor {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: instructor;
}
@media only screen and (max-width: 740px){
  .l-home__contentindex__item--interview {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .l-home__contentindex__item--results {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .l-home__contentindex__item--instructor {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}

.l-home__subcontentindex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5.4rem;
  padding: 5.4rem 0;
}
@media only screen and (max-width: 740px) {
  .l-home__subcontentindex {
    grid-template-columns: 1fr;
  }
}

.l-home__news__more {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.l-home__news__list {
  display: grid;
  gap: 4rem;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 4rem;
}
@media only screen and (max-width: 979px) {
  .l-home__news__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 740px) {
  .l-home__news__list {
    grid-template-columns: 100%;
    gap: 0;
    margin-top: 1.2rem;
  }
}

@media only screen and (max-width: 740px) {
  .l-home__news__list__item {
    border-bottom: 1px solid var(--color-gray);
  }
  .l-home__news__list__item:last-child {
    border-bottom: none;
  }
}

.l-home__about {
  padding-top: 7.2rem;
  padding-bottom: 7.2rem;
}

.l-home__about__visual {
  display: grid;
  grid-template: "slide01 slide02 ttl" 1fr "slide01 slide02 slide03" auto/1fr 44rem 1fr;
  gap: 0 6.4rem;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 979px) {
  .l-home__about__visual {
    grid-template: "ttl" auto "slide01" 1fr/1fr;
  }
}

.l-home__about__visual__slide01 {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: slide01;
  overflow: hidden;
}
@media only screen and (max-width: 979px) {
  .l-home__about__visual__slide01 {
    margin-left: calc(50% - (50vw - var(--sidebar) / 2));
    margin-right: calc(50% - (50vw - var(--sidebar) / 2));
  }
}
@media only screen and (max-width: 740px) {
  .l-home__about__visual__slide01 {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

.l-home__about__visual__slide02 {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: slide02;
  overflow: hidden;
}
@media only screen and (max-width: 979px) {
  .l-home__about__visual__slide02 {
    display: none;
  }
}

.l-home__about__visual__slide03 {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
  grid-area: slide03;
  overflow: hidden;
}
@media only screen and (max-width: 979px) {
  .l-home__about__visual__slide03 {
    display: none;
  }
}

.l-home__about__visual__ttl {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: ttl;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: right;
}

.c-currirulum__flow__annual > .l-home__about__visual__ttl {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media only screen and (max-width: 979px) {
  .l-home__about__visual__ttl {
    padding: 0 0 4rem;
  }
}

.l-home__about__content {
  display: grid;
  grid-template: "catch txt" auto "btn txt" auto/1fr 1fr;
  gap: 5.4rem 3.2rem;
  padding: 5.4rem 0 0;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 979px) {
  .l-home__about__content {
    grid-template: "catch" auto "txt" auto "btn" auto/1fr;
    gap: 3.2rem;
  }
}

.l-home__about__content__catch {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: catch;
}

.l-result__top > .l-home__about__content__catch {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.l-home__about__content__txt {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: txt;
}

.l-result__top > .l-home__about__content__txt {
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
}

.l-home__about__content__btn {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: btn;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 979px) {
  .l-home__about__content__btn {
    justify-self: center;
  }
}

.l-about__president {
  display: flex;
  gap: 4.8rem;
  align-items: flex-start;
  margin-bottom: 7.2rem;
}
@media only screen and (max-width: 740px) {
  .l-about__president {
    flex-direction: column;
  }
}

.l-about__president__comment {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.l-about__list {
  margin-bottom: 5.6rem;
}
.l-about__list:last-child {
  margin-bottom: 0;
}

.l-result__top {
  display: grid;
  grid-template: "catch img" auto "txt img" auto/50% auto;
  gap: 3.2rem;
}
@media only screen and (max-width: 979px) {
  .l-result__top {
    grid-template: "catch img" auto "txt txt" auto/1fr 35%;
  }
  .l-result__top > .l-home__about__content__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-result__top > .l-home__about__content__txt {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
}
@media only screen and (max-width: 560px) {
  .l-result__top {
    grid-template: "catch" auto "img" auto "txt" auto/100%;
  }
  .l-result__top > .l-home__about__content__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-result__top > .l-home__about__content__txt {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}

.l-result__ratio {
  display: grid;
  grid-template: "area job" auto/1fr 1fr;
  gap: 3.2rem;
}
@media only screen and (max-width: 740px) {
  .l-result__ratio {
    grid-template: "area" auto "job" auto/100%;
  }
}

.l-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2.4rem;
       column-gap: 2.4rem;
  margin-bottom: 2.4rem;
}
@media only screen and (max-width: 740px) {
  .l-result__list {
    grid-template-columns: 1fr;
  }
}
.l-result__list li::before {
  content: "・";
}

.l-interview__spotlightlecture {
  margin: 3.2rem 0 6.4rem;
}

.l-curriculum__flow__annual__content {
  margin-bottom: 5.6rem;
}

.l-curriculum__pickup {
  display: flex;
  gap: 2.8rem;
  align-items: flex-start;
}
.l-curriculum__pickup > p {
  width: calc(64.4% - 2.8rem);
}
@media only screen and (max-width: 560px) {
  .l-curriculum__pickup {
    flex-direction: column;
    gap: 0;
  }
  .l-curriculum__pickup > p {
    width: 100%;
  }
}

.l-curriculum__pickup__img {
  width: 35.6%;
}
.l-curriculum__pickup__img picture {
  display: block;
  width: 100%;
  aspect-ratio: 300/180;
  position: relative;
}
.l-curriculum__pickup__img picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 560px) {
  .l-curriculum__pickup__img {
    width: 100%;
  }
}

.l-modalnav {
  position: fixed;
  top: 0;
  left: var(--sidebar);
  width: calc(100vw - var(--sidebar));
  display: none;
  height: 100%;
}
@media only screen and (max-width: 740px) {
  .l-modalnav {
    width: 100%;
    left: 0;
  }
}

.l-modalnav__inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  padding: 6rem clamp(2.4rem, 4.8vw, 6rem);
  overflow-y: scroll;
}
@media only screen and (max-width: 979px) {
  .l-modalnav__inner {
    padding: 4rem clamp(1.6rem, 4.8vw, 2.4rem);
  }
}
@media only screen and (max-width: 740px) {
  .l-modalnav__inner {
    width: 100%;
    padding: 4rem 2.4rem;
  }
}

@media only screen and (max-width: 740px) {
  .l-modalnav__sitename {
    display: none;
  }
}

.l-modalnav__gnav {
  padding: 4rem 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
}
@media only screen and (max-width: 740px) {
  .l-modalnav__gnav {
    gap: 1.6rem;
  }
}

.l-modalnav__cvnav {
  display: grid;
  grid-template-columns: 1f;
  gap: 1.6rem;
}

.l-modalnav__othernav {
  padding-top: 3.2rem;
}

.l-contents {
  margin-top: 6.4rem;
}
.l-contents > *:first-child {
  margin-top: 0 !important;
}
@media only screen and (max-width: 740px) {
  .l-contents {
    margin-top: 3.2rem;
  }
}

.l-contents__ttl > *:first-child {
  margin-top: 0 !important;
}
.l-contents__ttl--bicolor {
  margin-top: 3.2rem;
}
.l-contents__ttl--underline {
  margin-top: 3.2rem;
}

.l-contents__ttl + * {
  margin-top: 2.4rem;
}

.l-contents__content {
  margin-top: 1.2rem;
}
.l-contents__content--2column {
  margin-top: 0;
}
@media only screen and (max-width: 560px) {
  .l-contents__content--2column {
    margin-top: 1.2rem;
  }
}

.l-contents__btn {
  margin-top: 2.4rem;
}

.l-list-interview {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem 4rem;
  margin-bottom: 6.4rem;
}
@media only screen and (max-width: 740px) {
  .l-list-interview {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem;
  }
}

.l-list-instructor {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 3.2rem;
       column-gap: 3.2rem;
  row-gap: 4rem;
}
@media only screen and (max-width: 979px) {
  .l-list-instructor {
    max-width: 64rem;
    margin: 0 auto;
    flex-direction: column;
    gap: 2.4rem;
  }
}

.l-list-instructor__item {
  display: flex;
  width: calc(50% - 1.6rem);
  gap: 1.6rem;
  align-items: flex-start;
}
@media only screen and (max-width: 979px) {
  .l-list-instructor__item {
    width: 100%;
  }
}
@media only screen and (max-width: 560px) {
  .l-list-instructor__item {
    align-items: flex-start;
  }
}

.l-list-faq {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.l-list-faq__item {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.l-list-info {
  max-width: 88rem;
  width: 100%;
  margin: 0 auto;
}
@media only screen and (max-width: 740px) {
  .l-list-info {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

.l-list-info__item {
  border-bottom: 1px solid #EEE;
  width: 100%;
}

.c-loading {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1000;
}

.c-loading__bg {
  position: absolute;
  width: 100%;
  height: 100%;
}
.c-loading__bg--01 {
  background-color: var(--color-black);
}
.c-loading__bg--02 {
  background-color: var(--color-blue);
}

.c-loading__txt {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: var(--color-white);
  font-size: 1rem;
  letter-spacing: 10px;
  animation: loading 0.1s infinite;
}

@keyframes loading {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.c-logo__border {
  aspect-ratio: 66/19;
  overflow: hidden;
  background-image: url(../img/cmn/logo_frame.svg);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.c-logo__border a {
  display: block;
  height: 100%;
}
.c-logo__border a.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-logo__border a.is-hoverOut {
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}

.c-hambnav {
  color: var(--color-white);
  text-align: center;
  font-size: 1rem;
  width: 100%;
  padding: 0.8rem 0;
}

.c-hambnav__icon {
  width: 64%;
  aspect-ratio: 1/1;
  position: relative;
  display: block;
  margin-inline: auto;
}
.c-hambnav__icon span, .c-hambnav__icon::before, .c-hambnav__icon::after {
  content: "";
  display: block;
  width: calc(100% - 10px);
  height: 1px;
  background: var(--color-white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
}
.c-hambnav__icon::before {
  top: 8px;
  left: 0;
  transform: translateX(0);
}
.c-hambnav__icon::after {
  top: auto;
  bottom: 8px;
  right: 0;
  left: auto;
  transform: translateX(0);
}
.is-open .c-hambnav__icon span {
  display: none;
}
.is-open .c-hambnav__icon::before {
  top: 50%;
  left: 50%;
  right: auto;
  transform: translateX(-50%) rotate(45deg);
}
.is-open .c-hambnav__icon::after {
  left: 50%;
  right: auto;
  bottom: 50%;
  transform: translateX(-50%) rotate(-45deg);
}

.c-headline__home {
  margin-bottom: 3.2rem;
}
@media only screen and (max-width: 740px) {
  .c-headline__home {
    margin-bottom: 0;
  }
}

.c-headline__home__en {
  font-size: clamp(4rem, 5vw, 6.4rem);
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .c-headline__home__en {
    font-size: clamp(3.2rem, 10.582010582vw, 4rem);
  }
}
.is-center .c-headline__home__en {
  text-align: center;
}
@media only screen and (max-width: 740px) {
  .is-center .c-headline__home__en {
    text-align: left;
  }
}

.c-headline__home__ja {
  font-size: clamp(1rem, 0.9375vw, 1.2rem);
}
@media only screen and (max-width: 740px) {
  .c-headline__home__ja {
    font-size: clamp(1rem, 3.1746031746vw, 1.2rem);
  }
}
.is-center .c-headline__home__ja {
  text-align: center;
}
@media only screen and (max-width: 740px) {
  .is-center .c-headline__home__ja {
    text-align: left;
  }
}

.c-banner__oc {
  position: fixed;
  bottom: var(--sidemargin);
  right: var(--sidemargin);
  z-index: 1000;
  display: block;
  width: 21.2rem;
  height: auto;
  aspect-ratio: 212/168;
  background-image: url("../img/cmn/banner_oc2025@pc.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 740px) {
  .c-banner__oc {
    width: 18rem;
  }
}
@media only screen and (max-width: 560px) {
  .c-banner__oc {
    width: 16rem;
  }
}
.c-banner__oc.is-hover {
  scale: 1.03;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__news {
  display: grid;
  position: relative;
  text-decoration: none;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__news.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 740px) {
  .c-card__news {
    grid-template-columns: 1fr 2fr;
    gap: 1.6rem;
    padding: 1.6rem 0;
  }
}

.c-card__news__img {
  display: block;
  width: 100%;
  aspect-ratio: 8/5;
  overflow: hidden;
  position: relative;
  margin-bottom: 0.4rem;
}
@media only screen and (max-width: 740px) {
  .c-card__news__img {
    aspect-ratio: 5/4;
  }
}
.c-card__news__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__news__img img {
  scale: 1.05;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

@media only screen and (max-width: 740px) {
  .c-card__news__detail {
    line-height: 1;
  }
}

.c-card__news__date {
  display: inline-block;
  font-size: 1.2rem;
}

.c-card__news__category {
  display: inline-block;
  color: var(--color-blue);
  font-size: 1.2rem;
  margin-left: 1em;
}

.c-card__news__title {
  font-size: 1.4rem;
  margin-top: 0.2rem;
}
@media only screen and (max-width: 740px) {
  .c-card__news__title {
    margin-top: 0.8rem;
    line-height: 1.6;
    font-size: 1.3rem;
  }
}

.c-btn__line {
  display: inline-block;
  position: relative;
  text-decoration: none;
  padding-left: 1.6rem;
  font-size: 1.2rem;
  line-height: 1.2;
}
.c-btn__line::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.8rem;
  height: 1px;
  background-color: var(--color-white);
}
.c-btn__line.is-hover {
  text-decoration: underline;
}

.c-btn__gnav {
  font-weight: bold;
  text-decoration: none;
  display: inline-block;
  position: relative;
  font-size: 1.3rem;
}
.c-btn__gnav::before {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--color-blue);
  transform: scaleX(0);
  transition: transform 0.3s;
  transform-origin: left top;
}
.c-btn__gnav.is-hover {
  color: var(--color-blue);
}
.c-btn__gnav.is-hover::before {
  transform: scaleX(1);
}
.c-btn__gnav.is-hoverOut::before {
  transform: scaleX(0);
  transform-origin: right top;
}
.c-btn__gnav.is-active {
  color: var(--color-blue);
}
.c-btn__gnav.is-active::before {
  transform: scaleX(1);
}

.c-btn__cvnav {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  text-align: center;
  padding: 2.4rem 3.2rem;
  text-decoration: none;
  line-height: 1.4;
  font-size: 1.2rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__cvnav--dark {
  background: var(--color-darkblue);
}
.c-btn__cvnav--light {
  background: #463E9F;
}
.c-btn__cvnav.is-hover {
  background: #000;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-btn__round {
  display: block;
  width: 100%;
  position: relative;
  background: var(--color-white);
  border-radius: 9999px;
  padding: 1.6rem 2.4rem;
  font-size: 2rem;
  font-weight: bold;
  text-decoration: none;
  color: var(--color-darkblue);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 979px) {
  .c-btn__round {
    font-size: 1.6rem;
    padding: 0.4rem 2rem;
  }
}
@media only screen and (max-width: 740px) {
  .c-btn__round {
    padding: 0.8rem 2.4rem;
  }
}
.c-btn__round::after {
  position: absolute;
  display: block;
  content: "";
  width: 12px;
  aspect-ratio: 1/1;
  background-image: url(../img/cmn/icon-arrow-black.svg);
  background-size: contain;
  background-repeat: no-repeat;
  right: 2.4rem;
  top: 50%;
  transform: translateY(-50%);
}
.is-hover .c-btn__round, .c-btn__round.is-hover {
  background: var(--color-blue);
  color: var(--color-white);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.is-hover .c-btn__round::after, .c-btn__round.is-hover::after {
  background-image: url(../img/cmn/icon-arrow-white.svg);
}

.c-btn__round__bw {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  background: var(--color-blue);
  border-radius: 9999px;
  padding: 0.8rem 4.8rem 0.8rem 2.4rem;
  font-size: 1.4rem;
  font-weight: bold;
  text-decoration: none;
  color: var(--color-white);
  border: 0.2rem solid var(--color-blue);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 979px) {
  .c-btn__round__bw {
    font-size: 1.4rem;
    padding: 0.8rem 4.8rem 0.8rem 2.4rem;
  }
}
.c-btn__round__bw::after {
  position: absolute;
  display: block;
  content: "";
  width: 12px;
  aspect-ratio: 1/1;
  background-image: url(../img/cmn/icon-arrow-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  right: 2.4rem;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.2rem;
}
.c-btn__round__bw.has-icon {
  padding: 0.8rem 5.2rem;
}
.c-btn__round__bw.has-icon::before {
  position: absolute;
  display: block;
  content: "";
  width: 1.8rem;
  aspect-ratio: 20.65/27;
  background-image: url(../img/cmn/icon-pdf-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  left: 2.8rem;
  top: 50%;
  transform: translateY(-50%);
}
.c-btn__round__bw.is-center {
  margin-left: auto;
  margin-right: auto;
}
.is-hover .c-btn__round__bw, .c-btn__round__bw.is-hover {
  background: var(--color-white);
  color: var(--color-darkblue);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.is-hover .c-btn__round__bw::after, .c-btn__round__bw.is-hover::after {
  background-image: url(../img/cmn/icon-arrow-black.svg);
}
.is-hover .c-btn__round__bw.has-icon::before, .c-btn__round__bw.is-hover.has-icon::before {
  background-image: url(../img/cmn/icon-pdf.svg);
}

.c-btn__circleblue {
  display: block;
  width: 100%;
  position: relative;
  font-size: 2.4rem;
  padding: 0.8rem 0;
  font-weight: bold;
  color: var(--color-black);
}
@media only screen and (max-width: 979px) {
  .c-btn__circleblue {
    font-size: 2rem;
  }
}
.c-btn__circleblue::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 3.5rem;
  aspect-ratio: 1/1;
  border-radius: 9999px;
  background-color: var(--color-darkblue);
  background-image: url(../img/cmn/icon-arrow-white.svg);
  background-size: 12px auto;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
}
@media only screen and (max-width: 979px) {
  .c-btn__circleblue::before {
    font-size: 3.2rem;
  }
}
.is-hover .c-btn__circleblue {
  color: var(--color-blue);
}

.c-btn__border {
  display: flex;
  border: 0.2rem solid #E2E2E2;
  border-radius: 9999px;
  padding: 1.6rem 4rem;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 740px) {
  .c-btn__border {
    padding: 1.2rem 4rem;
  }
}
.c-btn__border span {
  display: inline-block;
  position: relative;
  padding-right: 2.4rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__border span::after {
  content: "";
  display: block;
  background-image: url(../img/cmn/icon-arrow-black.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  aspect-ratio: 1/1;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-5px);
}
.c-btn__border--white {
  border-color: var(--color-white);
  color: var(--color-white);
}
.c-btn__border--white span::after {
  background-image: url(../img/cmn/icon-arrow-white.svg);
}
.c-btn__border.is-hover {
  border-color: var(--color-blue);
  background: var(--color-blue);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__border.is-hover span {
  color: var(--color-white);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__border.is-hover span::after {
  background-image: url(../img/cmn/icon-arrow-white.svg);
}

.c-btn__leftborder {
  display: block;
  position: relative;
  padding-left: 2.4rem;
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: bold;
  color: var(--color-black);
}
.c-btn__leftborder::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.2rem;
  height: 2px;
  background-color: #D9D9D9;
  transform: translateY(-50%);
}
@media only screen and (max-width: 979px) {
  .c-btn__leftborder {
    font-size: 1.6rem;
  }
}
.c-btn__leftborder.is-hover {
  text-decoration: underline;
}

.c-news-item {
  display: grid;
  grid-template: "date category" auto "title title" auto/auto 1fr;
  gap: 0 1.6rem;
  position: relative;
  text-decoration: none;
  padding: 2.4rem 4.8rem 2.4rem 2.4rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-news-item::after {
  content: "";
  display: block;
  width: 1.6rem;
  aspect-ratio: 1/1;
  border-right: 0.1rem solid #CCC;
  border-bottom: 0.1rem solid #CCC;
  right: 2.4rem;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  rotate: -45deg;
}
.c-news-item.is-hover {
  background-color: var(--color-blue);
  color: var(--color-white);
  padding: 2.4rem 3.2rem;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-news-item__date {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: date;
  font-size: 1.2rem;
}

.c-news-item__category {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: category;
  color: var(--color-blue);
  font-size: 1.2rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-news-item__category {
  color: var(--color-white);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-news-item__title {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: title;
  font-size: 1.6rem;
}

.c-table__wrap {
  width: 100%;
}
@media only screen and (max-width: 979px) {
  .c-table__wrap {
    overflow-x: scroll;
  }
}

.c-table {
  display: block;
  overflow-x: auto;
  width: 100%;
}
.c-table tbody {
  display: table;
  table-layout: fixed;
  width: 100%;
  border: 2px solid #f5f5f5;
}
.c-table th {
  border: 2px solid #f5f5f5;
}
.c-table td {
  border: 2px solid #f5f5f5;
}

.c-table__head > th {
  font-size: 1.4rem;
  font-weight: 600;
  color: #FFFFFF;
  background-color: #363BB3;
}
.c-table__head.has-total > th:last-child {
  background-color: #797979;
}

.c-table__item > th {
  padding: 1.6rem 1.2rem;
  font-size: 1.2rem;
  font-weight: 600;
  background-color: #e4e4e4;
}
.c-table__item > td {
  padding: 1.6rem 1.2rem;
  font-size: 1.2rem;
  text-align: center;
}
.c-table__item > td:last-child {
  font-weight: 600;
}

.c-about__floormap {
  display: block;
  width: 100%;
  aspect-ratio: 808/319;
  position: relative;
  margin-bottom: 3.2rem;
}
.c-about__floormap img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.c-about__list__item {
  display: flex;
  gap: 3.2rem;
  align-items: flex-start;
  margin-bottom: 5.6rem;
}
@media only screen and (max-width: 740px) {
  .c-about__list__item {
    gap: 2.4rem;
  }
}
@media only screen and (max-width: 560px) {
  .c-about__list__item {
    flex-direction: column;
    gap: 2.4rem;
  }
}

.c-about__list__img {
  display: block;
  width: 19.8rem;
  aspect-ratio: 198/132;
  position: relative;
}
.c-about__list__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 979px) {
  .c-about__list__img {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 740px) {
  .c-about__list__img {
    width: 26.4%;
  }
}
@media only screen and (max-width: 560px) {
  .c-about__list__img {
    width: 100%;
  }
}

.c-about__list__txt {
  width: calc(100% - 19.8rem - 3.2rem);
}
@media only screen and (max-width: 740px) {
  .c-about__list__txt {
    width: calc(73.6% - 2.4rem);
  }
}
@media only screen and (max-width: 560px) {
  .c-about__list__txt {
    width: 100%;
  }
}

.c-about__list__name {
  font-size: 1.6rem;
  font-weight: 500;
}

.c-about__list__desc {
  font-size: 1.4rem;
}

/*-----------------------------------------
facility
-----------------------------------------*/
.c-about__facilityslider {
  display: block;
  margin-bottom: 3.2rem;
}

.c-about__facilityslider__main {
  width: 100%;
  margin-bottom: 0.8rem;
  position: relative;
}
@media only screen and (max-width: 979px) {
  .c-about__facilityslider__main {
    margin-bottom: 0.1rem;
  }
}

.c-about__facilityslider__sub {
  width: 100%;
}

.c-about__facilityslider__thumb {
  cursor: pointer;
}
.c-about__facilityslider__thumb.swiper-slide-thumb-active figure {
  position: relative;
}
.c-about__facilityslider__thumb.swiper-slide-thumb-active figure::after {
  border: 2px solid var(--color-blue);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.c-about__facility__controller {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  gap: 1px;
}

.c-about__facility__btn {
  display: block;
  background: var(--color-blue);
  width: 5.4rem;
  aspect-ratio: 1/1;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 200%;
  position: relative;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-about__facility__btn::after {
  content: "";
  display: block;
  width: 25%;
  height: 25%;
  border-right: 1px solid var(--color-white);
  border-bottom: 1px solid var(--color-white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(calc(-50% - 4px), -50%) rotate(-45deg);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-about__facility__btn--prev::after {
  transform: translate(calc(-50% + 4px), -50%) rotate(135deg);
}
.c-about__facility__btn.is-hover {
  background: var(--color-blue);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-about__youtube {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  margin-bottom: 5.6rem;
}
.c-about__youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.c-interview__list__item {
  text-decoration: none;
}

.c-interview__list__img {
  display: block;
  width: 100%;
  aspect-ratio: 244/105;
  position: relative;
  margin-bottom: 0.4rem;
  overflow: hidden;
}
.c-interview__list__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-interview__list__img img {
  transform: scale(1.1);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 560px) {
  .c-interview__list__img {
    aspect-ratio: 165/105;
  }
}

.c-interview__list__affiliation {
  font-size: 1.2rem;
}

.c-interview__list__from {
  display: inline-block;
  font-size: 1.2rem;
  margin-right: 0.8rem;
}

.c-interview__list__name {
  display: inline-block;
  font-size: 1.6rem;
}
.c-interview__list__name span {
  font-size: 1.2rem;
}

.c-interview__one__head {
  position: relative;
}
@media only screen and (max-width: 740px) {
  .c-interview__one__head {
    margin-bottom: 8rem;
  }
}

.c-interview__one__head__img {
  display: block;
  width: 72%;
  aspect-ratio: 244/105;
  position: relative;
  margin-left: auto;
  margin-right: 0;
}
.c-interview__one__head__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 740px) {
  .c-interview__one__head__img {
    width: 100%;
  }
}

.c-interview__one__head__txt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
}
.c-interview__one__head__txt span {
  display: inline-block;
  font-size: clamp(1.4rem, 1.6vw, 2rem);
  font-weight: 500;
  color: #FFFFFF;
  background-color: #363BB3;
  line-height: 1;
  padding: 1.6rem;
}
@media only screen and (max-width: 1027px) {
  .c-interview__one__head__txt span {
    font-size: clamp(1.4rem, 2vw, 2rem);
    font-weight: 500;
    padding: 1rem;
  }
}
@media only screen and (max-width: 740px) {
  .c-interview__one__head__txt {
    top: auto;
    bottom: 1.9rem;
    transform: translateY(100%);
  }
}
@media only screen and (max-width: 560px) {
  .c-interview__one__head__txt span {
    font-size: 1.4rem;
    font-weight: 500;
    padding: 1rem;
  }
}

.c-interview__spotlightlecture {
  display: flex;
  padding: 4rem;
  border: 4px solid #363BB3;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  flex-wrap: nowrap;
}
@media only screen and (max-width: 740px) {
  .c-interview__spotlightlecture {
    flex-wrap: wrap;
  }
}

.c-interview__spotlightlecture__ttl {
  display: flex;
  width: 8.56rem;
  aspect-ratio: 1/1;
  background-color: #d9d9d9;
  border-radius: 8.56rem;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}

.c-interview__spotlightlecture__lecturettl {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.6rem;
  font-weight: 600;
  color: #363BB3;
  position: relative;
}
.c-interview__spotlightlecture__lecturettl::before {
  content: "";
  display: block;
  width: 96%;
  height: 2px;
  background-color: #363BB3;
  position: absolute;
  bottom: -0.16em;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 740px) {
  .c-interview__spotlightlecture__lecturettl {
    margin-left: 0;
    margin-right: auto;
  }
}

.c-interview__spotlightlecture__comment {
  width: calc(100% - 27.2rem);
}
@media only screen and (max-width: 740px) {
  .c-interview__spotlightlecture__comment {
    width: 100%;
  }
}

.c-instructor__namelist {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  color: #363BB3;
  margin-bottom: 5.6rem;
}
@media only screen and (max-width: 740px) {
  .c-instructor__namelist {
    display: none;
  }
}
.c-instructor__namelist--select {
  display: none;
}
@media only screen and (max-width: 740px) {
  .c-instructor__namelist--select {
    display: block;
    position: fixed;
    bottom: 1.6rem;
    left: 50%;
    width: calc(100% - 4rem);
    border: 1px solid #e4e4e4;
    padding: 1.4rem 2rem;
    font-size: 1.4rem;
    z-index: 1;
    background-color: var(--color-white);
    background-image: url(../img/cmn/icon-polygon.svg);
    background-size: 8px auto;
    background-position: center right 16px;
    background-repeat: no-repeat;
    transform: translateX(-50%);
  }
}

.c-instructor__namelist__item {
  height: 1.6em;
  position: relative;
}
.c-instructor__namelist__item:not(:last-child)::before {
  content: "／";
  font-size: 1.4rem;
  color: #000000;
  position: absolute;
  top: 50%;
  right: -2rem;
  transform: translate(50%, -50%);
}

.c-instructor__list__img {
  display: block;
  width: 36%;
  aspect-ratio: 189/202;
  position: relative;
}
.c-instructor__list__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.c-instructor__data {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(64% - 1.6rem);
  position: relative;
  padding: 2rem;
}
.c-instructor__data::before {
  content: "";
  width: 100%;
  height: 7px;
  background-color: #f6f6f6;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 560px) {
  .c-instructor__data {
    justify-content: space-between;
    padding: 1.2rem;
    padding-bottom: 0;
  }
  .c-instructor__data::before {
    height: 4.8px;
  }
}

.c-instructor__data__name__ja {
  margin-top: 0.4rem;
  font-size: 1.8rem;
  margin-bottom: 0.4em;
  line-height: 1.2;
}

.c-instructor__data__name__en {
  font-size: 1rem;
  color: #0066ff;
  margin-bottom: 0.4rem;
}

.c-instructor__data__major {
  font-size: 1.2rem;
  margin-bottom: 0.8em;
}

.c-faq__list__item {
  border: 1px solid #e4e4e4;
  border-radius: 10px;
  padding: 1.6rem;
  box-shadow: -2px 4px 4px #e4e4e4;
  position: relative;
}

.c-faq__list__question {
  padding: 0 4rem 0 6.4rem;
  font-size: 1.4rem;
  font-weight: 600;
  cursor: pointer;
  position: relative;
}
.c-faq__list__question > i::before {
  content: "Q";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  aspect-ratio: 1/1;
  padding-bottom: 0.2rem;
  border-radius: 3.6rem;
  background-color: #2E2683;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  color: #FFFFFF;
  position: absolute;
  top: -0.16em;
  left: 0;
}
.c-faq__list__question > i::after {
  content: "";
  display: block;
  width: calc(100% + 3.2rem);
  height: calc(100% + 3.2rem);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-faq__list__question::before, .c-faq__list__question::after {
  content: "";
  width: 1.6rem;
  height: 1px;
  background: #000000;
  position: absolute;
  top: 50%;
  right: 0.8rem;
}
.c-faq__list__question::after {
  transform: rotate(90deg);
}
.c-faq__list__question.is-open::before {
  transform: rotate(45deg);
}
.c-faq__list__question.is-open::after {
  transform: rotate(-45deg);
}

.c-faq__list__answer {
  padding: 0 4rem 0 6.4rem;
  font-size: 1.4rem;
  text-align: justify;
  position: relative;
  top: -100%;
  display: none;
}
.c-faq__list__answer > i::before {
  content: "A";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  aspect-ratio: 1/1;
  border-radius: 3.6rem;
  padding-bottom: 0.2rem;
  background-color: #00c1ff;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  color: #FFFFFF;
  position: absolute;
  top: -0.16em;
  left: 0;
}
.c-faq__list__answer a {
  font-weight: 600;
  margin-top: 1.6rem;
}

.c-info__list__item {
  border-bottom: 1px solid #e8e8e8;
  padding: 2.4rem 2.4rem 3.2rem;
  position: relative;
}
.c-info__list__item::before {
  content: "";
  width: 1.6rem;
  aspect-ratio: 1/1;
  border: 1px solid #bdbdbd;
  border-top: none;
  border-left: none;
  position: absolute;
  transform: rotate(-45deg) translate(50%, 0);
  top: 50%;
  right: 2.4rem;
}
@media only screen and (max-width: 560px) {
  .c-info__list__item {
    padding: 1.6rem 3.2rem 2.4rem 0.8rem;
  }
  .c-info__list__item::before {
    right: 0.8rem;
  }
}

.c-info__list__link {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  text-decoration: none;
}
.c-info__list__link::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.c-info__list__link::after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-info__list__link.is-hover::after {
  background-color: #f6f6f6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-info__list__date {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 500;
  margin-right: 2rem;
}

.c-info__list__cat {
  display: inline-block;
  font-size: 1.2rem;
  color: #0066ff;
  font-weight: 700;
  text-decoration: none;
  position: relative;
  z-index: 2;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-info__list__cat.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-info__list__ttl {
  font-size: 1.4rem;
  font-weight: 500;
}

.c-info-post__data {
  display: flex;
}

.c-info-post__data__date {
  font-size: 1.2rem;
}

.c-info-post__data__category {
  font-size: 1.2rem;
  margin-left: 1.6rem;
  color: var(--color-blue);
  font-weight: bold;
}

.c-info-post__title {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 2.4rem;
  margin-bottom: 2.4rem;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid var(--color-gray);
  line-height: 1.7;
}

.c-info-post__backlink {
  margin-top: 7.2rem;
  padding-top: 5rem;
  position: relative;
  text-align: center;
  display: block;
}
.c-info-post__backlink::after, .c-info-post__backlink::before {
  content: "";
  background: #0066ff;
  position: absolute;
  top: 0;
  width: 1.6rem;
  height: 4px;
  display: block;
}
.c-info-post__backlink::after {
  left: 50%;
  transform: translateX(-100%);
}
.c-info-post__backlink::before {
  right: 50%;
  transform: translateX(100%);
  background: #2E2683;
}
.c-info-post__backlink a {
  text-align: center;
  text-decoration: underline;
}
.c-info-post__backlink a.is-hover {
  text-decoration: none;
}

.c-currirulum__flow__annual {
  display: grid;
  grid-template: "ttl cont" 9.84rem "arrow cont" auto/9.84rem auto;
  -moz-column-gap: 5.6rem;
       column-gap: 5.6rem;
}
@media only screen and (max-width: 560px) {
  .c-currirulum__flow__annual {
    grid-template: "ttl cont" 10.9rem "arrow cont" auto/5.2rem auto;
    -moz-column-gap: 3.2rem;
         column-gap: 3.2rem;
  }
  .c-currirulum__flow__annual > .l-home__about__visual__ttl {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

.c-currirulum__flow__annual__ttl {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: ttl;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 9.84rem;
  aspect-ratio: 1/1;
  border-radius: 9.84rem;
  background-color: #363BB3;
  font-size: 2.4rem;
  font-weight: 500;
  color: #FFFFFF;
}

.c-currirulum__flow__annual > .c-currirulum__flow__annual__ttl {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.c-currirulum__flow__annual__ttl--01 {
  opacity: 0.4;
}
.c-currirulum__flow__annual__ttl--02 {
  opacity: 0.6;
}
.c-currirulum__flow__annual__ttl--03 {
  opacity: 0.8;
}
.c-currirulum__flow__annual__ttl--04 {
  opacity: 1;
}
@media only screen and (max-width: 560px) {
  .c-currirulum__flow__annual__ttl {
    writing-mode: vertical-rl;
    text-orientation: upright;
    width: 5.2rem;
    aspect-ratio: 52/109;
    border-radius: 5.2rem;
    font-size: 2rem;
  }
}

.c-currirulum__flow__arrow {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: arrow;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 1rem;
}
.c-currirulum__flow__arrow::before {
  content: "";
  width: 2px;
  height: 100%;
  background-color: #363BB3;
}
.c-currirulum__flow__arrow span {
  display: flex;
  width: 4.4rem;
  padding-left: 0.8rem;
  justify-content: center;
  background-color: #FFFFFF;
  position: absolute;
  transform: rotate(-90deg);
}
.c-currirulum__flow__arrow span::before, .c-currirulum__flow__arrow span::after {
  content: "";
  display: block;
  width: 12px;
  aspect-ratio: 1/1;
  border: 2px solid #363BB3;
  border-top: none;
  border-right: none;
  transform: rotate(45deg);
}

.c-currirulum__flow__annual__content {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  grid-area: cont;
}

@media only screen and (max-width: 979px){
  .l-home__about__visual__slide01 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .l-home__about__visual__ttl {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .c-currirulum__flow__annual__ttl {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

@media only screen and (max-width: 560px){
  .c-currirulum__flow__annual > .c-currirulum__flow__annual__ttl {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .c-currirulum__flow__arrow {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .c-currirulum__flow__annual__content {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
}
.c-currirulum__flow__annual__content > *:first-child {
  margin-top: 0;
}

.c-curriculum__flow__lecturelist {
  display: flex;
  -moz-column-gap: 1.6rem;
       column-gap: 1.6rem;
  flex-wrap: wrap;
  border: 1px solid #363BB3;
  padding: 1.04rem 1.6rem;
}
.c-curriculum__flow__lecturelist li::before {
  content: "・";
  display: inline;
}

.c-curriculum__pickup__img > p {
  font-size: 1.2rem;
}
.c-curriculum__pickup__img > p span {
  display: inline-block;
  margin-right: 1em;
}
@media only screen and (max-width: 560px) {
  .c-curriculum__pickup__img > p {
    display: inline-block;
  }
  .c-curriculum__pickup__img > p span {
    margin-left: 2em;
  }
}

.c-editarea > *:first-child {
  margin-top: 0 !important;
}
.c-editarea h2 {
  margin-top: 4rem;
  padding-left: 2rem;
  font-size: 2rem;
  font-weight: bold;
  position: relative;
}
.c-editarea h2::before {
  content: "";
  display: block;
  width: 4px;
  height: 50%;
  background: #0066ff;
  position: absolute;
  top: calc(50% + 1px);
  left: 0;
  transform: translateY(-100%);
}
.c-editarea h2::after {
  content: "";
  display: block;
  width: 4px;
  height: 50%;
  background: #2E2683;
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
}
.c-editarea h3 {
  border-bottom: 1px solid var(--color-gray);
  font-size: 1.6rem;
  margin-top: 2.4rem;
  font-weight: bold;
  padding-bottom: 0.4rem;
}
.c-editarea h4 {
  font-size: 1.6rem;
  margin-top: 2rem;
  font-weight: bold;
}
.c-editarea p {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-top: 2.4rem;
}
.c-editarea h2 + p {
  margin-top: 1.2rem;
}
.c-editarea h3 + p {
  margin-top: 0.8rem;
}
.c-editarea h4 + p {
  margin-top: 0.8rem;
}
.c-editarea > a {
  margin-top: 2.4rem;
}

.p-header {
  background: var(--color-white);
}
@media only screen and (max-width: 740px) {
  .p-header {
    width: 100vw;
    background-color: transparent;
  }
}
@media only screen and (max-width: 740px) {
  #home .p-header {
    background-color: transparent;
  }
}

.p-header__sitename {
  display: grid;
  grid-template: "univname depname" auto/auto 1fr;
  text-decoration: none;
}
@media only screen and (max-width: 740px) {
  .p-header__sitename {
    grid-template: "univname depname" auto/auto 1fr;
  }
}

.p-header__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: univname;
  background-image: url(../img/cmn/logo.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 15.7rem;
  aspect-ratio: 157/32;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  text-indent: 200%;
  align-self: center;
  margin-right: 1.6rem;
}

.p-footer__sitename > .p-header__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.p-modalnav__sitename > .p-header__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
@media only screen and (max-width: 740px) {
  .p-header__sitename__univname {
    font-size: 1.6rem;
    margin-right: 0.8rem;
    background-image: url(../img/cmn/logo-white.svg);
  }
}
@media only screen and (max-width: 560px) {
  .p-header__sitename__univname {
    margin-right: 0.6rem;
  }
}
@media only screen and (max-width: 740px) {
  #home .p-header__sitename__univname {
    background-image: url(../img/cmn/logo-white.svg);
  }
}

.p-header__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: depname;
  border-left: 1px solid var(--color-black);
  display: flex;
  padding-left: 1.6rem;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2;
}

.p-footer__sitename > .p-header__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

.p-modalnav__sitename > .p-header__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
@media only screen and (max-width: 740px) {
  .p-header__sitename__depname {
    padding-left: 0.8rem;
    color: var(--color-white);
    border-left-color: var(--color-white);
  }
}
@media only screen and (max-width: 560px) {
  .p-header__sitename__depname {
    padding-left: 0.6rem;
  }
}
.p-header__sitename__depname span {
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-header__sitename__depname span {
    font-size: 1rem;
  }
}
.p-header__sitename__depname strong {
  font-size: 1.6rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-header__sitename__depname strong {
    font-size: max(2vw, 1.4rem);
  }
}
@media only screen and (max-width: 560px) {
  .p-header__sitename__depname strong {
    font-size: max(2vw, 1.3rem);
  }
}
@media only screen and (max-width: 740px) {
  #home .p-header__sitename__depname {
    color: var(--color-white);
    border-left-color: var(--color-white);
  }
}

.p-header__hambbtn {
  background: linear-gradient(180deg, #363BB3 0%, #181B75 100%);
  padding: 0.4rem 0;
}

.p-footer {
  background: var(--color-darkblue);
  color: var(--color-white);
  padding: 0 var(--sidemargin);
}

.p-footer__banners {
  position: relative;
}
.p-footer__banners::before {
  display: block;
  content: "";
  position: absolute;
  background-color: #F6F6F6;
  width: calc(100vw - var(--sidebar));
  height: 100%;
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
  top: 0;
  left: 0;
}
@media only screen and (max-width: 740px) {
  .p-footer__banners::before {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.p-footer__banners > * {
  position: relative;
}
#home .p-footer__banners::before {
  display: none;
}

.p-footer__banner {
  display: block;
  width: 100%;
  border: 1px solid #DDD;
  background-color: var(--color-white);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.p-footer__banner.is-hover {
  opacity: 0.5;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.p-footer__sitename {
  display: grid;
  grid-template: "mark univname depname" auto/50px auto 1fr;
  text-decoration: none;
}
@media only screen and (max-width: 740px) {
  .p-footer__sitename {
    grid-template: "mark univname depname" auto/30px auto 1fr;
  }
  .p-footer__sitename > .p-header__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-footer__sitename > .p-header__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}

.p-footer__sitename__mark {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: mark;
  align-self: center;
}

.p-modalnav__sitename > .p-footer__sitename__mark {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.p-footer__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: univname;
  font-size: 2.4rem;
  font-weight: bold;
  margin-left: 1.6rem;
  margin-right: 1.6rem;
  align-self: center;
}

.p-footer__sitename > .p-footer__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.p-modalnav__sitename > .p-footer__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
@media only screen and (max-width: 740px) {
  .p-footer__sitename__univname {
    font-size: 1.6rem;
    margin-left: 0.8rem;
  }
}

.p-footer__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: depname;
  border-left: 1px solid var(--color-white);
  display: flex;
  padding-left: 1.6rem;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2;
}

.p-footer__sitename > .p-footer__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

.p-modalnav__sitename > .p-footer__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
.p-footer__sitename__depname span {
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-footer__sitename__depname span {
    font-size: 1rem;
  }
}
.p-footer__sitename__depname strong {
  font-size: 1.6rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-footer__sitename__depname strong {
    font-size: 1.4rem;
  }
}

.p-footer__info__name {
  font-weight: bold;
  font-size: 1.3rem;
}

.p-footer__info__address {
  font-size: 1.3rem;
}

.p-footer__info__tel {
  display: flex;
  gap: 1.6rem;
}
.p-footer__info__tel a {
  text-decoration: none;
}
.p-footer__info__tel a.is-hover {
  text-decoration: underline;
}

.p-footer__copyright {
  text-align: right;
  padding: 1.6rem 0;
  border-top: 1px solid #5E7F9E;
  display: block;
  font-size: 1.2rem;
}

.p-contents__ttl__centerline {
  position: relative;
}
.p-contents__ttl__centerline::before {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: #363BB3;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: -1;
}
.p-contents__ttl__centerline span {
  display: inline-block;
  background-color: #FFFFFF;
  padding-right: 1.4rem;
  font-size: 2.4rem;
  font-weight: 600;
}

.p-contents__ttl__bicolor {
  position: relative;
  counter-reset: number;
}
.p-contents__ttl__bicolor::before {
  content: "";
  display: block;
  width: 4px;
  height: 50%;
  background: #0066ff;
  position: absolute;
  top: calc(50% + 1px);
  left: 0;
  transform: translateY(-100%);
}
.p-contents__ttl__bicolor::after {
  content: "";
  display: block;
  width: 4px;
  height: 50%;
  background: #2E2683;
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
}
.p-contents__ttl__bicolor span {
  display: inline-block;
  padding-left: 2rem;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.6;
}
.p-contents__ttl__bicolor span.is-sub {
  font-size: 1.4rem;
}

.p-contents__ttl__underline {
  padding: 1.2rem 0;
  position: relative;
}
.p-contents__ttl__underline span {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 600;
}
.p-contents__ttl__underline::before {
  counter-increment: number 1;
  content: counter(number) ".";
  padding-right: 0.8rem;
  font-size: 1.8rem;
  font-weight: 600;
}
.p-contents__ttl__underline::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #d7d7d7;
  position: absolute;
  bottom: 0;
  left: 0;
}
.p-contents__ttl__underline.no-number::before {
  content: "";
  padding-right: 0;
}

.p-contents__txt {
  font-size: 1.6rem;
}

.p-contents__img {
  display: block;
  width: 100%;
  aspect-ratio: 809/392;
  margin-bottom: 2.4rem;
  position: relative;
}
.p-contents__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.p-sidebar {
  background: linear-gradient(180deg, #363BB3 0%, #181B75 100%);
}

.p-sidebar__tagline {
  line-height: 1;
  color: var(--color-white);
  writing-mode: vertical-rl;
  display: flex;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 2.4rem;
  font-size: 1.2rem;
}

.p-btn__entxt__link {
  text-decoration: none;
}
.p-btn__entxt__link.is-hover {
  border-bottom: none;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.p-btn__entxt__link.is-hoverOut {
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.p-btn__entxt__link span {
  font-family: "Rockwell";
  font-weight: bold;
  border-bottom-width: 4px;
  border-bottom-style: solid;
  color: #363BB3;
  border-bottom-color: #363BB3;
}
.p-btn__entxt__link--white span {
  color: #FFFFFF;
  border-bottom-color: #FFFFFF;
}

.p-btn__cvbtn {
  display: block;
  padding: 2.4rem;
  text-align: center;
  text-decoration: none;
  position: relative;
  background: #363BB3;
  color: #FFFFFF;
}
.p-btn__cvbtn.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.p-btn__cvbtn.is-hoverOut {
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.p-btn__cvbtn span {
  font-weight: bold;
  line-height: 1.4;
  padding-right: 3.2rem;
  display: inline-block;
  position: relative;
  font-size: 2.4rem;
}
@media only screen and (max-width: 979px) {
  .p-btn__cvbtn span {
    display: block;
    text-align: left;
  }
}
@media only screen and (max-width: 740px) {
  .p-btn__cvbtn span {
    display: inline-block;
  }
}
.p-btn__cvbtn span i {
  display: block;
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-btn__cvbtn span i::after, .p-btn__cvbtn span i::before {
  content: "";
  display: block;
  position: absolute;
}
.p-btn__cvbtn span i::before {
  width: 100%;
  height: 2px;
  background: #FFFFFF;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-btn__cvbtn span i::after {
  width: 80%;
  height: 80%;
  border-right: 2px solid #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(-45deg);
}

.p-btn__btn {
  display: block;
  padding: 2rem;
  text-align: center;
  text-decoration: none;
  position: relative;
  background: #363BB3;
  color: #FFFFFF;
}
.p-btn__btn.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.p-btn__btn.is-hoverOut {
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.p-btn__btn span {
  font-weight: bold;
  line-height: 1.4;
  display: inline-block;
  position: relative;
}
@media only screen and (max-width: 979px) {
  .p-btn__btn span {
    display: block;
    text-align: left;
  }
}
@media only screen and (max-width: 740px) {
  .p-btn__btn span {
    display: inline-block;
  }
}
.p-btn__btn span i {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-btn__btn span i::after, .p-btn__btn span i::before {
  content: "";
  display: block;
  position: absolute;
}
.p-btn__btn span i::before {
  width: 100%;
  height: 2px;
  background: #FFFFFF;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-btn__btn span i::after {
  width: 80%;
  height: 80%;
  border-right: 2px solid #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(-45deg);
}
.p-btn__btn--min span {
  font-size: 1.4rem;
  padding-right: 2.4rem;
}
.p-btn__btn--min span i {
  width: 1.2rem;
  height: 1.2rem;
}
.p-btn__btn--large span {
  font-size: 2.4rem;
  padding-right: 3.2rem;
}
@media only screen and (max-width: 740px) {
  .p-btn__btn--large span {
    font-size: 2rem;
  }
}
.p-btn__btn--large span i {
  width: 2rem;
  height: 2rem;
}

.p-modalnav__bg {
  background: rgba(0, 0, 0, 0.5);
  display: block;
  height: 100vh;
  left: 0;
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 0;
}

.p-modalnav__inner {
  background: linear-gradient(180deg, #181B75 0%, #363BB3 100%);
  color: var(--color-white);
}

.p-modalnav__sitename {
  display: grid;
  grid-template: "mark univname depname" auto/50px auto 1fr;
  text-decoration: none;
}
@media only screen and (max-width: 740px) {
  .p-modalnav__sitename {
    grid-template: "mark univname depname" auto/30px auto 1fr;
  }
  .p-modalnav__sitename > .p-header__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-modalnav__sitename > .p-header__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-modalnav__sitename > .p-footer__sitename__mark {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-modalnav__sitename > .p-footer__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-modalnav__sitename > .p-footer__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}

.p-modalnav__sitename__mark {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: mark;
  align-self: center;
}

.p-modalnav__sitename > .p-modalnav__sitename__mark {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.p-modalnav__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: univname;
  font-size: 2.4rem;
  font-weight: bold;
  margin-left: 1.6rem;
  margin-right: 1.6rem;
  align-self: center;
}

.p-footer__sitename > .p-modalnav__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.p-modalnav__sitename > .p-modalnav__sitename__univname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
@media only screen and (max-width: 740px) {
  .p-modalnav__sitename__univname {
    font-size: 1.6rem;
    margin-left: 0.8rem;
  }
}

.p-modalnav__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: depname;
  border-left: 1px solid var(--color-white);
  display: flex;
  padding-left: 1.6rem;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2;
}

.p-footer__sitename > .p-modalnav__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

.p-modalnav__sitename > .p-modalnav__sitename__depname {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

@media only screen and (max-width: 740px){
  .p-header__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-header__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-footer__sitename__mark {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-footer__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-footer__sitename > .p-footer__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-footer__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-footer__sitename > .p-footer__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-modalnav__sitename__mark {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-modalnav__sitename > .p-modalnav__sitename__mark {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-modalnav__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-footer__sitename > .p-modalnav__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-modalnav__sitename > .p-modalnav__sitename__univname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-modalnav__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-footer__sitename > .p-modalnav__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-modalnav__sitename > .p-modalnav__sitename__depname {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
.p-modalnav__sitename__depname span {
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-modalnav__sitename__depname span {
    font-size: 1rem;
  }
}
.p-modalnav__sitename__depname strong {
  font-size: 1.6rem;
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-modalnav__sitename__depname strong {
    font-size: 1.4rem;
  }
}

.p-modalnav__gnav__btn {
  display: block;
  position: relative;
  text-decoration: none;
  font-size: 1.8rem;
}
@media only screen and (max-width: 740px) {
  .p-modalnav__gnav__btn {
    font-size: 1.6rem;
  }
}
.p-modalnav__gnav__btn.is-hover {
  text-decoration: underline;
}
.p-modalnav__gnav__btn::after {
  background-image: url(../img/cmn/icon-arrow-white.svg);
  position: absolute;
  display: block;
  content: "";
  width: 12px;
  aspect-ratio: 9.5/6;
  background-size: contain;
  background-repeat: no-repeat;
  right: 0.8rem;
  top: 50%;
  transform: translateY(-50%);
}

.p-modalnav__othernav__btn {
  position: relative;
  display: block;
  padding-left: 2.4rem;
  text-decoration: none;
}
.p-modalnav__othernav__btn.is-hover {
  text-decoration: underline;
}
.p-modalnav__othernav__btn::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1px;
  background-color: var(--color-white);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.p-page__head {
  padding-top: 10vw;
  position: relative;
}
@media only screen and (max-width: 740px) {
  .p-page__head {
    padding-top: 50vw;
  }
}

.p-page__head__ttl {
  background: var(--color-darkblue);
  color: var(--color-white);
  font-size: 3.6rem;
  padding: 0 2.4rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline-start: 0;
  margin-inline-end: auto;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 740px) {
  .p-page__head__ttl {
    margin-left: calc(50% - 50vw);
    font-size: 2.4rem;
  }
}

.p-page__head__thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100vw - var(--sidemargin));
  height: 100%;
  z-index: 0;
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
}
@media only screen and (max-width: 740px) {
  .p-page__head__thumb {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.p-page__head__thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.p-breadcrumb {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  flex-wrap: nowrap;
}
@media only screen and (max-width: 740px) {
  .p-breadcrumb {
    overflow-x: scroll;
  }
}

.p-breadcrumb__item {
  display: block;
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.2rem;
  white-space: nowrap;
}
.p-breadcrumb__item::before {
  content: "";
  display: block;
  width: 0.8rem;
  aspect-ratio: 1/1;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%) rotate(-45deg);
}
.p-breadcrumb__item--home {
  padding-left: 0;
}
.p-breadcrumb__item--home::before {
  display: none;
}

.p-sidenav {
  background: #F6F6F6;
  padding: 2.4rem 0;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

/*-----------------------------------------
mv
-----------------------------------------*/
.u-home__mv {
  position: relative;
  display: flex;
  align-items: flex-end;
  width: calc(100vw - var(--sidebar));
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
}
@media only screen and (max-width: 740px) {
  .u-home__mv {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

.u-home__mv__wrap {
  height: 100%;
}

.u-home__catch {
  position: relative;
  margin-bottom: 2.4rem;
  margin-left: 2.4rem;
  z-index: 1;
}

.u-home__catch__main {
  line-height: 1.1;
  font-size: clamp(10rem, 7.8125vw, 12rem);
  font-weight: bold;
  color: var(--color-white);
}
@media only screen and (max-width: 740px) {
  .u-home__catch__main {
    font-size: min(5.6rem, 18.5185185185vw);
  }
}

.u-home__catch__sub {
  font-size: 1.6rem;
  line-height: 1.5;
  color: var(--color-white);
  font-weight: bold;
}

.u-home__mv__visual {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  height: 100%;
  width: 100%;
  z-index: 0;
}

.u-home__mv__single {
  width: 50%;
  overflow: hidden;
}
@media only screen and (max-width: 740px) {
  .u-home__mv__single {
    width: 100%;
  }
}
@media only screen and (max-width: 740px) {
  .u-home__mv__single--left {
    display: none;
  }
}

.u-home__mv__item {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.u-home__mv__item img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.u-home__controller {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  gap: 1px;
}

.u-home__controller__btn {
  display: block;
  background: var(--color-black);
  width: 5.4rem;
  aspect-ratio: 1/1;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 200%;
  position: relative;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.u-home__controller__btn::after {
  content: "";
  display: block;
  width: 25%;
  height: 25%;
  border-right: 1px solid var(--color-white);
  border-bottom: 1px solid var(--color-white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(calc(-50% - 4px), -50%) rotate(-45deg);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.u-home__controller__btn--prev::after {
  transform: translate(calc(-50% + 4px), -50%) rotate(135deg);
}
.u-home__controller__btn.is-hover {
  background: var(--color-blue);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*-----------------------------------------
content index
-----------------------------------------*/
.u-home__contentindex {
  position: relative;
  padding: 6.4rem 0;
}
.u-home__contentindex::after, .u-home__contentindex::before {
  content: " ";
  display: block;
  background-image: url(../img/home/rect.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 37.5rem;
  aspect-ratio: 1/1;
  position: absolute;
}
.u-home__contentindex::before {
  top: 0;
  right: 0;
  transform: translateX(100%);
}
@media only screen and (max-width: 740px) {
  .u-home__contentindex::before {
    transform: translateX(30%);
  }
}
.u-home__contentindex::after {
  bottom: 0;
  left: 0;
  transform: translateX(-80%);
}
@media only screen and (max-width: 740px) {
  .u-home__contentindex::after {
    transform: translateX(-30%);
  }
}

.u-home__contentindex__btngroup {
  position: relative;
  display: flex;
  align-items: flex-end;
  padding-bottom: 1.6rem;
  aspect-ratio: 523/290;
  padding: 1.6rem;
  text-decoration: none;
}
@media only screen and (max-width: 979px) {
  .u-home__contentindex__btngroup {
    padding: 0.8rem;
  }
}
.u-home__contentindex__btngroup--interview {
  aspect-ratio: 523/414;
}
.u-home__contentindex__btngroup--instructor {
  aspect-ratio: 522/239;
}
.u-home__contentindex__btngroup > * {
  position: relative;
}

.u-home__contentindex__btngroup__pic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-white);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.u-home__contentindex__btngroup__pic img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.is-hover .u-home__contentindex__btngroup__pic img {
  filter: grayscale(100%);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.u-home__contentindex__txt {
  font-size: 1.5rem;
  line-height: 1.7;
  padding-top: 0.8rem;
}

.u-home__subcontentindex {
  position: relative;
}
.u-home__subcontentindex::before {
  display: block;
  content: "";
  position: absolute;
  background-color: #F6F6F6;
  width: calc(100vw - var(--sidebar));
  height: 100%;
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
}
@media only screen and (max-width: 740px) {
  .u-home__subcontentindex::before {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.u-home__subcontentindex > * {
  position: relative;
}

.u-home__subcontentindex__btn {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  text-decoration: none;
}

.u-home__subcontentindex__btn__pic {
  display: block;
  width: 100%;
  aspect-ratio: 522/240;
  position: relative;
  overflow: hidden;
}
.u-home__subcontentindex__btn__pic img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .u-home__subcontentindex__btn__pic img {
  scale: 1.1;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.u-home__news {
  position: relative;
  padding: 6.4rem 0;
}
.u-home__news::before {
  display: block;
  content: "";
  position: absolute;
  background-color: #F6F6F6;
  width: calc(100vw - var(--sidebar));
  height: 100%;
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
  top: 0;
  left: 0;
}
@media only screen and (max-width: 740px) {
  .u-home__news::before {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.u-home__news > * {
  position: relative;
}
@media only screen and (max-width: 740px) {
  .u-home__news {
    padding: 3.2rem 0;
  }
}

.u-home__center {
  position: relative;
  padding: 6.4rem 0 20vw;
}
@media only screen and (max-width: 740px) {
  .u-home__center {
    padding: 6.4rem 0 100vw;
  }
}
.u-home__center::after {
  content: "";
  display: block;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background-image: url(../img/home/base-txt.svg);
  background-size: 1812px 102px;
  background-repeat: repeat-x;
  background-position: center left;
  animation: rotation-line 20s linear infinite;
  width: 100vw;
  height: 102px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
  position: absolute;
  bottom: -4px;
  left: 0;
}

.u-home__center__image {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100vw - var(--sidebar));
  height: 100%;
  margin-left: calc(50% - (50vw - var(--sidebar) / 2));
  margin-right: calc(50% - (50vw - var(--sidebar) / 2));
}
@media only screen and (max-width: 740px) {
  .u-home__center__image {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.u-home__center__image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.u-home__center__catch {
  position: relative;
  font-size: max(2.5vw, 3.2rem);
  font-weight: bold;
  color: var(--color-white);
  line-height: 1.5;
}
@media only screen and (max-width: 740px) {
  .u-home__center__catch {
    font-size: min(2rem, 6.3492063492vw);
  }
}

.u-home__center__btn {
  position: relative;
  padding-top: 4rem;
  width: -moz-fit-content;
  width: fit-content;
}

@keyframes rotation-line {
  0% {
    background-position: 1000px 0;
  }
  to {
    background-position: 0 0;
  }
}
.u-home__about {
  position: relative;
}
.u-home__about::after, .u-home__about::before {
  content: " ";
  display: block;
  background-image: url(../img/home/rect.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 37.5rem;
  aspect-ratio: 1/1;
  position: absolute;
}
.u-home__about::before {
  top: 0;
  right: 0;
  transform: translateX(50%);
}
@media only screen and (max-width: 740px) {
  .u-home__about::before {
    transform: translateX(30%);
  }
}
.u-home__about::after {
  bottom: 0;
  left: 0;
  transform: translateX(-80%);
}
@media only screen and (max-width: 740px) {
  .u-home__about::after {
    transform: translateX(-30%);
  }
}

.u-home__about__slide {
  overflow: hidden;
  width: 100%;
}
.u-home__about__slide .swiper-slide {
  aspect-ratio: 450/520;
  overflow: hidden;
}
.u-home__about__slide .swiper-slide img {
  width: 100%;
  height: auto;
}

.u-home__about__catch {
  font-size: clamp(2.4rem, 2.5vw, 3.2rem);
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 740px) {
  .u-home__about__catch {
    font-size: min(2rem, 6.3492063492vw);
  }
}
.u-home__about__catch span {
  font-size: 1.2rem;
}

.u-home__about__annotation {
  font-size: 1.2rem;
  padding-top: 0.4rem;
}

.u-home__about__txt {
  font-size: 1.6rem;
  line-height: 2;
}

.u-about__president__comment {
  width: calc(60% - 2.4rem);
}
@media only screen and (max-width: 740px) {
  .u-about__president__comment {
    width: 100%;
  }
}

.u-about__president__img {
  width: calc(40% - 2.4rem);
  aspect-ratio: 307/362;
}
@media only screen and (max-width: 740px) {
  .u-about__president__img {
    width: 32rem;
    margin-left: auto;
    margin-right: 0;
  }
}
@media only screen and (max-width: 740px) {
  .u-about__president__img {
    width: 28rem;
    margin: 0 auto;
  }
}

.u-curriculum__table {
  display: block;
  overflow-x: auto;
  width: 100%;
}
.u-curriculum__table tbody {
  display: table;
  table-layout: auto;
  width: 100%;
  border: 2px solid #f5f5f5;
}
.u-curriculum__table th {
  border: 2px solid #f5f5f5;
  vertical-align: middle;
}
.u-curriculum__table td {
  border: 2px solid #f5f5f5;
  vertical-align: middle;
}

.u-curriculum__table__head > th {
  width: 20%;
  font-size: 1.4rem;
  font-weight: 600;
  color: #FFFFFF;
  background-color: #363BB3;
}

.u-curriculum__table__item > th {
  padding: 1.6rem 0.8rem;
  font-size: 1.2rem;
  font-weight: 600;
}
.u-curriculum__table__item > td {
  padding: 1.6rem 0.8rem;
  font-size: 1.2rem;
  font-weight: 500;
}
.u-curriculum__table__item--general > th, .u-curriculum__table__item--faculty > th {
  background: #e4e4e4;
}

.u-curriculum__table__item____head--cat {
  background-color: #797979 !important;
  padding: 0.4rem !important;
  color: #FFFFFF;
  writing-mode: vertical-rl;
  letter-spacing: 0.4em;
}

.u-result__top__catch {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: catch;
  font-size: 2.4rem;
  font-weight: 700;
}

.l-result__top > .u-result__top__catch {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media only screen and (max-width: 979px) {
  .u-result__top__catch {
    font-size: clamp(1.6rem, 3.125vw, 2.4rem);
  }
}
@media only screen and (max-width: 560px) {
  .u-result__top__catch {
    font-size: 2rem;
  }
}

.u-result__top__txt {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: txt;
  font-size: 1.6rem;
}

.l-result__top > .u-result__top__txt {
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
}

.u-result__top__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: img;
  display: block;
  width: 100%;
  position: relative;
}

@media only screen and (max-width: 979px){
  .l-home__about__content__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-home__about__content__txt {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .l-home__about__content__btn {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .u-result__top__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-result__top > .u-result__top__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .u-result__top__txt {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .l-result__top > .u-result__top__txt {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .u-result__top__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
  }
}

@media only screen and (max-width: 560px){
  .l-result__top > .u-result__top__catch {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .l-result__top > .u-result__top__txt {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .u-result__top__img {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
}
.u-result__top__img img {
  width: 100%;
}
@media only screen and (max-width: 560px) {
  .u-result__top__img {
    max-width: 40rem;
    margin-inline: auto;
  }
}

.u-result__ratio__item > *:first-child {
  margin-top: 0;
}
.u-result__ratio__item--area {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: area;
}
.u-result__ratio__item--job {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: job;
}
@media only screen and (max-width: 740px){
  .u-result__ratio__item--area {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .u-result__ratio__item--job {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}

.u-result__ratio__item__img {
  display: block;
  width: 100%;
  aspect-ratio: 405/304;
  position: relative;
}
.u-result__ratio__item__img img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
