body {
  line-height: 1.34;
}

h1 {
  margin-bottom: 0 !important;
}

h2 {
  text-align: center;
  font-size: 32px;
  line-height: 1.4;
  margin-bottom: 30px;
}

p {
  margin-bottom: 0 !important;
}

.h2-sub {
  font-size: 28px;
}

.h2-small {
  font-size: 20px;
}

.block-h2,
.disc-section {
  padding: 80px 0;
  margin: 0;
  width: 100%;
}

.section-inner {
  margin: 0 auto;
  width: 920px;
}

@media screen and (max-width: 1019px) {
  h2 {
    font-size: 28px;
  }
  .h2-sub {
    font-size: 24px;
  }
  .h2-small {
  font-size: 18px;
  }

  .block-h2,
  .disc-section {
    padding: 40px 0;
  }

  .section-inner {
    width: 100%;
    padding: 0 15px;
  }
}

.bg-cobaltblue {
  background-color: #0A1D40;
}

.bg-skyblue {
  background-color: #F1FAFF;
}

.bg-gradation-1 {
  background: linear-gradient(180deg, #0A1D40 0%, #0D3A5B 100%);
}

.bg-gradation-2 {
  background: linear-gradient(180deg, #0A1D40 0%, #1BE0F1 100%);
}

.bg-cobaltblue h2,
.bg-gradation-1 h2,
.bg-gradation-2 h2 {
  color: #fff;
}

.bg-white h2 {
  color: #012F4E;
}

.text-black {
  color: #222;
}

.text-red {
  color: #e43636;
}

.text-white {
  color: #fff;
}

.text-blue {
  color: #0375C7;
}

.text-cobaltblue {
  color: #012F4E;
}

.text-cyaan {
  color: #1ADCED;
}
.text-link--icon.left_ver.text-cyaan::before {
  color: #1ADCED;
  background: url(/lp/sbi_integration/imgs/icon-arrow-right-cyaan.svg) 0 0 no-repeat;
  background-size: contain;
}

.fontsize-12 {
  font-size: 12px;
}

.fontsize-14 {
  font-size: 14px;
}

.fontsize-16 {
  font-size: 16px;
}

.fontsize-20 {
  font-size: 20px;
}

.fontsize-24 {
  font-size: 24px;
}

.fontsize-28 {
  font-size: 28px;
}

.fontsize-32 {
  font-size: 32px;
}

.fontsize-36 {
  font-size: 36px;
}

.lineheight-140 {
  line-height: 1.4;
}

.pb-0 {
  padding-bottom: 0;
}

/* ヘッダー */
.header--simple {
  display: none;
}
.header-sbisec {
  position: static;
  height: 72px;
  border-bottom: 1px solid #b0bdcc;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.header-sbisec .container {
  text-align: center;
  margin: 0 !important;
}
@media screen and (max-width: 1019px) {
  .header-sbisec {
    height: 60px;
  }
}
.header-sbisec #simple-logo-sbisec {
  height: 41px;
}
.header-sbisec #simple-logo-sbisec:hover {
  opacity: 0.7;
}
@media screen and (max-width: 1019px) {
  .header-sbisec #simple-logo-sbisec {
    height: 32px;
  }
  .header-sbisec #simple-logo-sbisec:hover {
    opacity: 1;
  }
}

/* キービジュアル */
@media screen and (min-width: 1020px) {

  .keyvisual-img {
    width: 100%;
    height: 695px;
    overflow: hidden;
    position: relative;
    background-color: #011A39;
  }

  .keyvisual-img img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1920px;
    height: 695px;
    max-width: none;
  }
}

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


/* 選ばれる理由 */

.top-bnr {
  padding-top: 60px;
}

.top-bnr .column {
  margin-bottom: 0 !important;
}

.merit-area {
  padding: 20px;
  margin-top: 60px;
}

.merit-box-upper {
  display: flex;
  gap: 10px;
  width: 100%;
  margin-bottom: 20px;
}

.merit-box-upper .merit-box {
  width: 50%;
}

.merit-ribbon {
  position: absolute;
  top: -10px;
  left: 8px;
}

.merit-box-inner {
  background-color: #fff;
  text-align: center;
  border-radius: 6px;
  display: flex;
  padding: 20px;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  font-weight: 500;
  margin-bottom: 10px;
  position: relative;
  min-height: 302px;
}
.merit-head-block {
  height: 100px;
  align-content: center;
}
.merit-head {
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #E74140;
}

