/* ------------
   404
*/
.errer .btn-more {
  margin: 40px 0;
}

/* ------------
   thanks
*/
.thanks {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .thanks {
    text-align: left;
    margin: 80px 0;
  }
}

/* ------------
   page-share
*/
.page-share {
  text-align: center;
}

.page-share a {
  margin: 0 12px;
}

.page-share img {
  height: 45px;
}

/* ------------
   author info
*/
.author-info {
  display: flex;
  background: #FAFAFA;
  font-size: 87.5%;
}

.author-info-title {
  font-weight: bold;
}

.author-info-note {
  margin-top: 10px;
  font-size: 12px;
}

@media screen and (min-width: 1024px) {
  .author-info {
    padding: 25px;
  }

  .author-info-fig {
    margin-right: 25px;
  }

  .author-info-fig img {
    max-width: 80px;
    max-height: 80px
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .author-info {
    padding: 20px;
  }

  .author-info-fig {
    margin-right: 20px;
  }

  .author-info-fig img {
    max-width: 70px;
    max-height: 70px
  }
}

@media screen and (max-width: 767px) {
  .author-info {
    padding: 15px;
  }

  .author-info-fig {
    margin-right: 15px;
  }

  .author-info-fig img {
    max-width: 60px;
    max-height: 60px
  }
}

/* ------------
   prevnext
*/
.prevnext a {
  text-decoration: none;
  display: block;
}

.prevnext img {
  width: 32px;
  vertical-align: middle;
}

.prevnext .nav-next,
.prevnext .nav-previous {
  margin-top: 10px;
}

.prevnext .nav-links {
  display: flex;
  justify-content: space-between;
}

.prevnext .nav-next {
  text-align: right;
}

.prevnext .nav-next img {
  margin-left: 20px;
}

.prevnext .nav-previous {}

.prevnext .nav-previous img {
  margin-right: 20px;
}

.prevnext-subtitle {
  font-size: 16px;
  color: initial;
  margin-bottom: .5em;
  display: flex;
  align-items: center;
  gap: 5px;
}

.prevnext-subtitle .fa-solid {
  font-size: 24px;
  color: var(--main-color);
}

.btn-archive {
  display: inline-flex;
  align-items: center;
  margin: auto;
  gap: 5px;
}

.btn-archive .fa-solid {
  font-size: 24px;
  color: var(--main-color);
}



/* ------------------------------------------------
   nav-parent
*/
.nav-parent {
  background: #FFF;
}

@media screen and (min-width: 1024px) {
  .nav-parent {
    padding: 30px 40px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .nav-parent {
    padding: 20px 30px;
  }
}

@media screen and (max-width: 767px) {
  .nav-parent {
    padding: 10px 20px;
  }
}

.nav-parent a {
  font-size: 12px;
  margin-left: 10px;
}

/* ------------------------------------------------
   breadcrumb
*/
.breadcrumb {
  font-size: 12px;
  color: #707070;
  margin-top: 6px;
  margin-bottom: 6px;
  position: relative;
}

@media screen and (max-width: 1023px) {
  .breadcrumb {
    text-align: left;
    width: 100%;
    margin-top: 1em;
  }
}

.breadcrumb p {
  margin: 5px 0;
  margin-top: -20px;
  margin-bottom: 20px;

}

@media screen and (max-width: 1023px) {
  .breadcrumb p {
    margin-top: 0;
  }
}

.breadcrumb p> :not(:first-child) {
  margin-left: .5em;
}

.breadcrumb a {
  margin-right: .5em;
  color: #097EF9;
  text-decoration: underline;
}

/* ------------------------------------------------
   widget
*/
.widget {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
}

.widget:not(:last-child):not(.widget_block),
.widget:not(:last-child) .wp-block-latest-posts,
.widget:not(:last-child) .wp-block-categories {
  margin-bottom: 30px;
}

.widget h2,
.widgettitle {
  font-size: 18px;
  font-weight: bold;
  background: var(--main-color);
  color: #fff;
  text-align: center;
  margin: 0;
  padding: 10px;
}

.wp-block-latest-posts,
.wp-block-categories,
.widget_categories ul {
  padding-left: 0;
  list-style-type: none;
  margin: 0;
}

.wp-block-latest-posts li,
.wp-block-categories li,
.widget_categories li {
  margin: 0;
}

.wp-block-latest-posts li a,
.wp-block-categories li a,
.widget_categories li a,
.widget_categories li .list-parent {
  margin: 0;
  border-bottom: 1px solid #EEE;
  padding: .75em 1em;
  display: block;
  color: inherit;
  text-decoration: none;
  background-color: #FFF;
}

.wp-block-latest-posts li a:hover,
.wp-block-categories li a:hover,
.widget_categories li a:hover,
.widget_categories li .list-parent:hover {
  color: #3A833D;
  color: var(--main-color);
  text-decoration: underline;
  opacity: 1;
}

.wp-block-latest-posts>li:first-child>a,
.wp-block-categories>li:first-child>a,
.widget_categories>ul>li:first-child>a {
  border-top: 1px solid #EEE
}

/* .wp-block-latest-posts li li a,
.wp-block-categories li li a,
.widget_categories li li a {
  padding-left: 2.5em;
} */


.widget_categories li .list-parent {
  background-image: url(../images/icon-plus.png);
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: right 1em center;
  cursor: pointer;
  /* display: none; */
}



.widget_categories li.is-show>.list-parent.parent-level-1 {
  background-image: url(../images/icon-minus.png);
}

.widget_categories li.is-show>.list-parent.parent-level-2 {
  background-image: url(../images/icon-minus.png);
}

.widget_categories li li a {
  background-size: 6px;
  background-repeat: no-repeat;
  background-position: left 1em center;
  /* background-image: url(../images/icon-minus.png); */
  background: var(--bg-color02);
  border-bottom: solid 2px #fff;
}

/* ------------------------
   カスタムHTML
*/
.widget_custom_html

/*,
.widget_recent_entries*/
  {
  padding: 0;
  background: inherit;
}

/* ------------------------
   リスト
*/
.widget_pages ul,
.widget_recent_entries ul,
.widget_categories>ul,
.widget_archive ul,
.widget_nav_menu ul {
  padding-left: 0;
  list-style-type: none;
  margin: 0;
  background: #FFF;
}

.widget_pages li,
.widget_recent_entries li,
.widget_categories li,
.widget_archive li,
.widget_nav_menu li {
  margin: 0;
}

.widget_pages li ul,
.widget_recent_entries li ul,
/*.widget_categories li ul,*/
.widget_archive li ul,
.widget_nav_menu li ul {
  margin-top: .5em;
}

/*
.widget_pages li li,
.widget_recent_entries li li,
.widget_categories li li,
.widget_archive li li,
.widget_nav_menu li li {
  border-top: 1px solid #F5F5F5;
  border-bottom: 0;
}*/
.widget_pages li li:last-child,
.widget_recent_entries li li:last-child,
.widget_categories li li:last-child,
.widget_archive li li:last-child,
.widget_nav_menu li li:last-child {
  padding-bottom: 0;
}

.widget_categories li a,
.widget_recent_entries li a {
  color: inherit;
  display: block;
  border-bottom: solid 1px #eee;
  text-decoration: none;
  color: #282D27;
}


/* ------------------------
   検索ボックス
*/
.widget_search .widgettitle {
  display: none;
}

.search-form {
  display: flex;
}

.search-form>label {
  flex-grow: 1;
}

.screen-reader-text {
  display: none;
}

input[type="search"].search-field,
.search-submit {
  border: 0;
  padding: 1em 1.5em;
  line-height: 1;
}

@media screen and (min-width: 768px) {

  input[type="search"].search-field,
  .search-submit {
    font-size: 14px;
  }
}

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

  input[type="search"].search-field,
  .search-submit {
    font-size: 16px;
  }
}

input[type="search"].search-field {
  width: 100%;
  border-width: 1px 0 1px 1px;
  border-style: solid;
  border-color: #F2F2F2;
}

.search-submit {
  background: #02B0BB;
  color: #FFF;
}

/* ------------------------
   タグクラウド
*/
.widget_tag_cloud {
  background: #FFF;
  padding: 20px;
}

.widget_tag_cloud .widgettitle {
  display: none;
}

.tag-cloud-link {
  border: 2px solid #999;
  padding: .3em .8em;
  line-height: 1.4;
  border-radius: 1em;
}

/* ------------------------------------------------
   site info
*/

.site-info>* {
  border: 1px solid #CCC;
  background: #FFF;
  padding: 0;
  margin: 30px auto;
  max-width: 640px;
}

.site-info .widget_block {
  padding: 1.5em 2em;
  font-size: 14px;
}

.site-info .widget_nav_menu ul {
  padding: 0 !important;
}

.site-info .widget_nav_menu li {
  padding: 0;
  margin: 0;
  border: 0;
}

.site-info .widget_nav_menu a {
  display: block;
  padding: 1.5em 2em;
  font-size: 14px;
  text-decoration: none;
  color: inherit;
  position: relative;
}

.site-info .widget_nav_menu a::before {
  content: "";
  width: .6em;
  height: .6em;
  position: absolute;
  right: 1em;
  top: 50%;
  margin-top: -.3em;
  border-top: 1px solid #CCC;
  border-right: 1px solid #CCC;
  transform: rotate(45deg);
}

.site-info .widget_nav_menu a:hover {
  background: #FFE0EA;
}

/* ------------------------------------------------
 */

@media screen and (max-width: 767px) {
  .type-course-points.p-sec {
    padding-bottom: 0;
  }
}

.type-course-points-ttl {
  margin-bottom: .5em;
  margin-top: 1em;
  position: relative;
}

.type-course-points-ttl::before {
  position: relative;
  top: -5px;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
  content: "";
  background: url(../images/course/icon-pro-ttl.svg);
  background-size: cover;
  width: 42.82px;
  height: 16.25px;
}

.type-course-points h3 {
  font-size: 20px;
}



.type-course-points .p-sec-h {
  margin-bottom: 1em;
}

.type-course-points li {
  position: relative;
  padding: 24px;
  font-size: 16px;
  background: #FFF5F5;
  padding: 32px;
  border-radius: 80px 0 80px 0;
}

@media screen and (max-width: 767px) {
  .type-course-points li {
    margin-bottom: 32px;
    display: flex;
    align-items: center;
  }
}

.type-course-points dl {
  text-align: center;
}

.type-course-points dt {
  font-size: 18px;
  font-weight: bold;
  color: var(--main-color);
  margin: 0;
  margin-bottom: 8px;
}

.type-course-points dd {
  line-height: 1.5;
}

.type-course-points-img {
  text-align: center;
  margin: auto;
  margin-bottom: 1em;
  width: 100%;
  max-width: 140px;
}

@media screen and (max-width: 767px) {
  .type-course-points-img {
    order: 1;
    width: 51%;
    margin: 0;
  }

  .type-course-points dl {
    order: 0;
    width: 46%;
    font-size: 14px;
  }

  .type-course-points dt {
    font-size: 20px;
  }
}




/* ------------------------------------------------
 */



/* .type-course-merit .p-sec-h h2 {
  margin-bottom: 1em;
} */


.type-course-merit-desc {
  margin: 0 48px;
  margin-bottom: 40px;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .type-course-merit-desc {
    margin: 0;
  }
}

.type-course-merit-list {
  width: 68%;
  margin: auto;
  position: relative;
}

@media screen and (max-width: 767px) {
  .type-course-merit-list {
    width: 100%;
    text-align: center;
  }
}

.type-course-merit-listitem {
  background: #F9E6DF;
  text-align: center;
  padding: 10px;
  margin: 0;
  margin-top: 8px;
}

@media screen and (min-width: 768px) {
  .type-course-merit .pctb-tile-2> :not(:nth-child(2n)) {
    margin-right: 8px;
  }
}



.type-course-merit-box {
  position: relative;
}

.type-course-merit .fig-man01 {
  position: absolute;
  z-index: 3;
  bottom: 0;
  left: 10px;
  max-width: 120px;
  width: 15vw;
}

.type-course-merit .fig-man02 {
  position: absolute;
  z-index: 3;
  bottom: 0;
  right: 10px;
  max-width: 120px;
  width: 15vw;
}





.type-course-merit .pctb-tile-4 {
  text-align: center;

}

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

  .type-course-merit .pctb-tile-4 {
    width: 100%;
    margin-right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }


}

