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

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

ol, ul {
  list-style-type: none;
  margin: 0;
  padding: 0; }

figure {
  margin: 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

input {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  margin: 0; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

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

main, section {
  display: block; }

html {
  font-size: 62.5%; }

html, body {
  padding: 0;
  margin: 0;
  min-height: 100vh; }

body {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0;
  color: #000;
  font-weight: 300;
  letter-spacing: 0.05em;
  background: #fff;
  font-feature-settings: "palt"; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 1.5rem; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 1.4rem; } }
  @media screen and (max-width: 375px) {
    body {
      font-size: 1.4rem; } }

a {
  text-decoration: none;
  color: #1D9CB4;
  transition: opacity 0.3s ease-out; }
  a:focus {
    outline: 1px dotted; }
  a:focus {
    outline: none; }
  a:hover {
    opacity: 0.6; }

img {
  max-width: 100%; }
  @media screen and (max-width: 480px) {
    img {
      width: 100%; } }

strong {
  font-weight: bold; }

span.strong {
  font-weight: bold;
  border-bottom: 2px dotted #fff;
  padding-bottom: 2px; }

em {
  font-style: italic;
  font-weight: normal; }

p {
  margin-bottom: 2rem;
  line-height: 2; }
  @media screen and (max-width: 480px) {
    p {
      line-height: 2; } }
  p:last-child {
    margin-bottom: 0; }

figure {
  line-height: 150%; }

table {
  width: 100%; }

select,
input {
  font-size: 100%; }
  @media screen and (max-width: 768px) {
    select,
    input {
      font-size: 16px; } }

select {
  padding: 8px; }

textarea {
  resize: none; }
  @media screen and (max-width: 768px) {
    textarea {
      font-size: 16px; } }
  textarea:focus {
    outline: 0; }

dl {
  line-height: 2; }
  @media screen and (max-width: 480px) {
    dl {
      line-height: 1.7; } }
  dl dt {
    font-weight: 400; }

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
  background-color: #fff; }

input[type=submit] {
  cursor: pointer; }

input[type=checkbox]:checked + .check::after {
  opacity: 1; }

input::placeholder {
  color: #999; }

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset; }

.status-scroll .layout-header {
  background-color: #fff;
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.2); }
  .status-scroll .layout-header .inner {
    padding-top: 15px;
    padding-bottom: 15px; }
.status-scroll .global-logo {
  width: 250px; }
.status-scroll .nav-sp {
  top: 8px; }
  @media screen and (max-width: 768px) {
    .status-scroll .nav-sp {
      top: 8px; } }
  @media screen and (max-width: 480px) {
    .status-scroll .nav-sp {
      top: 2px; } }
.status-nav .nav-global {
  display: flex;
  transform: translateX(0px); }
.status-nav .nav-sp span {
  background-color: #fff !important;
  height: 2px !important;
  position: absolute; }
  .status-nav .nav-sp span:nth-child(1) {
    transform: rotate(45deg);
    margin-top: 2px; }
  .status-nav .nav-sp span:nth-child(2) {
    opacity: 0; }
  .status-nav .nav-sp span:nth-child(3) {
    transform: rotate(-45deg);
    margin-top: 2px; }

