/* CSS Document */
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(2em);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeDownAnime {
  from {
    opacity: 0;
    transform: translateY(-2em);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInAnime {
  from {
    opacity: 0;
    transform: translateY(0);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes imgbox_left {
  from {
    right: 100%;
  }

  to {
    right: 48%;
  }
}
@keyframes imgbox_right {
  from {
    left: 100%;
  }

  to {
    left: 48%;
  }
}
@keyframes imgbox_left_sp {
  from {
    margin-left: -100%;
    transform: translateX(-100%);
  }

  to {
    margin-left: auto;
    transform: translateX(0%);
  }
}
@keyframes imgbox_right_sp {
  from {
    margin-right: -100%;
    transform: translateX(100%);
  }

  to {
    margin-right: auto;
    transform: translateX(0%);
  }
}
.theme {
  color: #0b83e4;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}

.js-fadein {
  opacity: 0;
}

.inner1240 {
  width: 92%;
  max-width: 1240px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 751px) {
  .inner1240 {
    position: relative;
  }
}
.inner1240 .inner {
  width: 100%;
}

.linkbox {
  background-color: #0b83e4;
}

section {
  padding-bottom: 6.8em;
}
@media (max-width: 750px) {
  section {
    padding-bottom: 12.8vw;
  }
}
section.mt {
  padding-top: 6.8em !important;
}
@media (max-width: 750px) {
  section.mt {
    padding-top: 12.8vw !important;
  }
}

header .logoWrap {
  opacity: 0;
}
header .logoWrap.show {
  opacity: 1;
  animation: fadeInAnime 0.5s;
}
header .logoWrap .logo {
  width: 14vh;
  max-width: 14vh;
}
@media (min-width: 751px) {
  header .logoWrap .logo {
    width: 21.3vh;
    max-width: 21.3vh;
  }
}
@media (max-width: 750px) {
  header.header.financial-training .wrap {
    justify-content: center;
    padding-top: 5.3vw;
  }
}
header.header.financial-training .comps {
  color: #9b9c9c;
}
@media (min-width: 751px) {
  header.header.financial-training .comps {
    font-size: 1.3vh;
  }
}

.cta {
  display: none;
}

@media (max-width: 750px) {
  .footer {
    padding: 1em 0;
  }
}
.footer .wrap {
  display: none;
}
.footer .copy {
  margin-top: 0;
}

.mainvisualFT {
  position: relative;
  overflow: hidden;
  height: 100vh;
}
.mainvisualFT .scene01, .mainvisualFT .scene02 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  align-items: center;
}
.mainvisualFT .scene01 {
  transition: all ease 0.3s;
}
.mainvisualFT .scene01.show {
  opacity: 1;
}
.mainvisualFT .scene01.hide {
  opacity: 0;
}
.mainvisualFT .scene01 div {
  text-align: center;
  overflow: hidden;
  white-space: nowrap;
  font-size: 5.6vh;
  font-weight: bold;
  transform: translate(-100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}
@media (max-width: 750px) {
  .mainvisualFT .scene01 div {
    font-size: 2.7vh;
  }
}
.mainvisualFT .scene01 div span {
  display: block;
  letter-spacing: 0.075em;
  transform: translate(100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}
.mainvisualFT .scene01 div.-visible, .mainvisualFT .scene01 div.-visible span {
  transform: translate(0, 0);
}
.mainvisualFT .scene02 {
  transition: all ease 0.3s;
}
.mainvisualFT .scene02.hide {
  opacity: 0;
}
.mainvisualFT .scene02 > div {
  position: relative;
  width: 100%;
  height: 79.6vh;
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 > div {
    height: 80.8vh;
  }
}
.mainvisualFT .scene02 .title {
  position: relative;
  opacity: 0;
  text-align: center;
  font-size: 5.1vh;
  font-weight: bold;
  transition: all ease 0.5s;
  z-index: 2;
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .title {
    font-size: 2.4vh;
  }
}
.mainvisualFT .scene02 .title.show {
  opacity: 1;
}
.mainvisualFT .scene02 .imgbox_left, .mainvisualFT .scene02 .imgbox_right {
  width: 43.9vh;
  height: 43.9vh;
  transition: all ease 0.5s;
}
@media (min-width: 751px) {
  .mainvisualFT .scene02 .imgbox_left, .mainvisualFT .scene02 .imgbox_right {
    position: absolute;
    top: 2.3em;
    width: 77.2vh;
    height: 77.2vh;
  }
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .imgbox_left {
    margin-top: -7vh;
    margin-right: auto;
    margin-left: -100%;
    transform: translateX(0%);
  }
}
@media (min-width: 751px) {
  .mainvisualFT .scene02 .imgbox_left {
    right: 100%;
  }
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .imgbox_left.show {
    margin-left: auto;
    animation: imgbox_left_sp 0.5s;
    transform: translateX(0%);
  }
}
@media (min-width: 751px) {
  .mainvisualFT .scene02 .imgbox_left.show {
    right: 48%;
    animation: imgbox_left 0.5s;
  }
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .imgbox_right {
    margin-top: -7.8vh;
    margin-right: -100%;
    margin-left: auto;
    transform: translateX(0%);
  }
}
@media (min-width: 751px) {
  .mainvisualFT .scene02 .imgbox_right {
    left: 100%;
  }
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .imgbox_right.show {
    margin-right: auto;
    animation: imgbox_right_sp 0.5s;
    transform: translateX(0%);
  }
}
@media (min-width: 751px) {
  .mainvisualFT .scene02 .imgbox_right.show {
    left: 48%;
    animation: imgbox_right 0.5s;
  }
}
.mainvisualFT .scene02 .iconX {
  position: relative;
  opacity: 0;
  width: 6vh;
  height: 6vh;
  margin-top: 23.5vh;
  margin-right: auto;
  margin-left: auto;
  transition: all ease 0.5s;
  z-index: 2;
}
@media (max-width: 750px) {
  .mainvisualFT .scene02 .iconX {
    width: 3.4vh;
    height: 3.4vh;
    margin-top: -42vh;
  }
}
.mainvisualFT .scene02 .iconX.show {
  opacity: 1;
}
.mainvisualFT .sceneLast {
  transition: all ease 0.5s;
  padding: 18.9vh 0 10.6vh;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast {
    padding: 11vh 0 5.28vh;
  }
}
.mainvisualFT .sceneLast.show {
  background-color: #e4f1fb;
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .inner1240 {
    width: 120vh;
    max-width: 120vh;
  }
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .inner {
    width: 100vh;
    max-width: 100vh;
  }
}
.mainvisualFT .sceneLast .fuki {
  opacity: 0;
  text-align: center;
  font-size: 1.8vh;
  font-weight: bold;
  margin-bottom: 1em;
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .fuki {
    font-size: 3.98vh;
  }
}
.mainvisualFT .sceneLast .fuki.show {
  opacity: 1;
  animation: fadeDownAnime 0.5s;
}
.mainvisualFT .sceneLast .fuki::before, .mainvisualFT .sceneLast .fuki::after {
  content: "";
  display: inline-block;
  height: 8vh;
  width: 2px;
  background-color: #282828;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .fuki::before, .mainvisualFT .sceneLast .fuki::after {
    height: 3.3vh;
  }
}
.mainvisualFT .sceneLast .fuki::before {
  transform: rotate(-25deg) translateY(3vh);
  margin-right: 1em;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .fuki::before {
    transform: rotate(-25deg) translateY(1vh);
  }
}
.mainvisualFT .sceneLast .fuki::after {
  transform: rotate(25deg) translateY(3vh);
  margin-left: 1em;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .fuki::after {
    transform: rotate(25deg) translateY(1vh);
  }
}
.mainvisualFT .sceneLast .blueBox, .mainvisualFT .sceneLast .textbox, .mainvisualFT .sceneLast .imgbox img {
  opacity: 0;
}
.mainvisualFT .sceneLast .blueBox.show, .mainvisualFT .sceneLast .textbox.show, .mainvisualFT .sceneLast .imgbox img.show {
  opacity: 1;
  animation: fadeUpAnime 0.5s;
}
.mainvisualFT .sceneLast .blueBox {
  margin-bottom: 1em;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .blueBox {
    text-align: center;
  }
}
.mainvisualFT .sceneLast .blueBox span {
  color: white;
  background-color: #0b83e4;
  font-weight: bold;
  font-size: 1.94vh;
  border-radius: 0.2em;
  line-height: 1;
  padding: 0.3em 0.5em;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .blueBox span {
    font-size: 1.4vh;
  }
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .blueBox span {
    margin-right: 0.3em;
  }
}
.mainvisualFT .sceneLast .textbox .catch {
  font-size: 4.66vh;
  font-weight: bold;
  line-height: 1.35;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .textbox .catch {
    font-size: 3.3vh;
    text-align: center;
  }
}
.mainvisualFT .sceneLast .textbox p {
  font-size: 1.78vh;
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .textbox p {
    font-size: 1.9vh;
    width: 47%;
    max-width: 47%;
  }
}
.mainvisualFT .sceneLast .imgbox {
  width: 58.5vh;
  max-width: 58.5vh;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .imgbox {
    max-width: 36.9vh;
    margin-right: auto;
    margin-left: auto;
    width: 36.9vh;
  }
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .imgbox {
    position: absolute;
    right: 0;
    bottom: 18.6vh;
  }
}
.mainvisualFT .sceneLast .imgbox img {
  width: 100%;
}
.mainvisualFT .sceneLast .btnWrap {
  opacity: 0;
  margin-top: 5.8vh;
}
@media (max-width: 750px) {
  .mainvisualFT .sceneLast .btnWrap {
    margin-top: 2.5vh;
  }
}
.mainvisualFT .sceneLast .btnWrap.show {
  position: relative;
  opacity: 1;
  animation: fadeInAnime 0.5s;
  z-index: 2;
}
@media (min-width: 751px) {
  .mainvisualFT .sceneLast .btnWrap .linkbox {
    font-size: 1.74vh;
  }
}
.mainvisualFT .sceneLast .btnWrap p {
  font-size: 1.7vh;
}

.btnWrap p {
  margin-bottom: 1em;
}

.h2FT {
  text-align: center;
}
.h2FT .en {
  height: 1.25em;
  margin-bottom: 1em;
}
@media (max-width: 750px) {
  .h2FT .en {
    height: 3.5vw;
  }
}
.h2FT .en img {
  max-height: 100%;
}
.h2FT h2 {
  font-weight: bold;
  font-size: 2.25em;
  margin-bottom: 1em;
}
@media (max-width: 750px) {
  .h2FT h2 {
    font-size: 1.6em;
  }
}

.h3FT {
  font-weight: bold;
  font-size: 1.5em;
  text-align: center;
  margin-bottom: 1.5em;
}
@media (max-width: 750px) {
  .h3FT {
    font-size: 1.14em;
  }
}

.h3FAQ {
  color: #3c9ce9;
  font-weight: 500;
  font-size: 1.6em;
  margin-bottom: 0.8em;
}
@media (max-width: 750px) {
  .h3FAQ {
    font-size: 1.2em;
  }
}

.secIntro {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
}

.bg-gray {
  background-color: #ececec;
}
.bg-yellow {
  background-color: #fff4c3;
}

section.intro .wrap {
  position: relative;
}
@media (min-width: 751px) {
  section.intro .wrap {
    display: -ms-flexbox;
    /* prefix -> -webkit- */
    display: -webkit-flex;
    -webkit-justify-content: center;
    /* no prefix */
    display: flex;
    justify-content: center;
  }
}
section.intro .wrap::before {
  content: "";
  display: block;
  width: 3.8em;
  height: 3.8em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url(../images/financial-training/icon_x.png) no-repeat center center;
  background-size: contain;
  margin: auto;
}
@media (max-width: 750px) {
  section.intro .wrap::before {
    width: 8.3vw;
    height: 8.3vw;
  }
}
@media (min-width: 751px) {
  section.intro .wrap .box {
    -webkit-flex: 0 0 36%;
    flex: 0 0 36%;
    width: 36%;
    max-width: 36%;
  }
}
@media (max-width: 750px) {
  section.intro .wrap .box:last-of-type {
    margin-top: 25vw;
  }
}
@media (min-width: 751px) {
  section.intro .wrap .box:last-of-type {
    margin-left: 18%;
  }
}
section.intro .wrap .title {
  font-weight: bold;
  font-size: 1.75em;
  color: #0b83e4;
  text-align: center;
  border-bottom: 2px solid #0b83e4;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}
@media (max-width: 750px) {
  section.intro .wrap .title {
    font-size: 1.28em;
  }
}
section.intro .wrap .subtitle {
  font-weight: bold;
  font-size: 1.25em;
  text-align: center;
  margin: 1em 0 0.5em;
}
@media (max-width: 750px) {
  section.intro .wrap .subtitle {
    font-size: 1.1em;
  }
}
section.method .title {
  text-align: center;
  font-weight: bold;
}
section.method .title .theme {
  font-size: 1.875em;
}
@media (max-width: 750px) {
  section.method .title .theme {
    font-size: 1.25em;
  }
}
@media (min-width: 751px) {
  section.method .title .subtitle {
    font-size: 1.37em;
  }
}
@media (min-width: 751px) {
  section.method .flex {
    margin-left: -7.3%;
  }
}
@media (max-width: 750px) {
  section.method .flex > div:not(:first-of-type) {
    margin-top: 10vw;
  }
}
@media (min-width: 751px) {
  section.method .flex > div {
    width: calc(33.33% - 7.3%);
    margin-left: 7.3%;
  }
}
@media (max-width: 750px) {
  section.method .flex .f_20 {
    font-size: 1.28em;
  }
}
section.method .flex .balloon {
  position: relative;
  max-width: 14em;
  margin-right: auto;
  margin-left: auto;
  color: #0b83e4;
  background-color: white;
  font-weight: 500;
  text-align: center;
  border-radius: 0.2em;
  padding: 1em 0.5em;
}
section.method .flex .balloon::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: -0.9em;
  left: 0;
  border-style: solid;
  border-width: 1em 0.5em 0 0.5em;
  border-color: white transparent transparent transparent;
  margin: auto;
}
section.method .flex .imgbox {
  padding-top: 1.5em;
}
@media (max-width: 750px) {
  section.method .flex .imgbox {
    max-width: 70%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 751px) {
  section.schedule .flex {
    justify-content: center;
  }
}
section.schedule .flex > div {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 16.5em;
  height: 16.5em;
  border: 0.67em solid #0b83e4;
  border-radius: 50%;
  text-align: center;
}
@media (max-width: 750px) {
  section.schedule .flex > div {
    width: 57.3vw;
    height: 57.3vw;
    border-width: 0.43em;
    margin-right: auto;
    margin-left: auto;
  }
}
section.schedule .flex > div:not(:first-of-type) {
  position: relative;
}
@media (max-width: 750px) {
  section.schedule .flex > div:not(:first-of-type) {
    margin-top: 1.94em;
  }
}
@media (min-width: 751px) {
  section.schedule .flex > div:not(:first-of-type) {
    margin-left: 1.7em;
  }
}
section.schedule .flex > div:not(:first-of-type)::before {
  content: "";
  display: block;
  position: absolute;
  width: 2.37em;
  height: 0.67em;
  background-color: #0b83e4;
  margin: auto;
}
@media (max-width: 750px) {
  section.schedule .flex > div:not(:first-of-type)::before {
    top: -2.37em;
    right: 0;
    left: 0;
    width: 0.43em;
    height: 2.37em;
  }
}
@media (min-width: 751px) {
  section.schedule .flex > div:not(:first-of-type)::before {
    top: 0;
    bottom: 0;
    left: -2.37em;
  }
}
@media (max-width: 750px) {
  section.schedule .flex > div {
    width: 57vw;
    height: 57vw;
  }
}
section.schedule .flex .months, section.schedule .flex .title {
  font-weight: bold;
  margin-bottom: 0.5em;
}
section.schedule .flex .months {
  font-size: 1.875em;
}
section.schedule .flex .title {
  font-size: 1.25em;
}
@media (max-width: 750px) {
  section.schedule .flex .title {
    font-size: 1.14em;
  }
}
section.case .wrap {
  background-color: #e4f1fb;
  padding: 4em 7em;
}
@media (max-width: 750px) {
  section.case .wrap {
    padding: 6.6vw;
  }
}
section.case .wrap .prof {
  border-bottom: 1px solid #0b83e4;
  padding-bottom: 1.5em;
  margin-bottom: 1.5em;
}
@media (min-width: 751px) {
  section.case .wrap .prof {
    flex-direction: row-reverse;
    align-items: flex-end;
  }
}
@media (max-width: 750px) {
  section.case .wrap .prof .imgbox {
    max-width: 25.6vw;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 751px) {
  section.case .wrap .prof .imgbox {
    -webkit-flex: 0 0 16.5%;
    flex: 0 0 16.5%;
    width: 16.5%;
    max-width: 16.5%;
  }
}
@media (min-width: 751px) {
  section.case .wrap .prof .textbox {
    padding-right: 1em;
  }
}
@media (min-width: 751px) {
  section.case .wrap .result {
    margin-left: -1.5em;
  }
}
section.case .wrap .result > div {
  font-weight: bold;
  background-color: white;
  border-radius: 0.5em;
  text-align: center;
  line-height: 1.4;
  padding: 1em;
}
@media (max-width: 750px) {
  section.case .wrap .result > div {
    display: -ms-flexbox;
    /* prefix -> -webkit- */
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    -webkit-align-items: center;
    /* no prefix */
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5em 1em;
  }
  section.case .wrap .result > div:not(:first-of-type) {
    margin-top: 2.2vw;
  }
}
@media (min-width: 751px) {
  section.case .wrap .result > div {
    width: calc(33.33% - 1.5em);
    margin-left: 1.5em;
  }
}
@media (min-width: 751px) {
  section.case .wrap .result strong {
    font-size: 1.6em;
  }
}
section.case .wrap .result .large {
  font-size: 2em;
}
section.case .mottoWrap {
  padding-top: 10em;
}
@media (max-width: 750px) {
  section.case .mottoWrap {
    padding-top: 12vw;
  }
}
@media (min-width: 751px) {
  section.case .mottoWrap .subtitle {
    font-size: 1.37em;
  }
}
section.case .mottoWrap .title {
  font-size: 1.87em;
}
@media (max-width: 750px) {
  section.case .mottoWrap .title {
    font-size: 1.35em;
  }
}
section.case .mottoWrap .stepWrap {
  max-width: 700px;
  margin-right: auto;
  margin-left: auto;
}
section.case .mottoWrap .steptitle {
  background-color: rgba(11, 131, 228, 0.15);
  font-size: 1.3em;
  padding: 0.5em;
}
@media (max-width: 750px) {
  section.case .mottoWrap .steptitle {
    font-size: 1.1em;
  }
}
section.case .trainerWrap .profbox {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  align-items: center;
}
section.case .trainerWrap .profbox .imgbox {
  -webkit-flex: 0 0 23.3%;
  flex: 0 0 23.3%;
  width: 23.3%;
  max-width: 23.3%;
}
@media (max-width: 750px) {
  section.case .trainerWrap .profbox .imgbox {
    -webkit-flex: 0 0 34vw;
    flex: 0 0 34vw;
    width: 34vw;
    max-width: 34vw;
  }
}
section.case .trainerWrap .profbox .textbox {
  width: 100%;
  padding-left: 5.7%;
}
section.case .trainerWrap .profbox .personName strong {
  font-size: 1.94em;
}
@media (max-width: 750px) {
  section.case .trainerWrap .profbox .personName strong {
    font-size: 1.28em;
  }
}
section.case .trainerWrap .profbox .position {
  line-height: 1.5;
}
section.case .trainerWrap .moreWrap {
  display: none;
}
@media (min-width: 751px) {
  section.case .trainerWrap .moreWrap p {
    font-size: 1.1em;
  }
}
section.case .trainerWrap .more {
  position: relative;
  text-align: center;
  font-weight: bold;
  font-size: 0.93em;
  border: 1px solid #535353;
  cursor: pointer;
  padding: 0.5em;
}
section.case .trainerWrap .more:hover {
  opacity: 0.8;
}
section.case .trainerWrap .more::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 1em;
  bottom: 0;
  border-style: solid;
  border-width: 0.9em 0.6em 0 0.6em;
  border-color: #535353 transparent transparent transparent;
  transition: all ease 0.5s;
  margin: auto;
}
section.case .trainerWrap .more.show::after {
  transform: scale(1, -1);
}
section.service .title {
  color: white;
  background-color: #282828;
  padding: 0.5em;
}
@media (max-width: 750px) {
  section.service .planWrap {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 750px) {
  section.service .plans {
    width: 204.5vw;
  }
}
section.service .planTitle {
  color: white;
  background-color: #4c9fe4;
  padding: 0.5em 1em;
  margin-top: 4px;
}
@media (max-width: 750px) {
  section.service .planTitle {
    padding: 0.5em 0.75em;
  }
}
section.service .tablelist table {
  border-top: none;
  border-right: none;
}
@media (min-width: 751px) {
  section.service .tablelist th, section.service .tablelist td {
    padding: 0.75em 1em;
  }
}
section.service .tablelist th {
  border-top: 4px solid white;
  border-right: 4px solid white;
  border-bottom: none;
  border-left: none;
  background-color: #94c3ec;
}
section.service .tablelist td {
  border-top: 4px solid white;
  border-right: none;
  border-bottom: none;
  border-left: none;
  background-color: #dbebf9;
}
@media (min-width: 751px) {
  section.service .tablelist td {
    text-align: center;
  }
}
section.service .tablelist td.tags {
  text-align: left;
  padding-bottom: 0.25em;
}
section.service .tablelist .tag {
  display: inline-block;
  background-color: white;
  padding: 0 0.3em;
  margin-right: 0.5em;
  margin-bottom: 0.5em;
}
section.service .tablelist .tag.bl {
  color: white;
  background-color: #4c9fe4;
}
section.service .scroll-hint-icon {
  height: 87px;
}
section.what .standardList ul {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  /* no prefix */
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.37em;
}
@media (max-width: 750px) {
  section.what .standardList ul {
    margin-left: -5vw;
  }
}
section.what .standardList li {
  text-align: center;
  border: 3px solid #0b83e4;
  border-radius: 0.5em;
  width: calc(20% - 1.37em);
  margin-left: 1.37em;
  padding: 1em 0;
}
@media (max-width: 750px) {
  section.what .standardList li {
    width: calc(50% - 5vw);
    margin-left: 5vw;
  }
  section.what .standardList li:nth-child(n + 3) {
    margin-top: 5vw;
  }
}
section.what .standardList .title {
  color: #0b83e4;
  font-weight: bold;
  font-size: 1.1em;
}
section.what .standardList .imgbox {
  max-width: 4.5em;
  margin-right: auto;
  margin-left: auto;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
@media (max-width: 750px) {
  section.what .standardList .imgbox {
    width: 16.5vw;
    max-width: 16.5vw;
  }
}
section.what .stepimg {
  text-align: center;
}
@media (max-width: 750px) {
  section.what .stepimg {
    max-width: 81.6vw;
    margin-right: auto;
    margin-left: auto;
  }
}
section.faq .faqFT {
  border-bottom: 1px solid #cbcbcb;
  padding: 1.5em 0;
}
section.faq .faqFT:first-of-type {
  border-top: 1px solid #cbcbcb;
}
section.faq .question, section.faq .answer {
  position: relative;
  padding-right: 2.5em;
  padding-left: 2.4em;
}
section.faq .question::before, section.faq .answer::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0.35em;
  left: 0.3em;
  background: no-repeat center center;
  background-size: contain;
}
section.faq .question {
  cursor: pointer;
  transition: all ease 0.5s;
}
section.faq .question:hover {
  opacity: 0.8;
}
section.faq .question::before {
  background-image: url(../images/financial-training/faq_q.png);
}
section.faq .question .iconOpen {
  position: absolute;
  top: 0.3em;
  right: 0.7em;
  width: 0.93em;
  height: 0.93em;
}
@media (max-width: 750px) {
  section.faq .question .iconOpen {
    top: 0;
    bottom: 0;
    margin: auto;
  }
}
section.faq .question .iconOpen::before, section.faq .question .iconOpen::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #333333;
  margin: auto;
}
section.faq .question .iconOpen::before {
  top: 0;
  bottom: 0;
  left: 0;
  width: 0.93em;
  height: 1px;
}
section.faq .question .iconOpen::after {
  top: 0;
  right: 0;
  left: 0;
  width: 1px;
  height: 0.93em;
}
section.faq .question.active .iconOpen::after {
  display: none;
}
section.faq .answer {
  display: none;
  margin-top: 1em;
}
section.faq .answer::before {
  background-image: url(../images/financial-training/faq_a.png);
}
section.faq .answer p {
  line-height: 1.7;
}
section.structure .blue {
  color: #557ec0;
}
section.structure .blue:before {
  background-color: #557ec0;
}
section.structure .pink {
  color: #da5083;
}
section.structure .pink:before {
  background-color: #da5083;
}
section.structure .purple {
  color: #895ba3;
}
section.structure .purple:before {
  background-color: #895ba3;
}
section.structure .green {
  color: #439e37;
}
section.structure .green:before {
  background-color: #439e37;
}
section.structure .orange {
  color: #e88439;
}
section.structure .orange:before {
  background-color: #e88439;
}
section.structure .businessList {
  margin-top: 5em;
}
@media (max-width: 750px) {
  section.structure .businessList {
    margin-top: 10vw;
  }
}
section.structure .businessList > ul > li {
  border-left: 0.4em solid #282828;
  padding-left: 1em;
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: space-between;
  /* no prefix */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 751px) {
  section.structure .businessList > ul > li {
    padding-left: 1.8em;
    max-height: 220px;
    height: 12em;
    padding-right: 3em;
  }
}
@media (max-width: 750px) {
  section.structure .businessList > ul .disc {
    margin-bottom: 1em;
  }
}
section.structure .businessList > ul .disc li {
  list-style: none;
  position: relative;
}
section.structure .businessList > ul .disc li::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
  left: -1.5em;
}
@media (max-width: 750px) {
  section.related .flex {
    max-width: 71vw;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 751px) {
  section.related .flex {
    margin-left: -7.3%;
  }
}
section.related .flex > div {
  padding-top: 2.3em;
}
@media (max-width: 750px) {
  section.related .flex > div {
    margin-top: 11.3vw;
  }
}
@media (min-width: 751px) {
  section.related .flex > div {
    width: calc(33.33% - 7.3%);
    margin-left: 7.3%;
  }
}
section.related .flex .box {
  position: relative;
  display: block;
  background-color: white;
  border-radius: 0.5em;
  text-decoration: none;
  text-align: center;
  padding: 3.6em 1em 2.2em;
}
section.related .flex .box:hover {
  opacity: 0.8;
}
section.related .flex .box::before {
  content: "";
  display: block;
  position: absolute;
  top: -2.3em;
  right: 0;
  left: 0;
  background: url(../images/financial-training/icon_arrow.png) no-repeat center center;
  background-size: contain;
  width: 7.75em;
  height: 5.25em;
  margin: auto;
}
section.related .flex .box > * {
  display: block;
}
section.related .flex .box strong {
  font-size: 1.5em;
  margin-top: 0.8em;
  margin-bottom: 0.3em;
}