.merit-head-rate {
  font-size: 65px;
}

.merit-subhead {
  font-size: 16px;
  padding-bottom: 10px;
  font-weight: 700;
}

.merit-box-inner hr {
  width: 100%;
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  border: 1px solid #C0C0C0;
}

@media screen and (max-width: 1019px) {
  .merit-box-upper {
    display: block;
  }

  .merit-box {
    margin-bottom: 20px;
  }

  .merit-box-upper .merit-box {
  width: 100%;
  height: 100%;
}

.merit-ribbon {
  top: 10px;
  left: 0;
}

.merit-box-inner {
  padding: 40px 10px 20px;
  min-height: auto;
}

.merit-ribbon img {
  width: 108px;
}

.merit-head-block {
  height: auto;
  min-height: 50px;
}

.merit-head {
  font-size: 30px;
}

.merit-head-rate {
  font-size: 48px;
}
.merit-nomal-text {
  text-align: left;
}
}

/* ハイパー預金ステップ */

.hyper-step {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 60px;
}

.hyper-step-box {
  background: #0375C7;
  border-radius: 6px;
  width: 280px;
  height: 244px;
}

.hyper-step-box-head {
  height: 56px;
  display: flex;
}

.hyper-step-box-head-left {
  background-color: #fff;
  border-radius: 6px 6px 0 0;
  width: 56px;
  height: 56px;
  padding: 10px 8px 0;
  font-size: 13px;
  text-align: center;
  line-height: 1;
}

.hyper-step-box-head-left .step-num {
  font-size: 32px;
}

.hyper-step-box-head-right {
  width: 224px;
  color: #fff;
  text-align: center;
  font-size: 18px;
  align-content: center;
  font-weight: bold;
}

.hyper-step-box-body {
  background-color: #fff;
  height: 188px;
  padding: 10px;
  line-height: 1.3;
  font-weight: 500;
}

.hyper-step-box-body-img {
  background: #F0F9FF;
  width: 100%;
  height: 90px;
  text-align: center;
  padding: 10px;
  margin-bottom: 10px;
}

.hyper-step-box-body-img img {
  height: 100%;
  max-height: 240px;
  object-fit: contain;
}

.step-back-img {
  margin: 12px auto 30px;
}

.operations-table {
  width: 100%;
  margin-bottom: 30px;
}

.operations-table thead tr th {
  background: #0375C7 !important;
  color: #fff;
  height: 60px;
  text-align: center;
  border: none;
  font-size: 18px;
}

.operations-table tbody tr td {
  background: #fff !important;
  height: 60px;
  text-align: center;
  border: none;
  font-size: 16px;
  position: relative;
}

.operations-table tbody tr td img {
  width: 30px;
  height: 30px;
  margin-right: 14px;
}

.operations-table tbody tr td:first-child::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 30px;
  background-color: #D9D9D9;
}

@media screen and (max-width: 1019px) {
  .hyper-step {
    display: block;
    padding: 0 17.5px;
    margin: 0 auto 10px;
    text-align: center;
  }
  .hyper-step-box {
    width: 100%;
  }
  .hyper-step-box-head-right {
    width: calc(100% - 56px);
  }

  .back-to {
    display: grid;
  }

  .operations-table {
    display: block;
    width: 100%;
    box-sizing: border-box;
    max-width: 400px;
    margin: 0 auto 30px;
  }

  .operations-table,
  .operations-table thead,
  .operations-table tbody,
  .operations-table th,
  .operations-table tr,
  .operations-table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  .operations-table td {
    align-content: center;
    padding: 10px 20px;
    text-align: left !important;
  }

  .operations-table tbody tr td:first-child::after {
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 50%;
    top: initial;
    transform: translateX(-50%);
  }
}

/* 預金金額別シミュレーション */

.deposit-table-content {
  margin: 60px auto 12px;
}

.deposit-table-l {
  width: 198px;
}

.deposit-table-r {
  width: 714px;
}

.deposit-table th,
.deposit-table td {
  border: 4px solid #fff;
  height: 54px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0;
  line-height: 1.34;
}

.deposit-table thead tr th {
  background-color: #0375C7;
  color: #fff;
}

.deposit-table tbody tr td {
  background-color: #F2F2F2;
}

