@charset "UTF-8";
/*! reset.css */
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  padding: 0;
  list-style: none;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
main {
  display: block;
}

.font-gothic {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.font-mincho {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", Meiryo, serif;
}

html {
  line-height: 1;
  font-size: 62.5%;
}

body {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #000;
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
}

a {
  color: #000;
  text-decoration: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
a:hover {
  text-decoration: underline;
  opacity: 0.8;
}

@media screen and (max-width: 769px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

.underline {
  text-decoration: underline;
}

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

#js-cover {
  display: none;
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100vw;
  background: rgba(0, 0, 0, 0.5);
  height: 100vh;
}
@media screen and (max-width: 769px) {
  #js-cover.open {
    display: block;
  }
}

.pc-only {
  display: block;
}
@media screen and (max-width: 769px) {
  .pc-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media screen and (max-width: 769px) {
  .sp-only {
    display: block;
  }
}

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

.hidden {
  display: none;
}

.loaded {
  display: block;
}

picture img {
  vertical-align: top;
}

img {
  vertical-align: top;
  line-height: 1;
  max-width: 100%;
}

.aniFadeIn {
  opacity: 0;
  -webkit-transition: opacity 2s, -webkit-transform 2s;
  transition: opacity 2s, -webkit-transform 2s;
  transition: opacity 2s, transform 2s;
  transition: opacity 2s, transform 2s, -webkit-transform 2s;
}
.aniFadeIn.doAniFadeIn {
  opacity: 1;
  -webkit-transform: translate(0) !important;
          transform: translate(0) !important;
}
.aniFadeIn.fadeUp {
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.aniFadeIn.fadeLeft {
  -webkit-transform: translateX(100px);
          transform: translateX(100px);
}
.aniFadeIn.fadeDown {
  -webkit-transform: translateY(-50px);
          transform: translateY(-50px);
}
.aniFadeIn.fadeRight {
  -webkit-transform: translateX(-100px);
          transform: translateX(-100px);
}
.aniFadeIn.fadeExpand {
  -webkit-transform: translateY(100px) scale(0.7);
          transform: translateY(100px) scale(0.7);
}
.aniFadeIn.fadeExpand.action {
  -webkit-transform: translateY(0) scale(1) !important;
          transform: translateY(0) scale(1) !important;
}
.aniFadeIn.textFade .fadeTarget {
  display: inline-block;
  opacity: 0;
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
}
.aniFadeIn.textFade .fadeTarget:nth-of-type(2n-1) {
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
.aniFadeIn.textFade .fadeTarget:nth-of-type(2n) {
  -webkit-transform: translateY(-30px);
          transform: translateY(-30px);
}
.aniFadeIn.textFade .fadeTarget.action {
  opacity: 1;
  -webkit-transform: translate(0) !important;
          transform: translate(0) !important;
}

h1, h2, h3 {
  margin: 0;
  padding: 0;
}

sup {
  font-size: 62.5%;
}

.red {
  color: #BC0000;
}

.main-content {
  padding-top: 110px;
}
@media screen and (max-width: 769px) {
  .main-content {
    padding-top: 37px;
  }
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.fz68p {
  font-size: 68%;
}

.fz70p {
  font-size: 70%;
}

.fz72p {
  font-size: 72%;
}

.fz75p {
  font-size: 75%;
}

.fz78p {
  font-size: 78%;
}

.fz112p {
  font-size: 112%;
}

.fz120p {
  font-size: 120%;
}

.fz136p {
  font-size: 136%;
}

.fz140p {
  font-size: 140%;
}

.fz150p {
  font-size: 150%;
}

.fz175p {
  font-size: 175%;
}

.fz187p {
  font-size: 187%;
}

.fz192p {
  font-size: 192%;
}

.fz218p {
  font-size: 218%;
}

.fz254p {
  font-size: 254%;
}

.mb-20 {
  margin-bottom: 20px;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.c-btn {
  text-decoration: none;
}
.c-btn:hover {
  text-decoration: none !important;
}

.c-mini-mv {
  margin-bottom: 70px;
}
@media screen and (max-width: 769px) {
  .c-mini-mv {
    margin-bottom: 30px;
  }
}
.c-mini-mv .mv-item {
  padding: 65px 20px;
}
@media screen and (max-width: 769px) {
  .c-mini-mv .mv-item {
    padding: 30px 20px;
  }
}
.c-mini-mv .item-title {
  color: #fff;
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 769px) {
  .c-mini-mv .item-title {
    font-size: 2rem;
  }
}
.c-mini-mv.bg-concept {
  background: url("../img/pc/concept_mv_bg_1.jpg") center center/cover no-repeat;
}
.c-mini-mv.bg-method {
  background: url("../img/pc/method_mv_bg_1.jpg") center center/cover no-repeat;
}
.c-mini-mv.bg-class {
  background: url("../img/pc/class_mv_bg_1.jpg") center center/cover no-repeat;
}
.c-mini-mv.bg-trial {
  background: url("../img/pc/trial_mv_bg_1.jpg") center center/cover no-repeat;
}

.c-section-header {
  position: relative;
  padding-top: 10px;
}
@media screen and (max-width: 769px) {
  .c-section-header {
    padding-top: 5px;
  }
}
.c-section-header::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -300px;
  width: 600px;
  height: 1px;
  background: #000;
}
@media screen and (max-width: 769px) {
  .c-section-header::before {
    margin-left: -100px;
    width: 200px;
  }
}

.c-section-header-2 {
  position: relative;
  padding-top: 10px;
  margin-bottom: 40px;
}
@media screen and (max-width: 769px) {
  .c-section-header-2 {
    padding-top: 5px;
    margin-bottom: 20px;
  }
}
.c-section-header-2::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 600px;
  height: 1px;
  background: #000;
}
@media screen and (max-width: 769px) {
  .c-section-header-2::before {
    width: 200px;
  }
}
.c-section-header-2.type-2::before {
  background: #fff;
}

.c-heading-1 {
  font-size: 1.2rem;
  font-family: "Anton", sans-serif;
  letter-spacing: 0.075em;
  margin-bottom: 10px;
}
@media screen and (max-width: 769px) {
  .c-heading-1 {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}

.c-heading-2 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  .c-heading-2 {
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
}

.c-heading-3 {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
@media screen and (max-width: 769px) {
  .c-heading-3 {
    font-size: 1.8rem;
  }
}

.c-heading-4 {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 10px;
}
@media screen and (max-width: 769px) {
  .c-heading-4 {
    font-size: 1.2rem;
    margin-bottom: 5px;
  }
}

.c-heading-5 {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
@media screen and (max-width: 769px) {
  .c-heading-5 {
    font-size: 1.6rem;
  }
}

.c-heading-6 {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
@media screen and (max-width: 769px) {
  .c-heading-6 {
    font-size: 1.4rem;
  }
}

.c-heading-7 {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
@media screen and (max-width: 769px) {
  .c-heading-7 {
    font-size: 1.3rem;
  }
}

.c-text-1 {
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  line-height: 2.6;
}
@media screen and (max-width: 769px) {
  .c-text-1 {
    font-size: 1.4rem;
  }
}
.c-text-1 p:not(:last-of-type) {
  margin-bottom: 2em;
}

.c-text-2 {
  font-size: 1.2rem;
  letter-spacing: 0.075em;
  line-height: 2.6;
}
@media screen and (max-width: 769px) {
  .c-text-2 {
    font-size: 1.3rem;
  }
}
.c-text-2 p:not(:last-of-type) {
  margin-bottom: 2em;
}

.c-text-3 {
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  .c-text-3 {
    font-size: 1.4rem;
  }
}
.c-text-3 p:not(:last-of-type) {
  margin-bottom: 2em;
}

@-webkit-keyframes animeMvShow {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes animeMvShow {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes aniTabFadeIn {
  0% {
    display: block;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes aniTabFadeIn {
  0% {
    display: block;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.g-header {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 769px) {
  .g-header {
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
  }
}
.g-header .g-header.has-scroll {
  position: fixed;
  background: rgba(255, 255, 255, 0.8);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 769px) {
  .g-header .g-header.has-scroll {
    background: #fff;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.g-header .g-header.has-scroll .g-nav-wrapper {
  padding-top: 0;
}
.g-header .g-header.has-scroll .logo a {
  display: none;
}
@media screen and (max-width: 769px) {
  .g-header .g-header.has-scroll .logo a {
    display: block;
  }
}
.g-header .g-header.has-scroll .logo img {
  width: 60px;
}
.g-header .g-header__inner {
  position: relative;
  max-width: 1200px;
  margin: auto;
  padding: 10px 0;
}
@media screen and (max-width: 769px) {
  .g-header .g-header__inner {
    padding: 0 20px;
  }
}
.g-header .g-header__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.g-header .logo {
  line-height: 1;
}
@media screen and (max-width: 769px) {
  .g-header .logo {
    margin-right: auto;
  }
}
.g-header .logo a {
  color: #07368a;
}
.g-header .logo a img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 769px) {
  .g-header .logo a img {
    width: 60px;
  }
}
.g-header .aside-wrapper {
  display: none;
}
@media screen and (max-width: 769px) {
  .g-header .aside-wrapper {
    display: block;
    position: fixed;
    top: 0;
    right: 50px;
  }
}
@media screen and (max-width: 769px) {
  .g-header .aside-wrapper .btn-contact {
    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;
    font-size: 1.2rem;
    line-height: 1;
    color: #fff;
    background: #000;
    padding: 10px 20px;
    height: 37px;
  }
}
.g-header .hamburger-menu {
  display: none;
}
@media screen and (max-width: 769px) {
  .g-header .hamburger-menu {
    display: block;
    cursor: pointer;
    position: absolute;
    z-index: 10;
    top: 6px;
    right: 10px;
    width: 30px;
    height: 20px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}
.g-header .hamburger-menu > span {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #112D4E;
  border-radius: 4px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.g-header .hamburger-menu > span:nth-of-type(1) {
  top: 0;
}
.g-header .hamburger-menu > span:nth-of-type(2) {
  top: 9px;
}
.g-header .hamburger-menu > span:nth-of-type(3) {
  bottom: 0;
}
.g-header .hamburger-menu.is-hamburger-open {
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
}
.g-header .hamburger-menu.is-hamburger-open > span:nth-of-type(1) {
  -webkit-transform: translateY(9px) rotate(-45deg);
          transform: translateY(9px) rotate(-45deg);
}
.g-header .hamburger-menu.is-hamburger-open > span:nth-of-type(2) {
  -webkit-transform: translateY(0) rotate(45deg);
          transform: translateY(0) rotate(45deg);
}
.g-header .hamburger-menu.is-hamburger-open > span:nth-of-type(3) {
  opacity: 0;
}
.g-header .g-nav-wrapper {
  padding-top: 20px;
}
@media screen and (max-width: 769px) {
  .g-header .g-nav-wrapper {
    z-index: 10;
    margin: 0 -20px;
  }
}
@media screen and (max-width: 769px) {
  .g-header .g-nav-wrapper.is-hamburger-open {
    display: block;
  }
}
@media screen and (max-width: 769px) {
  .g-header .g-nav-wrapper.is-hamburger-open .g-nav {
    right: 0;
  }
}
.g-header .g-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}
@media screen and (max-width: 769px) {
  .g-header .g-nav {
    display: block;
    margin-top: 0;
    position: absolute;
    top: 0;
    right: -100vw;
    background: rgba(255, 255, 255, 0.9);
    width: 100vw;
    height: 120vh;
    -webkit-transition: right 0.2s;
    transition: right 0.2s;
    padding: 10vh 20px 0;
  }
}
.g-header .g-nav .nav-item {
  padding: 0 20px;
}
@media screen and (max-width: 769px) {
  .g-header .g-nav .nav-item {
    margin-left: 0;
    padding: 2vh 0;
  }
}
.g-header .g-nav .nav-item:not(:last-of-type) {
  border-left: 1px solid #000;
}
@media screen and (max-width: 769px) {
  .g-header .g-nav .nav-item:not(:last-of-type) {
    border-left: none;
  }
}
.g-header .g-nav .nav-item:nth-child(1) {
  border-left: none;
}
.g-header .g-nav .nav-item .btn-contact {
  display: block;
  border-radius: 50px;
  padding: 8px;
  min-width: 150px;
  text-align: center;
  border: 1px solid #000;
}
.g-header .g-nav .nav-item .btn-contact:hover {
  background: rgba(255, 255, 255, 0.2);
}
.g-header .g-nav .soon,
.g-header .g-nav a {
  position: relative;
  display: block;
  text-align: center;
  color: #000;
}
.g-header .g-nav .soon {
  color: #aaa;
  position: relative;
}
.g-header .g-nav a.selected, .g-header .g-nav a:hover {
  text-decoration: underline;
}
.g-header .g-nav a.selected::after, .g-header .g-nav a:hover::after {
  background: #000;
}

.g-footer {
  color: #fff;
  background: #000;
  padding: 40px 0;
}
@media screen and (max-width: 769px) {
  .g-footer {
    padding: 20px 0;
  }
}
.g-footer a {
  color: inherit;
}
.g-footer__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 769px) {
  .g-footer__inner {
    display: block;
    padding: 0 20px;
  }
}
.g-footer__primary {
  font-size: 1.4rem;
}
.g-footer__secondary {
  font-size: 1.4rem;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-lead {
    text-align: center;
    margin-bottom: 20px;
  }
}
.g-footer .footer-lead .footer-logo {
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-lead .footer-logo {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 769px) {
  .g-footer .footer-lead .footer-logo img {
    width: 120px;
  }
}
.g-footer .footer-lead .footer-address {
  font-size: 1.4rem;
}
.g-footer .footer-sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap .sitemap-list {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 46%;
            flex: 0 1 46%;
    margin-bottom: 20px;
  }
}
.g-footer .footer-sitemap .sitemap-list:not(:last-of-type) {
  margin-right: 40px;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap .sitemap-list:not(:last-of-type) {
    margin-right: 0;
  }
}
.g-footer .footer-sitemap .sitemap-list > dt {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap .sitemap-list > dt {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
}
.g-footer .footer-sitemap .sitemap-list > dd {
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap .sitemap-list > dd {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}
.g-footer .footer-sitemap .sitemap-item {
  margin-bottom: 40px;
}
@media screen and (max-width: 769px) {
  .g-footer .footer-sitemap .sitemap-item {
    margin-bottom: 20px;
  }
}
.g-footer .sns {
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 769px) {
  .g-footer .sns {
    position: relative;
  }
}
.g-footer .sns .sns-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 769px) {
  .g-footer .sns .sns-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.g-footer .sns .sns-list .list-item {
  margin: 0 1%;
}


#experiencebtn {
  display: block;
  color: #fff;
  background: #dc1313;
  max-width: 380px;
  margin: auto;
  border-radius: 50px;
  padding: 18px;
  margin-bottom: 10%;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 769px) {
  #experiencebtn {
    font-size: 1.4rem;
  }
}



#page-top .g-header .g-nav {
  color: #fff;
}
@media screen and (max-width: 769px) {
  #page-top .g-header .g-nav {
    color: #000;
  }
}
#page-top .g-header .g-nav .nav-item:not(:last-of-type) {
  border-color: #fff;
}
@media screen and (max-width: 769px) {
  #page-top .g-header .g-nav .nav-item:not(:last-of-type) {
    border-color: #000;
  }
}
#page-top .g-header .g-nav a {
  color: inherit;
}
#page-top .g-header .g-nav .btn-contact {
  border-color: #fff;
}
@media screen and (max-width: 769px) {
  #page-top .g-header .g-nav .btn-contact {
    border-color: #000;
  }
}
#page-top .g-header.has-scroll .g-nav {
  color: #000;
}
#page-top .g-header.has-scroll .g-nav .nav-item:not(:last-of-type) {
  border-color: #000;
}
#page-top .g-header.has-scroll .g-nav .btn-contact {
  border-color: #000;
}
#page-top .main-content {
  padding-top: 0;
}
@media screen and (max-width: 769px) {
  #page-top .main-content {
    padding-top: 37px;
  }
}
#page-top .main-content .heading-1 {
  font-size: 1.2rem;
  font-family: "Anton", sans-serif;
  letter-spacing: 0.075em;
}
#page-top .mv {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
#page-top .mv .mv-item {
  position: relative;
}
#page-top .info {
  background: #f0f0f0 url("../img/pc/top_info_bg_1.png") center center/auto 62px repeat-x;
  padding: 100px 0;
}
@media screen and (max-width: 769px) {
  #page-top .info {
    padding: 50px 20px;
  }
}
#page-top .info .info-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 740px;
  margin: auto;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#page-top .info .info-inner .info-primary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 53%;
          flex: 0 1 53%;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-inner .info-primary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    margin-bottom: 40px;
  }
}
#page-top .info .info-inner .info-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 45%;
          flex: 0 1 45%;
  text-align: right;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-inner .info-secondary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    text-align: center;
  }
}
#page-top .info .info-header {
  border-top: 1px solid #000;
  padding-top: 4px;
  margin-bottom: 90px;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-header {
    margin-bottom: 20px;
  }
}
#page-top .info .info-header_2 {
  padding-top: 4px;
  margin-bottom: 90px;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-header_2 {
    margin-bottom: 20px;
  }
}
#page-top .info .info-body {
  margin-bottom: 90px;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-body {
    margin-bottom: 20px;
  }
}
#page-top .info .info-body .text-1 {
  font-size: 2.3rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-body .text-1 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}