/* ------------------------------------------------
 */

@media screen and (max-width: 767px) {
  .pro-select h2 {
    font-size: min(5vw, 24px);
  }

}

/* ------------------------------------------------
 */

.type-course-result-ttl {
  border-top: solid 2px var(--main-color);
  border-bottom: solid 2px var(--main-color);
  padding: 10px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}

.type-course-result-list {
  margin: 40px 0;
}

.type-course-result-list li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
}

.type-course-result-list li:last-child {
  margin-bottom: 0;
}

.type-course-result-list-img {
  width: 25%;
}

.type-course-result-list-content {
  width: 73%;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .type-course-result-list-img {
    width: 43%;
  }

  .type-course-result-list-content {
    width: 52%;
  }
}

.type-course-result-list-content p {
  margin: 0;
}

.type-course-result-box {
  background: #fafafa;
  padding: 20px;
  font-size: 14px;
  margin-bottom: 16px;
}

.type-course-result-box-ttl {
  font-weight: bold;
  font-size: 18px;
}

@media screen and (max-width: 767px) {
  .type-course-result-box-ttl {
    font-size: 16px;
  }
}

.type-course-result-box .link-style {
  color: #0A82FF;
}

.type-course-result-other-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 64px;
}

@media screen and (max-width: 767px) {
  .type-course-result-other-list {
    margin-bottom: 40px;
  }
}

