@charset "UTF-8";
@font-face {
  font-display: swap;
  font-weight: normal;
}
@font-face {
  font-display: swap;
  font-weight: bold;
}
/* css-wipe */
* {
  box-sizing: border-box;
}
/* webkit specific styles */
input[type=color]::-webkit-color-swatch {
  border: none;
}
input[type=color]::-webkit-color-swatch-wrapper {
  padding: 0;
}
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  background: transparent;
  border: 0;
  font-size: 100%;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}
body {
  line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}
a {
  background: transparent;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
  border: 0;
  border-top: 1px solid #cccccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
input:focus {
  outline: none;
}
ul, ol {
  list-style-type: none;
}
input, select {
  -webkit-appearance: none;
  appearance: none;
}
body {
  color: #231815;
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  font-size: 16px;
  line-height: 1.25;
}
a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.7;
}
img {
  display: block;
  height: auto;
  width: 100%;
}
.w_container, .w_container2 {
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 767px) {
  .w_container, .w_container2 {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.w_container2 {
  max-width: 964px;
}
main {
  overflow-x: hidden;
  line-height: 1.45;
}
.header {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .header {
    padding-bottom: 8px;
    padding-top: 8px;
  }
}
.header_inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .header_logo {
    width: 146px;
  }
}
.header_nav ul {
  align-items: center;
  color: #fff;
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .header_nav ul {
    gap: 4px;
  }
}
.header_nav ul > li {
  border-radius: 5px;
  font-size: 14px;
  font-weight: bold;
  min-width: 137px;
  padding: 12px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .header_nav ul > li {
    font-size: 13px;
    min-width: 84px;
  }
}
.header_nav ul > li:nth-of-type(1) {
  background-color: #1B9F39;
}
.header_nav ul > li:nth-of-type(2) {
  background-color: #E84709;
}
.fv {
  aspect-ratio: 1366/685;
  position: relative;
  z-index: 1;
  margin-top: -30px;
}
.fv > *:not(.fv_img) {
  position: absolute;
  z-index: 2;
}
.fv > *:not(.fv_img) > * {
  position: absolute;
}
.fv_img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.fv_catch {
  color: #ff1a00;
  z-index: 5 !important;
}
.fv_catch > * {
  font-weight: bold;
  white-space: nowrap;
}
.fv_catch .fv_catch1 {
  font-size: 2.4vw;
  padding: 0 15px;
  left: 11.5vw;
  background-color: #fff;
  top: 16vw;
color:#1746a2;
  text-decoration:underline;
  text-decoration-thickness: 1px;
}
.fv_catch .fv_course {
  font-size: 2.5vw;
  padding: 0 10px;
  left: 10.57vw;
  top: 8.81vw;
  color: #333;
}
@media screen and (max-width: 767px) {
  .fv_catch .fv_catch1 {
    font-size: 5.2vw;
    left: 1.5vw;
    top: 39.67vw;
color:#1746a2;
  text-decoration:underline;
  text-decoration-thickness: 1px;
  }
  .fv_catch .fv_course {
    font-size: 7vw;
    padding: 0 10px;
    left: 1.1vw;
    top: 9.7vw;
    color: #333;
  }
}
.fv_catch .fv_catch2 {
  background-color: #fff;
  font-size: 3.82vw;
  left: 11.57vw;
  padding: 0 10px;
  top: 20.58vw;
}
@media screen and (max-width: 767px) {
  .fv_catch .fv_catch2 {
    background-color: #fff;
    font-size: 7.21vw;
    left: 2.67vw;
    padding: 0 10px;
    top: 52.58vw;
  }
}
.fv_catch .fv_catch3 {
  background-color: #fff;
  font-size: 3.82vw;
  left: 11.57vw;
  padding: 0 10px;
  top: 27.2vw;
}
@media screen and (max-width: 767px) {
  .fv_catch .fv_catch3 {
    position: absolute;
    background-color: #fff;
    font-size: 7.21vw;
    left: 2.67vw;
    padding: 0 10px;
    top: 64.2vw;
  }
  .fv_catch .fv_catch4 {
    position: absolute;
    background-color: #fff;
    font-size: 7.21vw;
    left: 2.67vw;
    padding: 0 10px;
    top: 77.2vw;
  }
}
.fv_subCatch {
  color: #1746a2;
  font-size: 2.98vw;
  font-weight: bold;
  left: 11.57vw;
  padding: 0 10px;
  background-color: #fff;
  top: 33.89vw;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .fv_subCatch {
    font-size: 6.1vw;
    left: 2vw;
    top: 82.2vw;
  }
}
}
.fv_subCatch > * {
  font-weight: bold;
  white-space: nowrap;
}
.fv_subCatch2 {
  color: #fb0707;
  z-index: 5 !important;
}
.fv_subCatch2 > * {
  font-weight: bold;
  white-space: nowrap;
}
.fv_subCatch2 .fv_subCatch2_1 {
  font-size: 1.85vw;
  left: 12.57vw;
  top: 40.5vw;
  color: #333;
}
@media screen and (max-width: 767px) {
  .fv_subCatch2 .fv_subCatch2_1 {
    font-size: 4.5vw;
    left: 4.2vw;
    top: 100.67vw;
  }
  .fv_subCatch2 .fv_subCatch2_1_02 {
    font-size: 4.5vw;
    left: 4.2vw;
    top: 114.67vw;
  }
  .fv_subCatch_bg {
    opacity: .7;
    background: #fff;
    width: 100%;
    display: block;
    height: 35vw;
    left: 0;
    bottom: 0;
  }
}
.fv_subCatch2 .fv_subCatch2_2 {
  color: #fb0707;
  font-size: 4.82vw;
  left: 40.17vw;
  top: 37.5vw;
  font-family: 'Oswald';
}
@media screen and (max-width: 767px) {
  .fv_subCatch2 .fv_subCatch2_2 {
    font-size: 10.96vw;
    left: 14.17vw;
    top: 108.25vw;
    letter-spacing: 0;
  }
}
.fv_subCatch2 .fv_subCatch2_3 {
  font-size: 1.96vw;
  left: 54.17vw;
  top: 40.5vw;
}
@media screen and (max-width: 767px) {
  .fv_subCatch2 .fv_subCatch2_3 {
    font-size: 5.33vw;
    left: 46.8vw;
    top: 114.67vw;
  }
}
.fv_group1 {
  height: 10.03vw;
  left: 10.47vw;
  top: 1.61vw;
  width: 28.18vw;
}
@media screen and (max-width: 767px) {
  .fv_group1 {
    font-size: 5.33vw;
    height: 22.4vw;
    left: 2.67vw;
    top: 7.47vw;
    width: 61.33vw;
  }
}
.fv_group1 img {
  height: 100%;
  width: 100%;
}
.fv_underline {
  height: 1.3vw;
  left: 9.74vw;
  top: 11.21vw;
  width: 42.4vw;
}
@media screen and (max-width: 767px) {
  .fv_underline {
    left: 2vw;
    height: 11px;
    top: 31.53vw;
    width: 32.53vw;
  }
  .fv_underline2 {
    left: 2.5vw;
    height: 5px;
    top: 22.53vw;
    width: 28.53vw;
  }
}
.fv_underline img {
  height: 100%;
  width: 100%;
}
.fv_rect03 {
  height: 14.88vw;
  right: 26.47vw;
  top: 29.38vw;
  width: 12.77vw;
}
@media screen and (max-width: 767px) {
  .fv_rect03 {
    height: 31.88vw;
    right: 2.47vw;
    top: 101.38vw;
    width: 26.77vw;
  }
}
.fv_rect03 img {
  height: 100%;
  width: 100%;
}
.fv_rect04 {
  bottom: 1.46vw;
  height: 7.47vw;
  right: 10.4vw;
  width: 25.84vw;
}
@media screen and (max-width: 767px) {
  .fv_rect04 {
    height: 19.47vw;
    right: -2.67vw;
    top: 116.8vw;
    width: 63.2vw;
  }
}
.fv_rect04 img {
  height: 100%;
  width: 100%;
}
.coupon {
  padding-bottom: 65px;
  padding-top: 65px;
}
@media screen and (max-width: 767px) {
  .coupon {
    padding-bottom: 35px;
    padding-top: 35px;
  }
}
.coupon_img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 718px;
}
@media screen and (max-width: 767px) {
  .coupon_img {
    width: 80vw;
  }
}
.coupon_img img {
  height: auto;
  width: 100%;
}
.onayami {
  background-color: #1746A2;
  padding-bottom: 45px;
  padding-top: 35px;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .onayami {
    padding-bottom: 20px;
    padding-top: 20px;
    margin-bottom: 20px;
    margin-top: 30px;
  }
}
.onayami h2 {
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.6666666667;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .onayami h2 {
    font-size: clamp(20px, 4.85vw, 30px);
    line-height: 1.5833333333;
  }
}
.onayami_cont {
  -ms-grid-columns: 19.537037037% 4.6296296296% 1fr 4.6296296296% 22.1296296296%;
  align-items: center;
  background-color: #fff;
  border-radius: 7px;
  display: -ms-grid;
  display: grid;
  gap: 4.6296296296%;
  grid-template-columns: 19.537037037% 1fr 22.1296296296%;
  margin-top: 30px;
  padding: 35px 4.6296296296%;
}
@media screen and (max-width: 767px) {
  .onayami_cont {
    -ms-grid-columns: 1fr 13.33vw 1fr;
    -webkit-column-gap: 13.33vw;
    column-gap: 13.33vw;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 20px;
    padding: 20px 2.13vw;
    row-gap: 26px;
  }
}
.onayami_list {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-column-align: center;
  grid-column: 2/3;
  grid-row: 1;
  justify-self: center;
}
@media screen and (max-width: 767px) {
  .onayami_list {
    grid-column: 1/-1;
  }
}
.onayami_list li {
  background: url(../img/check.webp) left 0px top 7px no-repeat;
  background-size: 1.5em auto;
  line-height: 2.6em;
  padding-left: 1.8em;
}
@media screen and (max-width: 767px) {
  .onayami_list li {
    background: url(../img/check.webp) left 0px top 1px no-repeat;
    background-size: 1em auto;
    line-height: 1.25;
    padding-left: 1.4em;
  }
  .onayami_list li + li {
    margin-top: 0.5em;
  }
}
.onayami_img1 {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  grid-column: 1/2;
  grid-row: 1;
}
@media screen and (max-width: 767px) {
  .onayami_img1 {
    -ms-grid-column: 1;
    -ms-grid-row: 2;
    grid-column: 1;
    grid-row: 2;
    justify-self: flex-end;
    width: 29.33vw;
  }
}
.onayami_img2 {
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  grid-column: 3/4;
  grid-row: 1;
}
@media screen and (max-width: 767px) {
  .onayami_img2 {
    -ms-grid-column: 2;
    -ms-grid-row: 2;
    grid-column: 2;
    grid-row: 2;
    justify-self: flex-start;
    width: 32.8vw;
  }
}
.tsuzuki {
  padding-bottom: min(20px, 1.46vw);
  padding-top: min(35px, 2.56vw);
  position: relative;
}
@media screen and (max-width: 767px) {
  .tsuzuki {
    padding: 0;
  }
}
.tsuzuki_txt {
  -webkit-transform: translateX(-50%);
  font-size: clamp(20px, 4.56vw, 30px);
  font-weight: bold;
  left: 50%;
  position: absolute;
  text-align: center;
  top: min(110px, 8.78vw);
  transform: translateX(-50%);
  width: -webkit-max-content;
  width: max-content;
}
@media screen and (max-width: 767px) {
  .tsuzuki_txt {
    font-size: clamp(16px, 4vw, 26px);
    line-height: 1.5;
    top: 4.67vw;
  }
}
.sec01 {
  background-color: #FFF7E9;
  padding-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .sec01 {
    padding-bottom: 25px;
  }
}
.sec_ttl {
  align-items: center;
  background: url(../img/sec01_ttl.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  font-size: clamp(24px, 10.33vw, 40px);
  font-weight: bold;
  height: 117px;
  justify-content: center;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .sec_ttl {
    font-size: clamp(20px, 5.33vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .sec_ttl {
    background: url(../img/sec01_ttl_sp.webp);
    background-size: 100% 100%;
    font-size: clamp(20px, 5.33vw, 30px);
    height: 90px;
    justify-content: flex-start;
    line-height: 1.17;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 12px 0;
    padding-left: 8.27vw;
    text-align: left;
    width: 100vw !important;
  }
}
.sec01_desc {
  font-size: 20px;
  padding: 20px 40px 30px;
  margin-top: 1.3em;
  line-height: 1.65;
}
.sec02_desc {
  font-size: 24px;
  text-align: center;
  margin-top: 1.3em;
  line-height: 1.65;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .sec01_desc {
    font-size: 16px;
    line-height: 1.45;
    padding: 0 3% 20px;
  }
}
.sec01_cardCont {
  -ms-grid-columns: 1fr 2.49vw 1fr;
  display: -ms-grid;
  display: grid;
  gap: 2.49vw;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  .sec01_cardCont {
    -ms-grid-columns: 1fr;
    gap: 18px;
    grid-template-columns: 1fr;
  }
}
.sec01_card {
  background-color: #fff;
  border-radius: 7px;
  box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.16);
  padding: 30px 8% 30px;
}
@media screen and (max-width: 767px) {
  .sec01_card {
    padding: 15px 5% 20px;
  }
}
.sec01_card_ttl {
  align-items: center;
  border-bottom: 5px solid #1746A2;
  display: flex;
  gap: 12px;
  padding-bottom: 2px;
}
.sec01_card_ttl > span:nth-of-type(1) {
  aspect-ratio: 1;
  background-color: #1746A2;
  color: #fff;
  font-family: oswald;
  display: -ms-grid;
  display: grid;
  flex: 0 0 45px;
  font-size: 26px;
  font-weight: normal;
  place-items: center;
}
@media screen and (max-width: 767px) {
  .sec01_card_ttl > span:nth-of-type(1) {
    flex: 0 0 40px;
    font-size: 20px;
  }
}
.sec01_card_ttl > span:nth-of-type(2) {
  font-size: 24px;
  font-weight: bold;
}
.sec01_ttl {
  font-size: clamp(20px, 5.12vw, 26px);
}
@media screen and (max-width: 767px) {
  .sec01_card_ttl > span:nth-of-type(2) {
    font-size: 20px;
  }
}
.sec01_card_txt {
  font-size: 18px;
  margin-top: 20px;
  line-height: 1.75;
}
.sec01_card_strong {
  font-size: 22px;
  font-weight: bold;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .sec01_card_strong {
    font-size: 18px;
  }
  .sec01_card_txt {
    font-size: 15px;
    line-height: 1.45;
  }
}
span.inlineBlock {
  display: block;
}
span.marker {
  background: linear-gradient(transparent 80%, #ff6 80%);
  color: #e84709;
  font-weight: bold;
}
.sec01_card--01 .sec01_card01_img {
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .sec01_card--01 .sec01_card01_img {}
}
.sec01_card--02 .sec01_card_strong {
  line-height: 1.65;
}
.sec01_card--02 .sec01_card01_img {
  margin: 40px auto 0;
  width: 70%;
}
@media screen and (max-width: 767px) {
  .sec01_card--02 .sec01_card01_img {
    width: 80%;
    margin: 10px auto 0;
  }
}
.sec01_card--03 {
  position: relative;
}
.sec01_card--03 .sec01_card_strong {
  margin-left: auto;
  margin-right: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .sec01_card--03 .sec01_card_strong {
    bottom: 5.33vw;
    left: 5.87vw;
    position: absolute;
  }
}
.sec01_card--03 .sec01_card01_img {
  margin: 80px auto 0;
  width: 55%;
}
@media screen and (max-width: 767px) {
  .sec01_card--03 .sec01_card01_img {
    width: 40%;
    margin: 15px auto 0;
  }
}
.sec01_card--04 .sec01_card01_img {
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
}
.sec01_card--05 .sec01_card01_img {
  width: 64%;
  margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
  .sec01_card--05 .sec01_card01_img {
    margin-top: 15px;
    width: 45%;
  }
}
.sec01_card--06 .sec01_card01_img {
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
}
.tsuzuki--2 {
  background-color: #FFF7E9;
  padding-bottom: 45px;
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .tsuzuki--2 {
    padding-bottom: 30px;
  }
}
.tsuzuki--2 .tsuzuki_txt {
  top: min(53px, 4.39vw);
}
@media screen and (max-width: 767px) {
  .tsuzuki--2 .tsuzuki_txt {
    line-height: 1.3;
    top: clamp(1.56rem, -2.024rem + 15.30vw, 5.31rem);
  }
}
.tsuzuki--2 .mt_large {
  display: block;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .tsuzuki--2 .mt_large {
    margin-top: 1.33vw;
  }
}
.tsuzuki_txt2 {
  font-size: 30px;
  font-weight: bold;
  line-height: 2.14;
  margin-left: auto;
  margin-right: auto;
  margin-top: 55px;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .tsuzuki_txt2 {
    font-size: 17px;
    line-height: 1.91;
    margin-top: 40px;
  }
}
.tsuzuki_txt2 .df {
  align-items: center;
  display: flex;
  justify-content: center;
}
.tsuzuki_txt2 .df img {
  flex: 0 0 209px;
  width: 209px;
}
@media screen and (max-width: 767px) {
  .tsuzuki_txt2 .df img {
    flex: 0 0 125px;
    width: 125px;
  }
}
span.red {
  color: #e84709;
  font-weight: bold;
}
.tsuzuki2_img {
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  width: 415px;
}
@media screen and (max-width: 767px) {
  .tsuzuki2_img {
    width: 61.33vw;
  }
}
.trialBtn {
  padding-bottom: 65px;
  padding-top: 65px;
}
@media screen and (max-width: 767px) {
  .trialBtn {
    padding-bottom: 15px;
    padding-top: 15px;
  }
}
.btn_square {
  align-items: center;
  background-color: #1B9F39;
  border-radius: 18px;
  box-shadow: 0 5px 0 0 #0d4b1b;
  color: #fff;
  display: flex;
  font-size: 24px;
  font-weight: bold;
  gap: 15px;
  justify-content: center;
  line-height: 1.67;
  margin-left: auto;
  margin-right: auto;
  padding: 22px 0;
  width: 320px;
}
@media(max-width:767px) {
  .spdis {
    display: none !important;
  }
}
@media(min-width:767px) {
  .pcdis {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .btn_square {
    font-size: 20px;
    gap: 8px;
    line-height: 1.5;
    padding: 12px 0;
    width: 263px;
  }
}
.btn_square > p:nth-of-type(1) {
  text-align: center;
}
.btn_square--red {
  background-color: #e84709;
  box-shadow: 0 5px 0 0 #8d2b06;
}
.sec02 {
  background-color: #FFF7E9;
  padding-bottom: 47px;
}
@media screen and (max-width: 767px) {
  .sec02 {
    overflow-x: hidden;
    padding-bottom: 25px;
  }
}
.sec02_setsumei {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.8666666667;
  text-align: center;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .sec02_setsumei {
    font-size: 4.54vw;
    line-height: 1.45;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 10px 0;
    position: relative;
    width: 100vw !important;
  }
  .sec02_setsumei::after {
    -webkit-transform: translatex(50%);
    border-left: calc(50vw - 10px) solid transparent;
    border-right: calc(50vw - 10px) solid transparent;
    box-sizing: border-box;
    content: "";
    position: absolute;
    top: 100%;
    transform: translatex(50%);
  }
}
.sec02_setsumei .inlineBlock {
  margin-left: auto;
  margin-right: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.sec02_setsumei .marker {
  background: linear-gradient(transparent 90%, #fb4b07 90%);
  color: #231815;
}
@media screen and (max-width: 767px) {
  .sec02_setsumei .marker {
    color: #231815;
  }
}
.sec02 .reasonCard_img {}
.sec3_ttl {
  max-width: 900px;
  padding-left: 0;
  margin-left: auto;
  margin-right: 40px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec3_ttl {
    padding-left: 0;
  }
}
.sec3_ttl_txt {
  position: absolute;
  top: 30%;
  font-size: clamp(22px, 8.33vw, 28px);
  left: 24%;
  color: #f05a24;
  white-space: nowrap;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 1000px) {
  .sec3_ttl_txt {
    font-size: 2.85vw;
    top: 6.58vw;
    left: 20.5vw;
  }
}
@media screen and (max-width: 768px) {
  .sec3_ttl_txt {
    font-size: clamp(16px, 4.15vw, 27px);
    top: 4.58vw;
    left: 20.5vw;
  }
}
.sec3_ttl_txt .small {
  font-size: 0.7222222222em;
}
.sec3_ttl_txt .large {
  font-size: 1.3888888889em;
}
.reasonCard {
  -ms-grid-columns: 495px 1fr;
  -ms-grid-rows: 115px auto;
  background-color: #fff;
  border-radius: 7px;
  box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.16);
  display: -ms-grid;
  display: grid;
  grid-template-columns: 495px 1fr;
  grid-template-rows: 115px auto;
  margin-top: 70px;
  position: relative;
}
.reasonCard > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.reasonCard > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
.reasonCard > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.reasonCard > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}
@media screen and (max-width: 767px) {
  .reasonCard {
    -ms-grid-columns: 1fr;
    -ms-grid-rows: auto;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    margin-top: 40px;
  }
  .reasonCard > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
.reasonCard + .reasonCard {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .reasonCard + .reasonCard {
    margin-top: 40px;
  }
}
.reasonCard_num {
  -webkit-transform: rotate(-5deg);
  background-color: #fb9208;
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  left: -30px;
  padding: 3px;
  position: absolute;
  text-align: center;
  top: -30px;
  transform: rotate(-5deg);
  width: 135px;
}
@media screen and (max-width: 767px) {
  .reasonCard_num {
    font-size: 20px;
    left: -10px;
    padding: 2px;
    top: -20px;
    width: 95px;
  }
}
.reasonCard_ttl {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  background-color: #fad4a2;
  display: -ms-grid;
  display: grid;
  font-size: 30px;
  font-weight: bold;
  grid-column: 1/2;
  grid-row: 1/2;
  place-items: center;
}
@media screen and (max-width: 767px) {
  .reasonCard_ttl {
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    border-radius: 7px 7px 0 0;
    font-size: 20px;
    grid-column: 1;
    grid-row: 1;
    height: 70px;
  }
}
.reasonCard_accordion {
  padding: 27px 27px 57px;
  height: fit-content;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  -ms-grid-row-align: center;
  /* align-self: center; */
  grid-column: 1/2;
  grid-row: 2/3;
  position: relative;
}
.reasonCard_btn {
  margin: auto;
  width: fit-content;
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  text-align: center;
  transition: all .2s;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .reasonCard_btn {
    bottom: 33px;
  }
}
.reasonCard_btn::after {
  content: "続きを読む";
}
/* ボタンhover時のスタイル */
.reasonCard_btn:hover {
  color: #f05a24;
}
.reasonCard_btn.is-show {
  bottom: 1em;
}
.reasonCard_btn.is-show::after {
  content: "閉じる";
}
.reasonCard_txt {
  overflow: hidden;
  position: relative;
}
.reasonCard_txt.is-hide {
  height: 100px;
}
@media screen and (max-width: 767px) {
  .reasonCard_txt.is-hide {
    height: 145px;
  }
}
.reasonCard_txt::before {
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  background:         linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  bottom: 0;
  content: "";
  height: 60px; /* グラデーションで隠す高さ */
  position: absolute;
  width: 100%;
}
.reasonCard_btn.is-show + .reasonCard_txt::before {
  display: none;
}
.reasonCard_txt .bold {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .reasonCard_txt {
    -ms-grid-column: 1;
    -ms-grid-row: 2;
    grid-column: 1;
    grid-row: 2;
    line-height: 1.75;
    font-size: 16px;
  }
}
.reasonCard_txt .marker {
  color: #231815;
  font-weight: bold;
}
.reasonCard_img {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-row-align: center;
  align-self: center;
  grid-column: 2/3;
  grid-row: 1/3;
}
@media screen and (max-width: 767px) {
  .reasonCard_img {
    -ms-grid-column: 1;
    -ms-grid-row: 3;
    grid-column: 1;
    grid-row: 3;
  }
}
.reasonCard--01 .reasonCard_img {
  padding: 37px 14.4288577154% 20px 15.4308617234%;
}
.reasonCard--02 .reasonCard_img img {
  padding-bottom: 20px;
}
.reasonCard--02 .reasonCard_img {
  padding: 37px 4.6092184369% 26px 6.2124248497%;
  display: flex;
}
.reasonCard--02 .reasonCard_img p {
  text-align: center;
  font-size: 14px;
}
.reasonCard--03 .reasonCard_img {
  padding: 15px 9.2184368737% 26px 8.8176352705%;
}
.reasonCard--04 .reasonCard_img {
  padding: 15px 9.2184368737% 26px 8.8176352705%;
}
.reasonCard--05 .reasonCard_img {
  padding: 37px 14.42% 20px 15.43%;
}
@media screen and (max-width: 767px) {
  .sec03 {
    padding-bottom: 25px;
  }
  .reasonCard--01 .reasonCard_img, .reasonCard--02 .reasonCard_img {
    padding: 5px 5% 20px;
  }
  .reasonCard--05 .reasonCard_img {
    padding: 5px 24% 20px;
  }
}
.sec03_cont {
  align-items: center;
  display: flex;
  gap: 11.3636363636%;
  justify-content: space-between;
  margin-top: 28px;
}
@media screen and (max-width: 767px) {
  .sec03_cont {
    flex-direction: column;
    gap: 30px;
    margin-top: 12px;
  }
}
.sec03_txt {
  flex: 0 0 46.4285714286%;
  line-height: 1.65;
}
.recommend_message2 {
  font-size: 20px;
  line-height: 1.3;
  margin-top: 47px;
}
@media screen and (max-width: 767px) {
  .recommend_message2 {
    font-size: 15px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 18px;
    max-width: 600px;
  }
}
.recommend_tableWrapper {
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .recommend_tableWrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: 600px;
    margin-top: 20px;
  }
}
.recommend_table tr {
  border-bottom: 1px solid #707070;
}
.recommend_table tr:first-of-type {
  border-top: 1px solid #707070;
  height: 60px;
}
@media screen and (max-width: 767px) {
  .recommend_table tr:first-of-type {
    height: 30px;
  }
}
.recommend_table tr:first-of-type th:nth-of-type(1) {
  width: 25.5434782609%;
}
@media screen and (max-width: 767px) {
  .recommend_table tr:first-of-type th:nth-of-type(1) {
    width: 20%;
  }
}
.recommend_table tr:first-of-type th:nth-of-type(2) {
  vertical-align: middle;
  width: 37.6086956522%;
}
@media screen and (max-width: 767px) {
  .recommend_table tr:first-of-type th:nth-of-type(2) {
    width: 41.6438356164%;
  }
}
.recommend_table tr:first-of-type th:nth-of-type(2) img {
  margin-left: auto;
  margin-right: auto;
  width: 169px;
}
@media screen and (max-width: 767px) {
  .recommend_table tr:first-of-type th:nth-of-type(2) img {
    width: 85px;
  }
}
.recommend_table tr:first-of-type th:nth-of-type(3) {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .recommend_table tr:first-of-type th:nth-of-type(3) {
    font-size: 13px;
  }
}
.recommend_table th, .recommend_table td {
  border-right: 1px solid #707070;
}
.recommend_table th:first-of-type, .recommend_table td:first-of-type {
  border-left: 1px solid #707070;
}
.recommend_table .bgOrange {
  background-color: #f8b641;
}
.recommend_table .bgBlue {
  background-color: #a9d8ea;
}
.recommend_table .bgGray {
  background-color: #efefef;
  font-size: 18px;
  height: 104px;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .recommend_table .bgGray {
    font-size: 13px;
    height: 73px;
  }
}
.recommend_table .bgYellow {
  background-color: #fcf7df;
  background-image: url(../img/sec02_table_maru.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18%;
  font-size: 18px;
  line-height: 1.45;
  padding: 15px 20px;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .recommend_table .bgYellow {
    background-image: url(../img/sec02_table_maru_sp.webp);
    background-size: 24%;
    font-size: 13px;
    padding: 8px;
  }
}
.recommend_table .bgSky {
  background-color: #e4f3f8;
  background-image: url(../img/sec02_table_batu.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18%;
  font-size: 18px;
  padding: 20px;
  vertical-align: middle;
  line-height: 1.45;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .recommend_table .bgSky {
    background-image: url(../img/sec02_table_batu_sp.webp);
    background-size: 24%;
    font-size: 13px;
    padding: 8px;
  }
}
@media screen and (max-width: 767px) {
  .sec03_txt {
    flex: 0 0 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec03_img {
    width: 76vw;
  }
}
.movie {
  padding-bottom: 50px;
  padding-top: 90px;
}
@media screen and (max-width: 767px) {
  .movie {
    padding-bottom: 30px;
    padding-top: 55px;
  }
}
.message {
  padding-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .message {
    padding-bottom: 35px;
  }
}
.message_card {
  border: solid 3px #fad4a2;
  border-radius: 7px;
  box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .message_card {
    border-width: 5px;
  }
}
.message_card_ttl {
  align-items: center;
  background-color: #fad4a2;
  display: flex;
  flex-direction: column;
  font-size: 30px;
  font-weight: bold;
  height: 85px;
  justify-content: center;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .message_card_ttl {
    font-size: 20px;
    height: 58px;
  }
}
.message_card_ttl .small {
  display: block;
  font-size: 16px;
  font-weight: normal;
}
.message_card--02 .message_card_ttl {
  background-color: #fb9208;
}
.message_card_body {
  padding: 40px 5%;
}
@media screen and (max-width: 767px) {
  .message_card_body {
    padding: 13px 10px;
  }
}
.message_card--01 .message_card_body {
  align-items: center;
  gap: 30px;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .message_card--01 .message_card_body {
    flex-direction: column;
    gap: 13px;
  }
}
.message_card_teacharCont {
  display: flex;
  flex-direction: row;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .message_card_teacharCont {
    align-items: center;
    flex-direction: row;
    gap: 5px;
    display: block;
  }
}
.message_card_teachar_profile {
  align-items: center;
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .message_card_teachar_profile {
    flex-direction: revert;
    width: 80%;
    margin: 0 auto 20px;
  }
}
.message_card_teachar_img {
  flex: 0 0 120px;
  border-radius: 80px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .message_card_teachar_img {
    flex: 0 0 20.53vw;
    width: 20.53vw;
  }
}
.message_card_teachar_desc {
  font-size: 16px;
  text-align: left;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .message_card_teachar_desc {
    white-space: nowrap;
    text-align: center;
    font-size: 15px;
    line-height: 1.6;
  }
}
.message_card_teachar_desc .bold {
  display: block;
  font-weight: bold;
}
.message_card_teachar_txt {
  color: #e84709;
  font-size: 24px;
  font-weight: bold;
  margin: 20px 0 0;
  flex: 0 0 450px;
}
@media screen and (max-width: 767px) {
  .message_card_teachar_txt {
    font-size: 16px;
    margin: 5px 0 0;
    ;
  }
}
.message_card_txt {}
.message_card_txt p {
  margin: 0px 0px 15px 0px;
  line-height: 1.65;
  overflow: auto;
}
strong {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .message_card_txt {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 8;
    display: -webkit-box;
    overflow: auto;
    padding-top: 5px;
    font-size: 15px;
  }
  .message_card_txt.is_active {
    display: block;
  }
  .message_card_txt.is_active + .message_continue {
    visibility: hidden;
  }
}
.message_continue {
  background: unset;
  border: none;
  color: #231815;
  font-size: 16px;
  margin-left: 0;
  margin-right: auto;
  padding: 0;
  text-decoration: underline;
}
.sec6_userVoiceSect {
  margin-top: 20px;
  background-color: #f8ebe1;
  padding: 20px 6%;
}
.sec6_userVoiceSect .attention {
  color: #333;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .sec6_userVoiceSect {
    margin-top: 4.6666666667vw;
    padding: 2vw 0;
  }
}
.sec6_userVoiceSect_ttl {
  margin-top: 15px;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}
.sec6_userVoiceSect_ttl span {
  background: linear-gradient(transparent 60%, #FFEC9C 60%);
}
.sec6_userVoiceSect_sub {
  font-size: clamp(20px, 5.33vw, 34px);
  font-weight: bold;
  text-align: center;
  margin-top: -10px;
}
.sec6_userVoiceSect_sub span {
  background: linear-gradient(transparent 60%, #FFEC9C 60%);
}
@media screen and (max-width: 768px) {
  .sec6_userVoiceSect_ttl {
    margin-top: 2.6666666667vw;
    font-size: 5.28vw;
  }
  .sec6_userVoiceSect_sub {
    font-size: 6.55vw;
    line-height: 1.2;
    margin-top: 5px;
  }
}
.sec6_userVoiceSect_ttl .strong {
  color: #f05a24;
  font-size: 30px;
  margin-left: 10px;
  border-bottom: 4px solid #f05a24;
}
@media screen and (max-width: 768px) {
  .sec6_userVoiceSect_ttl .strong {
    font-size: 4.8vw;
    border-bottom: 3px solid #f05a24;
  }
}
.sec6_userVoiceSect_sub .large {
  font-size: 49px;
  color: #fb4b07;
  font-family: 'Oswald';
  font-weight: 500;
  background: none;
}
@media screen and (max-width: 768px) {
  .sec6_userVoiceSect_sub .large {
    font-size: 9.3333333333vw;
  }
}
.voice_cont {
  display: flex;
  column-gap: 3.5%;
  row-gap: 80px;
  margin-top: 60px;
  flex-wrap: wrap;
  max-width: 1120px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .voice_cont {
    padding-left: 10px;
    padding-right: 10px;
    display: flex;
    column-gap: 14px;
    row-gap: 50px;
    flex-wrap: wrap;
  }
}
.voice_cont_item {
  background-color: #fff;
  position: relative;
  width: 31%;
  padding: 0px 25px 22px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.voice_cont_item_attribute {
  text-align: center;
  font-size: 14px;
  padding-bottom: 18px;
}
.voice_cont_item_period {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 20px;
}
.voice_cont_item_period span:first-child {
  background: #fb4b07;
  padding: 4px 20px 6px;
  color: #fff;
  border-radius: 20px;
  margin-right: 10px;
}
.voice_cont_item_period span:nth-child(2) {
  font-size: 28px;
  font-weight: bold;
}
.voice_cont_item_period span:nth-child(3) {
  font-weight: bold;
  margin-top: 6px;
}
@media screen and (max-width: 767px) {
  .voice_cont_item {
    padding: 0 10px 10px;
    width: calc(50% - 7px);
    display: block;
  }
  .voice_cont_item_period span:nth-child(3) {
    margin-top: 0;
  }
  .voice_cont_item_period span:first-child {
    padding: 3px 8px;
    font-size: 12px;
    margin-right: 5px;
  }
  .voice_cont_item_attribute {
    padding-bottom: 5px;
    font-size: 12px;
  }
  .voice_cont_item_period {
    padding-bottom: 8px;
  }
  .voice_cont_item_period span:nth-child(2) {
    font-size: 20px;
  }
}
.voice_cont_item_img {
  width: 35%;
  margin-inline: auto;
  transform: translateY(-30%);
}
.voice_cont_item_img img {
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .voice_cont_item_img {}
}
.voice_cont_item_txt1 {
  color: #fb4b07;
  font-size: 17px;
  padding-bottom: 10px;
  font-weight: bold;
}
.voice_movie_head {
  align-items: center;
  display: flex;
  gap: 5px;
  justify-content: center;
  margin-top: 45px;
}
@media screen and (max-width: 767px) {
  .voice_movie_head {
    margin-top: 15px;
  }
  .voice_cont_item_txt1 {
    font-size: 16px;
  }
  .voice_cont_item_txt2 {
    font-size: 15.5px;
  }
}
.voice_movie_head figure {
  -webkit-transform: rotate(-10deg);
  transform: rotate(-10deg);
  width: 80px;
}
@media screen and (max-width: 767px) {
  .voice_movie_head figure {
    -webkit-transform: unset;
    transform: unset;
    width: 41px;
  }
}
.voice_movie_head p {
  border-bottom: 3px solid #fb4b07;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .voice_movie_head p {
    border-bottom: 3px solid #f98b08;
    font-size: 13px;
    padding-left: 2px;
    padding-right: 2px;
  }
}
.voice_movie_txt {
  font-size: 20px;
  color: red;
  font-weight: bold;
  margin-left: auto;
  text-align: center;
  line-height: 1.6;
  margin-right: auto;
  margin-top: 14px;
  max-width: 620px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .voice_movie_txt {
    font-size: 16px;
    margin-top: 11px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
.voice_movie {
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  max-width: 582px;
}
@media screen and (max-width: 767px) {
  .voice_movie {
    margin-top: 10px;
    width: 69.3333333333%;
  }
}
.voice_movie iframe {
  aspect-ratio: 582/327;
  height: 100%;
  width: 100%;
}
.voice_movie {
  aspect-ratio: 582/328;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  max-width: 582px;
}
@media screen and (max-width: 767px) {
  .voice_movie {
    margin-top: 14px;
    width: 67.2vw;
  }
}
.voice_movie iframe {
  height: 100%;
  width: 100%;
}
.btn_containter a {
  display: block;
  width: 420px;
  border: 1px solid #f76b1e;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  z-index: 1;
  padding: 20px 0;
}
.voice_movie_btn {
  background-color: #fb4b07;
  border-radius: 50px;
  color: #fff;
  display: block;
  font-size: 17px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 50px;
  padding: 22px 80px 20px;
  white-space: nowrap;
}
.voice_movie_btn:after {
  float: right;
  margin-right: 20px;
  content: "\3e";
  z-index: 1;
}
.trial {
  background-color: #f8f5ec;
  padding-top: 80px;
  padding-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .trial {
    padding-top: 15px;
  }
  .btn_containter a {
    width: 90%;
    padding: 3.5vw;
    font-size: 16px;
  }
}
.trial_ttl {
  color: #e84709;
  font-size: 34px;
  font-weight: bold;
  line-height: 1.65;
  text-align: center;
  padding-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .trial_ttl {
    font-size: 20px;
  }
}
.trial_txt {
  margin-left: auto;
  margin-right: auto;
  margin-top: 5px;
  font-size: 14px;
  max-width: 716px;
  text-align: center;
}
.trial_cardCont {
  -ms-grid-columns: 1fr 3.73vw 1fr;
  display: -ms-grid;
  display: grid;
  gap: 3.73vw;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .trial_cardCont {
    -ms-grid-columns: 1fr;
    gap: 18px;
    grid-template-columns: 1fr;
    margin-top: 15px;
  }
}
.trial_card {
  background-color: #fff;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  flex: 1;
  padding: 0 40px 25px;
}
@media screen and (max-width: 767px) {
  .trial_card {
    padding: 0 10px 10px;
  }
}
.trial_card_ttlCont {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .trial_card_ttlCont {
    gap: 13px;
  }
}
.trial_card_ttlImg {
  flex: 0 0 47px;
}
@media screen and (max-width: 767px) {
  .trial_card_ttlImg {
    flex: 0 0 35px;
  }
}
.trial_card_ttl {
  color: #fb9208;
  font-size: 20px;
  font-weight: bold;
  padding-top: 14px;
}
@media screen and (max-width: 767px) {
  .trial_card_ttl {
    font-size: 16px;
    padding-top: 10px;
  }
}
.trial_card--01 .trial_card_bodyCont {
  margin-top: 10px;
}
.trial_card--01 .trial_card_body_img {
  width: 70%;
  margin: 20px auto 0;
}
@media screen and (max-width: 767px) {
  .trial_card--01 .trial_card_bodyCont {
    margin-top: 15px;
  }
}
.trial_card--01 .trial_card_bodyCont .trial_card_body_txt {}
@media screen and (max-width: 767px) {
  .trial_card--01 .trial_card_bodyCont .trial_card_body_txt {
    flex: 0 0 50.1474926254%;
    font-size: 15px;
  }
}
.trial_card--01 .trial_card_bodyCont .trial_card_body_txt .small {
  display: block;
  font-size: 11px;
  margin-top: 0.3em;
}
@media screen and (max-width: 767px) {
  .trial_card--01 .trial_card_bodyCont .trial_card_body_txt .small {
    font-size: 10px;
  }
}
.trial_card--02 .trial_card_bodyCont {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .trial_card--02 .trial_card_bodyCont .trial_card_body_txt {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .trial_card--02 .trial_card_bodyCont .trial_card_body_img {
    margin-top: 10px;
  }
}
.registframe {
  height: 750px;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .registframe {
    height: 850px;
  }
}
.buy {
  overflow-x: hidden;
  padding-bottom: 40px;
  padding-top: 40px;
}
@media screen and (max-width: 767px) {
  .buy {
    padding-bottom: 32px;
    padding-top: 20px;
  }
}
/*============================
.sec08 
============================*/
.sec08 {
  padding: 6vw 0 2vw;
  line-height: 1.78;
  background: #ffe6d9;
}
.wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
.sec08 .title {
  background: #ffffff;
  text-align: center;
  color: #fb4b07;
  padding: 18px;
  font-size: 26px;
  max-width: 560px;
  font-weight: bold;
  margin: 0 auto 40px;
  position: relative;
  white-space: nowrap;
}
.sec08 .title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #ffffff;
}
.sec08 .ttl-line::before {
  content: "";
  width: 32px;
  height: 38px;
  border-bottom: 1px solid #344154;
  background: url(../img/ttl-line.svg) center bottom no-repeat;
  background-size: contain;
  position: absolute;
  right: -32px;
  bottom: -1px;
}
.sec08 .ttl-line {
  border-bottom: 1px solid #344154;
  width: fit-content;
  padding: 0 8px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-bottom: 140px;
}
.course_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 6%;
  row-gap: 120px;
}
.course-each {
  width: 47%;
}
.course-ttl:first-child::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 30px 0;
  border-color: transparent #ffe6d9 transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}

.course-each .bg-red {
  background : #ff0000;
}
.course-ttl {
  background: #fb9208;
  position: relative;
  padding: 40px 0 25px;
}
.course-ttl::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 30px 0;
  border-color: transparent #ffe6d9 transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 1000px) {
  .wrap {
    width: 93.33vw;
  }
}
@media (max-width: 1000px) {
  .course-ttl img {
    top: -11vw;
    width: 15vw;
  }
}
.course-ttl img {
  position: absolute;
  left: 0;
  right: 0;
  top: -90px;
  margin: auto;
  width: 120px;
}
.course-content {
  background: #fff;
  height: calc(100% - 105px);
  padding: 25px 20px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.course_red .course-content { border: 5px solid #ff0000;}
.course-info {
  letter-spacing: 0;
}
.course-info h3 {
  line-height: 1.2;
}
.dot-line {
  padding-bottom: 10px;
  border-bottom: 1px dotted #000;
}
.ylw-box {
  background: #FEF8D2;
  border-radius: 10px;
  padding: 12px;
}
.course-price {
  padding: 10px 0 15px;
  border-top: 1px dotted #000;
  border-bottom: 1px dotted #000;
}
@media screen and (max-width: 1000px) {
  .sec07 {
    padding: 7vw 0 8vw;
  }
  .sec07 .wrap {
    width: 98vw;
  }
  .sec07 h2 + picture img {
    width: 34.8vw;
  }
  .course-content {
    height: calc(100% - 10.5vw);
    padding: 2.5vw 1vw 3vw;
  }
  .course-ttl {
    letter-spacing: 0;
    padding: 4vw 0 2.5vw;
  }
  .dot-line {
    padding-bottom: 1vw;
  }
  .course-ttl img {
    top: -11vw;
    width: 15vw;
  }
  .course-price {
    padding: 1vw 0 1.5vw;
  }
  .ylw-box {
    padding: 1vw;
  }
}
@media screen and (max-width: 768px) {
  .sec08 h2 + picture img {
    width: 54vw;
  }
  .course-each {
    width: 86vw;
    margin: 20.66vw auto 0;
  }
  .course_inner {
    display: flex;
    row-gap: 0;
  }
  .course-ttl {
    padding: 6.66vw 0 2.66vw;
  }
  .course-ttl img {
    width: 20vw;
    top: -14.66vw;
  }
  .course-content {
    height: auto;
    padding: 2.66vw 3.33vw 5.33vw;
  }
  .course-btn {
    width: 80vw;
  }
  .sec08 .title {
    font-size: 20px;
    padding: 15px;
    margin: 10px auto 40px;
    line-height: 1.45;
  }
  .sec08 .ttl-line {
    margin-bottom: 10px;
    line-height: 1.45;
  }
}
.xday-after {
  max-width: 650px;
  margin: 60px auto 10px;
}
@media screen and (max-width: 768px) {
  .banner {
    padding-bottom: 7vw;
  }
  .xday-after {
    width: 80%;
    margin: 7vw auto 2vw;
  }
}
/*============================
.sec09 
============================*/
.sec09 {
  padding: 60px 0;
  background: #F8F6EE;
}
.sec09 .title {
  text-align: center;
  font-weight: bold;
  padding-bottom: 30px;
  line-height: 2;
}
.sec09 .title h2 {
  font-size: 31px;
  color: #fb4b07;
}
.sec09 .title h3 {
  font-size: 21px;
  color: #1746A2;
}
.sec09 ul li {
  line-height: 1.8;
}
.oiwai, .oiwai + p {
  margin-left: 135px;
  position: relative;
}
.oiwai::before {
  content: "";
  width: 157px;
  height: 242px;
  background: url(../img/present-img.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  top: 0;
}
.oiwai + p {
  letter-spacing: .025em;
}
.oiwai li {
  padding-left: 28px;
  position: relative;
}
.oiwai li::before {
  content: "";
  width: 23px;
  height: 18px;
  background: url(../img/check.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 5px;
  left: 0;
}
@media (max-width: 1000px) {
  .oiwai, .oiwai + p {
    margin-left: 8.5vw;
  }
}
@media screen and (max-width: 767px) {
  .sec09 {
    padding: 30px 0;
  }
  .sec09 .title {
    line-height: 1.8
  }
  .sec09 .title h2 {
    font-size: 22px;
    line-height: 1.45;
  }
  .sec09 .title h3 {
    font-size: 15px;
    line-height: 1.45;
    padding-top: 10px;
  }
  .oiwai, .oiwai + p {
    margin-left: 0;
  }
  .oiwai::before {
    width: 20vw;
    height: 30.66vw;
    top: 30vw;
  }
}
/*============================
.footer 
============================*/
.footer {
  background-color: #E5E8EB;
  font-size: 14px;
  padding-bottom: 10px;
  padding-top: 40px;
}
@media screen and (max-width: 767px) {
  .footer {
    font-size: 10px;
    padding-top: 14px;
  }
}
.footer_nav {
  align-items: center;
  display: flex;
  font-weight: bold;
  gap: 30px;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .footer_nav {
    flex-direction: column;
    gap: 5px;
  }
}
.copyRight {
  margin-top: 25px;
  text-align: center;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .copyRight {
    margin-top: 10px;
  }
}
.pageTop {
  bottom: 55px;
  height: 51px;
  position: fixed;
  right: 55px;
  width: 51px;
  z-index: 999;
}
@media screen and (max-width: 767px) {
  .pageTop {
    height: 35px;
    right: 11px;
    width: 35px;
  }
}
.fixed_nav {
  background-color: rgba(255, 255, 255, 0.85);
  bottom: 0;
  height: 80px;
  left: 0;
  position: fixed;
  transition: visibility 0.3s;
  width: 100%;
  z-index: 100;
}
@media screen and (max-width: 767px) {
  .fixed_nav {
    height: 65px;
  }
}
.fixed_nav_inner {
  align-items: center;
  display: flex;
  gap: 40px;
  height: 100%;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .fixed_nav_inner {
    gap: 20px;
  }
}
.btn_round {
  background-color: #1B9F39;
  border-radius: 999px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 14px;
  text-align: center;
  width: 286px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .btn_round {
    font-size: 14px;
    padding: 12px 0;
    width: 182px;
  }
}
.btn_round--red {
  background-color: #fb4b07;
}
.sm_only {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .sm_only {
    display: block !important;
  }
}
.md_only {
  display: none !important;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .md_only {
    display: block !important;
  }
}
.lg_only {
  display: none !important;
}
@media screen and (min-width: 1024px) {
  .lg_only {
    display: block !important;
  }
}
@media screen and (max-width: 767px) {
  .mdLg_only {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .smMd_only {
    display: none !important;
  }
}
.orange {
  color: #fb4b07;
}
.red {
  color: #fb4b07;
}
.yellow {
  color: #fb9208
}
.white {
  color: #fff;
}
.blue {
  color: #1746A2;
}
.attention {
  text-align: center;
  font-size: 12px;
  color: red;
  padding: 0 5%;
  margin-top: 20px;
}
.line {
  text-decoration: line-through;
}
.line span {
  color: black;
}

/* メダル部分追加スタイル */
.fv_rect03 {
  display: grid;
  place-items: center;
  > * {
    grid-area: 1/1;
  }
}
.fv_medal {
  position: static !important;
  width: 100%;
  height: 100%;
}
.fv_medal_txt {
  padding-bottom: 22%;
  display: flex;
  flex-direction: column;
  align-items: center;
  letter-spacing: -0.05em;
  font-weight: bold;
  line-height: 1;
}
.fv_medal_txt_1 {
  font-size: 1.5vw;
  color: #ED1C24;
  text-shadow:
    0.05em 0.05em 0px #fff, -0.05em -0.05em 0px #fff,
    -0.05em 0.05em 0px #fff,  0.05em -0.05em 0px #fff,
    0.05em 0px 0px #fff, -0.05em -0px 0px #fff,
    0px 0.05em 0px #fff,  0px -0.05em 0px #fff; 
}
@media  screen and (max-width: 767px) {
  .fv_medal_txt_1 {
    font-size: 3.2vw;
  }
}

.fv_medal_txt_2 {
  margin-top: 0.2em;
  font-size: 2.0vw;
  color: #ED1C24;
  text-shadow:
    0.05em 0.05em 0px #fff, -0.05em -0.05em 0px #fff,
    -0.05em 0.05em 0px #fff,  0.05em -0.05em 0px #fff,
    0.05em 0px 0px #fff, -0.05em -0px 0px #fff,
    0px 0.05em 0px #fff,  0px -0.05em 0px #fff; 
}
@media  screen and (max-width: 767px) {
  .fv_medal_txt_2 {
    font-size: 4.1vw;
  }
}
.fv_medal_numCont {
  display: flex;
  align-items: flex-end;
}
.fv_medal_txt_3 {
  font-family: 'Oswald';
  font-size: 3.3vw;
  text-shadow:
    0.03em 0.03em 0px #fff, -0.03em -0.03em 0px #fff,
    -0.03em 0.03em 0px #fff,  0.03em -0.03em 0px #fff,
    0.03em 0px 0px #fff, -0.03em -0px 0px #fff,
    0px 0.03em 0px #fff,  0px -0.03em 0px #fff; 
}
@media  screen and (max-width: 767px) {
  .fv_medal_txt_3 {
    font-size: 6vw;
  }
}
.fv_medal_txt_4 {
  font-size: 2.0vw;
  text-shadow:
    0.05em 0.05em 0px #fff, -0.05em -0.05em 0px #fff,
    -0.05em 0.05em 0px #fff,  0.05em -0.05em 0px #fff,
    0.05em 0px 0px #fff, -0.05em -0px 0px #fff,
    0px 0.05em 0px #fff,  0px -0.05em 0px #fff; 
}
@media  screen and (max-width: 767px) {
  .fv_medal_txt_4 {
    font-size: 4.0vw;
  }
}