#page-top .info .info-body .text-2 {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-body .text-2 {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
#page-top .info .info-body .text-2 .large {
  font-size: 3rem;
  line-height: 1;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-body .text-2 .large {
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}
#page-top .info .info-body .text-3 {
  font-size: 1.2rem;
  letter-spacing: 0.075em;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-body .text-3 {
    font-size: 1.4rem;
  }
}
#page-top .info .info-footer .btn-entry {
  display: block;
  color: #fff;
  background: #dc1313;
  max-width: 180px;
  border-radius: 50px;
  padding: 10px;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 769px) {
  #page-top .info .info-footer .btn-entry {
    font-size: 1.4rem;
  }
}
#page-top .bg-1 {
  color: #fff;
  background: #000 url("../img/pc/top_bg_1.png") right bottom/992px auto no-repeat;
  padding: 130px 0;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 {
    padding: 50px 0;
  }
}
#page-top .bg-1 .vision {
  max-width: 740px;
  margin: 0 auto 130px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision {
    margin-bottom: 50px;
    padding: 0 20px;
  }
}
#page-top .bg-1 .vision .vision-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: calc(50% - 50vw);
  margin-left: auto;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .vision-inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: auto;
  }
}
#page-top .bg-1 .vision .vision-inner .vision-primary {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 420px;
          flex: 0 0 420px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .vision-inner .vision-primary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    text-align: center;
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .vision .vision-inner .vision-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .vision-inner .vision-secondary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
  }
}
#page-top .bg-1 .vision .detail-header {
  border-top: 1px solid #fff;
  padding-top: 4px;
  margin-bottom: 70px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .detail-header {
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .vision .detail-body .text-1 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .detail-body .text-1 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .vision .detail-body .text-2 {
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .vision .detail-body .text-2 {
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .mission {
  max-width: 740px;
  margin: 0 auto;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission {
    padding: 0 20px;
  }
}
#page-top .bg-1 .mission .mission-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: calc(50% - 50vw);
  margin-right: auto;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .mission-inner {
    margin-left: auto;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: auto;
  }
}
#page-top .bg-1 .mission .mission-inner .mission-primary {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 420px;
          flex: 0 0 420px;
  text-align: right;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .mission-inner .mission-primary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    text-align: center;
    margin-bottom: 20px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
#page-top .bg-1 .mission .mission-inner .mission-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .mission-inner .mission-secondary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
#page-top .bg-1 .mission .detail-header {
  border-top: 1px solid #fff;
  padding-top: 4px;
  margin-bottom: 70px;
  padding-left: 100px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .detail-header {
    padding-left: 0;
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .mission .detail-body {
  padding-left: 100px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .detail-body {
    padding-left: 0;
  }
}
#page-top .bg-1 .mission .detail-body .text-1 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .detail-body .text-1 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
#page-top .bg-1 .mission .detail-body .text-2 {
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .bg-1 .mission .detail-body .text-2 {
    margin-bottom: 20px;
  }
}
#page-top .bg-2 {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  overflow: hidden;
}
#page-top .bg-2 .infinite-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#page-top .bg-2 .infinite-slider .swiper-slide {
  height: 248px;
  width: auto;
}
@media screen and (max-width: 769px) {
  #page-top .bg-2 .infinite-slider .swiper-slide {
    height: 124px;
  }
}
#page-top .bg-2 .infinite-slider .swiper-slide img {
  width: auto;
  height: 100%;
}
#page-top .program {
  background: #f0f0f0;
  padding: 80px 0;
}
@media screen and (max-width: 769px) {
  #page-top .program {
    padding: 40px 20px;
  }
}
#page-top .program .program-inner {
  max-width: 1200px;
  margin: auto;
}
#page-top .program .program-header {
  border-top: 1px solid #000;
  padding-top: 4px;
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-header {
    margin-bottom: 20px;
  }
}
#page-top .program .program-body {
  margin-bottom: 90px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body {
    margin-bottom: 20px;
  }
}
#page-top .program .program-body .text-1 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .text-1 {
    font-size: 1.8rem;
  }
}
#page-top .program .program-body .program-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list {
    display: block;
  }
}
#page-top .program .program-body .program-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
  border: 1px solid #000;
  padding: 20px 30px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list .list-item {
    padding: 20px;
  }
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list .list-item:not(:last-of-type) {
    margin-bottom: 20px;
  }
}
#page-top .program .program-body .program-list .list-item .item-title {
  font-size: 2.2rem;
  font-family: "Anton", sans-serif;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list .list-item .item-title {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
#page-top .program .program-body .program-list .list-item .item-image {
  margin-right: -30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list .list-item .item-image {
    margin-right: -20px;
    margin-bottom: 10px;
  }
}
#page-top .program .program-body .program-list .list-item .item-text {
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-body .program-list .list-item .item-text {
    font-size: 1.4rem;
  }
}
#page-top .program .program-footer {
  text-align: center;
}
#page-top .program .program-footer .btn-more {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-decoration: underline;
  padding-left: 40px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-footer .btn-more {
    font-size: 1.4rem;
    padding-left: 30px;
  }
}
#page-top .program .program-footer .btn-more:hover {
  text-decoration: none;
}
#page-top .program .program-footer .btn-more::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 27px;
  height: 27px;
  background: #000;
  border-radius: 27px;
}
@media screen and (max-width: 769px) {
  #page-top .program .program-footer .btn-more::before {
    width: 20px;
    height: 20px;
    border-radius: 20px;
  }
}
#page-top .experience {
  color: #fff;
  background: #000 url("../img/pc/top_experience_bg_1.jpg") center center/cover no-repeat;
  padding: 80px 0;
}
@media screen and (max-width: 769px) {
  #page-top .experience {
    padding: 40px 20px;
  }
}
#page-top .experience .experience-inner {
  max-width: 1200px;
  margin: auto;
}
#page-top .experience .experience-header {
  border-top: 1px solid #fff;
  padding-top: 4px;
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  #page-top .experience .experience-header {
    margin-bottom: 20px;
  }
}
#page-top .experience .experience-body .text-1 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-top .experience .experience-body .text-1 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}
#page-top .experience .experience-body .experience-list {
  max-width: 530px;
  margin: auto;
}
#page-top .experience .experience-body .experience-list .list-item {
  position: relative;
}
#page-top .experience .experience-body .experience-list .list-item .item-text {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-align: center;
  border: 1px solid #fff;
  border-radius: 50px;
  padding: 20px;
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-top .experience .experience-body .experience-list .list-item .item-text {
    font-size: 1.3rem;
    padding: 20px 0;
  }
}
#page-top .experience .experience-body .experience-list .list-item:not(:last-of-type)::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -30px;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  border-width: 10px 10px 0 10px;
}
#page-top .experience .experience-footer {
  text-align: center;
  font-size: 1.6rem;
}
#page-top .experience .experience-footer .btn-entry {
  display: block;
  color: #fff;
  background: #dc1313;
  max-width: 380px;
  margin: auto;
  border-radius: 50px;
  padding: 18px;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 769px) {
  #page-top .experience .experience-footer .btn-entry {
    font-size: 1.4rem;
  }
}
#page-top .news {
  background: #f0f0f0;
  padding: 80px 0 100px;
}
@media screen and (max-width: 769px) {
  #page-top .news {
    padding: 40px 20px;
  }
}
#page-top .news .news-inner {
  max-width: 740px;
  margin: auto;
}
#page-top .news .news-header {
  border-top: 1px solid #000;
  padding-top: 4px;
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-header {
    margin-bottom: 20px;
  }
}
#page-top .news .news-body .news-list .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item {
    display: block;
  }
}
#page-top .news .news-body .news-list .list-item:not(:last-of-type) {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: dotted 1px #333;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item:not(:last-of-type) {
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
}
#page-top .news .news-body .news-list .list-item .item-primary {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 250px;
          flex: 0 0 250px;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item .item-primary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
  }
}
#page-top .news .news-body .news-list .list-item .item-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item .item-image {
    text-align: center;
    margin-bottom: 20px;
  }
}
#page-top .news .news-body .news-list .list-item .item-title {
  color: #333;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item .item-title {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
