<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "shift-jis";

*,*::before,*::after{ box-sizing: border-box;}
body{ counter-reset: process 0;}

.tac { text-align: center;}
.tar { text-align: right;}
.tal { text-align: left!important; }
.td-u { text-decoration: underline!important; }

.txt_orange { color: #ff6600;}
.txt_red { color: #ff0000;}

.txt_s { font-size: .75em;}
.txt_l { font-size: 1.35em;}

.mb50 { margin-bottom: 50px;}
.mb60 { margin-bottom: 60px;}
.mb70 { margin-bottom: 70px;}
.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml35 { margin-left: 35px;}

.sp{ display: none;}
.tab{ display: none;}
.pc{ display: block;}

.bg-school {
  background-color: rgba(94, 118, 167, 0.1);
}
.txt_bold {
  font-weight: bold;
}

#contents{ padding: 0 0 5px 0;}

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

section h2{
  font-size: 2rem;
  letter-spacing: .15em;
  font-weight: normal;
  line-height: 1.7;
  text-align: center;
}
section h2::after{
  content: "";
  display: block;
  border-bottom: 3px solid #5e76a7;
  width: 115px;
  margin: 20px auto 55px;
}
section h3{
  text-align: center;
  font-size: 23px;
}
section h3.line{
  position: relative;
  margin-bottom: 50px;
  padding: 0 30%;
  color: #5e76a7;
}
section h3.line::before,
section h3.line::after{
  content: "";
  width: 30%;
  border-top: 1px solid #5e76a7;
  position: absolute;
  top: 50%;
}
section h3.line::before{ left: 0;}
section h3.line::after{ right: 0;}

.lead{
  font-size: 18px;
  text-align: center;
}

.caution{ font-size: .8em;}

section .inner{
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 90px 0;
}

.btn01{ text-align: center;}
.btn01 a{
  background: #5e76a7 url(/images/common/arrow.svg) 96% center/33px no-repeat;
  color: #fff;
  padding: 10px 60px;
  font-size: 30px;
  width: 55%;
  max-width: 542px;
  display: block;
  margin: 60px auto;
  font-weight: normal;
}
.btn01 a:hover{
  text-decoration: none;
  opacity: .7;
}
.btn02,
.btn02:visited,
.btn02:link{
  text-align: center;
  background: #c6272d url(/images/common/arrow02.svg) 97% center/21px no-repeat;
  width: 100%;
  max-width: 510px;
  margin: 0 auto;
  color: #fff;
  border: none;
  border-radius: 5px;
  font-size: 22px;
  /* padding: 15px; */
  position: relative;
  /*    letter-spacing: .1em;*/
  box-shadow: 0 1.5px 0 #782332;
  color: #fff;
  padding: 15px;
  display: block;
}
.btn02 &gt; span{ font-size: .85em;}
.btn02.close{
  background-color: #ccc;
  box-shadow: 0 1.5px 0 #5a5a5a;
  pointer-events: none;
}
.btn02:hover{
  cursor: pointer;
  opacity: .7;
    text-decoration: none;
}
.btn03 {
  text-align: center;
  background: #e10f40 url(/school/image/finance_strategy/icn_arrow.svg) 95% 50% no-repeat;
  background-size: 25px;
  width: 100%;
  color: #fff!important;
  border: none;
  border-radius: 4px;
  font-size: 20px;
  padding: 18px 40px;
  position: relative;
  display: block;
  text-decoration: none;
}
.btn03:hover{
  cursor: pointer;
  opacity: .7;
  text-decoration: none !important;
}
.btn03.plus {
  line-height: 1.1;
  padding-top: 11px;
  padding-bottom: 11px;
}
.btn03.plus span {
  font-size: 14px;
}

.btn03.close {
  background-color: #b1afaf;
  pointer-events: none;
}
.btn03.close:hover {
  cursor: default;
}

#breadcrumbs{
  float: left;
  margin: 20px 0;
}

dt.accordion{
  border: 1px solid #5e76a7;
  padding: 10px;
  font-size: 23px;
  cursor: pointer;
}
dt.accordion::after{
  content: "";
  padding: 15px;
  background: url(/school/image/margin_trading/icn_arrow_kabu.svg) right 15px/25px no-repeat;
  display: inline-block;
  margin-left: 20px;
}
dt.accordion.active::after{
  transform: rotate(180deg);
  background-position: right 3px;
}

#modal-close{ display: none;}

dl { margin-top: 35px;}


/* タブレット以下 */
@media screen and (max-width: 999px) {
  #head2{ height: 85px !important;}

  .pc{ display: none;}
  .sp{ display: none;}
  .tab{ display: block;}

  #container{
    margin-top: 100px;
    overflow: hidden;
    width: 100%;
  }
  .lead{ font-size: 16px;}

  section .inner {
    padding: 50px 0;
  }

  section h3.line{ padding: 0 30%;}
  section h3.line::before,
  section h3.line::after{ width: 30%;}

  .btn01{ max-width: 100%;}
  .btn01 a{ width: 80%;}
}

/* スマホ */
@media screen and (max-width: 599px) {

  .pc{ display: none;}
  .tab{ display: none;}
  .sp{ display: block;}

  #head2{ height: 85px !important;}

  .snsBtn { margin: 0}
  #breadcrumbs{ display: none;}

  .br_pc::before,
  .br_tb::before{ content: none;}
  .br_sp::before{
    content: "\A" ;
    white-space: pre ;
  }

  section .inner{ padding: 40px 0;}
  section h2 {
    font-size: 1.3rem;
    letter-spacing: 0;
  }
  section h2::after {
    width: 80px;
    margin: 15px auto 30px;
  }
  section h3{ font-size: 1.2rem}
  section h3.line{
    margin-bottom: 20px;
    padding: 0 20%;
  }
  section h3.line::before,
  section h3.line::after{ width: 20%;}
  .lead{
    font-size: 14px;
  }
  .btn01 a{
    font-size: 16px;
    padding: 10px 5px;
    background: #5e76a7 url(/images/common/arrow.svg) 97% center/16px no-repeat;
  }
  .btn02,
  .btn02:visited,
  .btn02:link{ font-size: 13px;}

  .kitei dt.accordion{
    border: 1px solid #5e76a7;
  }

  /* モーダル設定 */
  .modal-content {
    width: 80% ;
    max-height: 80%;
    overflow: auto;
    padding: 10px 20px ;
    border: 2px solid #aaa ;
    background: #fff ;
    position: fixed ;
    display: none ;
    z-index: 2 ;
    left: 0;
    right: 0;
    top: 110px;
    margin: auto;
  }
  #modal-overlay {
    z-index: 1 ;
    display: none ;
    position: fixed ;
    top: 0 ;
    left: 0 ;
    width: 100% ;
    height: 120% ;
    background-color: rgba( 0,0,0, 0.75 ) ;
  }
  .button-link {
    color: #000 ;
    text-decoration: none;
  }
  .button-link:hover { cursor: pointer ;}
  #modal-close{
    display: block;
    position: fixed;
    top: 120px;
    background: #fff;
    padding: 0 4px;
    border: 3px solid #aaa;
    line-height: 1.3;
    right: 13%;
  }

  .comment_slick.slick-initialized .slick-slide{ padding: 0 10px;}
}