.type-course-result-other-list li {
  width: calc((100% - 85px)/ 6);
}

@media screen and (max-width: 767px) {
  .type-course-result-other-list li {
    width: calc((100% - 22px)/ 3);

  }
}

.type-course-result-other-list p {
  margin: 0;
  line-height: 1.4;
  text-align: center;
}

/* ------------------------------------------------
 */

.type-course-f .p-sec-h {
  margin-bottom: 24px;
}

/* ------------------------------------------------
 */


.type-course-case .p-sec-h h2 {
  font-size: 24px;
}

@media screen and (max-width: 767px) {
  .type-course-case .p-sec-h h2 {
    font-size: 20px;
  }
}

.type-course-case-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 40px;
  margin-bottom: 64px;
}

.type-course-case-img {
  width: 41%;
}

@media screen and (max-width: 767px) {
  .type-course-case-img {
    width: 100%;
    margin-top: 8px;
  }
}

.type-course-case-img img {
  width: 100%;
}

.type-course-case-text {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .type-course-case-text {
    width: 100%;
    margin-top: 8px;
  }
}

.type-course-case-text .p-sec-h {
  margin-bottom: 1.2em;
}

.type-course-case-text .p-sec-h h3 {
  margin-top: 1.2em;
  font-size: 20px;
}