#page-top .news .news-body .news-list .list-item .item-text {
  color: #333;
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  #page-top .news .news-body .news-list .list-item .item-text {
    font-size: 1.4rem;
  }
}
#page-top .news .news-footer {
  text-align: center;
}
#page-top .news .news-footer .btn-more {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-decoration: underline;
  padding-left: 40px;
}
#page-top .news .news-footer .btn-more:hover {
  text-decoration: none;
}
#page-top .news .news-footer .btn-more::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 27px;
  height: 27px;
  background: #000;
  border-radius: 27px;
}
#page-top .banner {
  background: #ebeced;
  padding: 80px 0 100px;
}
@media screen and (max-width: 769px) {
  #page-top .banner {
    padding: 40px 20px;
  }
}
#page-top .banner .banner-inner {
  max-width: 740px;
  margin: auto;
}
#page-top .banner .banner-header {
  border-top: 1px solid #000;
  padding-top: 4px;
  margin-bottom: 30px;
}
#page-top .banner .banner-body .banner-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#page-top .banner .banner-body .banner-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
  margin: 0 1% 20px;
}
@media screen and (max-width: 769px) {
  #page-top .banner .banner-body .banner-list .list-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 46%;
            flex: 0 1 46%;
  }
}
#page-top .banner .banner-footer {
  text-align: center;
}
#page-top .banner .banner-footer .btn-more {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-decoration: underline;
  padding-left: 40px;
}
#page-top .banner .banner-footer .btn-more:hover {
  text-decoration: none;
}
#page-top .banner .banner-footer .btn-more::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 27px;
  height: 27px;
  background: #000;
  border-radius: 27px;
}