.deposit-table-under {
  width: 100%;
  padding: 10px;
  background: #E9F8FF;
  margin: 10px 0;
}
.deposit-table-under sup {
  font-size: 10px;
  top: -1em;
}

.simu-disc li {
  font-size: 12px;
}

.latest-rate {
  font-size: 18px;
  margin-top: 20px;
}

.latest-rate.left_ver::before {
  left: -3px;
  width: 18px;
  height: 18px;
}

@media screen and (max-width: 1019px) {
  .deposit-table-l {
  width: 40%;
  }

  .deposit-table-r {
    width: 60%;
  }
  .deposit-table th,
  .deposit-table td {
    font-size: 16px;
    border: 2px solid #fff;
  }
}

/* かんたん3ステップ */

.account-step {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.account-step-box {
  width: 280px;
  height: 395px;
  padding: 20px;
  justify-content: center;
  border-radius: 6px;
  background: #F5FBFF;
  text-align: center;
}

.account-step-box-head {
  height: 47px;
  width: 176px;
  padding: 8px;
  align-items: center;
  align-self: stretch;
  background: #0375C7;
  align-content: center;
  margin: 0 auto;
}

.account-step-box-head p {
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
}

.account-step-box img {
  width: 100px;
  height: 100px;
  margin: 24px auto;
}

.account-step-box-body p {
  text-align: center;
}

.step-subhead {
  color: #012F4E;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 134%;
  margin-bottom: 20px !important;
}

.cv-btn-content {
  margin: 40px auto 0;
  width: 100%;
}

.cv-btn-column {
  width: 100%;
  max-width: 760px;
  display: flex;
  gap: 40px;
  margin: 0 auto;
  flex-direction: row;
  justify-content: center;
}

.cv-red-btn {
  border-radius: 5px;
  border: 2px solid #530001 !important;
  background: #E74140 !important;
  box-shadow: 0 3px 2px 0 rgba(0, 0, 0, 0.25);
  display: flex;
  width: 360px;
  height: 66px;
  padding: 12px 10px;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.cv-blue-btn {
  border-radius: 5px;
  border: 2px solid #002653 !important;
  background: #0375C7 !important;
  box-shadow: 0 3px 2px 0 rgba(0, 0, 0, 0.25);
  display: flex;
  width: 360px;
  height: 66px;
  padding: 12px 10px;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}


@media screen and (max-width: 1019px) {
  .account-step {
    display: block;
  }
  .account-step-box {
    width: 100%;
    height: auto;
    padding: 0;
    border: 3px solid #011A39;
  }

  .tag-step-box {
    border: 3px solid #fff;
  }

  .account-step-box-head {
    width: 100%;
    height: 44px;
    padding: 2px;
  }
  .account-step-box-body {
    display: flex;
    gap: 12px;
    padding: 20px 10px;
  }
  .account-step-box-body img {
    width: 60px;
    height: 60px;
    margin: 0;
  }
  .account-step-box-body p{
    text-align: left;
  }
  .account-step-box-body .step-subhead {
    margin-bottom: 4px !important;
    font-size: 16px;
  }

  .step-arrow {
    text-align: center;
    margin: 4px auto;
  }

  .account-step-box-head p {
    font-size: 18px;
  }
  .cv-btn-content {
    margin-top: 40px;
    width: 100%;
  }

  .cv-btn-column {
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
  }
  .cv-red-btn,
  .cv-blue-btn {
    width: 335px;
    height: 60px;
  }
}

/* ダイヤモンドステージ */

.diamond-logo {
  margin-top: 30px;
  margin: 0 auto;
  text-align: center;
}

.diamond-box{
  display: inline-flex;
  align-items: center;
  gap: 40px;
  margin: 40px auto;
}

.diamond-box-left,
.diamond-box-right {
  display: flex;
  width: 440px;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}

.diamond-box-block {
  width: 440px;
  align-items: center;
  background-color: #fff;
  border-radius: 6px;
  padding: 20px 0;
  text-align: center;
}

.diamond-box-block p{
  text-align: center;
  margin-bottom: 10px !important;
}

.diamond-box-block-head {
  color: #222;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 134%;
}

.diamond-box-block-purple {
  color: #7B0097;
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 134%;
  margin-top: 10px;
  margin-bottom: 10px;
}

.diamond-box-block-tl {
  height: 248px;
}

.diamond-box-block-bl {
  height: 196px;
}

.diamond-box-block-tr {
  height: 116px;
}

.diamond-box-block-br {
  height: 328px;
}

.diamond-box-block-br .diamond-box-block-purple {
  margin-top: 0;
}

@media screen and (max-width: 1019px) {
  .diamond-h2 {
    font-size: 24px;
  }
  .diamond-h2 .h2-sub {
    font-size: 20px;
  }

  .diamond-box {
    display: block;
    gap: 10px;
  }

  .diamond-box-left,
  .diamond-box-right {
    width: 100%;
    gap: 10px;
  }

  .diamond-box-left {
    margin-bottom: 10px;
  }

  .diamond-box-block {
    width: 100%;
  }
  .diamond-box-block-tl,
  .diamond-box-block-bl,
  .diamond-box-block-tr,
  .diamond-box-block-br {
    height: auto;
  }
}

/* NISA*/
.nisa-point {
  display: flex;
  align-items: center;
  gap: 40px;
  align-self: stretch;
  margin: 58px 0 20px;
}

.nisa-point-block {
  border-radius: 6px;
  background: #F1F9FF;
  display: flex;
  height: 294px;
  width: 280px;
  padding: 40px 10px 20px;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
  position: relative;
}
.nisa-point-block-head {
  color: #0375C7;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 134%;
}

.nisa-point-block-head-big {
  font-size: 42px;
  line-height: 1;
}

.nisa-point-block-head-small {
  font-size: 16px;
}

.nisa-point-block-icon {
  position: absolute;
  top: -27.5px;
  width: 55px;
height: 55px;
}

@media screen and (max-width: 1019px) {
  .nisa-point {
    display: grid;
    gap: 40px;
  }

  .nisa-point-block {
    width: 100%;
    height: auto;
  }
}

/* こどもNISA */

.child-nisa {
  border-radius: 6px;
  display: flex;
  width: 100%;
  padding: 40px 20px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 30px auto 20px;
}

.child-nisa-maincontent {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
  margin: 0 auto;
  width: 532px;
}

.child-nisa-maincontent-left {
  width: 170px;
  margin: 0 auto;
  text-align: center;
}

.child-nisa-maincontent-right {
  width: 320px;
}

.child-nisa-table {
  border-collapse: separate;
  border-spacing: 0 6px;
}

.child-nisa-table tr {
  margin-bottom: 6px;
  height: 40px;
}

.child-nisa-table td {
  background: #FFF;
  height: 40px;
  font-size: 16px;
  line-height: 134%;
  border: none;
  position: relative;
  padding: 10px;
}

.child-nisa-table-left {
  width: 120px;
}

.child-nisa-table-right {
  width: 200px;
}


.child-nisa-table td:first-child::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 30px;
  background-color: #D9D9D9;
}

@media screen and (max-width: 1019px) {
  .child-nisa {
    padding: 20px;
  }
  .child-nisa-maincontent {
    display: grid;
    gap: 15px;
  }
  .child-nisa-maincontent,
  .child-nisa-maincontent-left,
  .child-nisa-maincontent-right {
    width: 100%;
  }
}

/* 連携先おトク */
.sec-parter {
  margin: 30px auto 10px;
}

@media screen and (min-width: 1020px) {
  .head-cell {
    width: 250px;
  }
}

.sec-table tr {
  text-align: center;
  height: 58px;
  line-height: 134%;
}
.sec-table thead th {
  border: 1px solid #B0BDCC;
  background: #0375C7;
  line-height: 134%;
  color: #fff;
}

.sec-table tbody th {
  border-right: 1px solid #B0BDCC;
  border-bottom: 1px solid #B0BDCC;
  border-left: 1px solid #B0BDCC;
  background: #F8FCFF;
  line-height: 134%;
  font-weight: 400;
}

.sec-table tbody td {
  border-right: 1px solid #B0BDCC;
  border-left: 1px solid #B0BDCC;
  border-bottom: 1px solid #B0BDCC;
  background: #FFF;
  line-height: 134%;
}

.sec-table .bluecell {
  border-right: 1px solid #B0BDCC;
  border-bottom: 1px solid #B0BDCC;
  padding: 10px;
  color: #3A79AE;
}

.sec-table tr td:nth-child(2),
.sec-table tr th:nth-child(2) {
  border-left: 3px solid #e43636;
  border-right: 3px solid #e43636;
}
.sec-table tr:first-child th:nth-child(2) {
  border-top: 3px solid #e43636;
}
.sec-table tr:last-child td:nth-child(2) {
  border-bottom: 3px solid #e43636;
}

@media screen and (max-width: 1019px) {
  .sec-table table,
  .sec-table thead,
  .sec-table tbody {
    display: block;
    width: 100%;
  }

   .sec-table th,
   .sec-table td {
    border: none;
   }

   .sec-table tr {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
   }

  .sec-table tbody th {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  .sec-table thead th,
  .sec-table tbody td {
    display: block;
    width: 50%;
    box-sizing: border-box;
    padding: 12px 10px;
  }

  .sec-table tr td:nth-child(2),
  .sec-table tr th:nth-child(2) {
    border-right: 1px solid #B0BDCC;
    border-left: 1px solid #B0BDCC;
  }
  .sec-table tr:nth-child(-n + 3) td:nth-child(2) {
    border: 2px solid #e43636;
  }
  .sec-table tr:first-child th:nth-child(2) {
    border-top: 1px solid #B0BDCC;
  }
  .sec-table tr:last-child td:nth-child(2) {
    border-bottom: 1px solid #B0BDCC;
  }
}


/* ユーザー満足度 */

.comment-area {
  display: flex;
  align-items: center;
  gap: 24px;
  align-self: stretch;
  margin-bottom: 30px;
}

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

.comment-inner img {
  margin-top: 8ßpx;
}

.comment-block {
  background-image: url(/lp/sbi_integration/imgs/img_comment.png) ;
  background-size: cover;
  background-repeat: no-repeat;
  width: 285px;
  height: 92px;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.comment-block {
  padding-bottom: 8px;
}

@media screen and (max-width: 1019px) {
  .comment-area {
    display: grid;
    justify-content: center;
  }
}

/* サービス */
.service-content {
  margin-top: 40px;
}
.welcomebnr-under {
  max-width: 670px;
  margin: 0 auto;
}
.service-block {
  height: auto;
  padding: 30px 40px 60px;
  background-color: #fff;
}
.service-icon {
  width: 163px;
  height: 36px;
  border-radius: 85px;
  background: #E74140;
  align-content: center;
}

.service-head {
  text-align: center;
  line-height: 134%;
  color: #0375C7;
  font-weight: 700;
  margin-bottom: 20px !important;
  font-size: 28px;
}

.service-subhead {
  text-align: center;
  line-height: 134%;
  color: #0375C7;
  font-weight: 700;
  font-size: 24px;
}

.service-point {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  align-self: stretch;
  margin: 20px auto;
}

.service-point-block {
  background: #F1F9FF;
  display: flex;
  width: 266px;
  height: 112px;
  padding: 20px;
  flex-direction: column;
  gap: 10px;
  padding: 20px;
}

.service-point-block-bottom {
  width: 530px;
  margin: 0 auto;
}

.service-point-block-bottom hr {
  border: 1px solid #D9D9D9;
}

.service-point-block-bottom-charge {
  background: #FFF8E3;
  padding: 20px;
  margin: 20px 0;
}

.service-point-block-bottom-charge .service-head {
  margin-bottom: 0 !important;
}

.service-point-block-bottom-inhr {
  text-align: center;
  line-height: 134%;
  color: #e43636;
  font-weight: 700;
  margin-bottom: 20px;
  font-size: 24px;
}

.more-service-content {
  padding: 60px;
  margin-top: 40px;
}

.more-service-content .subhead {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 30px !important;
}
.more-text {
  text-align: center;
}

.more-service-list {
  display: flex;
  width: 680px;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
  margin: 40px auto 16px;
}

.more-service-list-item {
  display: flex;
  align-items: flex-start;
  gap: 30px;
  align-self: stretch;
}

.more-service-list-item-left {
  width: 80px;
  height: 80px;
}

.more-service-list-item-right {
  width: 570px;
}
.more-service-list-item-right .more-head {
  font-weight: 700;
  font-size: 16px;
  padding-bottom: 8px;
}
.service-point-block-bottom hr:first-of-type {
  margin-bottom: 16px;
}
.service-point-block-bottom hr:last-of-type {
  margin-top: 16px;
}

@media screen and (max-width: 1019px) {

  .service-block {
    padding: 12px 10px 30px;
  }
  .service-icon {
    margin-bottom: 26px;
    width: 100px;
    height: 24px;
  }
  .service-head {
    font-size: 24px;
  }
  .service-subhead {
    font-size: 16px;
  }
  .service-icon p{
    font-size: 12px;
  }
  .service-point {
    display: grid;
  }
  .service-point-block {
    width: 100%;
    height: auto;
  }
  .service-point-block-bottom {
    width: 100%;
  }
  .more-service-content {
    padding: 30px 20px;
  }
  .more-text {
    text-align: left;
  }
  .more-service-list {
    width: 100%;
  }
  .more-service-list-item {
    gap: 12px;
  }
  .more-service-list-item-left {
    width: 60px;
    height: 60px;
  }
  .more-service-list-item-left img {
    width: 60px;
    height: 60px;
  }

  .more-service-list-item-right {
    width: calc(100% - 72px);
  }
}


/* フローティング */
.contents_cv {
  background: rgba(181, 229, 255, 0.5) !important;
}
.contents_cv_main {
  max-width: 920px;
  display: flex;
  gap: 40px;
  margin: 0 auto;
  flex-direction: row;
  justify-content: center;
}

.float-red-btn {
  width: 360px;
  height: 66px;
  border-radius: 33px;
  background: #E43636 !important;
  box-shadow: 0 3px 2px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
  border: none !important;
}
.float-blue-btn {
  width: 360px;
  height: 66px;
  border-radius: 33px;
  background: #0375C7 !important;
  box-shadow: 0 3px 2px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
  border: none !important;
}
@media screen and (min-width: 1020px) {

  .float-red-btn .icon-newtab,
  .float-blue-btn .icon-newtab{
    right: 30px;
  }
}

@media screen and (max-width: 1019px) {
  .contents_cv_main {
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: initial;
    margin: 0 auto;
    gap: 20px;
  }
  .contents_cv_btn-inner {
    width: 100%;
  }

  .float-red-btn,
  .float-blue-btn {
    width: 100%;
    max-width: 375px;
    border-radius: 8px;
    font-size: 14px;
    height: 80px;
    padding: 8px 24px;
  }
  .footer__pagetop__add {
    bottom: 120px !important;
  }
}


/* ディスクレーマー */
.disc-section {
  padding: 80px 0;
  margin: 0;
  width: 100%;
}

/* モーダル */
.modal .modal__dialog .modal__content {
  padding: 15px;
}
.modal .modal__dialog .modal__content .modal__body {
  max-height: calc(100vh - 100px);
}
.modal_inner {
  padding: 30px 30px 0;
  margin: 20px;
  background-color: #e8f1f9;
}

@media screen and (max-width: 1019px) {
  .modal_inner {
    padding: 15px;
    margin: 0 auto;
  }
}

.mordal_title_strong {
  font-size: 24px;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  color: #2071bd;
  margin-bottom: 20px;
}
@media screen and (max-width: 1019px) {
  .mordal_title_strong {
    font-size: 20px;
  }
}
.mordal_title_sub {
  font-size: 16px;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 20px;
}
.modal_flex {
  display: flex;
  justify-content: center;
  gap: 50px;
}
.modal_flex_inner_text {
  display: flex;
  flex-direction: column;
}
.modal_flex .modal_image img {
  width: auto;
}
.modal_flex_inner_left {
  flex: 0.7;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.modal_flex_inner_left .modal_image {
  width: 100%;
}
.modal_flex_inner_right {
  flex: 1;
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 1019px) {
  .modal_flex_inner_right {
    padding-bottom: 0;
  }
}
.modal_flex_inner_right .modal_image {
  width: 35%;
}
.modal_flex_inner_right .modal_image {
  margin: 20px auto;
}
.modal .button {
  background-color: none;
}
ul.modal_list_asterisk {
  list-style: none;
  font-size: 14px;
}
ul.modal_list_asterisk li {
  position: relative;
  padding-left: 16px;
}
ul.modal_list_asterisk li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: normal;
  font-size: 14px;
  line-height: 1.4;
}
.floating_flex {
  display: flex;
}
.floating_flex_left {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.floating_flex_left .floating_flex_title {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
}
.floating_flex_right {
  flex: 1;
  margin-bottom: 10px;
}
.floating_flex a img {
  width: auto;
}
.floating_flex .btn-newtab.btn--accent {
  margin-bottom: 10px;
}
.floating_list {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
.plr-15 {
  padding-left: 15px;
  padding-right: 15px;
}


