@charset "UTF-8";
.wpcf7-response-output, .course .overviewBlc__tbl tr th, .course .overviewBlc__tbl tr td, .cmn-txt.--big, .cmn-txt.--small, .cmn-txt {
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.01em;
}

html {
  background-color: #FFF;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-width: 300px;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
  font-size: 2.5641025641vw;
}
@media screen and (min-width: 431px) {
  html {
    font-size: 1.2820512821vw;
  }
}
@media screen and (min-width: 1120px) {
  html {
    font-size: 62.5%;
  }
}

article,
aside,
figure,
footer,
header,
hgroup,
section {
  display: block;
}

body,
button,
input,
select,
textarea {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

body {
  overflow-x: hidden;
  color: #222;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
}

body:not(.home) {
  background-color: #F8F9F9;
}

a, a div {
  text-decoration: none;
  color: inherit;
  -webkit-transition: 0.5s all ease;
  transition: 0.5s all ease;
  cursor: pointer;
}

a:not([class]):focus, a:not([class]) div:focus {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  a:not([class]):hover, a:not([class]) div:hover {
    opacity: 0.7;
  }
}

hr {
  background-color: #F2F2F2;
  border: none;
  display: block;
  height: 1px;
  margin: 1.5em 0;
}

img {
  height: auto;
  max-width: 100%;
}

input[type=checkbox],
input[type=radio] {
  vertical-align: baseline;
}

small {
  font-size: 13px;
}

span {
  font-style: inherit;
  font-weight: inherit;
}

strong {
  font-weight: 600;
  display: inline-block;
}

table td,
table th {
  text-align: left;
  vertical-align: top;
}

.grecaptcha-badge {
  visibility: hidden;
}

.is-clearfix::after {
  clear: both;
  content: " ";
  display: table;
}

.is-pulled-left {
  float: left !important;
}

.is-pulled-right {
  float: right !important;
}

.is-clipped {
  overflow: hidden !important;
}

.is-font-size-1 {
  font-size: 2.857rem !important;
}

.is-font-size-2 {
  font-size: 2.142rem !important;
}

.is-font-size-3 {
  font-size: 1.571rem !important;
}

.is-font-size-4 {
  font-size: 1.428rem !important;
}

.is-font-size-5 {
  font-size: 1.142rem !important;
}

.is-font-size-6 {
  font-size: 1rem !important;
}

.is-font-size-7 {
  font-size: 0.82rem !important;
}

.has-text-centered {
  text-align: center !important;
}

.has-text-justified {
  text-align: justify !important;
}

.has-text-left {
  text-align: left !important;
}

.has-text-right {
  text-align: right !important;
}

.is-italic {
  font-style: italic !important;
}

.has-text-main {
  color: #AC1C26 !important;
}

a.has-text-main:hover, a.has-text-main:focus {
  color: rgb(128.14, 20.86, 28.31) !important;
}

.has-background-main {
  background-color: #AC1C26 !important;
}

.has-text-main-dark {
  color: #590b10 !important;
}

a.has-text-main-dark:hover, a.has-text-main-dark:focus {
  color: rgb(43.61, 5.39, 7.84) !important;
}

.has-background-main-dark {
  background-color: #590b10 !important;
}

.has-text-accent {
  color: #C67A82 !important;
}

a.has-text-accent:hover, a.has-text-accent:focus {
  color: rgb(182.7, 86.3, 96.4473684211) !important;
}

.has-background-accent {
  background-color: #C67A82 !important;
}

.has-text-black {
  color: #222 !important;
}

a.has-text-black:hover, a.has-text-black:focus {
  color: rgb(8.5, 8.5, 8.5) !important;
}

.has-background-black {
  background-color: #222 !important;
}

.has-text-white {
  color: #FFF !important;
}

a.has-text-white:hover, a.has-text-white:focus {
  color: rgb(229.5, 229.5, 229.5) !important;
}

.has-background-white {
  background-color: #FFF !important;
}

.has-background-body {
  background-color: #FFF !important;
}

.has-background-gray {
  background-color: #F2F2F2 !important;
}

.is-block {
  display: block !important;
}

@media screen and (max-width: 430px) {
  .is-block-mobile {
    display: block !important;
  }
}
@media screen and (min-width: 431px) {
  .is-block-tablet {
    display: block !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-block-tablet-only {
    display: block !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-block-desktop {
    display: block !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-block-desktop-only {
    display: block !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-block-widescreen {
    display: block !important;
  }
}
.is-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

@media screen and (max-width: 430px) {
  .is-flex-mobile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media screen and (min-width: 431px) {
  .is-flex-tablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-flex-tablet-only {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-flex-desktop {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-flex-desktop-only {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-flex-widescreen {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}
.is-inline {
  display: inline !important;
}

@media screen and (max-width: 430px) {
  .is-inline-mobile {
    display: inline !important;
  }
}
@media screen and (min-width: 431px) {
  .is-inline-tablet {
    display: inline !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-inline-tablet-only {
    display: inline !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-inline-desktop {
    display: inline !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-inline-desktop-only {
    display: inline !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-inline-widescreen {
    display: inline !important;
  }
}
.is-inline-block {
  display: inline-block !important;
}

@media screen and (max-width: 430px) {
  .is-inline-block-mobile {
    display: inline-block !important;
  }
}
@media screen and (min-width: 431px) {
  .is-inline-block-tablet {
    display: inline-block !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-inline-block-tablet-only {
    display: inline-block !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-inline-block-desktop {
    display: inline-block !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-inline-block-desktop-only {
    display: inline-block !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-inline-block-widescreen {
    display: inline-block !important;
  }
}
.is-inline-flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media screen and (max-width: 430px) {
  .is-inline-flex-mobile {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media screen and (min-width: 431px) {
  .is-inline-flex-tablet {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-inline-flex-tablet-only {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-inline-flex-desktop {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-inline-flex-desktop-only {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-inline-flex-widescreen {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
.is-hidden {
  display: none !important;
}

@media screen and (max-width: 430px) {
  .is-hidden-mobile {
    display: none !important;
  }
}
@media screen and (min-width: 431px) {
  .is-hidden-tablet {
    display: none !important;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .is-hidden-tablet-only {
    display: none !important;
  }
}
@media screen and (min-width: 1120px) {
  .is-hidden-desktop {
    display: none !important;
  }
}
@media screen and (min-width: 1120px) and (max-width: 1151px) {
  .is-hidden-desktop-only {
    display: none !important;
  }
}
@media screen and (min-width: 1152px) {
  .is-hidden-widescreen {
    display: none !important;
  }
}
.is-marginless {
  margin: 0 !important;
}

.is-paddingless {
  padding: 0 !important;
}

.is-radiusless {
  border-radius: 0 !important;
}

.is-padding-y {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}
.is-padding-y.is-medium {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.is-touch-device-padding-x {
  padding-left: 1rem;
  padding-right: 1rem;
}

.is-margin-bottom {
  margin-bottom: 1.5rem !important;
}

.anchor {
  margin-top: min(-13.3333333333vw,-50px);
  padding-top: min(13.3333333333vw,50px);
}
@media screen and (min-width: 1120px) {
  .anchor {
    margin-top: -80px;
    padding-top: 80px;
  }
}

.cmn-width {
  width: 91.4666666667vw;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 431px) {
  .cmn-width {
    width: calc(100vw - 64px);
  }
}
@media screen and (min-width: 1120px) {
  .cmn-width {
    width: 1120px;
  }
}
@media screen and (min-width: 1120px) {
  .cmn-width.--mini {
    width: 780px;
  }
}

a.link {
  display: block;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
a.link:focus {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  a.link:hover {
    opacity: 0.7;
  }
}

.underline-bf {
  text-decoration: underline;
  color: #AC1C26;
  cursor: pointer;
}
.underline-bf:hover {
  text-decoration: none;
  opacity: 1 !important;
}

.underline-af {
  cursor: pointer;
}
.underline-af:hover {
  text-decoration: underline;
  opacity: 1 !important;
}

.hover {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.hover:hover {
  opacity: 0.7;
}

.underline-hover {
  padding-bottom: 0.25em;
  background: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000)) 0 100%/0 1px no-repeat;
  background: linear-gradient(#000, #000) 0 100%/0 1px no-repeat;
  -webkit-transition: background 0.4s;
  transition: background 0.4s;
  text-decoration: none;
  cursor: pointer;
}
.underline-hover:hover {
  background-size: 100% 1px;
}
.underline-hover.reverse {
  background-position: 100% 100%;
}

@media screen and (min-width: 431px) {
  a.telLink {
    pointer-events: none;
  }
}

img {
  width: auto;
}

.svg {
  position: relative;
}
.svg svg,
.svg .svgImg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.cmn-txt {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .cmn-txt {
    font-size: 16px;
  }
}
.cmn-txt.--small {
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 431px) {
  .cmn-txt.--small {
    font-size: 14px;
  }
}
.cmn-txt.--big {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .cmn-txt.--big {
    font-size: 18px;
  }
}
.cmn-txt.--lh-16 {
  line-height: 1.6;
}
.cmn-txt p:not(:last-child) {
  margin-bottom: 1em;
}

.text-indent {
  text-indent: -1em;
  padding-left: 1em;
}

.font-serif {
  font-family: "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", sans-serif;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 1119px) {
  .pc {
    display: none !important;
  }
}

@media screen and (max-width: 430px) {
  .tb {
    display: none !important;
  }
}
@media screen and (min-width: 1120px) {
  .tb {
    display: none !important;
  }
}

@media screen and (min-width: 431px) {
  .sp {
    display: none !important;
  }
}

@media screen and (min-width: 1120px) {
  .touch-device {
    display: none !important;
  }
}

@media screen and (max-width: 430px) {
  .tablet {
    display: none !important;
  }
}

.pr {
  position: relative;
}

.img-fit img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

a .img-fit {
  position: relative;
  overflow: hidden;
}
a .img-fit img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (min-width: 1120px) {
  a:hover .img-fit img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
            transform: translate(-50%, -50%) scale(1.1);
  }
}

.mb10 {
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 431px) {
  .mb10 {
    margin-bottom: 10px !important;
  }
}

.mb28 {
  margin-bottom: 7.4666666667vw;
}
@media screen and (min-width: 431px) {
  .mb28 {
    margin-bottom: 28px;
  }
}

.mb40 {
  margin-bottom: 16vw;
}
@media screen and (min-width: 431px) {
  .mb40 {
    margin-bottom: 60px;
  }
}

.mb60 {
  margin-bottom: 16vw;
}
@media screen and (min-width: 431px) {
  .mb60 {
    margin-bottom: 60px;
  }
}

/*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

ul {
  list-style: none;
}

button,
input,
select,
textarea {
  margin: 0;
}

input, textarea, select {
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
}

* html input, * html textarea, * html select {
  font-size: 100%;
}

*:first-child + html + input, *:first-child html + textarea, *:first-child + html select {
  font-size: 100%;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

img,
embed,
iframe,
object,
audio,
video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
  text-align: left;
}

/* FADEIN */
.fadein--y {
  -webkit-transform: translateY(-16px);
          transform: translateY(-16px);
  opacity: 0;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.is--fire .fadein--y,
.fadein--y.is--fire {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.fadein {
  opacity: 0;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.is--fire .fadein,
.fadein.is--fire {
  opacity: 1;
}

.js-effect--opening .fadein, .js-effect--opening .fadein--y {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

/* DELAY */
.delay1 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.delay2 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.delay3 {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.delay4 {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.delay5 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.delay6 {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.delay7 {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.delay8 {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.delay9 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.delay10 {
  -webkit-transition-delay: 1.1s;
          transition-delay: 1.1s;
}

@font-face {
  font-family: "Zen Kaku Gothic New";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/ZenKakuGothicNew-Medium.woff") format("woff");
}
@font-face {
  font-family: "Zen Kaku Gothic New";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/ZenKakuGothicNew-Bold.woff") format("woff");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/Lato-Bold.woff") format("woff");
}
.font--num {
  font-family: "Lato";
  font-weight: 600;
  font-size: 1.3em;
}

body {
  background-color: #FFF !important;
  scroll-behavior: smooth;
  font-weight: 500;
}

section.section {
  padding: 21.3333333333vw 0;
}
@media screen and (min-width: 431px) {
  section.section {
    padding: 120px 0;
  }
}

i.icon {
  width: 6.4vw;
  height: 6.4vw;
  display: inline-block;
  background: url(../../images/study/icon_arrow.svg) no-repeat center/cover;
  -webkit-filter: invert(98%) sepia(91%) saturate(7%) hue-rotate(105deg) brightness(101%) contrast(103%);
          filter: invert(98%) sepia(91%) saturate(7%) hue-rotate(105deg) brightness(101%) contrast(103%);
}
@media screen and (min-width: 431px) {
  i.icon {
    width: 24px;
    height: 24px;
  }
}
i.icon--comment {
  background: url(../../images/study/icon_bubble.svg) no-repeat center/cover;
}
i.icon--people {
  background: url(../../images/study/icon_people.svg) no-repeat center/cover;
}
i.icon--q {
  background: url(../../images/study/icon_q.svg) no-repeat center/cover;
}
i.icon--a {
  background: url(../../images/study/icon_a.svg) no-repeat center/cover;
}
i.icon.-color--main {
  -webkit-filter: brightness(0) saturate(100%) invert(10%) sepia(87%) saturate(3574%) hue-rotate(343deg) brightness(101%) contrast(115%);
          filter: brightness(0) saturate(100%) invert(10%) sepia(87%) saturate(3574%) hue-rotate(343deg) brightness(101%) contrast(115%);
}
i.icon.-color--gray {
  -webkit-filter: brightness(0) saturate(100%) invert(76%) sepia(70%) saturate(5%) hue-rotate(63deg) brightness(91%) contrast(88%);
          filter: brightness(0) saturate(100%) invert(76%) sepia(70%) saturate(5%) hue-rotate(63deg) brightness(91%) contrast(88%);
}
i.icon.-size--large {
  width: 10.6666666667vw;
  height: 10.6666666667vw;
}
@media screen and (min-width: 431px) {
  i.icon.-size--large {
    width: 40px;
    height: 40px;
  }
}

.cmn-txt {
  line-height: 1.6;
  letter-spacing: 0;
  font-weight: 500;
}

.anchor {
  display: block;
  padding-top: 23.4666666667vw;
  margin-top: -23.4666666667vw;
}
@media screen and (min-width: 1120px) {
  .anchor {
    padding-top: 48px;
    margin-top: -48px;
  }
}

header .logo {
  width: 12.8vw;
  height: 12.8vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #AC1C26;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
@media screen and (min-width: 431px) {
  header .logo {
    width: 80px;
    height: 80px;
  }
}
header .logo img {
  width: 9.0666666667vw;
}
@media screen and (min-width: 431px) {
  header .logo img {
    width: 56px;
  }
}

.footer {
  background-color: #AC1C26;
  color: #FFF;
  padding: 21.3333333333vw 0 2.1333333333vw;
}
@media screen and (max-width: 430px) {
  .footer {
    text-align: center;
  }
}
@media screen and (min-width: 431px) {
  .footer {
    padding: 80px 0 8px;
  }
}
@media screen and (min-width: 431px) {
  .footer__inner {
    margin-bottom: 64px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.footer__logo {
  margin-bottom: 12.8vw;
}
@media screen and (min-width: 431px) {
  .footer__logo {
    margin-bottom: 0;
  }
}
.footer__logo .logo {
  width: 63.2vw;
  display: block;
}
@media screen and (max-width: 430px) {
  .footer__logo .logo {
    margin: 0 auto;
  }
}
@media screen and (min-width: 431px) {
  .footer__logo .logo {
    width: 237px;
  }
}
.footer__logo .label {
  font-size: 8.5333333333vw;
}
@media screen and (min-width: 431px) {
  .footer__logo .label {
    font-size: 32px;
  }
}
.footer__logo .label {
  font-weight: 600;
  line-height: 1.5;
  margin-top: 6.4vw;
}
@media screen and (min-width: 431px) {
  .footer__logo .label {
    margin-top: 24px;
  }
}
.footer__logo .label span {
  font-size: 1em;
}
.footer__logo .label__inner {
  display: inline;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(96%, transparent), color-stop(0%, #fff));
  background: linear-gradient(transparent 96%, #fff 0%);
}
.footer__company {
  letter-spacing: 0.05em;
  margin-bottom: 17.0666666667vw;
}
@media screen and (min-width: 431px) {
  .footer__company {
    margin-bottom: 0;
    text-align: right;
  }
}
.footer__company .company {
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .footer__company .company {
    font-size: 20px;
  }
}
.footer__company .company {
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .footer__company .company {
    margin-bottom: 16px;
  }
}
.footer__company .info {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .footer__company .info {
    font-size: 16px;
  }
}
.footer__company .info {
  line-height: 1.6;
}
.footer .copyright {
  text-align: center;
  font-size: 3.2vw;
}
@media screen and (min-width: 431px) {
  .footer .copyright {
    font-size: 12px;
  }
}

@media screen and (max-width: 430px) {
  .hero {
    padding-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .hero {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 1120px) {
  .hero {
    max-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    overflow: hidden;
  }
}
.hero__about {
  position: relative;
}
@media screen and (min-width: 1120px) {
  .hero__about {
    width: 53.72vw;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: min(16px, 7.1vw, 10%);
  }
}
.hero__about__inner {
  position: relative;
}
.hero__aboutTitle {
  margin-bottom: 8.5333333333vw;
}
@media screen and (max-width: 1119px) {
  .hero__aboutTitle {
    width: 100%;
    height: 69.3333333333vw;
    background: url(../../images/study/mv_slider-sp1.jpg) no-repeat center/cover;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .hero__aboutTitle::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: #222;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .hero__aboutTitle {
    height: 260px;
  }
}
@media screen and (min-width: 1120px) {
  .hero__aboutTitle {
    margin-bottom: 40px;
    text-align: center;
  }
}
.hero__aboutTitle .title {
  padding: 4.8vw 8.5333333333vw 5.3333333333vw;
  border-radius: 16vw;
  text-align: center;
  border: 1px solid #222;
  display: inline-block;
}
@media screen and (max-width: 1119px) {
  .hero__aboutTitle .title {
    color: #FFF;
    position: relative;
    z-index: 10;
    background: rgba(255, 255, 255, 0.2);
    border-color: #fff;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutTitle .title {
    padding: 20px 32px;
    border-radius: 60px;
  }
}
.hero__aboutTitle .title-sub {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutTitle .title-sub {
    font-size: 18px;
  }
}
.hero__aboutTitle .title-sub {
  font-weight: 600;
  margin-bottom: 3.7333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutTitle .title-sub {
    margin-bottom: 12px;
  }
}
.hero__aboutTitle .title-main {
  font-size: 6.9333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutTitle .title-main {
    font-size: 26px;
  }
}
.hero__aboutTitle .title-main {
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (min-width: 1120px) {
  .hero__aboutTitle .title-main {
    color: #AC1C26;
  }
}
@media screen and (max-width: 1119px) {
  .hero__aboutCourses {
    padding: 0 4.2666666667vw;
  }
}
.hero__aboutCourse:not(:last-child) {
  margin-bottom: 8.5333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse:not(:last-child) {
    margin-bottom: 32px;
  }
}
.hero__aboutCourse__title {
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__title {
    font-size: 20px;
  }
}
.hero__aboutCourse__title {
  letter-spacing: 0.05em;
  font-weight: 600;
  color: #AC1C26;
  margin-bottom: 4.2666666667vw;
}
@media screen and (max-width: 430px) {
  .hero__aboutCourse__title {
    text-align: center;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__title {
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 430px) {
  .hero__aboutCourse__box .organizeLists {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.6666666667vw 3.7333333333vw;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.hero__aboutCourse__box .organizeList:not(:last-child) {
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList:not(:last-child) {
    margin-bottom: 8px;
  }
}
.hero__aboutCourse__box .organizeList__num {
  background: #454545;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__num {
    font-size: 14px;
  }
}
.hero__aboutCourse__box .organizeList__num {
  font-weight: 600;
  color: #FFF;
  text-align: center;
  padding: 2.1333333333vw 0;
}
@media screen and (max-width: 430px) {
  .hero__aboutCourse__box .organizeList__num {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__num {
    width: 66px;
    padding: 8px 0;
  }
}
.hero__aboutCourse__box .organizeList__date {
  font-size: 4.8vw;
  font-weight: 600;
}
@media screen and (max-width: 430px) {
  .hero__aboutCourse__box .organizeList__date {
    text-align: center;
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__date {
    width: 130px;
    font-size: 16px;
    margin-left: 16px;
  }
}
.hero__aboutCourse__box .organizeList__date span {
  display: inline-block;
  margin: 0 0.5333333333vw 0 1.0666666667vw;
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__date span {
    font-size: 24px;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__date span {
    margin: 0 2px 0 4px;
  }
}
.hero__aboutCourse__box .organizeList__date span.day {
  width: 6.4vw;
  height: 6.4vw;
  border: 1px solid #222;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 3.2vw;
  border-radius: 100px;
  vertical-align: bottom;
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__date span.day {
    width: 20px;
    height: 20px;
    font-size: 11px;
  }
}
@media screen and (max-width: 430px) {
  .hero__aboutCourse__box .organizeList__subject {
    font-size: 3.2vw;
    letter-spacing: -0.05em;
    line-height: 1.5;
    text-align: center;
    color: #C67A82;
  }
}
@media screen and (min-width: 431px) {
  .hero__aboutCourse__box .organizeList__subject {
    font-size: 16px;
    margin-left: 16px;
  }
}
.hero__deco {
  display: inline-block;
  position: absolute;
  left: -54vw;
  top: 128vw;
  pointer-events: none;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.hero__deco__year {
  display: inline-block;
  font-size: 240px;
  letter-spacing: 0.05em;
  color: #F6F6F6;
}
@media screen and (min-width: 431px) {
  .hero__deco {
    top: 50%;
    left: -200px;
  }
}
@media screen and (min-width: 1120px) {
  .hero__deco {
    -webkit-transform: translateY(-45%) rotate(90deg);
            transform: translateY(-45%) rotate(90deg);
  }
}
@media screen and (min-width: 1120px) {
  .hero__slider {
    width: 46.28vw;
  }
}
.hero__btn {
  width: 86.4vw;
  height: 21.3333333333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #F2F2F2;
  position: relative;
}
@media screen and (max-width: 1119px) {
  .hero__btn {
    margin: 8.5333333333vw auto 0;
  }
}
@media screen and (min-width: 431px) {
  .hero__btn {
    width: 324px;
    height: 80px;
    margin-top: 48px;
  }
}
@media screen and (min-width: 1120px) {
  .hero__btn {
    margin-top: 32px;
    position: absolute;
    right: 0;
    bottom: 40px;
    z-index: 10;
    margin-top: 0;
    background-color: #FFF;
  }
  .hero__btn::before {
    content: "";
    width: calc(100% + 16px);
    height: calc(100% + 16px);
    display: block;
    background: rgba(255, 255, 255, 0.16);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: -1;
  }
  .hero__btn::after {
    content: "";
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: #C67A82;
    z-index: -1;
  }
}
.hero__btn:focus::after {
  width: 100%;
}
.hero__btn:focus .hero__btn__inner span {
  color: #FFF;
}
@media (hover: hover) and (pointer: fine) {
  .hero__btn:hover::after {
    width: 100%;
  }
  .hero__btn:hover .hero__btn__inner span {
    color: #FFF;
  }
}
.hero__btn__inner {
  padding: 6.4vw 8.5333333333vw 7.2vw;
}
@media screen and (min-width: 431px) {
  .hero__btn__inner {
    padding: 24px 32px 27px;
  }
}
.hero__btn__inner span {
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .hero__btn__inner span {
    font-size: 20px;
  }
}
.hero__btn__inner span {
  color: #AC1C26;
  font-weight: 600;
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hero__btn__arrow {
  height: 100%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #AC1C26;
}

@media screen and (min-width: 1120px) {
  .intro {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    gap: 80px;
  }
}
@media screen and (max-width: 430px) {
  .intro__blc-txt {
    margin-bottom: 8.5333333333vw;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .intro__blc-txt {
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 1120px) {
  .intro__blc-txt {
    width: 60%;
  }
}
.intro__blc-img {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 1120px) {
  .intro__blc-img {
    padding-top: 48px;
  }
}
.intro__blc-img::before {
  content: "";
  width: calc((100vw - 100%) / 2 + 100%);
  height: 42.6666666667vw;
  border-radius: 0 16vw 0 0;
  display: block;
  background: #AC1C26;
  position: absolute;
  bottom: 5.6vw;
  left: calc((100vw - 100%) / -2);
  z-index: -1;
}
@media screen and (min-width: 431px) {
  .intro__blc-img::before {
    height: 216px;
    bottom: 31px;
    border-radius: 0 80px 0 0;
  }
}
.intro__title {
  margin-bottom: 8.5333333333vw;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 431px) {
  .intro__title {
    margin-bottom: 32px;
  }
}
.intro__title--en {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .intro__title--en {
    font-size: 18px;
  }
}
.intro__title--en {
  color: #AC1C26;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .intro__title--en {
    margin-bottom: 16px;
  }
}
.intro__title--ja {
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .intro__title--ja {
    font-size: 24px;
  }
}
.intro__title--ja {
  line-height: 1.6666666667;
}
.intro__title--ja span {
  letter-spacing: -0.2em;
}
.intro__img {
  width: 80vw;
  margin-left: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .intro__img {
    width: 60%;
  }
}
@media screen and (min-width: 1120px) {
  .intro__img {
    width: 435px;
    margin-left: -34px;
    margin-right: 40px;
  }
}

@media screen and (min-width: 431px) {
  .overview {
    display: grid;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .overview {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1120px) {
  .overview {
    grid-template-columns: repeat(3, 1fr);
    overflow: hidden;
  }
}
.overview__title {
  margin-bottom: 8.5333333333vw;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 431px) {
  .overview__title {
    margin-bottom: 40px;
  }
}
.overview__title--en {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .overview__title--en {
    font-size: 16px;
  }
}
.overview__title--en {
  margin-bottom: 2.1333333333vw;
  color: #C67A82;
}
@media screen and (min-width: 431px) {
  .overview__title--en {
    margin-bottom: 12px;
  }
}
.overview__title--ja {
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .overview__title--ja {
    font-size: 24px;
  }
}
.overview__title--ja {
  color: #AC1C26;
}
.overview__blc {
  background-color: #F2F2F2;
  padding: 12.8vw 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .overview__blc {
    padding: 48px 32px;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .overview__blc {
    grid-area: 1/1/2/3;
  }
}
.overview__tbl {
  width: 100%;
}
.overview__tbl tr th, .overview__tbl tr td {
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 431px) {
  .overview__tbl tr th, .overview__tbl tr td {
    display: block;
    text-align: center;
  }
}
@media screen and (max-width: 430px) {
  .overview__tbl tr th:not(:last-child), .overview__tbl tr td:not(:last-child) {
    border-bottom: 2.1333333333vw solid #F2F2F2;
  }
}
.overview__tbl tr th {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .overview__tbl tr th {
    font-size: 18px;
  }
}
.overview__tbl tr th {
  font-weight: 600;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 4.2666666667vw 0;
  background-color: #FAFAFA;
}
@media screen and (max-width: 430px) {
  .overview__tbl tr th {
    width: 38.1333333333vw;
  }
}
@media screen and (min-width: 431px) {
  .overview__tbl tr th {
    padding: 12px;
  }
}
.overview__tbl tr td {
  padding: 3.2vw 4.2666666667vw;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .overview__tbl tr td {
    font-size: 16px;
  }
}
.overview__tbl tr td {
  line-height: 1.4;
}
@media screen and (min-width: 431px) {
  .overview__tbl tr td {
    padding: 12px 0 20px;
  }
}
.overview__people {
  width: 100%;
  height: 100%;
  position: relative;
  background: no-repeat top center/cover;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 4.2666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 430px) {
  .overview__people {
    aspect-ratio: 39/67;
  }
}
@media screen and (min-width: 431px) {
  .overview__people {
    padding: 16px;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .overview__people {
    aspect-ratio: auto;
  }
}
@media screen and (min-width: 1120px) {
  .overview__people {
    padding: 32px;
    max-height: 900px;
  }
}
.overview__people-takahashi {
  background-image: url(../../images/study/overview_img1.jpg);
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .overview__people-takahashi {
    grid-area: 2/1/3/2;
  }
}
.overview__people-nonomura {
  background-image: url(../../images/study/overview_img2.jpg);
}
@media screen and (min-width: 431px) {
  .overview__people-nonomura {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 1120px) {
  .overview__people-nonomura {
    padding-bottom: 62px;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .overview__people-nonomura {
    grid-area: 2/2/3/3;
  }
}
.overview__people::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(35%, rgba(242, 242, 242, 0)), color-stop(40%, rgba(50, 50, 50, 0.2)), color-stop(50%, rgba(50, 50, 50, 0.5)), to(rgba(0, 0, 0, 0.7)));
  background: linear-gradient(rgba(242, 242, 242, 0) 35%, rgba(50, 50, 50, 0.2) 40%, rgba(50, 50, 50, 0.5) 50%, rgba(0, 0, 0, 0.7) 100%);
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 1120px) {
  .overview__people::before {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, rgba(242, 242, 242, 0)), color-stop(60%, rgba(50, 50, 50, 0.2)), color-stop(70%, rgba(50, 50, 50, 0.5)), to(rgba(0, 0, 0, 0.7)));
    background: linear-gradient(rgba(242, 242, 242, 0) 55%, rgba(50, 50, 50, 0.2) 60%, rgba(50, 50, 50, 0.5) 70%, rgba(0, 0, 0, 0.7) 100%);
  }
}
.overview__people__prof {
  color: #FFF;
  text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.24);
  position: relative;
  z-index: 1;
}
.overview__people__prof__head {
  font-weight: 600;
  letter-spacing: 0.2em;
}
.overview__people__prof .post {
  font-size: 4.2666666667vw;
  margin-bottom: 3.2vw;
}
@media screen and (min-width: 431px) {
  .overview__people__prof .post {
    font-size: 18px;
    margin-bottom: 12px;
  }
}
.overview__people__prof .name {
  font-size: 5.3333333333vw;
  margin-bottom: 4.8vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.2vw;
}
@media screen and (min-width: 431px) {
  .overview__people__prof .name {
    font-size: 24px;
    margin-bottom: 16px;
    gap: 16px;
  }
}
.overview__people__prof .name--en {
  font-size: 3.4666666667vw;
}
@media screen and (min-width: 431px) {
  .overview__people__prof .name--en {
    font-size: 16px;
  }
}
.overview__people__prof .job {
  font-size: 4vw;
  margin-bottom: 3.2vw;
  padding: 2.1333333333vw 3.2vw;
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.16);
}
@media screen and (min-width: 431px) {
  .overview__people__prof .job {
    font-size: 18px;
    margin-bottom: 8px;
    padding: 8px 12px 10px;
  }
}
.overview__people__prof .cmn-txt {
  line-height: 1.75;
}

.entryBnr {
  background-color: #C67A82;
  padding: 8.5333333333vw 0;
}
@media screen and (min-width: 431px) {
  .entryBnr {
    padding: 40px 0;
  }
}
@media screen and (min-width: 431px) {
  .entryBnr__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 40px;
  }
}
.entryBnr__btn {
  display: block;
  position: relative;
  text-align: center;
  padding: 8.5333333333vw;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 430px) {
  .entryBnr__btn {
    margin: 4.2666666667vw 0;
  }
}
@media screen and (min-width: 431px) {
  .entryBnr__btn {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 32px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
}
.entryBnr__btn:focus {
  opacity: 0.7;
}
.entryBnr__btn:focus .icon {
  right: 8px;
}
@media (hover: hover) and (pointer: fine) {
  .entryBnr__btn:hover {
    opacity: 0.7;
  }
  .entryBnr__btn:hover .icon {
    right: 8px;
  }
}
.entryBnr__btn.--entry {
  background-color: #AC1C26;
  border: 1.6vw solid #B45760;
}
@media screen and (min-width: 431px) {
  .entryBnr__btn.--entry {
    border-width: 10px;
  }
}
.entryBnr__btn.--entry span {
  color: #FFF;
}
.entryBnr__btn.--qa {
  background-color: #FFF;
  border: 1.6vw solid #CD949A;
}
@media screen and (min-width: 431px) {
  .entryBnr__btn.--qa {
    border-width: 10px;
  }
}
.entryBnr__btn.--qa span {
  color: #AC1C26;
}
.entryBnr__btn span {
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .entryBnr__btn span {
    font-size: 24px;
  }
}
.entryBnr__btn span {
  font-weight: 600;
  text-align: center;
}
.entryBnr__btn .icon {
  position: absolute;
  top: 50%;
  right: 2.1333333333vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 431px) {
  .entryBnr__btn .icon {
    right: 16px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
}

.course {
  position: relative;
}
.course .note {
  border: 1px solid #AC1C26;
  padding: 1em;
  display: inline-block;
  font-size: 1.6rem;
  color: #AC1C26;
  display: inline-block;
  margin: 1rem 0;
}
@media screen and (min-width: 1120px) {
  .course__catch {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-align: left;
    display: inline-block;
    position: absolute;
    top: 100px;
    font-size: 100px;
    font-weight: 600;
    opacity: 0.06;
    letter-spacing: 0.01em;
  }
  .course__catch-left {
    left: -12px;
  }
  .course__catch-right {
    right: -12px;
  }
}
.course__headline {
  text-align: center;
  margin-bottom: 12.8vw;
}
@media screen and (min-width: 431px) {
  .course__headline {
    margin-bottom: 48px;
  }
}
.course__subject {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .course__subject {
    font-size: 16px;
  }
}
.course__subject {
  line-height: 1.6;
  margin-bottom: 3.2vw;
}
@media screen and (min-width: 431px) {
  .course__subject {
    margin-bottom: 12px;
  }
}
.course__title {
  font-weight: 600;
  letter-spacing: 0.05em;
}
.course__title--main {
  font-size: 10.6666666667vw;
}
@media screen and (min-width: 431px) {
  .course__title--main {
    font-size: 40px;
  }
}
.course__title--main {
  line-height: 1.5;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, #FBFF90));
  background: linear-gradient(transparent 60%, #FBFF90 0%);
  display: inline;
}
.course__title--sub {
  margin-top: 6.4vw;
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .course__title--sub {
    font-size: 24px;
  }
}
.course__title--sub {
  line-height: 1.4;
  color: #AC1C26;
}
@media screen and (min-width: 431px) {
  .course__title--sub {
    margin-top: 24px;
  }
}
@media screen and (min-width: 1120px) {
  .course__title--sub {
    position: relative;
    display: inline-block;
  }
  .course__title--sub::before, .course__title--sub::after {
    content: "";
    width: 100px;
    height: 1px;
    display: block;
    background: #C67A82;
    position: absolute;
    top: 50%;
  }
  .course__title--sub::before {
    left: -120px;
  }
  .course__title--sub::after {
    right: -120px;
  }
}
.course__containar {
  position: relative;
}
@media screen and (min-width: 1120px) {
  .course__containar {
    max-width: 100%;
    display: grid;
    grid-template-columns: 34% 66%;
    gap: 0;
  }
}
@media screen and (max-width: 1119px) {
  .course__head {
    width: 100vw;
    position: sticky;
    top: 0;
    left: 0;
    margin-left: calc((100vw - 100%) / -2);
    z-index: 10;
    background-color: #FFF;
    margin-bottom: 10.6666666667vw;
  }
  .course__head__link {
    height: 19.7333333333vw;
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 2.1333333333vw 0 0.5333333333vw;
    background-color: #C67A82;
  }
}
@media screen and (max-width: 1119px) and (min-width: 431px) and (max-width: 1119px) {
  .course__head__link {
    height: 74px;
    padding: 8px 0 2px;
  }
}
@media screen and (max-width: 1119px) {
  .course__head__link.is--current {
    background-color: #AC1C26;
  }
  .course__head__title {
    text-align: center;
    color: #FFF;
    font-size: 4.2666666667vw;
    font-weight: 600;
    line-height: 1.2;
  }
}
@media screen and (max-width: 1119px) and (min-width: 431px) and (max-width: 1119px) {
  .course__head__title {
    font-size: 18px;
  }
}
@media screen and (max-width: 1119px) {
  .course__head__title span {
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 1119px) and (min-width: 431px) and (max-width: 1119px) {
  .course__head__title span {
    font-size: 18px;
  }
}
@media screen and (max-width: 1119px) {
  .course__head__title .icon {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    margin-top: 1.0666666667vw;
  }
}
@media screen and (max-width: 1119px) and (min-width: 431px) and (max-width: 1119px) {
  .course__head__title .icon {
    margin-top: 0px;
  }
}
@media screen and (min-width: 1120px) {
  .course__head__inner {
    padding-top: 24px;
  }
  .course__head__link {
    display: block;
    font-size: 18px;
    color: #bcbcbc;
    letter-spacing: 0.05em;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .course__head__link:not(:last-child) {
    margin-bottom: 32px;
  }
  .course__head__link.is--current {
    font-size: 20px;
    color: #AC1C26;
    letter-spacing: 0;
  }
  .course__head__link:hover {
    font-size: 20px;
    color: #AC1C26;
    letter-spacing: 0;
  }
  .course__head__title {
    font-weight: 600;
    line-height: 1.6;
  }
}
@media screen and (max-width: 1119px) {
  .course__head__inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
  }
}
@media screen and (min-width: 1120px) {
  .course__head__inner {
    position: sticky;
    top: 0;
    left: 0;
  }
}
.course__body {
  position: relative;
}
@media screen and (min-width: 1120px) {
  .course__body {
    border-left: 1px solid #bcbcbc;
    padding-left: 46px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.course__area:not(:last-child) {
  padding-bottom: 17.0666666667vw;
  margin-bottom: 17.0666666667vw;
  border-bottom: 1px solid #bcbcbc;
}
@media screen and (min-width: 431px) {
  .course__area:not(:last-child) {
    padding-bottom: 64px;
    margin-bottom: 64px;
  }
}
.courseBlc:not(:last-child) {
  margin-bottom: 17.0666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc:not(:last-child) {
    margin-bottom: 64px;
  }
}
.courseBlc__title {
  display: inline-block;
  background-color: #AC1C26;
  padding: 2.1333333333vw 4.2666666667vw;
  margin-bottom: 8.5333333333vw;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__title {
    font-size: 20px;
  }
}
.courseBlc__title {
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #FFF;
}
@media screen and (min-width: 431px) {
  .courseBlc__title {
    padding: 8px 16px;
    margin-bottom: 32px;
  }
}
.courseBlc__balloon {
  position: relative;
  background-color: #F2F2F2;
  padding: 10.6666666667vw 4.2666666667vw;
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__balloon {
    padding: 40px 16px;
    margin-top: 40px;
    text-align: center;
  }
}
.courseBlc__balloon::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5.3333333333vw 6.4vw 5.3333333333vw;
  border-color: transparent transparent #F2F2F2 transparent;
  position: absolute;
  top: -6.4vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 431px) {
  .courseBlc__balloon::before {
    border-width: 0 20px 24px 20px;
    top: -24px;
  }
}
.courseBlc__balloon__label {
  text-align: center;
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__balloon__label {
    font-size: 18px;
  }
}
.courseBlc__balloon__label {
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__balloon__label {
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--circle {
    text-align: left;
    display: inline-block;
  }
}
.courseBlc__lists.--circle .courseBlc__list {
  padding-left: 5.3333333333vw;
  position: relative;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--circle .courseBlc__list {
    padding-left: 20px;
  }
}
.courseBlc__lists.--circle .courseBlc__list::before {
  content: "";
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  display: block;
  background: #C67A82;
  border-radius: 100px;
  position: absolute;
  left: 0;
  top: 0.5em;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--circle .courseBlc__list::before {
    width: 8px;
    height: 8px;
  }
}
.courseBlc__lists.--step {
  background-color: #FAFAFA;
  padding: 6.4vw 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step {
    padding: 40px;
  }
}
.courseBlc__lists.--step .courseBlc__list {
  display: grid;
  grid-template-columns: 8.5333333333vw 1fr;
  gap: 4.2666666667vw;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step .courseBlc__list {
    grid-template-columns: 32px 1fr;
    gap: 16px;
  }
}
.courseBlc__lists.--step .courseBlc__list__num {
  width: 8.5333333333vw;
  height: 8.5333333333vw;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step .courseBlc__list__num {
    font-size: 20px;
  }
}
.courseBlc__lists.--step .courseBlc__list__num {
  color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #C67A82;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step .courseBlc__list__num {
    width: 32px;
    height: 32px;
  }
}
.courseBlc__lists.--step .courseBlc__list__label {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step .courseBlc__list__label {
    font-size: 18px;
  }
}
.courseBlc__lists.--step .courseBlc__list__label {
  color: #AC1C26;
  line-height: 1.4;
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__lists.--step .courseBlc__list__label {
    margin-bottom: 8px;
  }
}
.courseBlc__list {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__list {
    font-size: 16px;
  }
}
.courseBlc__list {
  line-height: 1.4;
}
.courseBlc__list:not(:last-child) {
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__list:not(:last-child) {
    margin-bottom: 16px;
  }
}
.courseBlc__schedules {
  position: relative;
}
.courseBlc__schedule:not(:last-child) {
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule:not(:last-child) {
    margin-bottom: 8px;
  }
}
.courseBlc__schedule.--simple1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 430px) {
  .courseBlc__schedule.--simple1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule.--simple1 {
    display: grid;
    grid-template-columns: 100px 140px auto;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule.--simple1 .courseBlc__schedule__num {
    width: 100%;
    padding: 12px 0;
  }
}
.courseBlc__schedule.--simple1 .courseBlc__schedule__date {
  margin: 0;
  padding-left: 4.2666666667vw;
}
@media screen and (max-width: 430px) {
  .courseBlc__schedule.--simple1 .courseBlc__schedule__date {
    width: auto;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule.--simple1 .courseBlc__schedule__date {
    text-align: right;
    padding: 0 8px;
  }
}
.courseBlc__schedule.--simple1 .courseBlc__schedule__subject {
  width: 100%;
}
.courseBlc__schedule.--simple2 {
  display: grid;
  grid-template-columns: auto 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule.--simple2 .courseBlc__schedule__num,
  .courseBlc__schedule.--simple2 .courseBlc__schedule__lists {
    width: 100%;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule.--simple2 .courseBlc__schedule__date {
    margin-left: 0;
    text-align: center;
  }
}
.courseBlc__schedule__top, .courseBlc__schedule__under {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.courseBlc__schedule__num, .courseBlc__schedule__date {
  width: 30.9333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__num, .courseBlc__schedule__date {
    width: 18.98%;
  }
}
.courseBlc__schedule__subject, .courseBlc__schedule__lists {
  width: 64.5333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__subject, .courseBlc__schedule__lists {
    width: 81.02%;
  }
}
.courseBlc__schedule__num {
  background-color: #454545;
  text-align: center;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__num {
    font-size: 20px;
  }
}
.courseBlc__schedule__num {
  color: #FFF;
  font-weight: 600;
  padding: 3.2vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__num {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 12px;
  }
}
.courseBlc__schedule__subject {
  background-color: #F2F2F2;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__subject {
    font-size: 20px;
  }
}
.courseBlc__schedule__subject {
  color: #AC1C26;
  font-weight: 600;
  line-height: 1.4;
  padding: 3.2vw 1.0666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__subject {
    padding: 12px 4px;
    font-size: 18px;
  }
}
.courseBlc__schedule__subject span {
  display: inline-block;
  text-indent: -1em;
  padding-left: 1em;
}
.courseBlc__schedule__date {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__date {
    font-size: 16px;
  }
}
.courseBlc__schedule__date {
  font-weight: 600;
  color: #AC1C26;
  margin-top: 4.2666666667vw;
}
@media screen and (max-width: 430px) {
  .courseBlc__schedule__date {
    text-align: center;
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__date {
    width: 130px;
    font-size: 16px;
    margin-left: 16px;
    margin-top: 16px;
  }
}
.courseBlc__schedule__date span {
  display: inline-block;
  font-size: 6.4vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__date span {
    font-size: 24px;
  }
}
.courseBlc__schedule__date span.day {
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  border: 1px solid #222;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2.6666666667vw;
  border-radius: 100px;
  vertical-align: bottom;
  color: #222;
  margin-left: 4px;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__date span.day {
    width: 20px;
    height: 20px;
    font-size: 11px;
  }
}
.courseBlc__schedule__lists {
  background-color: #FAFAFA;
  padding: 4.2666666667vw 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__lists {
    padding: 16px 8px;
  }
}
.courseBlc__schedule__list {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__list {
    font-size: 16px;
  }
}
.courseBlc__schedule__list {
  line-height: 1.4;
  text-indent: -1em;
  padding-left: 1em;
}
.courseBlc__schedule__list:not(:last-child) {
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__schedule__list:not(:last-child) {
    margin-bottom: 8px;
  }
}
.courseBlc__comments.--wide li:not(:last-child) {
  padding-bottom: 4.2666666667vw;
  border-bottom: 1px solid #F2F2F2;
}
@media screen and (min-width: 431px) {
  .courseBlc__comments.--wide li:not(:last-child) {
    padding-bottom: 24px;
  }
}
.courseBlc__comments li {
  display: grid;
  grid-template-columns: -webkit-max-content 1fr;
  grid-template-columns: max-content 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__comments li {
    gap: 16px;
  }
}
.courseBlc__comments li:not(:last-child) {
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__comments li:not(:last-child) {
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 431px) {
  .courseBlc__qa__q {
    margin-bottom: 12px;
  }
}
.courseBlc__qa__q, .courseBlc__qa__a {
  display: grid;
  grid-template-columns: 10.6666666667vw 1fr;
  gap: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__qa__q, .courseBlc__qa__a {
    grid-template-columns: 40px 1fr;
    gap: 16px;
  }
}
.courseBlc__qa__txt {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__qa__txt {
    font-size: 18px;
  }
}
.courseBlc__qa__txt {
  font-weight: 600;
  line-height: 1.4;
  margin: 2.1333333333vw 0;
}
@media screen and (min-width: 431px) {
  .courseBlc__qa__txt {
    margin: 8px 0;
  }
}
.courseBlc__qa__box {
  background-color: #FAFAFA;
  padding: 3.2vw 4.2666666667vw;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .courseBlc__qa__box {
    padding: 12px 16px;
    margin-bottom: 16px;
  }
}
.course .overviewBlc__title {
  padding: 3.2vw;
  background-color: #222;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__title {
    font-size: 20px;
  }
}
.course .overviewBlc__title {
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  color: #FFF;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__title {
    padding: 12px;
    margin-bottom: 16px;
  }
}
.course .overviewBlc__tbl {
  width: 100%;
}
.course .overviewBlc__tbl tr th, .course .overviewBlc__tbl tr td {
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__tbl tr th, .course .overviewBlc__tbl tr td {
    font-size: 16px;
  }
}
.course .overviewBlc__tbl tr th, .course .overviewBlc__tbl tr td {
  border-bottom: 1px solid #FFF;
}
.course .overviewBlc__tbl tr th {
  width: 21.3333333333vw;
  padding: 2.1333333333vw 0;
  text-align: center;
  background-color: #F2F2F2;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__tbl tr th {
    width: 126px;
    padding: 8px 0;
  }
}
.course .overviewBlc__tbl tr td {
  padding: 2.1333333333vw 0 2.1333333333vw 3.2vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__tbl tr td {
    padding: 8px 0 8px 16px;
  }
}
.course .overviewBlc__tbl tr td .small {
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__tbl tr td .small {
    font-size: 14px;
  }
}
.course .overviewBlc__tbl tr td .small {
  line-height: 1.4;
  margin-top: 1.0666666667vw;
}
@media screen and (min-width: 431px) {
  .course .overviewBlc__tbl tr td .small {
    margin-top: 4px;
  }
}

.voices__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6.4vw;
  font-size: 7.4666666667vw;
}
@media screen and (min-width: 431px) {
  .voices__title {
    font-size: 28px;
  }
}
.voices__title {
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 12.8vw;
}
@media screen and (min-width: 431px) {
  .voices__title {
    gap: 24px;
    margin-bottom: 48px;
  }
}
.voices__title span {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .voices__title span {
    font-size: 18px;
  }
}
.voices__title span {
  color: #AC1C26;
}
.voices__blc {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 7.4666666667vw 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .voices__blc {
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
  }
}
.voices__box {
  position: relative;
  background-color: #F2F2F2;
  border: 1px solid #bcbcbc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 4px;
  padding: 4.2666666667vw;
  padding-bottom: 10.6666666667vw;
}
@media screen and (min-width: 431px) {
  .voices__box {
    padding: 16px;
    padding-bottom: 40px;
  }
}
.voices__box .icon {
  position: absolute;
  bottom: -3.2vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 431px) {
  .voices__box .icon {
    bottom: -10px;
  }
}
.voices__box strong {
  display: inline;
}

.entry {
  background-color: #F2F2F2;
}
.entry__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6.4vw;
  font-size: 7.4666666667vw;
}
@media screen and (min-width: 431px) {
  .entry__title {
    font-size: 28px;
  }
}
.entry__title {
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 12.8vw;
}
@media screen and (min-width: 431px) {
  .entry__title {
    gap: 24px;
    margin-bottom: 48px;
  }
}
.entry__title span {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .entry__title span {
    font-size: 18px;
  }
}
.entry__title span {
  color: #AC1C26;
}
@media screen and (min-width: 431px) {
  .entry a {
    width: 600px;
    margin: 0 auto;
  }
}
.entry a:not(:last-child) {
  margin-bottom: 8.5333333333vw;
}
@media screen and (min-width: 431px) {
  .entry a:not(:last-child) {
    margin-bottom: 32px;
  }
}

.form {
  padding: 21.3333333333vw 0;
}
@media screen and (min-width: 431px) {
  .form {
    padding: 120px 0;
  }
}
@media screen and (min-width: 1120px) {
  .form.cmn-width {
    width: 1040px !important;
  }
}
.form__title {
  margin-bottom: 17.0666666667vw;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 431px) {
  .form__title {
    margin-bottom: 64px;
  }
}
.form__title--en {
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .form__title--en {
    font-size: 18px;
  }
}
.form__title--en {
  color: #AC1C26;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__title--en {
    margin-bottom: 16px;
  }
}
.form__title--ja {
  font-size: 8.5333333333vw;
}
@media screen and (min-width: 431px) {
  .form__title--ja {
    font-size: 32px;
  }
}
.form__title--ja {
  line-height: 1.4;
}
.form__area {
  border-top: 1px solid #bcbcbc;
  padding: 12.8vw 0 0;
  margin: 12.8vw 0;
}
@media screen and (min-width: 431px) {
  .form__area {
    padding: 40px 0 0;
    margin: 40px 0;
  }
}
@media screen and (min-width: 1120px) {
  .form__area {
    padding: 40px 40px 0;
  }
}
.form__tbl {
  width: 100%;
}
@media screen and (max-width: 430px) {
  .form__tbl tr:not(:first-child) th {
    padding-top: 6.9333333333vw;
  }
}
@media screen and (min-width: 431px) {
  .form__tbl tr:not(:first-child) th, .form__tbl tr:not(:first-child) td {
    padding-top: 32px;
  }
}
.form__tbl tr.ver-top th, .form__tbl tr.ver-top td {
  vertical-align: top;
}
.form__tbl tr th, .form__tbl tr td {
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.5;
}
@media screen and (max-width: 430px) {
  .form__tbl tr th, .form__tbl tr td {
    display: block;
  }
}
.form__tbl tr th {
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr th {
    font-size: 20px;
  }
}
.form__tbl tr th {
  font-weight: 600;
  letter-spacing: 0.1em;
  position: relative;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr th {
    margin-bottom: 16px;
    padding-right: 24px;
  }
}
@media screen and (min-width: 431px) and (max-width: 1119px) {
  .form__tbl tr th {
    font-size: 18px;
    letter-spacing: 0;
  }
}
@media screen and (min-width: 1120px) {
  .form__tbl tr th {
    padding-right: 64px;
  }
}
.form__tbl tr th .th__inner,
.form__tbl tr th .th__inner p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr th .th__inner,
  .form__tbl tr th .th__inner p {
    gap: 16px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.form__tbl tr th .required {
  font-size: 3.2vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr th .required {
    font-size: 12px;
  }
}
.form__tbl tr th .required {
  color: #AC1C26;
  border: 1px solid #AC1C26;
  border-radius: 4px;
  line-height: 1.5;
  padding: 4px 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr th .required {
    padding: 4px 8px;
  }
}
.form__tbl tr td {
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td {
    font-size: 14px;
  }
}
.form__tbl tr td {
  line-height: 1.5;
}
@media screen and (min-width: 1120px) {
  .form__tbl tr td {
    width: 640px;
  }
}
.form__tbl tr td .td__columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__columns {
    gap: 24px;
  }
}
.form__tbl tr td .td__initial {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__initial {
    gap: 8px;
  }
}
.form__tbl tr td .td__initial .initial {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__initial .initial {
    font-size: 16px;
  }
}
.form__tbl tr td .td__initial .initial {
  color: #222;
  font-weight: 600;
  opacity: 0.7;
}
.form__tbl tr td .td__course:not(:last-child) {
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__course:not(:last-child) {
    margin-bottom: 24px;
  }
}
.form__tbl tr td .td__course__box {
  padding-left: 9.6vw;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__course__box {
    padding-left: 36px;
    margin-top: 8px;
  }
}
.form__tbl tr td .td__course__box dl {
  display: grid;
  grid-template-columns: 21.8666666667vw 1fr;
  gap: 3.2vw;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__course__box dl {
    font-size: 16px;
  }
}
.form__tbl tr td .td__course__box dl {
  line-height: 1.2;
  color: #454545;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__course__box dl {
    grid-template-columns: 82px 1fr;
    gap: 12px;
    margin-top: 8px;
  }
}
.form__tbl tr td .td__course__box dl dt {
  text-align: center;
  letter-spacing: 0.05em;
  border: 1px solid #454545;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 4px;
  padding: 1.0666666667vw;
}
@media screen and (min-width: 431px) {
  .form__tbl tr td .td__course__box dl dt {
    padding: 4px;
  }
}

/* reset */
select,
input[type=text],
input[type=tel],
input[type=email],
input[type=number],
textarea {
  width: 100%;
  padding: 4.2666666667vw 3.2vw;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 4px;
  background: #fff;
  border: 1px solid #bcbcbc;
}
@media screen and (min-width: 431px) {
  select,
  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=number],
  textarea {
    width: 100%;
    padding: 12px;
    -webkit-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
  }
}
@media screen and (min-width: 1120px) {
  select,
  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=number],
  textarea {
    width: 540px;
  }
  select:hover, select:focus,
  input[type=text]:hover,
  input[type=text]:focus,
  input[type=tel]:hover,
  input[type=tel]:focus,
  input[type=email]:hover,
  input[type=email]:focus,
  input[type=number]:hover,
  input[type=number]:focus,
  textarea:hover,
  textarea:focus {
    outline: none;
  }
  select:hover, select:focus, select:active,
  input[type=text]:hover,
  input[type=text]:focus,
  input[type=text]:active,
  input[type=tel]:hover,
  input[type=tel]:focus,
  input[type=tel]:active,
  input[type=email]:hover,
  input[type=email]:focus,
  input[type=email]:active,
  input[type=number]:hover,
  input[type=number]:focus,
  input[type=number]:active,
  textarea:hover,
  textarea:focus,
  textarea:active {
    border-color: #AC1C26;
  }
}
@media screen and (min-width: 431px) {
  select.--medium,
  input[type=text].--medium,
  input[type=tel].--medium,
  input[type=email].--medium,
  input[type=number].--medium,
  textarea.--medium {
    width: 160px;
  }
}
@media screen and (min-width: 1120px) {
  select.--medium,
  input[type=text].--medium,
  input[type=tel].--medium,
  input[type=email].--medium,
  input[type=number].--medium,
  textarea.--medium {
    width: 240px;
  }
}
select.--small,
input[type=text].--small,
input[type=tel].--small,
input[type=email].--small,
input[type=number].--small,
textarea.--small {
  width: 17.0666666667vw;
  padding: 1.0666666667vw 2.1333333333vw;
}
@media screen and (min-width: 431px) {
  select.--small,
  input[type=text].--small,
  input[type=tel].--small,
  input[type=email].--small,
  input[type=number].--small,
  textarea.--small {
    width: 64px;
    padding: 4px 8px;
  }
}

textarea {
  height: 42.6666666667vw;
  resize: vertical;
}
@media screen and (min-width: 431px) {
  textarea {
    height: 160px;
  }
}

label {
  display: block;
}
@media screen and (max-width: 430px) {
  label:not(:last-child) {
    margin-bottom: 2.1333333333vw;
  }
}

/* btn design */
input[type=radio],
input[type=checkbox] {
  opacity: 0;
  position: absolute;
}

/* check box */
.check .wpcf7-list-item {
  margin: 0;
}
.check label {
  display: inline-block;
  text-align: left;
  cursor: pointer;
}
.check .check-btn,
.check .wpcf7-list-item-label {
  position: relative;
  display: grid;
  grid-template-columns: 6.4vw auto;
  -webkit-column-gap: 3.2vw;
     -moz-column-gap: 3.2vw;
          column-gap: 3.2vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-size: 4.8vw;
}
@media screen and (min-width: 431px) {
  .check .check-btn,
  .check .wpcf7-list-item-label {
    font-size: 18px;
  }
}
.check .check-btn,
.check .wpcf7-list-item-label {
  font-weight: 600;
  color: #AC1C26;
  line-height: 1.4;
}
@media screen and (min-width: 431px) {
  .check .check-btn,
  .check .wpcf7-list-item-label {
    grid-template-columns: 24px auto;
    -webkit-column-gap: 12px;
       -moz-column-gap: 12px;
            column-gap: 12px;
    letter-spacing: 0.05em;
  }
}
.check .check-btn:focus,
.check .wpcf7-list-item-label:focus {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .check .check-btn:hover,
  .check .wpcf7-list-item-label:hover {
    opacity: 0.7;
  }
}
.check .check-btn::before, .check .check-btn::after,
.check .wpcf7-list-item-label::before,
.check .wpcf7-list-item-label::after {
  content: "";
  display: block;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.check .check-btn::before,
.check .wpcf7-list-item-label::before {
  width: 6.4vw;
  height: 6.4vw;
  border: 1px solid #bcbcbc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #FFF;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border-radius: 4px;
}
@media screen and (min-width: 431px) {
  .check .check-btn::before,
  .check .wpcf7-list-item-label::before {
    width: 24px;
    height: 24px;
  }
}
.check .check-btn::after,
.check .wpcf7-list-item-label::after {
  width: 3.7333333333vw;
  height: 2.1333333333vw;
  border-left: 3px solid #FFF;
  border-bottom: 3px solid #FFF;
  position: absolute;
  left: 1.3333333333vw;
  top: 2.1333333333vw;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}
@media screen and (min-width: 431px) {
  .check .check-btn::after,
  .check .wpcf7-list-item-label::after {
    width: 14px;
    height: 8px;
    left: 5px;
    top: 8px;
  }
}
.check input[type=checkbox]:checked + .check-btn::before,
.check input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  border-color: #AC1C26;
  background-color: #AC1C26;
}

/* privacy box */
.privacy .wpcf7-list-item-label {
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .privacy .wpcf7-list-item-label {
    font-size: 16px;
  }
}
.privacy .wpcf7-list-item-label {
  color: #222;
}

/* submit */
.submit {
  width: 100%;
  margin: 17.0666666667vw auto 0;
  position: relative;
}
@media screen and (min-width: 431px) {
  .submit {
    width: 390px;
    margin-top: 64px;
    position: relative;
  }
  .submit:not(.is--disabled) {
    cursor: pointer;
  }
}

input[type=submit] {
  width: 100%;
  height: 100%;
  font-size: 5.3333333333vw;
  font-weight: 400;
  color: #fff;
  background-color: #AC1C26;
  border: none;
  border-radius: 4px;
  padding: 4.2666666667vw;
  letter-spacing: 0.05em;
}
input[type=submit]:disabled {
  background-color: #bcbcbc;
}
@media screen and (min-width: 431px) {
  input[type=submit] {
    padding: 20px;
    font-size: 20px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  input[type=submit]:not(:disabled) {
    cursor: pointer;
  }
  input[type=submit]:not(:disabled):hover {
    opacity: 0.7;
  }
}

/* placeholder */
::-webkit-input-placeholder {
  color: #bcbcbc;
}
::-moz-placeholder {
  color: #bcbcbc;
}
:-ms-input-placeholder {
  color: #bcbcbc;
}
::-ms-input-placeholder {
  color: #bcbcbc;
}
::placeholder {
  color: #bcbcbc;
}

/* response */
.wpcf7-response-output {
  margin: 3rem 0;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 431px) {
  .wpcf7-response-output {
    font-size: 16px;
  }
}

.wpcf7-not-valid-tip {
  padding: 0.2em 0 1em;
}

.form-button {
  width: 100%;
  text-align: center;
  display: block;
  margin: 17.0666666667vw auto 0;
  position: relative;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 431px) {
  .form-button {
    font-size: 20px;
  }
}
.form-button {
  color: #fff;
  background-color: #AC1C26;
  border: none;
  border-radius: 4px;
  padding: 4.2666666667vw;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 431px) {
  .form-button {
    width: 390px;
    margin-top: 64px;
    padding: 20px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
  }
  .form-button:hover {
    opacity: 0.7;
  }
}/*# sourceMappingURL=study.css.map */