#page-concept .concept-section-box-1 {
  max-width: 880px;
  margin: auto;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-1 {
    padding: 0 20px;
  }
}
#page-concept .concept-section-box-1 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-1 .section {
    margin-bottom: 40px;
  }
}
#page-concept .concept-section-box-1 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-1 .section-header {
    margin-bottom: 20px;
  }
}
#page-concept .concept-section-box-2 {
  background: url("../img/pc/concept_bg_1.png") center center/cover no-repeat;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 {
    padding: 0 20px;
  }
}
#page-concept .concept-section-box-2 .section-inner {
  max-width: 1200px;
  margin: 0 auto 80px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .section-inner {
    margin-bottom: 40px;
  }
}
#page-concept .concept-section-box-2 .image-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#page-concept .concept-section-box-2 .image-box:not(:last-of-type) {
  margin-bottom: 110px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box:not(:last-of-type) {
    margin-bottom: 40px;
  }
}
#page-concept .concept-section-box-2 .image-box .box-primary,
#page-concept .concept-section-box-2 .image-box .box-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 50%;
          flex: 0 1 50%;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .box-primary,
#page-concept .concept-section-box-2 .image-box .box-secondary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
  }
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .box-primary {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .box-secondary {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .image {
    margin-bottom: 20px;
  }
}
#page-concept .concept-section-box-2 .image-box .box-detail .detail-header {
  padding: 0 30px 10px;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .box-detail .detail-header {
    padding: 10px;
  }
}
#page-concept .concept-section-box-2 .image-box .box-detail .detail-body {
  padding: 20px 30px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-2 .image-box .box-detail .detail-body {
    padding: 10px;
  }
}
#page-concept .concept-section-box-3 {
  max-width: 1000px;
  margin: 0 auto 90px;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-3 {
    padding: 0 20px;
  }
}
#page-concept .concept-section-box-3 .section-header {
  margin-bottom: 50px;
}
#page-concept .concept-section-box-3 .staff-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#page-concept .concept-section-box-3 .staff-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 276px;
          flex: 0 1 276px;
  margin: 0 1%;
}
#page-concept .concept-section-box-3 .staff-box .image {
  margin-bottom: 10px;
}
#page-concept .concept-section-box-3 .staff-box .box-detail .staff-name {
  font-size: 2.4rem;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-3 .staff-box .box-detail .staff-name {
    font-size: 1.4rem;
    line-height: 1.2;
    margin-bottom: 4px;
  }
}
#page-concept .concept-section-box-3 .staff-box .box-detail .staff-name .unit {
  font-size: 1.4rem;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-3 .staff-box .box-detail .staff-name .unit {
    font-size: 1.2rem;
  }
}
#page-concept .concept-section-box-3 .staff-box .box-detail .staff-text {
  font-size: 1.2rem;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  #page-concept .concept-section-box-3 .staff-box .box-detail .staff-text {
    font-size: 1.2rem;
  }
}