.type-course-f h3 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .type-course-f h3 {
    font-size: 18px;
    margin-bottom: 0.5em;
  }
}

.type-course-f-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 64px;
}

.type-course-f-flex:last-child {
  margin-bottom: 0;
}

.type-course-f-text {
  width: 46%;
}

.type-course-f-img {
  width: 50%;
}

.type-course-f-img img {
  border-radius: 10px;
  aspect-ratio: 3/2;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .type-course-f-flex {
    margin-bottom: 40px;
  }

  .type-course-f-text {
    width: 100%;
    order: 1;
  }

  .type-course-f-img {
    width: 100%;
    order: 0;
    margin-bottom: 2em;
  }

}

.type-common .p-block-h {
  color: var(--main-color);
}

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

  .type-common.is-reverse {
    display: flex;
    flex-direction: column;
  }

  .type-common.is-reverse .-fig {
    order: 1;
  }

  .type-common.is-reverse .-cnt {
    order: 0;
    margin-bottom: 1em;
  }
}

.fukidashi-line {
  position: relative;
  display: block;
  padding-bottom: 16px;
  font-size: 24px !important;
  width: 100%;
}

.fukidashi-line.-narrow {
  max-width: 600px;
  margin: auto;
}


.fukidashi-line::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 14px;
  background: url("../images/fukidashi-line.png") no-repeat center;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .fukidashi-line {
    font-size: 20px !important;
  }
}