.video_wrap {
  max-width: 950px;
  margin: 0 auto;
}
.video {
  margin: 0 auto;
  width: 100%;
  position:relative;
  padding-top:56.25%;
}
.video iframe {
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

/* ==========================================================================
mv
========================================================================== */
.mv {
  text-align: center;
  position: relative;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  max-height: 447px;
  overflow: hidden;
  align-content: center;
}
.mv &gt; div{
  width: 50%;
  background: #5e76a7;
  color: #fff;
  padding: 0;
  text-align: left;
  align-self: stretch;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-content: center;
  align-items: center;
  position: relative;
}
.mv .detail {
  margin-right: 10px;
  width: 100%;
  max-width: 490px;
}
.mv .in {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 40px 0;
}
.mv h1 {
  font-size: 3em;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: .8em;
  width: 100%;
  text-align: center;
}
.mv .lead{
  order: -1;
  margin-bottom: 35px;
}
.mv p,
.mv .lead{
  font-size: 20px;
  margin-bottom: 30px;
}
.mv .lead{
  font-weight: normal;
  width: 100%;
  text-align: center;
}
.mv ul.point{
  text-align: left;
  width: 92%;
  display: flex;
  justify-content: center;
  margin: 20px 0;
}
.mv ul.point &gt; li{
  width: calc(100% / 4);
  max-width: 120px;
  margin: 0 3px;
  text-align: center;
}
.mv ul.point .icn{
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mv ul.point .icn .fill{ fill: #fff;}
.mv ul.point p{
  font-size: 12px;
  color: #fff;
  text-align: center;
  letter-spacing: 0;
  margin-top: .5em;
  margin-bottom: 0;
}
.mv .photo &gt; img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mv .icn_notice{
  width: 230px;
  height: 230px;
  justify-content: center;
  border: 2px solid #5e76a7;
  background: rgba(255, 255, 255, .9);
  border-radius: 100%;
  position: absolute;
  right: 15px;
  bottom: 15px;
}
.mv .icn_notice p{
  color: #5e76a7;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0;
  margin-bottom: 10px;
  text-align: center;
}
.mv .icn_notice strong{ font-weight: normal;}
.mv .icn_notice.class p::before{
  content: "";
  display: block;
  padding: 34px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2298.836%22%20height%3D%2298.615%22%20viewBox%3D%220%200%2098.836%2098.615%22%3E%3Cpath%20d%3D%22M49.642%2C23.6l2.776-2.776h5.771a1.708%2C1.708%2C0%2C0%2C1%2C1.666%2C1.666v4.887a1.708%2C1.708%2C0%2C0%2C1-1.666%2C1.666H29.872A1.687%2C1.687%2C0%2C0%2C0%2C28.207%2C30.6L26.318%2C82.35l3.222.11%2C1.776-50.2H58.074a4.929%2C4.929%2C0%2C0%2C0%2C4.887-4.89V22.487A4.929%2C4.929%2C0%2C0%2C0%2C58.081%2C17.6h-6.44a1.7%2C1.7%2C0%2C0%2C0-1.11.443l-2.786%2C2.778h-20.2a7.416%2C7.416%2C0%2C0%2C0%2C1.443-4.554v-7A7.8%2C7.8%2C0%2C0%2C0%2C21.21%2C1.5H17.435A7.8%2C7.8%2C0%2C0%2C0%2C9.662%2C9.273v7A8.2%2C8.2%2C0%2C0%2C0%2C11.1%2C20.824h-3A8.153%2C8.153%2C0%2C0%2C0%2C0%2C28.93V56.36a4.929%2C4.929%2C0%2C0%2C0%2C4.887%2C4.887H8.439l1.333%2C37.2%2C3.222-.11L11.543%2C60.914a4.963%2C4.963%2C0%2C0%2C0%2C3-4.441V53.141a1.7%2C1.7%2C0%2C0%2C0-.443-1.11l-2.77-2.786V33.817H8.106V50.032a1.7%2C1.7%2C0%2C0%2C0%2C.443%2C1.11l2.776%2C2.776v2.555a1.708%2C1.708%2C0%2C0%2C1-1.666%2C1.666H4.887a1.708%2C1.708%2C0%2C0%2C1-1.666-1.666V28.927a4.929%2C4.929%2C0%2C0%2C1%2C4.885-4.885H48.532A1.59%2C1.59%2C0%2C0%2C0%2C49.642%2C23.6ZM17.548%2C20.824a4.573%2C4.573%2C0%2C0%2C1-4.554-4.554v-7a4.5%2C4.5%2C0%2C0%2C1%2C4.554-4.552h3.775a4.573%2C4.573%2C0%2C0%2C1%2C4.552%2C4.552v7a4.5%2C4.5%2C0%2C0%2C1-4.552%2C4.554Z%22%20transform%3D%22translate(0%200.166)%22%20fill%3D%22%235e76a7%22%2F%3E%3Crect%20width%3D%221.776%22%20height%3D%2238.202%22%20transform%3D%22translate(18.768%2058.968)%22%20fill%3D%22%235e76a7%22%2F%3E%3Cpath%20d%3D%22M52.562%2C77.624H49.453A7.416%2C7.416%2C0%2C0%2C0%2C50.9%2C73.07v-7A7.8%2C7.8%2C0%2C0%2C0%2C43.123%2C58.3H39.348a7.8%2C7.8%2C0%2C0%2C0-7.773%2C7.773v7a8.2%2C8.2%2C0%2C0%2C0%2C1.443%2C4.554H29.906A8.153%2C8.153%2C0%2C0%2C0%2C21.8%2C85.73v6.44h3.222V85.73a4.929%2C4.929%2C0%2C0%2C1%2C4.887-4.887H52.564a4.929%2C4.929%2C0%2C0%2C1%2C4.887%2C4.887v6.44h3.222V85.73A8.151%2C8.151%2C0%2C0%2C0%2C52.562%2C77.624Zm-13.217%2C0a4.573%2C4.573%2C0%2C0%2C1-4.554-4.554v-7a4.5%2C4.5%2C0%2C0%2C1%2C4.554-4.554H43.12a4.573%2C4.573%2C0%2C0%2C1%2C4.554%2C4.554v7a4.5%2C4.5%2C0%2C0%2C1-4.554%2C4.554Z%22%20transform%3D%22translate(2.408%206.445)%22%20fill%3D%22%235e76a7%22%2F%3E%3Cpath%20d%3D%22M80.855%2C77.624H77.744a7.416%2C7.416%2C0%2C0%2C0%2C1.443-4.554v-7a7.8%2C7.8%2C0%2C0%2C0-7.77-7.773H67.644a7.8%2C7.8%2C0%2C0%2C0-7.773%2C7.773v7a8.2%2C8.2%2C0%2C0%2C0%2C1.443%2C4.554H58.2v3.222H80.855a4.929%2C4.929%2C0%2C0%2C1%2C4.89%2C4.885v6.44h3.221V85.73a8.151%2C8.151%2C0%2C0%2C0-8.111-8.106Zm-13.217%2C0a4.573%2C4.573%2C0%2C0%2C1-4.554-4.554v-7a4.5%2C4.5%2C0%2C0%2C1%2C4.559-4.552h3.775a4.573%2C4.573%2C0%2C0%2C1%2C4.554%2C4.554V73.07a4.5%2C4.5%2C0%2C0%2C1-4.554%2C4.554Z%22%20transform%3D%22translate(6.432%206.445)%22%20fill%3D%22%235e76a7%22%2F%3E%3Cpath%20d%3D%22M93.579%2C0H32.166A1.708%2C1.708%2C0%2C0%2C0%2C30.5%2C1.666h0v6.44a1.708%2C1.708%2C0%2C0%2C0%2C1.666%2C1.666h1.666v8h3.227V9.662H88.8V53.307H37.058V35.536H33.832V54.97A1.708%2C1.708%2C0%2C0%2C0%2C35.5%2C56.636h54.97a1.708%2C1.708%2C0%2C0%2C0%2C1.666-1.666h0V9.662H93.8A1.708%2C1.708%2C0%2C0%2C0%2C95.465%2C8h0V1.666A2.114%2C2.114%2C0%2C0%2C0%2C93.579%2C0ZM92.023%2C6.44H33.832V3.222H92.023Z%22%20transform%3D%22translate(3.37)%22%20fill%3D%22%235e76a7%22%2F%3E%3Cpath%20d%3D%22M82.266%2C22.928A11.375%2C11.375%2C0%2C0%2C0%2C70.938%2C11.6a1.708%2C1.708%2C0%2C0%2C0-1.666%2C1.666v8.106H61.166A1.708%2C1.708%2C0%2C0%2C0%2C59.5%2C23.038%2C11.375%2C11.375%2C0%2C0%2C0%2C70.828%2C34.366%2C11.493%2C11.493%2C0%2C0%2C0%2C82.266%2C22.928ZM63.055%2C24.594h7.883A1.708%2C1.708%2C0%2C0%2C0%2C72.6%2C22.928V15.042a8.1%2C8.1%2C0%2C0%2C1-3.221%2C15.882%2C8.222%2C8.222%2C0%2C0%2C1-6.33-6.33Z%22%20transform%3D%22translate(6.578%201.283)%22%20fill%3D%22%235e76a7%22%2F%3E%3Crect%20width%3D%223.442%22%20height%3D%225.221%22%20transform%3D%22translate(48.197%2038.202)%22%20fill%3D%22%235e76a7%22%2F%3E%3Crect%20width%3D%2232.984%22%20height%3D%225.221%22%20transform%3D%22translate(53.417%2038.202)%22%20fill%3D%22%235e76a7%22%2F%3E%3Crect%20width%3D%2236.426%22%20height%3D%221.776%22%20transform%3D%22translate(44.755%2046.864)%22%20fill%3D%22%235e76a7%22%2F%3E%3C%2Fsvg%3E');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-bottom: 10px;
}
@media screen and (min-width: 1921px) {
  .mv &gt; div:first-of-type::before{ font-size: 5em;}
}
@media screen and (max-width: 999px) {
  .mv{ letter-spacing: 0;}
  .mv &gt; div {
    justify-content: center;
  }
  .mv &gt; div:first-of-type::before{ font-size: 1.8em;}
  .mv p,
  .mv .lead{ font-size: 16px;}
  .mv .title h1{ top: 20%;}
  .mv ul.type li{
    font-size: 16px;
  }
  .mv .detail {
    margin-right: 0;
    padding: 20px 10px;
  }
}
@media screen and (max-width: 700px) {
  .mv h1 {
    font-size: 2em;
  }
}
@media screen and (max-width: 599px) {
  .mv &gt; div {
    width: 100%;
  }
  .mv &gt; div:first-of-type::before{
    top: auto;
    right: auto;
    left: auto;
    bottom: -105px;
    width: 100%;
    text-align: center;
  }
  .mv .in {
    padding: 0;
  }
  .mv ul.point{ margin: 10px 0 0;}
  .mv ul.point .icn{ height: 30px;}
  .mv ul.point .icn svg{ max-height: 100%;}
  .mv ul.point .online .icn svg{ width: 26px;}
  .mv ul.point p{ font-size: 10px;}
  .mv p{
    font-size: 3.5vw;
    margin-bottom: 0;
    text-align: left;
    letter-spacing: 0;
  }
  .mv h1{
    margin-bottom: 12px;
  }
  .mv .lead{
    color: inherit;
    padding: 0 0 1em;
    font-size: 12px;
    margin-bottom: 0;
    order: 0;
  }
  .mv .photo {
    height: 160px;
  }
  .mv .icn_notice {
    width: 150px;
    height: 150px;
    bottom: 5px;
  }
  .mv .icn_notice p{ font-size: 14px;}
  .mv .icn_notice.class p::before{ padding: 20px;}
}

/* outline */
.outline {
  padding: 2em;
  background: rgba(94, 118, 167, 0.1);
  font-size: 20px;
  text-align: center;
}
@media screen and (max-width: 999px) {
  .outline br {
    display: none;
  }
}
@media screen and (max-width: 599px) {
  .outline {
    padding: 2em 1em;
    font-size: 16px;
  }
}

/* ==========================================================================
catch
========================================================================== */
.catch p {
  font-size: 18px;
  margin-bottom: 30px;
  text-align: justify;
}

/* タブレット以下 */
@media screen and (max-width: 999px) {
  .catch p {
    margin-bottom: 0;
    font-size: 16px;
    text-align: justify;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .catch p {
    font-size: 14px;
    padding: 0 10px;
  }
}
/* ==========================================================================
osusume
========================================================================== */
.osusume {
  background-color: rgba(94, 118, 167, .15);
}
.osusume .checks {
  display: flex;
  justify-content: space-between;
}
.osusume .checks ul {
  width: 48%;
}
.osusume li{
  text-align: left;
  padding-top: 3px;
  padding-left: 28px;
  font-size: 18px;
  background: url(/school/image/margin_trading/icn_check.svg) left top 4px/21px no-repeat;
  margin-bottom: 15px;
  line-height: 1.6;
}

/* タブレット以下 */
@media screen and (max-width: 999px) {
  .osusume .checks {
    justify-content: space-around;
  }
  .osusume ul:first-child {
    margin-right: 1%;
  }
  .osusume li {
    font-size: 16px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .osusume .checks {
    flex-direction: column;
  }
  .osusume .checks ul {
    width: 100%;
  }
  .osusume ul:first-child {
    margin-right: 0;
  }
}

/* ==========================================================================
merit
========================================================================== */
.merit {
  background-color: rgba(94, 118, 167, .15);
}
.merit .heading {
  max-height: 400px;
  min-height: 200px;
  overflow: hidden;
}
.merit .heading .bg {
  width: 100%;
  height: 0;
  padding-top: 23.2602845%;/*605/2601*/
  background: url(/school/image/finance_strategy/bg_merit_head.jpg) center bottom no-repeat;
  background-size: cover;
  position: relative;
}
.merit .heading .ttl {
  position: absolute;
  width: 100%;
  top: 20px;
  line-height: 1.2;
}
.merit .heading .ttl::after {
  margin-top: 0;
}
.merit .heading .ttl .adjust {
  position: relative;
  top: -10px;
}
.merit .heading .ttl .num {
  font-family: 'Josefin Slab', serif;
  font-size: 80px;
  font-weight: normal;
}
.merit .heading .ttl .txt {
  font-size: 60px;
  -webkit-font-smoothing: antialiased;
}
.merit-list {
  counter-reset: merit;
}
.merit-list .item {
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  background-color: #efefef;
  position: relative;
  padding-bottom: 30px;
}
.merit-list .item:not(:first-child) {
  margin-top: 100px;
}
.merit-list .item:before {
  counter-increment: merit;
  content: 'Point ' counter(merit);
  font-family: 'Josefin Slab', serif;
  color: #5e76a7;
  font-size: 60px;
  position: absolute;
  width: 100%;
  text-align: center;
  line-height: 1;
  top: -50px;
  left: 0;
}
.merit-list .item:nth-child(even) .main {
  flex-direction: row-reverse;
}
.merit-list .ttl {
  font-size: 24px;
  color: #5e76a7;
  padding: 40px 5px 0;
  display: flex;
  justify-content: center;
  margin-bottom: 25px;
}
.merit-list .ttl:before {
  content: '';
  display: block;
  position: absolute;
  padding: 15px;
  box-shadow: 2px -2px 0 0 #5e76a7 inset;
  border: solid transparent;
  border-width: 0 0 2px 2px;
  transform:rotate(-45deg);
  top: 2px;
}
.merit-list .main {
  display: flex;
  justify-content: space-between;
  padding: 0 30px;
}
.merit-list .main .photo-wrap {
  width: 50%;
  max-width: 435px;
}
.merit-list .item:nth-child(odd) .photo-wrap {
  margin-right: 20px;
}
.merit-list .item:nth-child(even) .photo-wrap {
  margin-left: 20px;
}
.merit-list .main .photo {
  width: 100%;
  height: 0;
  padding-top: 52.8735632%;/* 230/435 */
  position: relative;
}
.merit-list .main .photo img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.merit-list .main .txt {
  font-size: 16px;
  width: 50%;
  text-align: justify;
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .merit .heading .bg {
    padding-top: 200px;
  }
  .merit-list {
    margin-top: 30px;
  }
  .merit .heading .ttl .txt {
    font-size: 40px;
  }
  .merit .heading .ttl .num {
    font-size: 60px;
  }
  .merit .heading .ttl .adjust {
    top: -2px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .merit .heading .ttl {
    line-height: 1.4;
  }
  .merit .heading .ttl .num {
    font-size: 50px;
  }
  .merit .heading .ttl .txt {
    font-size: 32px;
  }
  .merit .heading .ttl .adjust {
    top: 0;
    left: -5px;
  }
  .merit-list .item:not(:first-child) {
    margin-top: 80px;
  }
  .merit-list .item:before {
    font-size: 50px;
    top: -43px;
  }
  .merit-list .ttl {
    line-height: 1.4;
    font-size: 22px;
    margin-bottom: 15px;
  }
  .merit-list .main {
    display: block;
    padding-right: 15px;
    padding-left: 15px;
  }
  .merit-list .item:nth-child(odd) .photo-wrap {
    margin-right: 0;
  }
  .merit-list .item:nth-child(even) .photo-wrap {
    margin-left: 0;
  }
  .merit-list .main .photo-wrap {
    width: 100%;
    max-width: none;
  }
  .merit-list .main .txt {
    width: 100%;
    font-size: 14px;
    margin-top: 10px;
  }
}

/* ==========================================================================
reason
========================================================================== */
.reason .heading {
  max-height: 400px;
  min-height: 250px;
  overflow: hidden;
}
.reason .heading .bg {
  width: 100%;
  height: 0;
  padding-top: 23.2307692%;/*604/2600*/
  background: url(/school/image/finance_strategy/bg_reason_head.jpg) center top no-repeat;
  background-size: cover;
  position: relative;
}
.reason .heading .ttl {
  position: absolute;
  width: 100%;
  top: 50%;
  line-height: 1.5;
  transform: translateY(-50%);
}
.reason .heading .ttl::after {
  margin-bottom: 0;
}
.reason-list {
  counter-reset: reason;
}
.reason-list .item {
  position: relative;
  background-color: rgba(94, 118, 167, .15);
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  padding: 50px 30px 30px;
}
.reason-list .item:not(:first-child) {
  margin-top: 100px;
}
.reason-list .item:nth-child(even) .main {
  flex-direction: row-reverse;
}
.reason-list .order {
  position: absolute;
  top: -55px;
  left: 50%;
  transform: translateX(-50%);
}
.reason-list .order .num {
  display: block;
  color: #5e76a7;
  font-size: 20px;
  line-height: 1.2;
  text-align: center;
}
.reason-list .order:after {
  counter-increment: reason;
  content: counter(reason);
  font-family: 'Josefin Slab', serif;
  background-color: #5e76a7;
  border-radius: 50%;
  color: #fff;
  font-size: 60px;
  width: 60px;
  height: 60px;
  display: block;
  text-align: center;
  line-height: 1;
  box-sizing: border-box;
}
.reason-list .main {
  display: flex;
  justify-content: space-between;
}
.reason-list .main &gt; div {
  width: 50%;
}
.reason-list .main .photo-wrap {
  max-width: 438px;
}
.reason-list .item:nth-child(odd) .photo-wrap {
  margin-right: 20px;
}
.reason-list .item:nth-child(even) .photo-wrap {
  margin-left: 20px;
}
.reason-list .main .photo {
  width: 100%;
  height: 0;
  padding-top: 55.1252847%;/* 242/439 */
  position: relative;
}
.reason-list .main .photo img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.reason-list .main .ttl {
  color: #5e76a7;
  font-size: 24px;
  line-height: 1.3;
  text-align: left;
}
.reason-list .main .txt {
  font-size: 16px;
  margin-top: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .reason .heading .bg {
    padding-top: 250px;
  }
  .reason-list {
    margin-top: 50px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .reason .heading {
    min-height: 0;
  }
  .reason .heading .bg {
    padding-top: 200px;
  }
  .reason-list .order:after {
    font-size: 50px;
    width: 50px;
    height: 50px;
  }
  .reason-list .main {
    display: block;
  }
  .reason-list .item {
    padding: 40px 15px 15px;
  }
  .reason-list .item:not(:first-child) {
    margin-top: 70px;
  }
  .reason-list .item:nth-child(odd) .photo-wrap {
    margin-right: 0;
  }
  .reason-list .item:nth-child(even) .photo-wrap {
    margin-left: 0;
  }
  .reason-list .main &gt; div {
    width: 100%;
  }
  .reason-list .main .photo-wrap {
    width: 100%;
    max-width: none;
  }
  .reason-list .main .ttl {
    font-size: 22px;
    margin-top: 10px;
  }
  .reason-list .main .txt {
    width: 100%;
    font-size: 14px;
    margin-top: 10px;
  }
}

/* ==========================================================================
course_style
========================================================================== */
.course_style .style_list li + li {
  margin-top: 30px;
}
.course_style .style_list h3 {
  color: #5e76a7;
  font-size: 32px;
}
.course_style .style_list .style_content {
  position: relative;
  padding: 50px 4% 35px;
  background: #e7eaf1;
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
}
.course_style .style_list .style_content::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 24px;
  height: 24px;
  border-right: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  content: '';
}
.course_style .style_list .style_content .ttl {
  color: #5e76a7;
  font-size: 24px;
  text-align: center;
}
.course_style .style_list .style_content .style_content_inner {
  display: flex;
  justify-content: space-between;
  margin-top: 25px;
}
.course_style .style_list li:nth-child(even) .style_content .style_content_inner {
  flex-direction: row-reverse;
}
.course_style .style_list .style_content .img {
  width: 48%;
}
.course_style .style_list .style_content .txt {
  width: 50%;
  font-size: 16px;
}
@media screen and (max-width: 599px) {
  .course_style .style_list h3 {
    font-size: 22px;
  }
  .course_style .style_list .style_content {
    padding: 35px 4% 15px;
  }
  .course_style .style_list .style_content .ttl {
    font-size: 20px;
  }
  .course_style .style_list .style_content .style_content_inner {
    display: block;
    margin-top: 10px;
  }
  .course_style .style_list .style_content .img {
    width: 100%;
  }
  .course_style .style_list .style_content .txt {
    width: 100%;
    margin-top: 20px;
    font-size: 14px;
  }
}

/* ==========================================================================
about
========================================================================== */
.about .heading {
  max-height: 400px;
  min-height: 200px;
  overflow: hidden;
}
.about .heading .bg {
  width: 100%;
  height: 0;
  padding-top: 23.2307692%;/*302/1300*/
  background: url(/school/image/finance_strategy/bg_about_head.jpg) center top no-repeat;
  background-size: cover;
  position: relative;
}
.about .heading .ttl {
  position: absolute;
  width: 100%;
  top: 50%;
  line-height: 1.5;
  transform: translateY(-50%);
}
.about .heading .ttl::after {
  margin-bottom: 0;
}
.about .block .ttl-sub {
  font-size: 18px;
  font-weight: normal;
  margin-bottom: 20px;
}
.about .lead-wrap {
  display: flex;
  justify-content: flex-end;
  background-color: #5e76a7;
  max-height: 600px;
  overflow: hidden;
}
.about .lead-wrap &gt; div {
  width: 50%;
}
.about .lead-wrap .txt {
  max-width: 500px;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 40px;
}
.about .lead-wrap .lead-main {
  font-size: 21px;
}
.about .lead-wrap .lead-sub {
  font-size: 18px;
  margin-top: 30px;
}

.about .photo-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.about .lead-wrap .photo {
  width: 50%;
  height: 0;
  padding-top: 35.3846154%;/* (460/650)/2 */
  position: relative;
}
.about .lead-wrap .photo img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.about .main-txt {
  text-align: justify;
  font-size: 18px;
}
.about .block {
  margin-top: 80px;
  text-align: center;
}
.about .block .ttl {
  color: #333333;
  font-size: 30px;
}
.about .block .ttl::after {
  content: "";
  display: block;
  border-bottom: 3px solid #5e76a7;
  width: 115px;
  margin: 20px auto 55px;
}
.about .block .media {
  font-size: 20px;
}
.about .block .media:not(:first-child) {
  margin-top: 30px;
}
.about .block .lead {
  font-size: 18px;
  margin-bottom: 30px;
}
.about .block .photo {
  width: 100%;
  height: 0;
  position: relative;
}
.about .block .photo img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.about .block .photo1 {
  padding-top: 8.5747393%;/* 74/863 */
}
.about .block .photo2 {
  padding-top: 63.4969325%;/* 621/978 */
}
.about .block .photo3 {
  padding-top: 24.625%;/* 197/800 */
}
.about .block .photo4 {
  padding-top: 50%;/* 500/1000 */
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .about .heading .bg {
    padding-top: 200px;
  }
  .about .main-txt {
    font-size: 16px;
  }
  .reason-list {
    margin-top: 50px;
  }
  .about .lead-wrap {
    display: block;
  }
  .about .lead-wrap &gt; div {
    width: 100%;
  }
  .about .lead-wrap .txt {
    max-width: none;
    text-align: center;
    padding: 20px 10px;
  }
  .about .lead-wrap .lead-sub {
    margin-top: 15px;
  }
  .about .photo-wrap {
    flex-wrap: nowrap;
  }
  .about .lead-wrap .photo {
    width: 25%;
    padding-top: 17.6923077%;/* (460/650)/4 */
  }
  .about .block .lead {
    font-size: 16px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .about .lead-wrap .lead-main {
    font-size: 18px;
  }
  .about .lead-wrap .lead-sub {
    font-size: 14px;
  }
  .about .main-txt {
    font-size: 14px;
    padding: 0 10px;
  }
  .about .block {
    margin-top: 40px;
  }
  .about .block .ttl {
    font-size: 20px;
  }
  .about .block .ttl::after {
    margin-top: 10px;
    margin-bottom: 35px;
    width: 80px;
  }
  .about .block .media {
    font-size: 18px;
  }
  .about .block .lead {
    font-size: 14px;
    text-align: justify;
  }
}

/* ==========================================================================
training
========================================================================== */
.training {
  background-color: rgba(94, 118, 167, .15);
}
.training .box {
  background-color: #eeeeef;
  display: flex;
  justify-content: space-between;
  padding: 30px;
  margin-top: 30px;
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
}
.training .company-list {
  font-size: 16px;
  padding-right: 20px;
}
.training .box .company-list:nth-child(1) {
  width: 30%;
}
.training .box .company-list:nth-child(2) {
  width: 37%;
}
.training .box .company-list:nth-child(3) {
  width: 33%;
}
/* スマホ */
@media screen and (max-width: 599px) {
  .training .lead {
    text-align: justify;
  }
  .training .box {
    display: block;
  }
  .training .company-list {
    padding-right: 0;
    font-size: 14px;
  }
  .training .box .company-list:nth-child(1),
  .training .box .company-list:nth-child(2),
  .training .box .company-list:nth-child(3) {
    width: 100%;
  }
}

/* ==========================================================================
teacher
========================================================================== */
.teacher {
  background-color: rgba(94, 118, 167, .15);
}
.teacher .heading {
  display: flex;
}
.teacher .heading .photo-wrap {
  max-width: 190px;
  width: 50%;
}
.teacher .heading .photo {
  width: 100%;
  height: 0;
  padding-top: 100%; /* 500/500 */
  position: relative;
}
.teacher .heading .photo img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.teacher .heading .info {
  padding: 0 20px;
  width: calc(100% - 190px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.teacher .heading .catch {
  width: 100%;
  height: 0;
  padding-top: 33%;
  position: relative;
  max-width: 500px;
}
.teacher .heading .catch img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.teacher .heading .name {
  font-size: 28px;
}
.teacher .heading .post {
  font-size: 20px;
}
.teacher .heading .qualification {
  font-size: 16px;
}
.teacher .career {
  font-size: 16px;
  margin-top: 30px;
}
.teacher .block {
  margin-top: 40px;
}
.teacher .block .ttl {
  color: #5e76a7;
  font-size: 26px;
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  background-color: #eeeeef;
  padding: 5px;
}
.teacher .block .txt {
  font-size: 16px;
  margin-top: 30px;
}
.teacher .block .txt .signature {
  display: block;
  width: 100%;
  text-align: right;
}
.teacher .block .txt .message {
  width: 70%;
  max-width: 670px;
  margin-top: 40px;
}
.teacher .block .txt .sign {
  width: 30%;
  max-width: 245px;
  margin-top: 20px;
}
@media screen and (max-width: 999px) {
  section.teacher  h3.line {
    padding: 0 20%;
  }
  section.teacher h3.line::before,
  section.teacher h3.line::after {
    width: 20%;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .teacher .inner {
    padding-left: 10px;
    padding-right: 10px;
  }
  .teacher .heading {
    display: block;
  }
  .teacher .heading .info {
    padding: 0;
    width: 100%;
    margin-top: 10px;
  }
  .teacher .heading &gt; div {
    width: 100%;
  }
  .teacher .heading .photo-wrap {
    width: 80%;
    margin: 0 auto;
  }
  .teacher .heading .catch {
    text-align: right;
    margin-top: 30px;
  }
  .teacher .heading .catch img {
    width: 70%;
    left: auto;
  }
  .teacher .heading .name {
    font-size: 22px;
    text-align: center;
  }
  .teacher .heading .post {
    font-size: 18px;
  }
  .teacher .heading .qualification {
    font-size: 14px;
  }
  .teacher .career {
    font-size: 14px;
  }
  .teacher .block .ttl {
    font-size: 20px;
    padding: 0;
  }
  .teacher .block .txt {
    font-size: 14px;
  }
  .teacher .block .txt .message {
    max-width: none;
    width: 95%;
  }
  .teacher .block .txt .sign {
    max-width: none;
    width: 45%;
  }
  section.teacher  h3.line {
    padding: 0 10%;
  }
  section.teacher h3.line::before,
  section.teacher h3.line::after {
    width: 10%;
  }
}

/* ==========================================================================
tips
========================================================================== */
.tips .heading {
  max-height: 400px;
  min-width: 200px;
  overflow: hidden;
}
.tips .heading .bg {
  width: 100%;
  height: 0;
  padding-top: 23.2602845%;/*605/2601*/
  background: url(/school/image/finance_strategy/bg_tips_head.jpg) center bottom no-repeat;
  background-size: cover;
  position: relative;
}
.tips .heading .ttl {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1.5;
}
.tips .heading .ttl::after {
  margin-bottom: 0;
}
.tips .inner {
  font-size: 18px;
}
.tips .inner .txt {
  text-align: center;
}
.tips .txt-option {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 40px 0;
}
.tips .txt-option .bracket {
  width: 10%;
  max-width: 40px;
  display: flex;
  flex-direction: column;
}
.tips .txt-option .bracket .top,
.tips .txt-option .bracket .bottom {
  position: relative;
}
.tips .txt-option .bracket .top {
  background-image: linear-gradient(-45deg, transparent 49%, #5e76a7 49%, #5e76a7 52%, transparent 52%, transparent);
}
.tips .txt-option .bracket .bottom {
  background-image: linear-gradient(45deg, transparent 49%, #5e76a7 49%, #5e76a7 52%, transparent 52%, transparent);
}
.tips .txt-option li {
  padding-left: 40px;
  position: relative;
}
.tips .txt-option li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 5px;
  color: #5e76a7;
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .tips .heading .bg {
    padding-top: 200px;
  }
  .tips .inner {
    font-size: 16px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .tips .inner {
    font-size: 14px;
    padding-right: 10px;
    padding-left: 10px;
  }
  .tips .inner .txt {
    text-align: left;
  }
  .tips .txt-option {
    display: block;
  }
  .tips .txt-option .bracket {
    display: none;
  }
  .tips .txt-option li {
    padding-left: 25px;
  }
}

/* ==========================================================================
future
========================================================================== */
.future {
  background-color: rgba(94, 118, 167, .15);
}

.future .heading {
  max-height: 400px;
  min-height: 200px;
  overflow: hidden;
}
.future .heading .bg {
  width: 100%;
  height: 0;
  padding-top: 23.2307692%;/*302/1300*/
  background: url(/school/image/finance_strategy/bg_future_head.jpg) center top no-repeat;
  background-size: cover;
  position: relative;
}
.future .heading .ttl {
  position: absolute;
  width: 100%;
  top: 50%;
  line-height: 1.5;
  transform: translateY(-50%);
}
.future .heading .ttl::after {
  margin-bottom: 0;
}
.future .txt {
  font-size: 18px;
  text-align: center;
}
.future .txt ul {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.future .txt li {
  padding-left: 40px;
  position: relative;
}
.future .txt li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 5px;
  color: #5e76a7;
}
.future .which {
  display: flex;
  justify-content: space-around;
}
.future .which li {
  width: 40%;
  height: 0;
  padding-top: 40%;
  border: 1px solid  #fff;
  color: #ffffff;
  border-radius: 50%;
  font-size: 20px;
  text-align: center;
  position: relative;
  margin-top: 60px;
}
.future .which li:first-child {
  background-color: #9fa0a0;
  box-shadow: 0 0 0 10px #9fa0a0;
  margin-right: 20px;
}
.future .which li:last-child {
  background-color: #5e76a7;
  box-shadow: 0 0 0 10px #5e76a7;
  margin-left: 20px;
}
.future .which li p {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.future .question {
  margin-top: 40px;
  text-align: center;
  font-size: 32px;
  color: #5e76a7;
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .future .heading .bg {
    padding-top: 200px;
  }
  .future .txt {
    font-size: 16px;
  }
  .future .which li {
    width: 47%;
    height: 0;
    padding-top: 47%;
    font-size: 18px;
  }
  .future .which li:first-child {
    margin-right: 10px;
  }
  .future .which li:last-child {
    margin-left: 10px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .future .txt {
    font-size: 14px;
    text-align: left;
    padding: 0 10px;
  }
  .future .txt ul {
    align-items: flex-start;
  }
  .future .which li {
    font-size: 12px;
  }
  .future .question {
    font-size: 20px;
  }
  .future .txt li {
    padding-left: 25px;
  }
}

/* ==========================================================================
method
========================================================================== */
.method-list {
  display: flex;
  justify-content: space-between;
  counter-reset: method;
  margin-top: 30px;
}
.method-list .item {
  width: 313px;
  border: 1px solid #5e76a7;
  position: relative;
  margin-top: 60px;
}
.method-list .item:nth-child(2) {
  margin-left: 10px;
  margin-right: 10px;
}
.method-list .item:before {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  counter-increment: method;
  content: counter(method);
  font-family: 'Josefin Slab', serif;
  background: #fff;
  color: #5e76a7;
  border: 2px solid #5e76a7;
  border-radius: 50%;
  position: absolute;
  top: -35px;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  font-size: 64px;
  box-sizing: border-box;
}
.method-list .item .ttl {
  text-align: center;
  font-size: 26px;
  color: #ffffff;
  background-color: #5e76a7;
  line-height: 1.2;
  padding: 30px 5px 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.method-list .item .body {
  padding: 135px 20px 20px;
  font-size: 16px;
  display: flex;
  height: 100%;
}
.method-list .item li {
  padding-left: 30px;
  position: relative;
  line-height: 1.5;
}
.method-list .item li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 5px;
  color: #5e76a7;
}
.method-list .item li:not(:first-child) {
  margin-top: 10px;
}
@media screen and (max-width: 899px) {
  .method-list {
    display: block;
  }
  .method-list .item {
    width: 100%;
  }
  .method-list .item:before {
    width: 50px;
    height: 50px;
    font-size: 50px;
  }
  .method-list .item:nth-child(2) {
    margin-right: 0;
    margin-left: 0;
  }
  .method-list .item .ttl {
    padding: 20px 5px 10px;
  }
  .method-list .item .body {
    padding-top: 100px;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .method-list .item .ttl {
    font-size: 22px;
  }
  .method-list .item .body {
    font-size: 14px;
  }
}

/* ==========================================================================
curriculum
========================================================================== */
.curriculum-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.curriculum-list .item {
  max-width: 460px;
  width: 48%;
  background-color: #efefef;
  border-bottom: 1px solid #5e76a7;
  position: relative;
}
.curriculum-list .item:nth-child(n+3) {
  margin-top: 60px;
}
.curriculum-list .item &gt; .ttl {
  color: #5e76a7;
  font-size: 16px;
  line-height: 1;
  text-align: left;
  width: 100%;
  font-weight: bold;
  background-color: #fff;
  display: flex;
  align-items: flex-end;
}
.curriculum-list .item &gt; .ttl .vol {
  font-family: 'Josefin Slab', serif;
  font-size: 30px;
  font-weight: normal;
}
.curriculum-list .item &gt; .ttl .num {
  font-family: 'Josefin Slab', serif;
  font-size: 50px;
  display: inline-block;
  padding: 0 10px 0 3px;
  vertical-align: bottom;
  line-height: 1;
  position: relative;
  top: 13px;
  font-weight: normal;
}
.curriculum-list .item &gt; .ttl .main {
  padding-bottom: 3px;
  line-height: 1.2;
}
.curriculum-list .box {
  background-color: #efefef;
  font-size: 14px;
  border-top: 1px solid #5e76a7;
  padding: 20px;
}
.curriculum-list .box dl {
  display: flex;
  margin-top: 0;
}
.curriculum-list .box dl:not(:first-child) {
  margin-top: 10px;
}
.curriculum-list .box dl dt {
  font-weight: bold;
  min-width: 90px;
}
.curriculum-list .box li {
  padding-left: 3em;
  text-indent: -3em;
}

.curriculum .sample-document {
  margin-top: 80px;
}
.curriculum .sample-document h4.line {
  position: relative;
  color: #5e76a7;
  font-size: 26px;
  font-weight: normal;
  text-align: center;
}
.curriculum .sample-document h4.line::before,
.curriculum .sample-document h4.line::after {
  max-width: 300px;
  content: "";
  width: 30%;
  border-top: 1px solid #5e76a7;
  position: absolute;
  top: 50%;
}
.curriculum .sample-document h4.line::before{ left: 0;}
.curriculum .sample-document h4.line::after{ right: 0;}
.curriculum .sample-document h4.line,
.curriculum .sample-document .lead {
  margin-bottom: 30px;
}
.curriculum .sample-document .btns {
  display: flex;
  justify-content: center;
}
.curriculum .sample-document .btns a {
  display: block;
  border-radius: 5px;
  text-align: center;
  max-width: 415px;
  width: 100%;
  background: url(/school/image/finance_strategy/icn_arrow.svg) 95% 50% no-repeat;
  background-size: 25px;
  font-size: 20px;
  color: #ffff;
  padding: 10px;
}
.curriculum .sample-document .btns a:first-child {
  background-color: #5e76a7;
}
.curriculum .sample-document .btns a:last-child {
  margin-left: 60px;
  background-color: #28b4d2;
}
.curriculum .sample-document .btns a:hover {
  text-decoration: none;
}
/* スマホ */
@media screen and (max-width: 599px) {
  .curriculum-list {
    display: block;
  }
  .curriculum-list .item {
    max-width: none;
    width: 100%;
    margin-top: 30px;
  }
  .curriculum-list .box dl {
    flex-direction: column;
  }
  .curriculum-list .box dl dt {
    min-width: 75px;
  }

  .curriculum .sample-document {
    margin-top: 30px;
  }
  .curriculum .sample-document h4.line, .curriculum .sample-document .lead {
    margin-bottom: 20px;
  }
  .curriculum .sample-document h4.line {
    font-size: 20px;
  }
  .curriculum .sample-document h4.line::before, .curriculum .sample-document h4.line::after {
    width: 22%;
  }
  .curriculum .sample-document .btns {
    display: block;
  }
  .curriculum .sample-document .btns a:last-child {
    margin-left: 0;
    margin-top: 20px;
  }
  .curriculum .sample-document .btns a {
    font-size: 16px;
    max-width: none;
  }
}

/* ==========================================================================
application
========================================================================== */
.application .txt_s{ font-size: 12px;}
.application .tab-content h3 {
  padding: 0.5em;
  border-top: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  font-size: 25px;
  line-height: 1.2;
}
.application .lead {
  margin: 2em 0;
  font-size: 16px;
  text-align: left;
}
@media screen and (max-width: 599px) {
  .application h3 {
    font-size: 20px;
  }
  .application .lead {
    font-size: 14px;
  }
}
.js-toggle-content {
  display: none;
}
.js-toggle-content.is-visible {
  display: block;
}
.js-tab-content {
  display: none;
}
.js-tab-content.is-visible {
  display: block;
}

.tab-content {
  background-color: #fff;
  display: none;
  border-top: none;
  overflow: hidden;
  position: relative;
  border: 1px solid #5e76a7;
  margin-top: -1px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
  padding: 60px 50px;
}
@media screen and (max-width: 599px) {
  .tab-content {
    padding: 40px 15px;
  }
}
.special-tab {
  display: flex;
  justify-content: space-around;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
.special-tab.top {
  margin-top: 60px;
  align-items: flex-end;
}
.special-tab.bottom {
  align-items: flex-start;
}
.special-tab &gt; li {
  position: relative;
  z-index: 1;
  cursor: pointer;
  font-size: 18px;
  line-height: 1.3;
  width: 32%;
  padding: 1.2em .3em;
  box-sizing: border-box;
  text-align: center;
  background: #E0E0E0;
  border: 1px solid #5e76a7;
  border-bottom: 0;
}
.special-tab.top &gt;li {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  position: relative;
  top: -2px;
}
.special-tab.bottom &gt;li {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.special-tab &gt; li.is-active {
  color: #fff;
  background: #5e76a7;
  padding: 1.6em .3em;
  cursor: default;
}
.special-tab.top &gt; li.is-active {
  border-bottom-width: 0;
  top: 0;
}
.special-tab.bottom &gt; li.is-active {
  border-top-width: 0;
  margin-top: -2px;
}
@media screen and (max-width: 999px) {
  .special-tab {
    width: 100%;
    justify-content: space-between;
  }
}
@media screen and (max-width: 599px) {
  .special-tab.top {
    margin-top: 20px;
  }
  .special-tab &gt; li {
    width: 32.5%;
    height: 4.5em;
    font-size: 15px;
    padding: 0 0.3em;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .special-tab.bottom {
    display: none;
  }
}
.js-toggle-content {
  display: none;
}
.table01{
  width: 100%;
  border-top: 1px solid #5e76a7;
  border-left: 1px solid #5e76a7;
  font-size: 16px;
}
.table01 th,
.table01 td{
  border-right: 1px solid #5e76a7;
  border-bottom: 1px solid #5e76a7;
  padding: 18px;
}
.table01 td {
  background: #fff;
}
.table01 th{
  background: #e7eaf1;
  vertical-align: middle;
  min-width: 30%;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
}
@media screen and (min-width: 600px) {
  .table01 th{ width: 30%;}
}
@media screen and (max-width: 599px) {
  .table01 {
    font-size: 14px;
  }
  .table01 th,
  .table01 td{
    display: block;
  }
}

/* ==========================================================================
inquiry
========================================================================== */
section.inquiry {
  margin-bottom: 0;
}
.wrap_inquiry_advance &gt; div{
  border: 1px solid #EA5520;
  position: relative;
}
@media screen and (min-width: 600px) {
  .wrap_inquiry_advance{
    display: flex;
    justify-content: space-between;
    max-width: 800px;
    margin: auto;
  }
  .wrap_inquiry_advance &gt; div{ width: 49%;}
}
@media screen and (max-width: 599px) {
  .wrap_inquiry_advance &gt; div + div{ margin-top: 20px;}
}

/* ==========================================================================
flow
========================================================================== */
.flow .inner {
  width: 94%;
}

.flow-list li{
  border-bottom: 1px solid #5e76a7;
  margin-bottom: 95px;
  position: relative;
  border-top: 1px solid #5e76a7;
  padding: 15px 10px;
}
.flow-list li::after{
  content: "";
  padding: 22px;
  background: url(/school/image/margin_trading/icn_flow_arrow.svg) center top/15px no-repeat;
  position: absolute;
  bottom: -73px;
  left: 0;
  right: 0;
}
.flow-list li:last-child::after{ content: none;}
.flow-list li .step {
  position: relative;
  color: #5e76a7;
  text-align: center;
  font-family: 'Josefin Slab', serif;
  font-size: 40px;
}
.flow-list li .step::before,
.flow-list li .step::after {
  max-width: 420px;
  content: "";
  width: 42%;
  border-top: 1px solid #5e76a7;
  position: absolute;
  top: 50%;
}
.flow-list li .step::before{ left: 0;}
.flow-list li .step::after{ right: 0;}
.flow-list li h3{
  font-size: 23px;
}
.flow-list li.apply .txt {
  text-align: center;
  font-size: 23px;
  margin-bottom: 15px;
}
.flow-list li.pay h3{ margin-bottom: 20px;}
.flow-list li.pay .cashless-promotion {
  background-color: #fff;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 15px 40px;
  padding: 20px 20px 30px;
  border-top: 1px dashed #a0a0a0;
  border-bottom: 1px dashed #a0a0a0;
}
.flow-list li.pay .cashless-promotion img {
  width: 50px;
  height: 50px;
}
.flow-list li.pay .cashless-promotion .txt {
  font-size: 18px;
  text-align: center;
  line-height: 1.3;
  padding-left: 10px;
}
.flow-list li.pay .cashless-promotion .txt strong {
  font-weight: normal;
  font-size: 30px;
}
.flow-list li.pay .cashless-promotion .txt a {
  display: inline-block;
  text-decoration: underline;
  color: #333333;
  margin-top: 10px;
}
@media screen and (max-width: 599px) {
  .flow-list li.pay .cashless-promotion {
    margin: 20px 0;
    padding: 20px 10px;
    display: block;
    text-align: center;
  }
  .flow-list li.pay .cashless-promotion .txt {
    font-size: 16px;
    padding: 0;
    margin-top: 10px;
  }
  .flow-list li.pay .cashless-promotion .txt strong {
    font-size: 25px;
  }
}
.flow-list li.pay .detail{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.flow-list li.pay .detail &gt; div{
  width: 25%;
  padding: 0 10px;
  border-left: 1px solid #5e76a7;
  text-align: center;
}
.flow-list li.pay .detail &gt; div p{
  display: inline-block;
  text-align: left;
}
.flow-list li.pay .detail &gt; div:first-child{ border-left: none;}
.flow-list li.pay .detail &gt; div h4{
  text-align: center;
  font-size: 22px;
  font-weight: normal;
  margin-bottom: 130px;
  min-height: 4em;
  position: relative;
}
.flow-list li.pay .detail &gt; div:first-child h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/margin_trading/icn_flow_card.svg) center top/73px no-repeat;
  position: absolute;
  top: 110px;
  left: 0;
  right: 0;
}
.flow-list li.pay .detail &gt; div:nth-child(2) h4::after {
  content: "";
  padding: 40px;
  background: url(/school/image/logo_amazonpay.png) 50% 20% no-repeat;
  background-size: 75% auto;
  position: absolute;
  top: 120px;
  left: 0;
  right: 0;
}
.flow-list li.pay .detail &gt; div:nth-child(3) h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/margin_trading/icn_flow_bank.svg) center top/68px no-repeat;
  position: absolute;
  top: 100px;
  left: 0;
  right: 0;
}
.flow-list li.pay .detail &gt; div:nth-child(4) h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/margin_trading/icn_flow_loan.svg) center top/43px no-repeat;
  position: absolute;
  top: 110px;
  left: 0;
  right: 0;
}
.flow-list li.start h3{
  position: relative;
  border-bottom: 1px dashed #5e76a7;
  padding-bottom: 25px;
  width: 90%;
  margin: 60px auto 25px;
}
.flow-list li.start h3::before{
  content: "";
  padding: 50px;
  background: url(/school/image/margin_trading/icn_flow_textbook.svg) center center/94px no-repeat;
  position: absolute;
  top: -80px;
  left: 0;
  right: 0;
}
.flow-list li.start h4{
  text-align: center;
  color: #5e76a7;
  font-size: 23px;
  font-weight: normal;
  margin-bottom: 25px;
}
.flow-list li.start p{
  width: 90%;
  margin: 0 auto;
  font-size: 14px;
}
.flow-list li.start p + p{
  padding: 20px 0 25px;
  font-size: 12px;
}
/* タブレット以下 */
@media screen and (max-width: 999px) {
  .flow-list li h3{
    font-size: 26px;
    letter-spacing: 0;
  }
}
/* スマホ */
@media screen and (max-width: 599px) {
  .flow-list li .step {
    font-size: 30px;
  }
  .flow-list li .step::before, .flow-list li .step::after {
    width: 36%;
  }
  .flow-list li:last-child {
    margin-bottom: 40px;
  }
  .flow-list li h3{ font-size: 20px;}
  .flow-list li.apply .txt {
    font-size: 20px;
    padding: 0 14px;
  }
  .flow-list li.pay h3{ margin-bottom: 10px;}
  .flow-list li.pay .detail{ margin-bottom: 10px;}
  .flow-list li.pay .detail &gt; div{
    width: 100%;
    padding: 0;
    border-left: none;
    padding-bottom: 25px;
    border-bottom: 1px dashed #5e76a7;
    margin-bottom: 10px;
  }
  .flow-list li.pay .detail &gt; div:last-child{
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
  }
  .flow-list li.pay .detail &gt; div h4{
    margin-bottom: 30px;
    font-size: 16px;
  }
  .flow-list li.pay .detail &gt; div:first-child h4::after {
    padding: 25px;
    background-size: 48px auto;
    top: 40px;
  }
  .flow-list li.pay .detail &gt; div:nth-child(2) h4::after {
    padding: 25px;
    background-size: auto 25px;
    top: 40px;
  }
  .flow-list li.pay .detail &gt; div:nth-child(3) h4::after {
    padding: 25px;
    background-size: 45px auto;
    top: 40px;
  }
  .flow-list li.pay .detail &gt; div:nth-child(4) h4::after {
    padding: 25px;
    background-size: 30px auto;
    top: 40px;
  }
  .flow-list li.pay .detail &gt; div h4 + p{
    padding: 0 14px;

  }

  .flow-list li.start h3 {
    margin: 60px auto 25px;
    padding-bottom: 15px;
  }
  .flow-list li.start h4{
    font-size: 16px;
    margin-bottom: 15px;
  }
}

/* ==========================================================================
faq
========================================================================== */
.faq {
  background-color: rgba(94, 118, 167, .15);
}
.faq-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -30px;
}
.faq-list .item {
  width: 49%;
  max-width: 470px;
  border-bottom: 1px solid #5e76a7;
  position: relative;
  background-color: #efefef;
  margin-top: 100px;
}
.faq-list .question {
  color: #5e76a7;
  font-size: 18px;
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  line-height: 1.3;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #5e76a7;
  padding-left: 40px;
  background: url(/school/image/margin_trading/bg_faq.svg) 0 100% no-repeat;
  background-size: 36px 40px;
  min-height: 42px;
}
.faq-list .answer {
  font-size: 16px;
  padding: 10px;
  display: flex;
  align-items: center;
}
/* スマホ */
@media screen and (max-width: 599px) {
  .faq-list {
    display: block;
    margin-top: 30px;
  }
  .faq-list .item {
    width: 100%;
    max-width: none;
    background-color: transparent;
  }
  .faq-list .question {
    position: static;
    font-size: 16px;
  }
  .faq-list .answer {
    background-color: #efefef;
    font-size: 14px;
  }
  .faq-list .item {
    margin-top: 20px;
  }
}

/* ==========================================================================
finally
========================================================================== */
.finally .lead {
  text-align: justify;
}
.finally .copy {
  max-width: 390px;
  width: 90%;
  margin: 60px auto 0;
}

/* ==========================================================================
fixed-btn
========================================================================== */
.fixed-btn {
  position: fixed;
  z-index: 10;
  bottom: 100px;
  right: 10px;
  display: none;
}
.fixed-btn.is-show {
  display: block;
}
.fixed-btn a {
  display: block;
  background: #c6272d;
  box-shadow: 0 1.5px 0 #782332;
  color: #ffffff;
  position: relative;
  min-width: 220px;
  padding: 8px 15px 8px 0;
  text-align: center;
  border-radius: 2.8px;
  letter-spacing: 1px;
  font-size: 16px;
  background: #c6272d url(/images/common/arrow02.svg) 94% center/12px no-repeat;
}
.fixed-btn a:hover {
  text-decoration: none;
}
.fixed-btn .baloon {
  display: block;
  padding: 2px 7px;
  position: absolute;
  left: 0;
  top: -57%;
  background-color: #fff;
  color: #c6272d;
  font-size: 14px;
  border-radius: 5px;
  border: 1px solid #c6272d;
  letter-spacing: normal;
}
.fixed-btn .baloon::after {
  content: "";
  border: 4px solid transparent;
  border-top: 5px solid #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -9px;
}
@media screen and (max-width: 599px) {
  .fixed-btn {
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 10px 15px;
    background-color: rgba( 255,255,255, 0.75);
  }
  .fixed-btn .baloon {
    display: none;
  }
  .fixed-btn a {
    width: calc(100% - 80px);
    font-size: 16px;
    background-size: 16px;
  }
}
</pre></body></html>