#page-method .method-section-box-1 {
  max-width: 1000px;
  margin: auto;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-1 {
    padding: 0 20px;
  }
}
#page-method .method-section-box-1 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-1 .section {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-1 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-1 .section-header {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 {
    padding: 0 20px;
  }
}
#page-method .method-section-box-2 .skill-section {
  margin-bottom: 90px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-2 .skill-section .skill {
  color: #fff;
}
#page-method .method-section-box-2 .skill-section .skill .skill-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url("../img/pc/method_skil_bg_1.jpg") center center/cover no-repeat;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body {
    display: block;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 46%;
          flex: 0 1 46%;
  margin: 0 2%;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item {
    padding: 40px 0;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item:nth-child(1) {
  text-align: right;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item:nth-child(1) {
    text-align: center;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item:nth-child(2) {
  text-align: left;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item:nth-child(2) {
    text-align: center;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-1 {
  font-size: 5rem;
  font-family: "Anton", sans-serif;
  letter-spacing: 0.075em;
  line-height: 1;
  margin-top: -3px;
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-1 {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-2 {
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 30px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-2 {
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-3 {
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  line-height: 2.6;
  margin-bottom: 110px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-body .skill-item .heading-3 {
    font-size: 1.2rem;
    margin-bottom: 0;
  }
}
#page-method .method-section-box-2 .skill-section .skill .skill-footer {
  background: url("../img/pc/method_skil_bg_2.jpg") center top/cover no-repeat;
}
#page-method .method-section-box-2 .skill-section .skill .skill-footer .text-1 {
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  padding: 40px 20px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-2 .skill-section .skill .skill-footer .text-1 {
    font-size: 2rem;
    padding: 20px;
  }
}
#page-method .tab-content .tab-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 70px;
}
@media screen and (max-width: 769px) {
  #page-method .tab-content .tab-nav {
    margin-bottom: 30px;
  }
}
#page-method .tab-content .tab-nav .nav {
  margin: 0 1%;
  cursor: pointer;
  width: 345px;
  font-size: 1.8rem;
  text-align: center;
  padding: 25px;
  color: #000;
  background: #fff;
  border: 1px solid #000;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
@media screen and (max-width: 769px) {
  #page-method .tab-content .tab-nav .nav {
    font-size: 1.2rem;
    padding: 10px;
  }
}
#page-method .tab-content .tab-nav .nav.tab-selected {
  color: #fff;
  background: #000;
}
#page-method .tab-content .tab-nav .nav:hover {
  color: #fff;
  background: #333;
}
#page-method .tab-content .tab-content-main-item {
  display: none;
}
#page-method .tab-content .tab-content-main-item.show {
  display: block;
}
#page-method .method-section-box-3 {
  max-width: 1000px;
  margin: 0 auto 120px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-3 {
    padding: 0 20px;
  }
}
#page-method .method-section-box-3 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-3 .section {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-3 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-3 .section-header {
    margin-bottom: 20px;
  }
}
#page-method .method-section-box-4 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .section {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-4 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .section-header {
    margin-bottom: 20px;
  }
}
#page-method .method-section-box-4 .image-box-section .image-box {
  padding: 50px 0;
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .image-box-section .image-box {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-4 .image-box-section .image-box.bg-about-1 {
  background: url("../img/pc/method_about_img_1.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-4 .image-box-section .image-box.bg-about-2 {
  background: url("../img/pc/method_about_img_2.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-4 .image-box-section .image-box.bg-about-3 {
  background: url("../img/pc/method_about_img_3.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-4 .image-box-section .image-box:nth-child(even) .box-detail-inner {
  margin-left: auto;
}
#page-method .method-section-box-4 .image-box-section .image-box .box-detail {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .image-box-section .image-box .box-detail {
    padding: 0 20px;
  }
}
#page-method .method-section-box-4 .image-box-section .image-box .box-detail-inner {
  background: #fff;
  max-width: 720px;
  padding: 0 50px 30px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .image-box-section .image-box .box-detail-inner {
    padding: 0 30px 30px;
  }
}
#page-method .method-section-box-4 .image-box-section .detail-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
  margin-bottom: 30px;
}
#page-method .method-section-box-4 .image-box-section .detail-header .number {
  margin-top: -70px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-4 .image-box-section .detail-header .number {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    -webkit-transform-origin: bottom left;
            transform-origin: bottom left;
  }
}
#page-method .method-section-box-4 .image-box-section .detail-header .heading {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
#page-method .method-section-box-4 .image-box-section .detail-body {
  min-height: 140px;
}
#page-method .method-section-box-5 {
  max-width: 1200px;
  margin: 0 auto 120px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 {
    padding: 0 20px;
  }
}
#page-method .method-section-box-5 .section {
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .section {
    margin-bottom: 30px;
  }
}
#page-method .method-section-box-5 .section-inner {
  max-width: 1000px;
  margin: auto;
}
#page-method .method-section-box-5 .section-header {
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .section-header {
    margin-bottom: 10px;
  }
}
#page-method .method-section-box-5 .wide-image {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
#page-method .method-section-box-5 .point-section .point-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .point-section .point-list {
    display: block;
  }
}
#page-method .method-section-box-5 .point-section .point-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .point-section .point-list .list-item:not(:last-of-type) {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-5 .point-section .point .point-header {
  border-bottom: 1px solid #000;
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .point-section .point .point-header {
    margin-bottom: 10px;
  }
}
#page-method .method-section-box-5 .point-section .point .point-body {
  min-height: 50px;
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .point-section .point .point-body {
    min-height: inherit;
    margin-bottom: 10px;
  }
}
#page-method .method-section-box-5 .point-section .detail-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
  margin-bottom: 30px;
}
#page-method .method-section-box-5 .point-section .detail-header .number {
  margin-top: -70px;
}
#page-method .method-section-box-5 .point-section .detail-header .heading {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
#page-method .method-section-box-5 .point-section .detail-body {
  min-height: 140px;
}
#page-method .method-section-box-5 .kinds-section .kinds-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .kinds-section .kinds-list {
    display: block;
  }
}
#page-method .method-section-box-5 .kinds-section .kinds-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 277px;
          flex: 0 1 277px;
  margin: 0 2%;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .kinds-section .kinds-list .list-item:not(:last-of-type) {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-5 .kinds-section .kinds .kinds-header {
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-5 .kinds-section .kinds .kinds-header .image img {
    width: 100%;
  }
}
#page-method .method-section-box-5 .kinds-section .kinds .kinds-body {
  margin-bottom: 20px;
}
#page-method .method-section-box-5 .kinds-section .detail-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
  margin-bottom: 30px;
}
#page-method .method-section-box-5 .kinds-section .detail-header .number {
  margin-top: -70px;
}
#page-method .method-section-box-5 .kinds-section .detail-header .heading {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
#page-method .method-section-box-5 .kinds-section .detail-body {
  min-height: 140px;
}
#page-method .method-section-box-6 {
  margin-bottom: 70px;
}
#page-method .method-section-box-6 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-6 .section {
    margin-bottom: 40px;
  }
}
#page-method .method-section-box-6 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-6 .section-header {
    margin-bottom: 20px;
  }
}
#page-method .method-section-box-6 .image-box-section .image-box {
  padding: 50px 0 80px;
}
#page-method .method-section-box-6 .image-box-section .image-box.bg-program-1 {
  background: url("../img/pc/method_program_bg_1.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-6 .image-box-section .image-box.bg-program-2 {
  background: url("../img/pc/method_program_bg_2.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-6 .image-box-section .image-box.bg-program-3 {
  background: url("../img/pc/method_program_bg_3.jpg") center center/cover no-repeat;
}
#page-method .method-section-box-6 .image-box-section .image-box:nth-child(even) .box-detail-inner {
  margin-left: auto;
}
#page-method .method-section-box-6 .image-box-section .image-box .box-detail {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 769px) {
  #page-method .method-section-box-6 .image-box-section .image-box .box-detail {
    padding: 0 20px;
  }
}
#page-method .method-section-box-6 .image-box-section .image-box .box-detail-inner {
  background: rgba(255, 255, 255, 0.8);
  max-width: 720px;
  padding: 0 30px 30px;
  margin-bottom: 60px;
}
#page-method .method-section-box-6 .image-box-section .detail-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
  margin-bottom: 30px;
}
#page-method .method-section-box-6 .image-box-section .detail-header .number {
  margin-top: -70px;
}
#page-method .method-section-box-6 .image-box-section .detail-header .heading {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.075em;
}
#page-class .class-section-box-1 {
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 {
    padding: 0 20px;
  }
}
#page-class .class-section-box-1 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 .section {
    margin-bottom: 40px;
  }
}
#page-class .class-section-box-1 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 .section-header {
    margin-bottom: 20px;
  }
}
#page-class .class-section-box-1 .class-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: center;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 .class-list {
    display: block;
  }
}
#page-class .class-section-box-1 .class-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
  background: #fff;
  -webkit-box-shadow: 0 0 20px rgba(13, 11, 17, 0.6);
          box-shadow: 0 0 20px rgba(13, 11, 17, 0.6);
	margin: 0 20px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 .class-list .list-item:not(:last-of-type) {
    margin-bottom: 40px;
  }
}
#page-class .class-section-box-1 .class-list .list-item .class {
  padding: 10px;
}
#page-class .class-section-box-1 .class-list .list-item .class .class-header {
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-1 .class-list .list-item .class .class-header {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 {
    padding: 0 20px;
  }
}
#page-class .class-section-box-2 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .section {
    margin-bottom: 40px;
  }
}
#page-class .class-section-box-2 .section-inner {
  max-width: 1200px;
  margin: auto;
}
#page-class .class-section-box-2 .school-name {
  background: #e6edf4;
  max-width: 600px;
  margin: 0 auto 50px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  padding: 20px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .school-name {
    margin-bottom: 20px;
  }
}
#page-class .class-section-box-2 .price-title {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-bottom: 20px;
}
#page-class .class-section-box-2 table.price-table {
  width: 100%;
  border-collapse: collapse;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 table.price-table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}