.layout-kept {
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
  position: fixed;
  bottom: 0;
  right: 0;
  max-width: 210px;
  width: 210px;
  white-space: nowrap;
  z-index: 10; }
  @media screen and (max-width: 768px) {
    .layout-kept {
      display: flex;
      justify-content: flex-end;
      width: 100%;
      max-width: 100%; } }
  .layout-kept > .btn-entry {
    margin: 0;
    width: 100%;
    background-color: #000;
    color: #fff; }
    .layout-kept > .btn-entry a {
      display: block;
      position: relative;
      padding: 14px 8px 14px 21px;
      text-align: center;
      color: #fff;
      letter-spacing: 0.1rem;
      font-size: 80%; }
      @media screen and (max-width: 768px) {
        .layout-kept > .btn-entry a {
          padding: 16px 6px 16px 25px;
          font-size: 100%; } }
      .layout-kept > .btn-entry a::after {
        position: absolute;
        left: 13px;
        background-size: 12px 12px;
        width: 12px;
        height: 12px; }
        @media screen and (max-width: 768px) {
          .layout-kept > .btn-entry a::after {
            position: absolute;
            left: 11px;
            top: 50%;
            background-size: 14px 14px;
            width: 14px;
            height: 14px; } }
  .layout-kept > .btn-measure {
    width: 100%;
    margin: 0;
    background-color: #86b42c;
    color: #fff; }
    .layout-kept > .btn-measure a {
      display: block;
      position: relative;
      padding: 14px 8px 14px 21px;
      font-size: 80%;
      line-height: 1.2;
      text-align: center;
      color: #fff;
      letter-spacing: 0.1rem; }
      @media screen and (max-width: 768px) {
        .layout-kept > .btn-measure a {
          padding: 16px 6px 16px 25px;
          font-size: 100%; } }
      .layout-kept > .btn-measure a::after {
        content: '';
        display: block;
        background: url(/images/common/icon/window.svg) no-repeat;
        background-position: left 50%;
        position: absolute;
        left: 13px;
        top: 50%;
        margin: -6px 0 0 0;
        transition: all 0.1s ease-in-out;
        background-size: 12px 12px;
        width: 12px;
        height: 12px; }
        @media screen and (max-width: 768px) {
          .layout-kept > .btn-measure a::after {
            position: absolute;
            left: 11px;
            top: 50%;
            background-size: 14px 14px;
            width: 14px;
            height: 14px; } }
.layout-screen {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
  min-height: 100vh;
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: 100% auto; }
  .layout-screen.-bg {
    background-color: #333; }
.layout-header {
  z-index: 10;
  transition: all 0.3s ease-in-out;
  position: relative;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  font-family: "acumin-pro", sans-serif;
  font-weight: 400; }
  .layout-header .inner {
    padding: 30px 40px;
    display: flex;
    align-items: center;
    transition: all 0.2s ease-in-out; }
    @media screen and (max-width: 480px) {
      .layout-header .inner {
        padding: 30px 20px; } }
.layout-sidecontents {
  display: flex;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .layout-sidecontents {
      display: block; } }
  .layout-sidecontents .main {
    width: 100%; }
    @media screen and (max-width: 768px) {
      .layout-sidecontents .main {
        margin-bottom: 30px; } }
  .layout-sidecontents .side {
    width: 300px;
    min-width: 300px;
    padding-left: 50px;
    margin-left: auto; }
    @media screen and (max-width: 768px) {
      .layout-sidecontents .side {
        width: 100%;
        margin: 0;
        padding-left: 0; } }
    .layout-sidecontents .side .title {
      font-family: "acumin-pro", sans-serif;
      font-weight: 700;
      margin-bottom: 20px;
      font-size: 2.2rem; }
.layout-footer {
  background-color: #222;
  color: #fff;
  margin-top: auto; }
  .layout-footer .inner {
    padding: 40px 0px;
    line-height: 1.6; }
    .layout-footer .inner .logo {
      width: 200px;
      margin: 0 0 20px 0; }
      .layout-footer .inner .logo img {
        display: block;
        width: 100%; }
    .layout-footer .inner .container-block {
      margin: 0 0 30px 0; }
    .layout-footer .inner .sns {
      display: flex; }
      .layout-footer .inner .sns a {
        display: block; }
      .layout-footer .inner .sns li {
        width: 30px;
        margin-right: 15px; }
        .layout-footer .inner .sns li img {
          display: block;
          width: 100%; }
.layout-firstview {
  background-color: #F8F8F5;
  min-height: 100vh;
  overflow: hidden;
  background-position: 55% 50%;
  background-size: auto 160%;
  background-image: url(/images/top/image.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 0 0 50px 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative; }
  @media screen and (max-width: 768px) {
    .layout-firstview {
      background-position: 52% 28%;
      background-size: 160%; } }
  @media screen and (max-width: 480px) {
    .layout-firstview {
      background-position: 52% 28%;
      background-size: 200%; } }
  .layout-firstview .inner {
    padding: 0 60px 60px;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .layout-firstview .inner {
        padding: 0 30px 12%; } }
    @media screen and (max-width: 480px) {
      .layout-firstview .inner .copy-sub img {
        width: 90%; } }
    .layout-firstview .inner .tag br {
      display: none; }
      @media screen and (max-width: 480px) {
        .layout-firstview .inner .tag br {
          display: block; } }
    @media screen and (max-width: 480px) {
      .layout-firstview .inner .tag {
        line-height: 2; } }
  .layout-firstview .comment {
    position: absolute;
    width: 150px;
    right: 12%;
    top: 20%; }
    @media screen and (max-width: 768px) {
      .layout-firstview .comment {
        right: 4%;
        width: 100px; } }
    @media screen and (max-width: 480px) {
      .layout-firstview .comment {
        right: 2%;
        top: 20%; } }
    .layout-firstview .comment img {
      display: block;
      width: 100%; }
      @media screen and (max-width: 480px) {
        .layout-firstview .comment img {
          width: 100%; } }
  .layout-firstview .comment2 {
    position: absolute;
    width: 280px;
    left: 12%;
    top: 22%; }
    @media screen and (max-width: 768px) {
      .layout-firstview .comment2 {
        width: 200px;
        left: 5%;
        top: 23%; } }
    @media screen and (max-width: 480px) {
      .layout-firstview .comment2 {
        width: 200px;
        left: 2%;
        top: 36%; } }
    .layout-firstview .comment2 img {
      display: block;
      width: 100%; }
      @media screen and (max-width: 480px) {
        .layout-firstview .comment2 img {
          width: 60%; } }
  .layout-firstview .tag {
    letter-spacing: 0.2rem; }
.layout-main {
  box-sizing: border-box;
  padding: 0;
  background-color: #ddd;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  position: relative; }
  @media screen and (max-width: 768px) {
    .layout-main {
      padding: 50px 0;
      padding: 0px 0; } }
  @media screen and (max-width: 480px) {
    .layout-main {
      padding: 40px 0;
      padding: 0px 0; } }
  .layout-main.-nopaddingtop {
    padding-top: 0; }
.layout-section {
  margin: 0 0 0;
  padding: 80px 0;
  border-bottom: 1px solid #eee;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: fixed;
  position: relative; }
  @media screen and (max-width: 480px) {
    .layout-section {
      background-size: cover;
      background-position: 50% 50%;
      background-attachment: scroll;
      padding: 40px 0; } }
  .layout-section:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .layout-section:last-child {
    margin-bottom: 0; }
.layout-subsection {
  margin: 0 0 0;
  padding: 30px 0; }
  @media screen and (max-width: 480px) {
    .layout-subsection {
      padding: 20px 0 0; } }
  .layout-subsection:last-child {
    margin-bottom: 0; }

.global-logo {
  width: 280px;
  transition: all 0.2s ease-in-out; }
  .global-logo h1 {
    display: block; }
    @media screen and (max-width: 480px) {
      .global-logo h1 {
        width: 160px; } }
    .global-logo h1 img {
      width: 100%;
      display: block; }

.nav-global {
  position: fixed;
  right: 0;
  top: 0;
  height: 100vh;
  width: 300px;
  background-color: #1350B1;
  margin-left: auto;
  display: flex;
  align-items: center;
  transition: all 0.2s ease-in-out;
  transform: translateX(300px); }
  @media screen and (max-width: 768px) {
    .nav-global {
      font-size: 2.4rem; } }
  .nav-global ul {
    padding: 0 30px;
    width: 100%; }
    .nav-global ul li {
      margin: 14px 15px; }
      .nav-global ul li:last-child {
        margin-right: 0; }
      @media screen and (max-width: 768px) {
        .nav-global ul li.-current a {
          opacity: 1; } }
      .nav-global ul li.-current a::after {
        width: 100%; }
    .nav-global ul .member {
      padding-left: 30px;
      border-left: 1px solid rgba(255, 255, 255, 0.5); }
      @media screen and (max-width: 768px) {
        .nav-global ul .member {
          padding-left: 0;
          border: none; } }
  .nav-global a {
    display: inline-block;
    position: relative;
    padding: 10px 4px;
    font-size: 2.0rem;
    color: #fff; }
    .nav-global a:hover::after {
      width: 100%; }
    .nav-global a::after {
      content: '';
      width: 0;
      height: 3px;
      background-color: #fff;
      position: absolute;
      bottom: -5px;
      left: 0;
      transition: all 0.2s ease-in-out; }
.nav-gotop {
  width: 56px;
  height: 56px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  cursor: pointer; }
  .nav-gotop.-stop {
    position: absolute; }
  .nav-gotop .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #005EB0;
    box-sizing: border-box;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    width: 100%;
    height: 100%; }
    .nav-gotop .inner:hover {
      opacity: 1; }
    .nav-gotop .inner img {
      display: block;
      width: 25px;
      margin: 0 auto; }
.nav-sp {
  position: absolute;
  right: 25px;
  top: 20px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  z-index: 101;
  transition: all 0.3s ease-in-out; }
  @media screen and (max-width: 768px) {
    .nav-sp {
      top: 24px;
      right: 20px;
      display: block; } }
  @media screen and (max-width: 480px) {
    .nav-sp {
      top: 15px;
      right: 10px; } }
  .nav-sp:hover {
    opacity: 0.7; }
  .nav-sp span {
    display: inline-block;
    height: 2px;
    border-radius: 10px;
    width: 50%;
    margin: 0 auto;
    background-color: #000;
    position: absolute;
    top: 50%;
    left: 25%;
    transition: all 0.2s ease-in-out; }
    @media screen and (max-width: 480px) {
      .nav-sp span {
        width: 40%;
        left: 30%; } }
    .nav-sp span:nth-child(2) {
      margin-top: -7px; }
      @media screen and (max-width: 480px) {
        .nav-sp span:nth-child(2) {
          margin-top: -6px; } }
    .nav-sp span:nth-child(3) {
      margin-top: 7px; }
      @media screen and (max-width: 480px) {
        .nav-sp span:nth-child(3) {
          margin-top: 6px; } }

.meta-block .icon-category {
  margin-right: 20px; }
.meta-block time {
  display: inline-block; }

.article-report {
  background-color: white;
  padding: 40px;
  line-height: 1.8;
  border-radius: 6px;
  margin-top: 30%; }
  .article-report .title {
    font-weight: 700;
    font-size: 2.8rem;
    line-height: 1.6;
    margin: 0 0 20px 0; }
    @media screen and (max-width: 480px) {
      .article-report .title {
        font-size: 2.4rem;
        margin-bottom: 15px; } }
.article-news {
  line-height: 1.8; }
  .article-news .title {
    font-weight: bold;
    font-size: 2.8rem;
    margin: 0 0 20px 0;
    line-height: 1.6; }
    @media screen and (max-width: 480px) {
      .article-news .title {
        font-size: 2.4rem;
        margin-bottom: 15px; } }
  .article-news .header {
    margin: 0 0 30px 0; }
    @media screen and (max-width: 480px) {
      .article-news .header {
        margin-bottom: 20px; } }
  .article-news img {
    max-width: 100%; }

.bg-shadow {
  background-color: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 5;
  display: none; }

.heading-page {
  padding: 2px 0 2px 10px;
  margin: 0 0 0px 0;
  font-size: 3rem;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  color: #fff;
  letter-spacing: 3px; }
  @media screen and (max-width: 480px) {
    .heading-page {
      font-size: 2.4rem;
      letter-spacing: 2px; } }
  .heading-page .sub {
    margin-top: 5px;
    letter-spacing: 1px;
    font-size: 1.2rem;
    display: block;
    font-weight: normal; }
    @media screen and (max-width: 768px) {
      .heading-page .sub {
        margin-top: 15px; } }
    @media screen and (max-width: 480px) {
      .heading-page .sub {
        margin-top: 10px; } }
.heading-section {
  margin: 0 0 10px 0;
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  font-family: "acumin-pro", sans-serif;
  font-weight: 700; }
  @media screen and (max-width: 480px) {
    .heading-section {
      font-size: 2.0rem;
      letter-spacing: 1px;
      line-height: 1.3; } }
  .heading-section img {
    max-width: 400px; }
  .heading-section .sub {
    margin-top: 0px;
    margin-left: -3px;
    font-weight: normal;
    display: block;
    font-size: 1.4rem;
    letter-spacing: 1px; }
    @media screen and (max-width: 480px) {
      .heading-section .sub {
        font-size: 1.2rem;
        line-height: 1.3; } }
.heading-subsection {
  margin: 0 0 10px 0;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: bold;
  font-family: "acumin-pro", sans-serif;
  font-weight: 700; }
  @media screen and (max-width: 480px) {
    .heading-subsection {
      font-size: 1.8rem;
      letter-spacing: 1px;
      line-height: 1.3; } }
  .heading-subsection .sub {
    margin-top: 5px;
    font-weight: normal;
    display: block;
    font-size: 1.4rem;
    letter-spacing: 1px; }
    @media screen and (max-width: 480px) {
      .heading-subsection .sub {
        font-size: 1.0rem;
        line-height: 1.3; } }
.heading-bar {
  font-weight: bold;
  background: #000;
  color: #fff;
  padding: 8px 12px;
  margin: 0 0 20px 0; }
.heading-border {
  border-left: 6px solid #000;
  padding: 3px 0 3px 13px;
  line-height: 1.5;
  margin: 0 0 20px 0;
  font-weight: bold;
  font-size: 1.8rem; }

.copy-people {
  font-size: 3rem;
  position: absolute;
  bottom: 100px;
  left: 0;
  width: 100%;
  color: #fff;
  z-index: 3;
  font-weight: 700;
  padding: 0 0 0;
  line-height: 1.6; }

.container-wrapper {
  z-index: 2;
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  box-sizing: content-box;
  padding: 0 50px;
  margin: 0 auto; }
  @media screen and (max-width: 1100px) {
    .container-wrapper {
      padding: 0 40px; } }
  @media screen and (max-width: 768px) {
    .container-wrapper {
      padding: 0 35px; } }
  @media screen and (max-width: 480px) {
    .container-wrapper {
      padding: 0 20px; } }
  .container-wrapper.-pad {
    padding-top: 60px;
    padding-bottom: 60px; }
.container-block {
  display: flex;
  flex-wrap: wrap; }
  .container-block > * {
    width: 50%; }
    @media screen and (max-width: 480px) {
      .container-block > * {
        width: 100%; }
        .container-block > *:first-child {
          margin-bottom: 30px; } }
.container-map {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  line-height: 1.8; }
  .container-map > .cell:first-child {
    width: 50%; }
  .container-map > .cell:last-child {
    width: calc(50% - 50px); }
  .container-map iframe {
    overflow: hidden;
    border-radius: 8px;
    width: 100%;
    height: 100%; }
  @media screen and (max-width: 768px) {
    .container-map {
      display: block; }
      .container-map > .cell:first-child {
        width: 100%; }
      .container-map > .cell:last-child {
        width: 100%; } }
.container-trainingmenu {
  display: flex;
  align-items: center;
  padding-left: 60px; }
  @media screen and (max-width: 768px) {
    .container-trainingmenu {
      display: block; } }
  .container-trainingmenu::before {
    top: 50% !important; }
  .container-trainingmenu > * {
    white-space: nowrap; }
  .container-trainingmenu span.sub {
    font-size: 60%;
    display: block; }
  .container-trainingmenu .course {
    flex-basis: 12%;
    font-weight: bold; }
    @media screen and (max-width: 768px) {
      .container-trainingmenu .course {
        display: block;
        flex-basis: 100%; } }
  .container-trainingmenu .coursedetail {
    font-size: 120%;
    line-height: 1.4;
    flex-basis: 58%;
    font-weight: bold; }
    @media screen and (max-width: 768px) {
      .container-trainingmenu .coursedetail {
        display: block;
        flex-basis: 100%; } }
    .container-trainingmenu .coursedetail .sub {
      font-weight: normal; }
  .container-trainingmenu .price {
    margin-left: auto;
    flex-basis: 20%; }
    @media screen and (max-width: 768px) {
      .container-trainingmenu .price {
        margin-left: 0;
        display: block;
        flex-basis: 100%; } }
  .container-trainingmenu .level {
    margin-left: auto;
    flex-basis: 10%;
    text-align: center;
    line-height: 1.4; }
    @media screen and (max-width: 768px) {
      .container-trainingmenu .level {
        margin-left: 0;
        display: block;
        flex-basis: 100%;
        text-align: left; } }
.container-image {
  display: flex; }
  .container-image.-reverse {
    flex-direction: row-reverse; }
    .container-image.-reverse > .paragraph {
      padding-left: 0;
      padding-right: 50px; }
      @media screen and (max-width: 480px) {
        .container-image.-reverse > .paragraph {
          padding-right: 0px; } }
  .container-image > .image {
    flex-basis: 30%;
    overflow: hidden;
    border-radius: 8px; }
    .container-image > .image img {
      display: block;
      width: 100%; }
  .container-image > .paragraph {
    flex-basis: 70%;
    padding-left: 50px; }
  @media screen and (max-width: 480px) {
    .container-image {
      display: block; }
      .container-image > .image {
        margin-bottom: 25px; } }

.link-arrow {
  display: inline-block;
  position: relative;
  padding-left: 20px; }
  .link-arrow::before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: url(/images/common/icon/arrow.svg) no-repeat;
    background-size: 12px 12px;
    background-position: right 50%;
    position: absolute;
    left: 5px;
    top: 50%;
    margin: -5px 0 0 0;
    transition: all 0.1s ease-in-out; }
  .link-arrow.-block {
    display: block;
    text-align: center;
    padding: 0 0; }
    .link-arrow.-block::before {
      left: 15px; }

.list-news {
  padding: 20px 0; }
  @media screen and (max-width: 480px) {
    .list-news {
      padding: 10px 0px; } }
  .list-news li {
    margin: 0 0 5px 0; }
    .list-news li a {
      display: block;
      padding: 14px 14px 14px 50px;
      color: #000;
      position: relative;
      background-color: #fff;
      border-radius: 3px;
      overflow: hidden;
      background-image: url(/images/common/icon/window_b.svg);
      background-repeat: no-repeat;
      background-size: 15px 15px;
      background-position: 25px 50%; }
      @media screen and (max-width: 480px) {
        .list-news li a {
          padding: 8px 0 8px 50px; } }
      .list-news li a::after {
        content: '';
        display: block;
        width: 16px;
        height: 16px;
        position: absolute;
        right: 20px;
        top: 50%;
        margin: -6px 0 0 0;
        transition: all 0.1s ease-in-out; }
        @media screen and (max-width: 480px) {
          .list-news li a::after {
            top: 22px; } }
      .list-news li a:hover::after {
        right: 10px; }
      .list-news li a dl {
        display: flex;
        padding: 0 10px;
        font-size: 1.5rem; }
        @media screen and (max-width: 480px) {
          .list-news li a dl {
            flex-direction: column-reverse;
            font-size: 95%;
            line-height: 1.5; } }
        .list-news li a dl dt {
          margin-right: 20px; }
          @media screen and (max-width: 480px) {
            .list-news li a dl dt {
              margin-right: 0px; } }
        .list-news li a dl dd {
          margin-left: auto; }
          @media screen and (max-width: 480px) {
            .list-news li a dl dd {
              margin-left: 0; } }
          .list-news li a dl dd time {
            display: inline-block;
            margin-right: 15px; }
            @media screen and (max-width: 480px) {
              .list-news li a dl dd time {
                color: #666;
                margin-top: 3px; } }
.list-archives {
  border-top: 3px solid #000;
  padding-top: 20px;
  font-size: 90%; }
  @media screen and (max-width: 480px) {
    .list-archives {
      padding-top: 15px; } }
  .list-archives li {
    margin-bottom: 15px;
    padding: 0 10px 15px 10px;
    border-bottom: 1px solid #999; }
    @media screen and (max-width: 480px) {
      .list-archives li {
        padding: 0 8px 15px 8px;
        margin-bottom: 15px; } }
    .list-archives li.-outside p::after {
      content: '';
      display: inline-block;
      width: 16px;
      height: 16px;
      background: url(/images/common/icon/window.svg) no-repeat;
      vertical-align: middle;
      margin-left: 8px; }
    .list-archives li .item {
      margin-bottom: 8px;
      font-weight: 700; }
    .list-archives li .icon-category {
      margin-right: 10px;
      min-width: 80px; }
    .list-archives li .number::before {
      content: '#';
      display: inline-block;
      margin-right: 5px;
      margin-bottom: 5px; }
    .list-archives li p {
      line-height: 1.5; }
    .list-archives li a {
      color: #000; }
  .list-archives p {
    margin: 0; }
.list-member {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 30px 0; }
  .list-member > * {
    width: 50%;
    box-sizing: border-box;
    padding: 14px;
    box-shadow: 0 0 0 1px #ccc;
    background: #fff; }
    @media screen and (max-width: 480px) {
      .list-member > * {
        width: 100%; } }
.list-disc {
  list-style-type: disc;
  margin: 10px 0 30px 20px; }
  @media screen and (max-width: 480px) {
    .list-disc {
      margin-left: 24px; } }
  .list-disc > li {
    line-height: 1.7;
    margin: 0 0 5px 0; }
.list-number {
  list-style-type: decimal;
  margin: 10px 0 30px 40px; }
  .list-number > li {
    line-height: 1.7;
    margin: 0 0 5px 0; }
.list-numberbg {
  list-style-type: none;
  margin: 10px 0 30px 20px;
  counter-reset: li; }
  .list-numberbg > li {
    margin: 0 0 5px 0px;
    padding: 0 0 0 30px;
    position: relative;
    line-height: 1.7; }
    .list-numberbg > li:before {
      counter-increment: li;
      content: counter(li);
      background-color: #000;
      color: #fff;
      position: absolute;
      font-size: 20px;
      top: 5px;
      left: 0px;
      border-radius: 50%;
      text-align: center;
      display: inline-block;
      width: 20px;
      height: 20px;
      font-size: 1.4rem;
      line-height: 1;
      display: flex;
      align-items: center;
      justify-content: center; }
.list-training {
  margin: 0 0 20px 0; }
  .list-training li {
    background-color: rgba(255, 255, 255, 0.7);
    border: 1px solid #fff;
    border-radius: 5px;
    padding: 20px;
    margin: 0 0 6px 0;
    display: flex; }
    .list-training li .course {
      font-weight: bold; }
    .list-training li .price {
      margin-left: auto;
      flex-basis: 22%;
      white-space: nowrap; }
      .list-training li .price .caption {
        font-size: 90%;
        margin-left: 10px;
        display: inline-block; }

.table-grid {
  width: auto;
  max-width: 100%;
  margin: 0 0 30px 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc; }
  .table-grid th, .table-grid td {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 8px 12px;
    font-weight: normal;
    line-height: 1.7;
    text-align: left; }
  .table-grid th {
    background-color: #efefef; }
  .table-grid.-cell2 th {
    min-width: 20%; }
.table-line {
  width: 100%;
  max-width: 100%;
  margin: 0 0 30px 0;
  border-top: 1px solid #ccc; }
  .table-line th, .table-line td {
    border-bottom: 1px solid #ccc;
    padding: 8px 12px;
    font-weight: normal;
    line-height: 1.7;
    text-align: left; }
  .table-line.-cell2 th {
    min-width: 20%; }

.image-block {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .image-block {
      display: block; } }
  .image-block.left figure {
    margin: 0 30px 30px 0; }
    @media screen and (max-width: 480px) {
      .image-block.left figure {
        margin-left: 0; } }
  .image-block.right figure {
    margin: 0 0 30px 30px; }
    @media screen and (max-width: 480px) {
      .image-block.right figure {
        margin-left: 0; } }
  .image-block div {
    flex: 1; }
  .image-block figure {
    flex: 1;
    max-width: 40%; }
    @media screen and (max-width: 480px) {
      .image-block figure {
        max-width: 100%; } }
    .image-block figure img {
      display: block;
      width: 100%;
      margin: 0 0 15px 0; }
    .image-block figure figcaption {
      font-size: 90%; }

.btn-store {
  background-color: #000;
  color: #fff;
  width: 100%;
  margin: 10px auto 0; }
  .btn-store a {
    display: block;
    position: relative;
    padding: 6px 10px;
    padding-left: 50px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.1rem; }
    @media screen and (max-width: 768px) {
      .btn-store a {
        padding: 12px 8px 12px 21px; } }
    .btn-store a::after {
      content: '';
      display: block;
      width: 16px;
      height: 16px;
      background: url(/images/common/icon/window.svg) no-repeat;
      background-size: contain;
      background-size: 14px 14px;
      background-position: left 50%;
      position: absolute;
      left: 30px;
      top: 44%;
      margin: -6px 0 0 0;
      transition: all 0.1s ease-in-out; }
      @media screen and (max-width: 768px) {
        .btn-store a::after {
          position: absolute;
          left: 11px;
          top: 50%;
          background-size: 14px 14px;
          width: 14px;
          height: 14px; } }
.btn-entry {
  background-color: #000;
  color: #fff;
  width: 25%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .btn-entry {
      width: 100%; } }
  .btn-entry a {
    display: block;
    position: relative;
    padding: 18px;
    padding-left: 50px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.1rem; }
    @media screen and (max-width: 768px) {
      .btn-entry a {
        padding: 16px 10px 16px 20px; } }
    .btn-entry a::after {
      content: '';
      display: block;
      width: 16px;
      height: 16px;
      background: url(/images/common/icon/window.svg) no-repeat;
      background-size: contain;
      background-size: 16px 16px;
      background-position: left 50%;
      position: absolute;
      left: 20px;
      top: 50%;
      margin: -6px 0 0 0;
      transition: all 0.1s ease-in-out; }
      @media screen and (max-width: 768px) {
        .btn-entry a::after {
          margin-top: -8px; } }
.btn-link {
  border-radius: 4px;
  max-width: 216px;
  width: 100%;
  padding: 14px 10px;
  display: block;
  text-align: center;
  border: 1px solid #ccc;
  color: #000; }
.btn-form {
  border-radius: 4px;
  max-width: 216px;
  width: 100%;
  padding: 14px 10px;
  display: block;
  text-align: center;
  border: none;
  background-color: #000;
  color: #fff;
  font-size: 100%;
  letter-spacing: 0.1rem;
  transition: all 0.3s ease-in-out;
  cursor: pointer; }
  .btn-form.-default {
    background-color: #999; }
  .btn-form.-window {
    background-image: url(/images/common/icon/window.svg);
    background-repeat: no-repeat;
    background-size: 14px auto;
    background-position: 15px 50%;
    padding-right: 10px;
    padding-left: 40px;
    max-width: 240px; }
  .btn-form:hover {
    opacity: 0.8; }
.btn-area {
  display: flex;
  justify-content: center;
  padding: 30px 0; }
  @media screen and (max-width: 480px) {
    .btn-area {
      display: block; } }
  .btn-area .button-form, .btn-area > * {
    margin: 0 10px; }
    @media screen and (max-width: 480px) {
      .btn-area .button-form, .btn-area > * {
        margin: 20px auto; } }

.icon-category {
  background-color: #999;
  line-height: 1.2;
  display: inline-block;
  padding: 4px 10px 4px 10px;
  min-width: 100px;
  font-size: 1.4rem;
  text-align: center;
  white-space: nowrap;
  color: #fff;
  background-color: #666;
  font-weight: 400; }
  .icon-category.-EVENT {
    background-color: #14B5BE; }
  .icon-category.-INFO {
    background-color: #1482C4; }
  .icon-category.-REPORT {
    background-color: #7a75bb; }
  .icon-category.-RESEARCH {
    background-color: #b16d98; }
  .icon-category.-TALKSHOW {
    background-color: #936db1; }
  .icon-category.-ACTIVITY {
    background-color: #c27e66; }
  @media screen and (max-width: 480px) {
    .icon-category {
      font-size: 1.0rem; } }

.card-block {
  position: relative; }
  .card-block a {
    color: #000;
    display: block; }
  .card-block .title {
    font-weight: 400;
    color: #000; }
  .card-block .thumb {
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    border-radius: 6px;
    overflow: hidden; }
    .card-block .thumb img {
      display: block;
      width: 100%; }
  .card-block .caption {
    font-size: 93.33%;
    display: block;
    padding: 15px 0 0 0; }
    @media screen and (max-width: 480px) {
      .card-block .caption {
        padding: 5px 0 0 0; } }
.card-book {
  position: relative; }
  .card-book .thumb {
    position: relative;
    margin: 0 0 20px 0; }
    .card-book .thumb img {
      display: block;
      width: 100%; }
  .card-book .title {
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 10px 0; }
  .card-book .detail {
    font-size: 80%;
    line-height: 1.5; }
.card-profile {
  display: flex;
  align-items: flex-start;
  margin: 0 0 40px 0; }
  @media screen and (max-width: 480px) {
    .card-profile {
      display: block; } }
  .card-profile .thumb {
    flex: 0.2;
    margin-right: 30px;
    min-width: 180px;
    border-radius: 6px;
    overflow: hidden; }
    @media screen and (max-width: 480px) {
      .card-profile .thumb {
        width: 70%;
        margin: 0 auto 20px auto; } }
    .card-profile .thumb img {
      display: block;
      width: 100%; }
  .card-profile .detail {
    line-height: 1.7; }
    .card-profile .detail p {
      margin: 0; }
    .card-profile .detail .name {
      font-size: 120%;
      font-weight: 400;
      margin: 0 0 0px 0; }
    .card-profile .detail .my {
      font-size: 80%;
      margin: 0 0 20px 0; }
    .card-profile .detail .profile {
      font-size: 90%; }

.aform-input-example {
  font-size: 1.4rem;
  color: #666; }
.aform-required {
  color: #cc0000;
  margin-left: 10px;
  display: inline-block; }
.aform-input {
  width: 100%; }
.aform-name-ul {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .aform-name-ul {
      display: block; } }
  .aform-name-ul > * {
    flex-basis: 48%; }
.aform-kana-ul {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .aform-kana-ul {
      display: block; } }
  .aform-kana-ul > * {
    flex-basis: 48%; }

.form-content dl {
  margin-bottom: 50px; }
  .form-content dl dt {
    font-weight: bold; }
.form-content .nav > * {
  margin: 0 auto; }
.form-confirm dl {
  margin-bottom: 30px; }
  .form-confirm dl dt {
    background-color: #efefef;
    padding: 7px 12px;
    line-height: 1.3;
    margin: 0 0 10px 0;
    font-size: 90%; }
  .form-confirm dl dd {
    padding: 0 0; }
.form-submit {
  margin: 0 auto;
  background-color: #999;
  padding: 10px 30px;
  font-weight: bold;
  letter-spacing: 1px; }
  .form-submit:hover {
    background-color: #91ba12; }
.form-group label {
  line-height: 1; }
.form-group li {
  display: flex;
  align-items: end;
  margin-bottom: 10px; }
  .form-group li > *:first-child {
    margin-right: 20px;
    white-space: nowrap; }
.form-text {
  background-color: #eee;
  padding: 8px 8px;
  box-sizing: border-box;
  line-height: 1;
  width: 100%; }
  .form-text:focus {
    background-color: #91ba12; }
.form-textarea {
  padding: 10px;
  min-height: 280px;
  box-sizing: border-box;
  line-height: 1.7;
  width: 100%;
  font-size: 90%;
  line-height: 1.8; }
  .form-textarea:focus {
    background-color: #91ba12; }
.form-radio {
  display: inline-block;
  padding: 12px 0;
  line-height: 1;
  margin-right: 20px; }
  .form-radio label {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0 0 0 30px;
    position: relative;
    width: auto;
    line-height: 1.3; }
    .form-radio label::before, .form-radio label::after {
      content: '';
      display: block;
      border-radius: 50%;
      position: absolute; }
    .form-radio label::after {
      background: #000;
      height: 10px;
      width: 10px;
      left: 5px;
      opacity: 0;
      top: 5px; }
    .form-radio label::before {
      background: #fff;
      border: 1px solid #BDC1CC;
      height: 20px;
      width: 20px;
      left: 0;
      top: 0; }
  .form-radio input[type="radio"] {
    display: none; }
  .form-radio input[type="radio"]:checked + label::after {
    opacity: 1; }
.form-checkbox {
  display: inline-block;
  padding: 12px 0;
  line-height: 1; }
  .form-checkbox label {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    padding: 0 0 0 30px;
    position: relative;
    width: auto;
    line-height: 1.3; }
    .form-checkbox label::before, .form-checkbox label::after {
      content: '';
      display: block;
      border-radius: 2px;
      position: absolute; }
    .form-checkbox label::after {
      background: #000;
      height: 10px;
      width: 10px;
      left: 5px;
      opacity: 0;
      top: 5px; }
    .form-checkbox label::before {
      background: #fff;
      border: 1px solid #BDC1CC;
      height: 20px;
      width: 20px;
      left: 0;
      top: 0; }
  .form-checkbox input[type="checkbox"] {
    display: none; }
  .form-checkbox input[type="checkbox"]:checked + label::after {
    opacity: 1; }
.form-list .field {
  margin: 0 0 30px 0;
  display: block; }
  .form-list .field .form-text {
    width: 100%; }
.form-list .comit {
  padding: 20px 0 0 0; }
  .form-list .comit > * {
    margin: 0 auto; }

.grid-block {
  display: flex;
  flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  margin: 0;
  line-height: 2; }
  .grid-block img {
    width: 100%;
    display: block; }
  .grid-block .button-link {
    width: 100%;
    max-width: 100%; }
  .grid-block.-hasline {
    margin: 0 0 30px 0; }
    .grid-block.-hasline > * {
      box-shadow: 0 0 0 1px #999;
      border-right: none;
      background-color: #fff;
      padding: 12px; }
  @media screen and (max-width: 768px) {
    .grid-block.-cols2 {
      display: block;
      margin: 0; } }
  .grid-block.-cols2 > * {
    width: 50%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .grid-block.-cols2 > * {
        width: auto;
        margin: 0 0 0px 0; } }
  @media screen and (max-width: 768px) {
    .grid-block.-cols3 {
      display: block;
      margin: 0; } }
  .grid-block.-cols3 > * {
    width: 33.33%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .grid-block.-cols3 > * {
        width: auto;
        margin: 0 0 20px 0; } }
  .grid-block.-cols4.-haspadding {
    margin: -30px -2% 0 -2%; }
    .grid-block.-cols4.-haspadding > * {
      padding: 30px 2%; }
      @media screen and (max-width: 480px) {
        .grid-block.-cols4.-haspadding > * {
          padding: 30px 2% 0; } }
  .grid-block.-cols4 > * {
    width: 25%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .grid-block.-cols4 > * {
        width: 33.33%; } }
    @media screen and (max-width: 480px) {
      .grid-block.-cols4 > * {
        width: 50%; } }
  .grid-block.-cols5.-haspadding {
    margin: 0 -10px 0 -10px; }
    .grid-block.-cols5.-haspadding > * {
      padding: 20px 10px; }
  .grid-block.-cols5 > * {
    width: 20%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .grid-block.-cols5 > * {
        width: 33.33%; } }
    @media screen and (max-width: 480px) {
      .grid-block.-cols5 > * {
        width: 50%; } }
.grid-banner {
  display: flex;
  flex-wrap: wrap; }
  .grid-banner > * {
    width: 20%;
    box-shadow: 0 0 0 1px #999;
    background-color: #fff;
    text-align: center; }
    .grid-banner > * a {
      display: block; }
    .grid-banner > * img {
      display: block;
      margin: 0 auto;
      max-width: 90%; }

.detail-page .category {
  margin: 0 0 15px 0; }
.detail-page time {
  display: block;
  margin: 0 0 20px 0; }

.photo-center {
  padding: 0 0 30px 0; }
  .photo-center img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
    width: 100%; }

.mf-code {
  line-height: 2;
  margin: 0 0 30px 0; }
  @media screen and (max-width: 480px) {
    .mf-code {
      line-height: 1.7; } }
.mf-richtext {
  line-height: 2; }
.mf-h2, .mf-h3, .mf-h4 {
  line-height: 1.7; }
.mf-h4 {
  font-size: 1.8rem; }
.mf-space {
  border: none;
  margin: 30px 0; }
.mf-line {
  margin: 3em 0;
  border-top-color: #000; }
.mf-imgcol2 img {
  margin-bottom: 10px; }
.mf-file {
  margin: 0 0 20px 0;
  border-radius: 3px;
  transition: all 0.2s ease-in-out;
  background: #fff url(/images/common/icon/dl.svg) no-repeat;
  background-size: 18px 18px;
  background-position: 16px 50%; }
  .mf-file a {
    color: #000;
    display: block;
    padding: 10px 16px 10px 42px; }
  .mf-file:hover {
    background-color: rgba(255, 255, 255, 0.5); }

.definition-list > dt {
  font-weight: bold;
  font-size: 1.6rem; }
  @media screen and (max-width: 480px) {
    .definition-list > dt {
      font-size: 1.6rem; } }
.definition-list > dd {
  margin-bottom: 1.4em; }

.accordion-list {
  border-top: 0;
  line-height: 1.8; }
  .accordion-list > dt, .accordion-list > dd {
    padding: 10px 18px;
    background-color: rgba(255, 255, 255, 0.7); }
  .accordion-list > dt {
    padding-left: 46px;
    position: relative;
    cursor: pointer;
    border: 1px solid #fff;
    margin-bottom: 6px;
    border-radius: 6px; }
    .accordion-list > dt:before {
      content: '';
      display: inline-block;
      width: 20px;
      height: 20px;
      background: url(/images/common/icon/plus.svg) no-repeat;
      background-size: 60% 60%;
      background-position: 50% 50%;
      position: absolute;
      left: 12px;
      top: 26px;
      margin: -10px 0 0 0; }
    .accordion-list > dt.-active {
      z-index: 10;
      border-bottom: none;
      color: #fff;
      margin-bottom: 0px;
      border-radius: 6px 6px 0 0;
      background-color: rgba(145, 186, 18, 0.9); }
      .accordion-list > dt.-active > * {
        color: #fff !important; }
      .accordion-list > dt.-active:before {
        background-image: url(/images/common/icon/minus_w.svg);
        background-size: 60% auto; }
    .accordion-list > dt:hover:not(.-active) {
      background-color: #f5f5f5;
      background-color: #fff;
      transition: all 0.3s ease-out; }
  .accordion-list > dd {
    border: 1px solid #fff;
    border-top: 1px dashed rgba(255, 255, 255, 0.5);
    margin-bottom: 6px;
    border-radius: 0 0 6px 6px;
    display: none;
    padding: 24px 24px 24px 46px; }
    .accordion-list > dd .list-disc:last-child {
      margin-bottom: 0; }
    .accordion-list > dd.-active {
      z-index: 10;
      background-color: rgba(145, 186, 18, 0.8);
      color: #fff !important; }
      .accordion-list > dd.-active > * {
        color: #fff !important; }

.step-entry {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .step-entry {
      display: block;
      margin-bottom: 20px; } }
  .step-entry > * {
    width: 25%;
    text-align: center;
    padding: 20px 30px;
    color: #fff;
    position: relative; }
    @media screen and (max-width: 480px) {
      .step-entry > * {
        width: 100%; } }
    .step-entry > *::after {
      content: '';
      border: 10px solid transparent;
      border-left: 15px solid #fff;
      position: absolute;
      top: 50%;
      right: -19px;
      z-index: 10;
      margin: -5px 0 0 0; }
      @media screen and (max-width: 480px) {
        .step-entry > *::after {
          border: 10px solid transparent;
          border-top: 15px solid #fff;
          top: 98%;
          right: 48%; } }
    .step-entry > *:nth-child(1) {
      background-color: rgba(58, 143, 216, 0.5); }
    .step-entry > *:nth-child(2) {
      background-color: rgba(58, 143, 216, 0.7); }
    .step-entry > *:nth-child(3) {
      background-color: rgba(58, 143, 216, 0.9); }
    .step-entry > *:nth-child(4) {
      background-color: #3a8fd8; }
      .step-entry > *:nth-child(4)::after {
        content: none; }
    .step-entry > * .num {
      display: inline-block;
      margin: 0 0 10px 0;
      font-size: 5rem;
      font-weight: normal;
      font-family: 'Roboto'; }
    .step-entry > * .heading {
      font-weight: bold;
      margin: 0 0 16px 0;
      font-size: 110%;
      line-height: 1.2; }
    .step-entry > * p {
      text-align: left;
      line-height: 1.6;
      font-size: 90%; }
      @media screen and (max-width: 480px) {
        .step-entry > * p {
          text-align: center; } }
      .step-entry > * p .sample {
        margin: 15px 0 0 0;
        font-size: 95%;
        display: block;
        background-color: rgba(255, 255, 255, 0.2);
        padding: 10px;
        border-radius: 4px; }

.note-list {
  margin-bottom: 1em; }

#section-news {
  padding: 0;
  background-color: #000; }
#section-onlinetraining {
  background-image: url(/images/bg/online.jpg);
  background-position: right -20px; }
  @media screen and (max-width: 480px) {
    #section-onlinetraining {
      background-position: -2200px -36px; } }
  #section-onlinetraining::after {
    background-color: rgba(57, 147, 226, 0); }
    @media screen and (max-width: 768px) {
      #section-onlinetraining::after {
        background-color: rgba(57, 147, 226, 0.2); } }
    @media screen and (max-width: 480px) {
      #section-onlinetraining::after {
        background-color: rgba(57, 147, 226, 0.2);
        background-color: rgba(255, 255, 255, 0.3); } }
  #section-onlinetraining .accordion-list dt.-active {
    background-color: rgba(57, 147, 226, 0.9); }
  #section-onlinetraining .accordion-list dd.-active {
    background-color: rgba(57, 147, 226, 0.8); }
#section-studiotraining {
  background-image: url(/images/bg/studio.jpg);
  background-position: -10px -30px; }
  #section-studiotraining::after {
    background-color: rgba(233, 193, 234, 0.2); }
    @media screen and (max-width: 480px) {
      #section-studiotraining::after {
        background-color: rgba(233, 193, 234, 0.6); } }
  @media screen and (max-width: 768px) {
    #section-studiotraining {
      background-position: 48% 0; } }
  @media screen and (max-width: 480px) {
    #section-studiotraining {
      background-position: 44% 0; } }
#section-voice {
  background-image: url(/images/bg/voice.jpg); }
  #section-voice::after {
    background-color: rgba(180, 205, 66, 0.2); }
  @media screen and (max-width: 480px) {
    #section-voice::after {
      background-color: rgba(180, 205, 66, 0.4); } }
  #section-voice .heading-section {
    margin-bottom: 40px; }
#section-about {
  background-image: url(/images/bg/about.jpg); }
  #section-about::after {
    background-color: rgba(195, 188, 9, 0.1); }
  @media screen and (max-width: 768px) {
    #section-about {
      background-position: 55% 2%; } }
  @media screen and (max-width: 480px) {
    #section-about {
      background-position: 68% 2%;
      background-color: rgba(195, 188, 9, 0.2); } }
  #section-about .accordion-list dt.-active {
    background-color: rgba(192, 169, 11, 0.9); }
  #section-about .accordion-list dd.-active {
    background-color: rgba(192, 169, 11, 0.8); }
  #section-about .heading-section {
    margin-bottom: 40px; }
#section-profile {
  background-image: url(/images/bg/profile.jpg); }
  #section-profile::after {
    background-color: rgba(253, 240, 205, 0.2); }
  @media screen and (max-width: 768px) {
    #section-profile {
      background-position: 30% -10px; } }
  @media screen and (max-width: 480px) {
    #section-profile::after {
      background-color: rgba(89, 137, 26, 0.2); } }
  #section-profile .accordion-list dt.-active {
    background-color: rgba(183, 150, 98, 0.9); }
  #section-profile .accordion-list dd.-active {
    background-color: rgba(183, 150, 98, 0.8); }
