@charset "shift-jis";
/* --------------------------------------------------------------------
  Financial Academy

  Style Info: long term investment

-------------------------------------------------------------------- */
*{ box-sizing: border-box;}
#tab5_left,
.style1607_inyo li{ box-sizing: content-box;}
body{
  font-size: 16px;
  overflow-x: hidden;
}

img{ max-width: 100%;}

.tac { text-align: center;}
.tar { text-align: right;}
.txt_orange { color: #ea5413;}
.txt_red { color: #ff0000;}
.txt_blue { color: #D7BA41;}
.align_l { text-align: left;}
.mb50 { margin-bottom: 60px;}
.mb60 { margin-bottom: 60px;}
.mb70 { margin-bottom: 70px;}
.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml35 { margin-left: 35px;}
.pt30 { padding-top: 30px !important;}
.pb50 { padding-bottom: 50px !important;}

.marker {
  background: linear-gradient( rgba(255, 242, 160, 0) 50%, rgba(215, 186, 65, 0.2) 50% );
  padding: 2px;
}

.sp{ display: none;}
.tab{ display: none;}
.pc{ display: block;}
@media screen and (max-width: 999px) {
  .pc{ display: none;}
  .sp{ display: none;}
  .tab{ display: block;}
}
@media screen and (max-width: 599px) {
  .pc{ display: none;}
  .tab{ display: none;}
  .sp{ display: block;}
}

#contents{ padding: 0;}

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

.ttl_border{
  border-top: 1px solid #D7BA41;
  border-bottom: 1px solid #D7BA41;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 1.5rem;
}

.bg-beige { background-color: #f3f3f2;}
.bg-school { background-color: rgba(215, 186, 65, .1);}

.lead{ font-size: 22px;}

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

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

.txt_bold{ font-weight: bold;}

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

.btn01{ text-align: center;}
.btn01 a{
  background: #D7BA41 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 {
  text-align: center;
  background: #E60A17 url(/images/common/arrow02.svg) 98% center/1em no-repeat;
  width: 100%;
  max-width: 410px;
  color: #fff;
  border: none;
  border-radius: 3px;
  font-size: 18px;
  padding: 20px 25px;
  box-shadow: 0 1.5px 0 #c60813;
  position: relative;
}
a.btn02 {
  display: block;
  text-decoration: none;
  color: #fff;
  margin: 0 auto;
}
.btn02:hover{
  cursor: pointer;
  opacity: .7;
}

.btn02.close{
  background: #e0e0e0;
  pointer-events: none;
  box-shadow: none;
}

.list_disc li{
  list-style: disc outside;
  font-size: 20px;
  line-height: 1.5;
  margin-left: 1.3em;
  margin-bottom: 20px;
}

.list_osusume li{
  font-size: 20px;
  line-height: 1.5;
  padding-left: 2em;
  background: url(/school/image/long_term_investment/icn_check.svg) left 3px/1.2em no-repeat;
  margin-bottom: 20px;
}
.kochira_ttl{font-size: 26px}
.kochira{font-size: 30px;}
@media screen and (min-width: 600px) {
  .list_osusume_outer {
    display: flex;
    justify-content: space-between;
  }
    .list_osusume_outer .list_l {
    width: 47%;
  }
  .list_osusume_outer .list_r {
    width: 50%;
  }
    .list_disc { column-count: 2;}
}

#breadcrumbs{
  float: left;
  margin: 20px 0;
  font-size: 12px;
}

.block-inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 65px 15px;
}
@media screen and (max-width: 599px) {
  .kochira_ttl{font-size: 16px}
  .kochira{font-size: 20px;}
  .block-inner {
    padding: 50px 5%;
  }
}

.mv {
  background-color: #D7BA41;
  display: flex;
  height: 480px;
  overflow: hidden;
  clear: both;
}
.mv > div {
  width: 50%;
  position: relative;
}
.mv-detail {
  display: flex;
  justify-content: flex-end;
}
.mv-detail-in {
  width: 100%;
  max-width: 560px;
  color: #fff;
  margin: 1em;
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  position: relative;
}
.mv-ttl-sub {
  font-size: 20px;
  padding-bottom: 25px;
}
.mv-ttl {
  font-size: 30px;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.8em;
}

.mv-date-wrap{ width: 96%;}
.mv-date{
  width: 66%;
  background: rgba(255, 255, 255, .85);
  padding: 5px;
  border-radius: 4px;
  color: #d7ba41;
  font-size: 18px;
  text-align: center;
  margin-bottom: 25px;
  position: relative;
}
.mv-date .icn{
  margin-right: 15px;
}
.mv-date::before,
.mv-date::after{
  content: "";
  border: 9px solid transparent;
  border-top: 15px solid rgba(255, 255, 255, .85);
  position: absolute;
  bottom: -24px;
}
.mv-date::before{
  left: 25%;
  transform: translateX(-25%);
}
.mv-date::after{
  left: 75%;
  transform: translateX(-75%);
}
.mv .type {
  text-align: center;
  display: flex;
/*  justify-content: space-between;*/
justify-content: center;
}
.mv .type li{
/*  width: calc(95%/3);*/
  width: 80%;
  height: 3em;
  vertical-align: top;
  font-size: 16px;
  border: 1px solid;
  border-radius: 4px;
}
.mv .type li > a{
  color: #fff;
  line-height: 1.3;
  padding: 6px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.mv-photo {
  width: 100%;
  height: 480px;
  padding-top: 480px;
  background: url(/school/image/long_term_investment/mv.jpg) center/cover no-repeat;
}
@media screen and (max-width: 999px) {
  .mv > div:nth-child(1) {
    width: 60%;
  }
  .mv > div:nth-child(2) {
    width: 40%;
  }
  .mv-ttl {
    font-size: 24px;
    line-height: 1.5;
  }
  .mv .type li{ font-size: 12px;}
  .mv .type li:not(:last-child){ margin-right: 10px;}

}
@media screen and (max-width: 799px) {
  .mv-detail-in{ padding: 0;}

  .mv-ttl-sub { font-size: 18px;}

  .mv-date{ font-size: 14px;}
  .mv-date .icn{ width: 26px;}

  .mv-photo img {
    height: 250px;
    object-fit: cover;
  }
}
@media screen and (max-width: 599px) {
  .mv {
    flex-direction: column;
    max-height: none;
    height: auto;
  }
  .mv > div:nth-child(1) {
    width: 100%;
  }
  .mv > div:nth-child(2) {
    width: 100%;
  }
  .mv-ttl-sub {
    padding-bottom: 10px;
    text-align: center;
  }
  .mv-detail {
    align-items: center;
    justify-content: center;
  }
  .mv-detail-in {
    justify-content: center;
    align-items: center;
    padding-right: 0;
  }
  .mv-ttl {
    margin-top: 5px;
    text-align: center;
  }
  .mv-lead{
    font-size: 14px;
    text-align: center;
    padding-right: 0;
    margin-bottom: .5em;
  }

  .mv .type li{ font-size: 11px;}

  .mv-photo {
    max-height: 250px;
    overflow: hidden;
    padding-top: 250px;
    background-position: center top 20%;
  }
  .mv-photo img {
    height: auto;
    object-fit: contain;
    max-height: 330px;
  }
}

@media screen and (min-width: 600px) {
  .ar_info{ margin-bottom: 85px;}
}
@media screen and (max-width: 599px) {
  .ar_info{ margin-bottom: 60px;}
}

.box_discount{
  border: 1px solid #ea5413;
  background: #fff;
}
.box_discount h2{
  color: #fff;
  letter-spacing: 0;
  font-size: 1.5rem;
  padding: 10px 30px;
  background: #ea5413;
}
.box_discount p{
  margin-left: 1em;
  font-size: 1.2em;
  vertical-align: baseline;
}
@media screen and (min-width: 600px) {
  .box_discount{
    display: flex;
    align-items: center;
    margin-bottom: 35px;
  }
}
@media screen and (max-width: 599px) {
  .box_discount{ margin-bottom: 20px;}
  .box_discount h2{ padding: 0;}
  .box_discount p{
    margin: .5em 1em;
    font-size: 1em;
    text-align: center;
  }
  .box_discount .txt_until{
    display: block;
    text-align: right;
  }
}

.box_promotion{
  display: flex;
  max-width: 610px;
  margin: 0 auto;
}
.box_promotion .txt{
  background: #fff;
  color: #1c236d;
  font-size: 16px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}
.box_promotion h2{
  background: #1c236d;
  color: #fff;
  font-size: 16px;
  padding: .5em 1em;
  border-radius: 2em;
  width: 94%;
  max-width: 358px;
  margin-bottom: 10px;
}
.box_promotion .img{
  align-self: flex-end;
  flex: 0 0 140px;
  padding: 2% 2% 2% 0;
  background: #fff;
}
@media screen and (max-width: 599px) {
  .box_promotion h2{
    font-size: 12px;
    padding: 5px;
    margin-bottom: 5px;
  }
  .box_promotion p{ font-size: 12px;}
}
@media screen and (max-width: 499px) {
  .box_promotion .img{ flex-basis: 92px;}
}

.catch {
  font-size: 18px;
}
.catch .col-wrap {
  display: flex;
  margin-top: 30px;
}
.catch .col-wrap .txt {
  padding-right: 2em;
}
.catch .col-wrap .col {
  width: 48%;
}
.catch .col-wrap .col img {
  width: 100%;
}
@media screen and (max-width: 599px) {
  .catch {
    text-align: left;
    font-size: 16px;
    line-height: 1.8;
  }
  .catch .col-wrap {
    flex-direction: column-reverse;
  }
  .catch .col-wrap .col {
    width: 100%;
  }
  .catch .col-wrap .txt {
    padding-right: 0;
    margin-top: 20px;
  }
}

.gaiyou h3{
  text-align: left;
  color: #d7ba41;
  font-size: 25px;
  margin-bottom: 40px;
  line-height: 1.4;
}
.gaiyou h3 ~ p{ margin-bottom: 70px;}
img.img{
  width: 100%;
  margin-bottom: 50px;
}
.gaiyou .box{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.gaiyou .inner .box:nth-child(odd){ flex-direction: row-reverse;}
.gaiyou .box > div{ width: 50%;}
.gaiyou .box > img{ width: 46.8%; height: 46.8%;}

@media screen and (max-width: 599px) {
  .gaiyou .box > div,
  .gaiyou .box > img{ width: 100%; height: auto;}
}

/* 講師紹介 */
.teacher li{ clear: both;}
.teacher li img{ max-width: 300px;}
.teacher li h3,
.teacher li p{ margin-bottom: 30px;}
.teacher li .position{ font-size: 14px;text-align: left;}

@media screen and (min-width: 600px) {
  .teacher .box_profile{
    display: flex;
    align-content: center;
    margin-bottom: 30px;
  }
  .teacher li img{
    flex: 0 0 300px;
    margin-right: 5%;
  }
  .teacher li h3,
  .teacher li p{ text-align: left;}
}

@media screen and (max-width: 599px) {
  .teacher li{ text-align: center;}
  .teacher li h3{ margin-top: 1em;}
  .teacher li .text{ text-align: left;}
}

/* 著書 */
.books {
  display: flex;
  justify-content: space-between;
  background: #fff;
  padding: 20px;
}
.books li {
  display: flex;
  justify-content: space-between;
  width: 49%;
}
.books .book_img {
  width: 30%;
  max-width: 112px;
}
.books .book_txt {
  width: 67%;
}

@media screen and (max-width: 599px) {
  .books {
    display: block;
    padding: 5%;
  }
  .books li {
    width: 100%;
  }
  .books li + li {
    margin-top: 20px;
  }
}

/* 「セミナーに申込む」タイトル部分 */
.heading {
  position: relative;
  max-height: 350px;
  overflow: hidden;
}
.heading h2 {
  position: absolute;
  width: 100%;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
}
.heading .bg {
  background-image: url(/school/image/kabu/bg_ttl02.jpg);
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 0;
  padding-top: 23.3076923%;
}
.heading + .inner {
  padding-top: 40px;
}
@media screen and (max-width: 599px) {
  .heading + .inner {
    padding-top: 10px;
  }
  .heading h2 {
    position: static;
    transform: translateY(0);
    padding: 40px 10px 20px;
  }
}

/* こんな人におすすめ */
.list_target{
  background: rgba(211, 186, 87, .1);
  border-top: 1px dashed #D7BA41;
  border-bottom: 1px dashed #D7BA41;
  padding: 10px;
  text-align: center;
  margin: 1.5rem auto;
}
.list_target .ttl{
  text-align: center;
  color: #d7ba41;
  font-size: 1.3rem;
}
@media screen and (max-width: 599px) {
  .list_target .txt{ text-align: left;}
}

/* .table01 */
.table01{
  width: 100%;
  border-top: 1px solid #D7BA41;
  border-left: 1px solid #D7BA41;
}
.table01 th,
.table01 td{
  border-right: 1px solid #D7BA41;
  border-bottom: 1px solid #D7BA41;
  padding: 18px;
}
.table01 th{
  background: #F2E9C5;
  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 th,
  .table01 td{
    display: block;
  }
}

/*
.special-tab &
.tab-content
*/
.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 #D7BA41;
  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 > li {
  position: relative;
  z-index: 1;
  cursor: pointer;
  font-size: 24px;
  line-height: 1.3;
  width: 32%;
  padding: .6em .3em;
  box-sizing: border-box;
  text-align: center;
  background: #E0E0E0;
  border: 1px solid #d7ba41;
  border-bottom: 0;
}
.special-tab.top >li {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  position: relative;
  top: -2px;
}
.special-tab.bottom >li {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.special-tab > li.is-active {
  color: #fff;
  background: #d7ba41;
  padding: 1em .3em;
  cursor: default;
}
.special-tab.top > li.is-active {
  border-bottom-width: 0;
  top: 0;
}
.special-tab.bottom > 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 > li {
    width: 32.5%;
    min-height: 5em;
    font-size: 15px;
    padding: 1em 0.3em;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .special-tab.bottom {
    display: none;
  }
}

.js-toggle-content {
  display: none;
}

.sp_br{
  display:none;
}

/* 制度規約 */
.kitei dt.accordion{
  text-align: center;
  margin-bottom: 35px;
  border: 1px solid #d7ba41;
  padding: 10px;
  font-size: 23px;
}
.kitei dt.accordion::after{
  content: "";
  padding: 15px;
  background: url(/images/common/arrow_fss.svg) right 15px/25px no-repeat;
  display: inline-block;
  margin-left: 20px;
}
.kitei dt.accordion.active::after{
  transform: rotate(180deg);
  background-position: right 3px;
}

.kitei dd{ margin-bottom: 35px;}
.kitei dd > *{ font-size: .85rem;}
.kitei dd h2::after{ content: none;}

.kitei_sp{ display: none;}

#modal-close{ display: none;}

@media screen and (max-width: 599px) {
  .kitei dt.accordion {
    border: 1px solid #d7ba41;
    font-size: 16px;
  }
  .kitei dt.accordion::after{ content: none;}

  /* モーダル設定 */
  .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 ) ;
  }
  #modal-close{
    display: block;
    position: fixed;
    top: 120px;
    background: #fff;
    z-index: -1;
    padding: 0 4px;
    border: 3px solid #aaa;
    line-height: 1.3;
    right: 13%;
  }

}

/*受講料全額返金制度*/
.bc_box{
  background-color: #fff;
  border: 1px dotted #d7ba41;
  padding: 15px;
  margin-bottom: 35px;
}
.bc_box h3{
  font-size: 20px;
  padding-bottom: 15px;
  font-weight: normal;
  text-align: center;
}
.bc_box p{
  text-align: center;
  font-size: 16px;
}
@media screen and (max-width: 599px) {
  .bc_box h3{
    font-size: 18px;
  }
  .bc_box p{
    text-align: left;
    font-size: 14px;
  }
}

/* タブレット以下 */
@media screen and (max-width: 1024px) {
  #head2{ height: 85px !important;}
  #container{
    margin-top: 80px;
    overflow: hidden;
    width: 100%;
  }
  .lead{ font-size: 20px;}
}

@media screen and (max-width: 700px) {
  section p {
  font-size: 14px;}
}

/* スマホ */
@media screen and (max-width: 599px) {
  body{ font-size: 14px;}

  .pc{ display: none;}
  .sp{ display: inherit;}

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

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

  section .inner{ padding: 40px 14px;}
  section h2 {
    font-size: 1.5rem;
    letter-spacing: 0;
  }
  section h2:not(.bd_none)::after {
    width: 80px;
    margin: 15px auto 60px;
  }
  section h3{ font-size: 1.2rem}

  .ttl_border{ font-size: 1.25rem;}

  .lead{ font-size: 18px;}
}

.line_img img {
  width: 100%;
  max-height: 350px;
  object-fit: cover;
  object-position: top;
}


/* ==========================================================================
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;
  }
}