#page-class .class-section-box-2 table.price-table thead tr {
  color: #fff;
  background: #000;
}
#page-class .class-section-box-2 table.price-table thead th {
  padding: 35px;
  text-align: left;
  width: 25%;
  font-size: 1.6rem;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 table.price-table thead th {
    font-size: 1.6rem;
    padding: 20px;
  }
}
#page-class .class-section-box-2 table.price-table tbody tr {
  border-bottom: 1px solid #000;
}
#page-class .class-section-box-2 table.price-table tbody td {
  padding: 35px;
  text-align: left;
  font-size: 1.4rem;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 table.price-table tbody td {
    padding: 20px;
    font-size: 1.4rem;
  }
}
#page-class .class-section-box-2 table.price-table tbody td .tax {
  font-size: 1rem;
}
#page-class .class-section-box-2 .image-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#page-class .class-section-box-2 .image-box:not(:last-of-type) {
  margin-bottom: 110px;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box:not(:last-of-type) {
    margin-bottom: 40px;
  }
}
#page-class .class-section-box-2 .image-box .box-primary,
#page-class .class-section-box-2 .image-box .box-secondary {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 50%;
          flex: 0 1 50%;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box .box-primary,
#page-class .class-section-box-2 .image-box .box-secondary {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
  }
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box .box-primary {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box .box-secondary {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box .image {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .image-box .map iframe {
    width: 100%;
  }
}
#page-class .class-section-box-2 .image-box .box-detail .detail-header {
  padding: 0 30px 10px;
  border-bottom: 1px solid #000;
}
#page-class .class-section-box-2 .image-box .box-detail .detail-header .heading-sub a {
  text-decoration: underline;
}
#page-class .class-section-box-2 .image-box .box-detail .detail-header .heading-sub a:hover {
  text-decoration: none;
}
#page-class .class-section-box-2 .image-box .box-detail .detail-header .icon-out-link {
  display: inline-block;
  width: 13px;
  height: 12px;
  background: url("../img/pc/icon_out_link.png") center center/cover no-repeat;
  margin-left: 0.5em;
}
#page-class .class-section-box-2 .image-box .box-detail .detail-body {
  padding: 20px 30px;
}
#page-class .class-section-box-2 .staff-section {
  margin-bottom: 80px;
}
#page-class .class-section-box-2 .staff-section .section-header {
  margin-bottom: 40px;
}
#page-class .class-section-box-2 .staff-section .staff-title {
  font-size: 1.8rem;
}
#page-class .class-section-box-2 .staff-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#page-class .class-section-box-2 .staff-list .list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 276px;
          flex: 0 1 276px;
  margin: 0 1%;
}
#page-class .class-section-box-2 .staff-box .image {
  margin-bottom: 10px;
}
#page-class .class-section-box-2 .staff-box .box-detail .staff-name {
  font-size: 2rem;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .staff-box .box-detail .staff-name {
    font-size: 1.4rem;
    line-height: 1.2;
    margin-bottom: 4px;
  }
}
#page-class .class-section-box-2 .staff-box .box-detail .staff-name .unit {
  font-size: 1.4rem;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .staff-box .box-detail .staff-name .unit {
    font-size: 1.2rem;
  }
}
#page-class .class-section-box-2 .staff-box .box-detail .staff-text {
  font-size: 1.2rem;
  line-height: 2;
}
@media screen and (max-width: 769px) {
  #page-class .class-section-box-2 .staff-box .box-detail .staff-text {
    font-size: 1.2rem;
  }
}