#section-access {
  background-image: url(/images/bg/access.jpg); }
  #section-access .step-access {
    /*
          & .caption::before{
            content: "1";
            text-align: center;
            font-size: 2.5em;
            color: #000;
            margin-right: 5px;
            margin: 0 auto;
            line-height: 1.2;
          }
          & .step2 .caption::before{
            content: "2";
          }
          & .step3 .caption::before{
            content: "3";
          }
          & .step4 .caption::before{
            content: "4";
          }
          & .step5 .caption::before{
            content: "5";
          }
          & .step6 .caption::before{
            content: "6";
          }
          & .step7 .caption::before{
            content: "7";
          }
    */ }
    #section-access .step-access .stepnum {
      display: block;
      margin: 0 auto 10px;
      font-size: 2.5em;
      text-align: center; }

.about-list dt {
  fout-weight: bold; }
.about-list dd {
  margin-bottom: 1em; }

._sp {
  display: none !important; }
  @media screen and (max-width: 480px) {
    ._sp {
      display: block !important; } }

._tb {
  display: none !important; }
  @media screen and (max-width: 768px) {
    ._tb {
      display: block !important; } }

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

._center {
  text-align: center !important; }

._nowrap {
  white-space: nowrap !important; }

/*# sourceMappingURL=style.css.map */