.type-common .p-block-h .-icon {
  flex: 0 0 70px;
  margin-right: 20px;
}

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

  /* .type-common .p-block-h {
    align-items: flex-start;
  } */


  .type-common .p-block-h .-icon {
    flex: 0 0 64px;
    margin-right: 16px;
    margin-top: 5px;
  }
}

/* ------------------------------------------------
 */
.icon-beginner02 {
  width: 50px;
  position: absolute;
  top: -90px;
  left: 0;
  right: 0;
  display: flex;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .icon-beginner02 {
    position: unset;
  }
}




/* ------------------------------------------------
 */

.l-content {
  width: 100%;
  max-width: 700px;
}


.l-content-left {
  margin-left: 0;
  margin-right: auto;
}

.l-content-right {
  margin-left: auto;
  margin-right: 0;
}

.l-content-full {
  width: 100%;
  max-width: 100%;
}

.l-content-full .l-content-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 940/373;
  border-radius: 10px;
}


.l-content-img {
  /* padding-left: 20px; */
}

.l-content-img img {
  width: 100%;
  border-radius: 10px;
}

.l-content-ttl {
  margin-top: 1.5em !important;
}

.l-content-ttl span {
  /* background: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); */
  padding: 5px .5em;
  line-height: 1.4;
  display: inline-block;
}

/* ------------------------------------------------
 */

.offset-ttl {
  background: var(--bg-color02);
  border-radius: 10px;
  position: relative;
  padding: 13px;
}

.offset-ttl:before {
  position: absolute;
  top: -10px;
  left: -10px;
  width: 100%;
  height: 100%;
  content: '';
  border: 1px solid var(--main-color);
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
  .offset-ttl {
    font-size: 20px !important;
  }
}

/* ------------------------------------------------
 */

.type-course-dance .dance-list {
  display: flex;
  flex-wrap: wrap;
}

.type-course-dance .dance-listitem {
  width: calc((100% - 60px)/ 5);
  margin-right: 15px;
  position: relative;
}

.type-course-dance .dance-listitem:nth-child(5n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .type-course-dance .dance-listitem {
    width: calc((100% - 15px)/ 2);
    margin-right: 15px;
    position: relative;
  }

  .type-course-dance .dance-listitem:nth-child(5n) {
    margin-right: 15px;
  }

  .type-course-dance .dance-listitem:nth-child(2n) {
    margin-right: 0;
  }

}



.type-course-dance .dance-listitem-ttl {
  position: absolute;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: rgba(51, 51, 51, 0.8);
  clip-path: polygon(0 0, 94% 0, 100% 100%, 0 100%);
  bottom: 0;
  left: 0;
  padding: 0 1em;
  margin: 0;
}



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

/* ------------------------------------------------
 */
.limitted-trial-banner {
  text-align: center;
}



.limitted-trial-banner-list {
  display: flex;
  justify-content: center;
  gap: 16px;

}

@media screen and (max-width: 767px) {
  .limitted-trial-banner-list {
    flex-wrap: wrap;
    gap: 0;
  }
}

.limitted-trial-banner-list.-frontpage li {
  width: 50%;
}


@media screen and (max-width: 767px) {
  .limitted-trial-banner-list.-frontpage li {
    width: 100%;
  }
}

.limitted-trial-banner a {
  text-decoration: none;
}

.limitted-trial-banner img {
  width: 100%;
  max-width: 638px;
}


.limitted-trial-date {
  position: relative;
}

.limitted-trial-banner .date {
  position: absolute;
  z-index: 3;
  bottom: 4em;
  left: 55%;
  margin: auto;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .limitted-trial-banner .date {
    bottom: 10vw;
  }
}

.limitted-trial-banner-list.-frontpage .limitted-trial-banner span {
  font-size: 11px;
}

.limitted-trial-banner span {
  color: #CF000E;
  background: #fff;
  font-weight: bold;
  padding: .1em 1em;
  font-size: 13px;
}