#page-trial .trial-section-box-1 .section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-section-box-1 .section {
    margin-bottom: 40px;
  }
}
#page-trial .trial-section-box-1 .section-inner {
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-section-box-1 .section-inner {
    padding: 0 20px;
  }
}
#page-trial .trial-section-box-1 .section-header {
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-section-box-1 .section-header {
    margin-bottom: 20px;
  }
}
#page-trial .trial-section-box-1 .flow-section {
  color: #fff;
  background: #000;
  padding: 40px 0;
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-section-box-1 .flow-section {
    margin-bottom: 40px;
  }
}
#page-trial .trial-section-box-1 .flow-section .flow {
  position: relative;
}
#page-trial .trial-section-box-1 .flow-section .flow::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 10px;
  left: 15px;
  height: 100%;
  border-left: 1px dotted #fff;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-item {
  position: relative;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-item .item-primary {
  padding-right: 20px;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-number {
  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;
  position: relative;
  color: #000;
  text-align: center;
  width: 34px;
  height: 34px;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-number::after {
  content: "●";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  color: #fff;
  font-size: 34px;
  line-height: 1;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-heading {
  margin-bottom: 20px;
}
#page-trial .trial-section-box-1 .flow-section .flow .flow-text {
  margin-bottom: 40px;
}
#page-trial .trial-section-box-1 .contact-section {
  margin-bottom: 80px;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-section-box-1 .contact-section {
    margin-bottom: 40px;
  }
}
#page-trial .trial-lead {
  max-width: 600px;
  margin: -2em auto 50px;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-lead {
    margin-bottom: 25px;
  }
}
#page-trial .trial-lead .trial-lead__header {
  position: relative;
  bottom: -2em;
  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;
}
#page-trial .trial-lead .trial-lead__header .header-text-1 {
  white-space: nowrap;
  padding: 0 20px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  background: #fff;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-lead .trial-lead__header .header-text-1 {
    font-size: 1.6rem;
  }
}
#page-trial .trial-lead .trial-lead__body {
  padding: 50px;
  text-align: center;
  border: 1px solid #000;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-lead .trial-lead__body {
    padding: 50px 20px 20px;
  }
}
#page-trial .trial-lead .trial-lead__body .body-text-1 {
  font-size: 2.2rem;
}
@media screen and (max-width: 769px) {
  #page-trial .trial-lead .trial-lead__body .body-text-1 {
    font-size: 1.4rem;
  }
}
#page-trial .tab-box .tab-nav-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  cursor: pointer;
  max-width: 880px;
  margin: auto;
}
#page-trial .tab-box .tab-nav-wrapper .tab-nav {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  color: white;
  border-right: solid 10px transparent;
  border-left: solid 10px transparent;
  background-color: #676767;
  font-size: 16px;
  width: 300px;
  padding: 20px;
  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 (max-width: 769px) {
  #page-trial .tab-box .tab-nav-wrapper .tab-nav {
    font-size: 14px;
    border-width: 4px;
    width: 100px;
    padding: 10px 3px;
  }
}
#page-trial .tab-box .tab-nav-wrapper .tab-nav.selected {
  color: #fff;
  background-color: #333;
  border: none;
}
#page-trial .tab-box .tab-nav-wrapper .tab-nav:hover {
  color: #fff;
  background-color: #333;
  border: none;
}
#page-trial .tab-box .tab-content-wrapper {
  margin-top: -35px;
  font-size: 30px;
  text-align: center;
  color: #fff;
  background: #333;
  padding: 70px;
  min-height: 340px;
}
@media screen and (max-width: 769px) {
  #page-trial .tab-box .tab-content-wrapper {
    margin-top: -20px;
    padding: 70px 20px 20px;
    min-height: 230px;
  }
}
#page-trial .tab-box .tab-content-wrapper .tab-content {
  display: none;
}
#page-trial .tab-box .tab-content-wrapper .tab-content.show {
  display: block;
}
#page-trial .tab-box .tab-content-wrapper .content-text-1 {
  font-size: 2.8rem;
  font-weight: bold;
}
@media screen and (max-width: 769px) {
  #page-trial .tab-box .tab-content-wrapper .content-text-1 {
    font-size: 1.8rem;
  }
}
#page-trial .tab-box .tab-content-wrapper .content-text-2 {
  font-size: 2.4rem;
  font-weight: bold;
}
@media screen and (max-width: 769px) {
  #page-trial .tab-box .tab-content-wrapper .content-text-2 {
    font-size: 1.6rem;
  }
}

#page-form input {
  font-weight: normal;
}
#page-form input::-webkit-input-placeholder {
  color: #C4C1C1;
}
#page-form input::-moz-placeholder {
  color: #C4C1C1;
}
#page-form input:-ms-input-placeholder {
  color: #C4C1C1;
}
#page-form input::-ms-input-placeholder {
  color: #C4C1C1;
}
#page-form input::placeholder {
  color: #C4C1C1;
}
#page-form input:-ms-input-placeholder {
  color: #C4C1C1;
}
#page-form input::-ms-input-placeholder {
  color: #C4C1C1;
}
#page-form .text-center {
  text-align: center;
}
#page-form .w-100 {
  width: 100%;
}
#page-form .mb-20 {
  margin-bottom: 20px;
}
#page-form .mb-30 {
  margin-bottom: 30px;
}
#page-form .mb-50 {
  margin-bottom: 50px;
}
#page-form .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#page-form .row.justify-content-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 769px) {
  #page-form .row.sp-block {
    display: block;
  }
}
#page-form .row.type-name .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
#page-form .row.type-name .col-form-label {
  display: inline-block;
  width: 20%;
}
@media screen and (max-width: 769px) {
  #page-form .row.type-name .col-form-label {
    width: 30%;
  }
}
#page-form .row.type-name .form-control-plaintext {
  width: 100%;
}
#page-form .row.type-name .form-control-plaintext.inline {
  display: inline-block;
  width: 70%;
}
@media screen and (max-width: 769px) {
  #page-form .row.type-name .form-control-plaintext.inline {
    width: 60%;
  }
}
#page-form .row:not(:last-of-type) {
  margin-bottom: 10px;
}
#page-form .row .col {
  padding: 0 2%;
}
#page-form .row .col.col-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 32%;
          flex: 0 1 32%;
}
#page-form .row .col.col-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 49%;
          flex: 0 1 49%;
}
#page-form .row .col.col-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 65%;
          flex: 0 1 65%;
}
#page-form .row .col.col-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 96%;
          flex: 0 1 96%;
}
@media screen and (max-width: 769px) {
  #page-form .row .col.col-sp-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 96%;
            flex: 0 1 96%;
  }
}
#page-form .form-select {
  display: block;
  width: 100%;
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  vertical-align: middle;
  background: #fff url("../img/pc/icon_select.png") right 0.75rem center/10px 5px no-repeat;
  border: 1px solid #707070;
  border-radius: 3px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
#page-form .form-select.size-s {
  display: inline-block;
  width: 6em;
}
@media screen and (max-width: 769px) {
  #page-form .form-select.size-s {
    width: 4em;
  }
}
#page-form .form-select.size-l {
  display: inline-block;
  width: 20em;
}
@media screen and (max-width: 769px) {
  #page-form .form-select.size-l {
    width: 14em;
  }
}
#page-form .form-main {
  background: radial-gradient(white, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0));
  padding-bottom: 150px;
}
#page-form .form-main__header {
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 769px) {
  #page-form .form-main__header {
    padding: 0 20px;
    font-size: 15px;
  }
}
#page-form .form-main__body {
  max-width: 1110px;
  margin: auto;
}
#page-form .form-attention {
  color: #c00;
  font-weight: bold;
  margin-bottom: 20px;
}
@media screen and (max-width: 769px) {
  #page-form .form-attention {
    padding: 0 20px;
  }
}
#page-form .error {
  color: #c00;
  font-size: 12px;
}
#page-form .form-heading1 {
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  #page-form .form-heading1 {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 769px) {
  #page-form .form-heading1 img {
    width: 190px;
  }
}
#page-form .form-heading2 {
  font-size: 27px;
  font-weight: normal;
  letter-spacing: 0.12em;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 769px) {
  #page-form .form-heading2 {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
#page-form .form-heading3 {
  color: #2C5191;
  font-size: 23px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 769px) {
  #page-form .form-heading3 {
    font-size: 15px;
  }
}
#page-form .form-heading4 {
  color: #000;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
#page-form .form-finished-box {
  border: solid 1px #AFAFAF;
  padding: 70px;
  text-align: center;
}
@media screen and (max-width: 769px) {
  #page-form .form-finished-box {
    margin-left: 20px;
    margin-right: 20px;
  }
}
#page-form .form-btn-submit {
  display: block;
  width: 100%;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #fff;
  text-align: center;
  background: #a1874f;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 769px) {
  #page-form .form-btn-submit {
    width: 100%;
    padding: 13px;
    font-size: 1.6rem;
  }
}
#page-form .form-btn-submit.size-xl {
  width: 400px;
}
@media screen and (max-width: 769px) {
  #page-form .form-btn-submit.size-xl {
    width: 100%;
  }
}
#page-form .form-btn-submit:hover {
  text-decoration: none;
  opacity: 0.8;
}
#page-form .form-btn-cancel {
  display: block;
  width: 320px;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #000;
  text-align: center;
  background: #fff;
  border: solid 1px #000;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 769px) {
  #page-form .form-btn-cancel {
    width: 100%;
    padding: 13px;
    font-size: 12px;
  }
}
#page-form .form-btn-cancel.size-xl {
  width: 400px;
}
@media screen and (max-width: 769px) {
  #page-form .form-btn-cancel.size-xl {
    width: 100%;
  }
}
#page-form .form-btn-cancel:hover {
  text-decoration: none;
  opacity: 0.8;
}
#page-form .attention-tel {
  display: none;
  position: absolute;
  top: -20px;
  left: 30px;
  font-size: 13px;
  color: #fff;
  background: #535050;
  padding: 10px;
}
#page-form .attention-tel::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-color: #535050 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}
#page-form .from-mv {
  text-align: center;
}
#page-form .contact-form {
  margin-bottom: 45px;
}
#page-form .form-step {
  text-align: center;
}
@media screen and (max-width: 769px) {
  #page-form .form-step {
    padding: 0 20px;
  }
}
#page-form .form-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 769px) {
  #page-form .form-item {
    display: block;
  }
}
#page-form .form-item__header {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 318px;
          flex: 0 0 318px;
  position: relative;
  color: #fff;
  background: #000;
  text-align: center;
  padding: 30px 20px;
}
@media screen and (max-width: 769px) {
  #page-form .form-item__header {
    padding: 10px;
  }
}
#page-form .form-item__header .icon {
  position: absolute;
  top: 35px;
  right: 10px;
  color: #fff;
  background: #AFAFAF;
  padding: 2px 10px;
  font-size: 14px;
  line-height: 1;
}
@media screen and (max-width: 769px) {
  #page-form .form-item__header .icon {
    top: 15px;
  }
}
#page-form .form-item__header .icon.icon-required {
  background: #215096;
}
#page-form .form-item__body {
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  padding: 30px 20px;
}
@media screen and (max-width: 769px) {
  #page-form .form-item__body {
    padding: 10px;
  }
}
#page-form .form-item__body.p-0 {
  padding: 0;
}
#page-form .form-item__body .form-control-plaintext {
  width: 100%;
}
#page-form .checkbox-label {
  display: block;
  border-bottom: solid 1px #AFAFAF;
  text-indent: -1.5em;
  padding: 10px 10px 10px 3em;
}
#page-form .checkbox-label:last-of-type {
  border-bottom: none;
}
#page-form .form-link {
  color: #215096;
  text-decoration: underline;
}
#page-form .form-link:hover {
  text-decoration: none;
}
@media screen and (max-width: 769px) {
  #page-form .contact-form-notes {
    padding: 0 20px;
    font-size: 15px;
  }
}
@media screen and (max-width: 769px) {
  #page-form .form-button-box {
    padding: 0 20px;
  }
}
#page-form .form-note {
  font-size: 13px;
  color: #2F2725;
}
#page-form .grecaptcha-badge {
  bottom: 80px !important;
}
@media screen and (max-width: 769px) {
  #page-form .grecaptcha-badge {
    bottom: 140px !important;
  }
}
.reverse{
	flex-direction: row-reverse;
	padding-top: 90px;
}