@media screen and (max-width: 767px) {
  .limitted-trial-banner span {
    font-size: min(2.3vw, 16px);
  }

  .limitted-trial-banner-list.-frontpage .limitted-trial-banner span {
    font-size: min(2vw, 11px);
  }

}




.liquid-speech-balloon-01 .liquid-speech-balloon-avatar {
  border-radius: 50%;
}


/* ------------------------------------------------
 */

.bnr-opening {
  margin: auto;
  margin-top: 20px;
  width: 87.5%;
  max-width: 620px;
}

@media screen and (max-width: 767px) {
  .bnr-opening {
    margin-top: 5px;
  }
}

/* ------------------------------------------------
 */

.bnr-atumeru {
  margin: auto;
  width: 90%;
  max-width: 580px;
}

@media screen and (max-width: 767px) {
  .bnr-opening {
    margin-top: 5px;
  }
}

.top-gray-bg {
  background: #fafafa;
}

/* ------------------------------------------------
 */
.pro-bnr {
  width: 90%;
  max-width: 680px;
  width: 87.5%;
  max-width: 638px;
  margin-top: 5px;
}

/* ------------------------------------------------
 */
.trial-sec-bg {
  background: var(--bg-color02);

}

.trial-sec {
  padding: 64px 0;
  /* overflow-x: hidden; */
  overflow-y: visible;
}

@media screen and (max-width: 767px) {
  .trial-sec {
    overflow-x: hidden;
  }
}

.trial-sec-ttl {
  color: var(--main-color);
}

.trial-sec .sub-ttl span {
  background: #FFA9B1;
  color: #fff;
  font-size: 24px;
  padding: 5px 10px;
}

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

  .trial-sec-ttl {
    font-size: 24px;
  }

  .trial-sec .sub-ttl span {
    font-size: 18px;
  }
}

.trial-desc {
  margin-bottom: 24px;
}

.trial-sec-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 40px;
  width: 100%;
  max-width: 960px;
  margin: auto;
}

.trial-sec-img {
  width: 46%;
  position: relative;
}

.trial-sec-img img {
  border-radius: 10px;
}

.trial-sec-text {
  width: 50%;
  position: relative;
}

@media screen and (max-width: 767px) {
  .trial-sec-img {
    width: 100%;
    order: 0;
  }

  .trial-sec-text {
    width: 100%;
    order: 1;
    margin-top: 24px;
  }
}

.trial-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  width: 100%;
  max-width: 343px;
  background: var(--btn-color);
  color: #fff;
  padding: 1.4em;
  position: relative;
  transition: all .7s;
  margin: auto 0;
  text-align: center;
  border-radius: 10px;
  font-size: min(4.3vw, 16px);
}



.trial-btn::before {
  position: absolute;
  left: 16px;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  background: url(../images/icon-beginner.png);
  background-size: cover;
  width: 28px;
  height: 40px;
}

.trial-btn::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 16px;
  content: "";
  background: url(../images/arrow-w.svg);
  background-size: cover;
  width: 24px;
  height: 24px;
}

.trial-btn:hover {
  background: #EB1428;
  opacity: 1;
}

/* ------------------------------------------------
 */

.common-content {
  width: 70%;
}

.common-content.reverse {
  margin-left: auto;
}

.common-content.-ml {
  margin-left: 80px;
}

.common-content.-mt {
  margin-top: 80px;
}

.common-content.-mb {
  margin-bottom: 80px;
}


.common-content-ttl {
  margin-top: 20px;
}


@media screen and (max-width: 767px) {
  .common-content {
    width: 100%;
  }

  .common-content.-ml {
    margin-left: 0;
  }

  .common-content.-mt {
    margin-top: 40px;
  }

  .common-content.-mb {
    margin-bottom: 40px;
  }

  .common-content-ttl {
    margin-top: 14px;
  }
}



/* ------------------------------------------------
 */


.media-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;

}

.media-flex.reverse {
  flex-direction: row-reverse;
}

/* .media-flex.-mb {
  margin-bottom: 40px;
} */

.media-content {
  width: 65%;
}

.media-img {
  width: 30%;
}

@media screen and (max-width: 767px) {
  .media-content {
    width: 100%;
    order: 1;
  }

  .media-img {
    width: 100%;
    order: 0;
  }
}