html,
body {
  font-size: 10px;
}

li {
  list-style: none;
}

body {
  background: none;
  color: #333;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-weight: 400;
  font-style: normal;
  /*font-family: 'Noto Sans JP', sans-serif;*/
  line-height: 1.5;
}

/* 以下2025年リニューアル用 */
.wrapper {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
  margin: 0 auto;
  max-width: 1000px;
  width: 1000px;
}

.bg-009582 {
  background-color: #009582;
}

.col-009380 {
  color: #009380;
}

.col-009582 {
  color: #009582;
}

.col-06c755 {
  color: #06c755;
}

.col-efae0d {
  color: #efae0d;
}

.mainHdr {
  margin: 0 auto calc(48px + 5.5rem);
  position: relative;
  width: 1000px;
}

.mainHdr-bnr {
  bottom: -48px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 448px;
}

.sectionCtr {
  padding: 0;
  width: 1000px;
}

.sectionTtl {
  font-size: 3.6rem;
  font-weight: 700;
}

.sectionTtl-sub {
  display: block;
  font-size: 1.8rem;
  letter-spacing: .05em;
}

.intro.sectionCtr {
  margin-bottom: 10rem;
}

.intro .sectionCtr-hdr {
  background: url(../img/deco_chars-1_pc.png) no-repeat right bottom / auto;
  margin: 0 auto 11rem;
  width: 74%
}

.intro .sectionTtl {
  letter-spacing: .1em;
  line-height: 1.7;
  margin-bottom: 1em;
}

.intro .sectionTxt {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 2;
}

.introList {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 97.5%;
}

.iPad .introList {
  flex-wrap: wrap;
  gap: 2.5rem;
  justify-content: center;
  width: 75%;
}

.introList-item {
  background: #f6f6f6 no-repeat 0 0 / contain;
  border-radius: .4rem;
  padding: 140px 0 .5em;
  width: 235px;
}

.iPad .introList-item {
  background-position-y: -1rem;
  padding-top: 185px;
  width: 320px;
}

.introList-item.item-1 {
  background-image: url(../img/img_intro_ss-1_pc.png);
}

.introList-item.item-2 {
  background-image: url(../img/img_intro_ss-2_pc.png);
}

.introList-item.item-3 {
  background-image: url(../img/img_intro_ss-3_pc.png);
}

.introList-item.item-4 {
  background-image: url(../img/img_intro_ss-4_pc.png);
}

.introList-hdr {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 1em auto .5em;
  padding: 0 3%;
}

.iPad .introList-hdr {
  margin-top: .5em;
}

.introList-ttl {
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.3;
}

.introList-ttl-target {
  align-items: center;
  display: flex;
  font-size: 1.2rem;
  font-weight: 500;
}

.introList-ttl-target::before {
  background: url(../img/icon_target_pc.svg) no-repeat 0 0 / contain;
  content: "";
  display: block;
  height: 1rem;
  margin: 0 .4em 0 .1em;
  width: .9rem;
}

.gradeList-item {
  background-color: #a4a4a4;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.6;
  margin-top: .2rem;
  padding: 0 .5em;
  text-align: center;
}

.gradeList-item.basic {
  background-color: #009582;
}

.gradeList-item.master {
  background-color: #00584C;
}

.typeList {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0 0 2%;
}

.typeList-item {
  flex-shrink: 0;
  font-size: 1.15rem;
  font-weight: 500;
  letter-spacing: -.06em;
  margin: .1em 0;
}

.typeList-item:not(.no-slash):not(:last-of-type)::after {
  content: "／";
}

.worries-solutions.sectionCtr {
  background-color: #f4f4f4;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 5rem;
  padding-top: 3rem;
}

.sectionCtr-inner.worries {
  padding-left: 10.5%;
  padding-top: 2.5rem;
  width: 51%;
}

.iPad .sectionCtr-inner.worries {
  padding-left: 9%;
}

.sectionCtr-inner.solutions {
  background: #009380 url(../img/deco_solutions_pc.png) no-repeat right 7px top 20px / auto;
  border-radius: 2rem 0 0 2rem;
  margin: 0;
  padding: 4.2rem 0 5rem 4rem;
  width: 49%;
}

.worries .sectionTtl,
.solutions .sectionTtl {
  font-size: 2.5rem;
  letter-spacing: .01em;
}

.worries .sectionTtl {
  margin-bottom: 6rem;
}

.solutions .sectionTtl {
  color: #fff;
  line-height: 1.5;
  margin-bottom: 2rem;
}

.worriesList {
  position: relative;
  width: 330px;
}

.worriesList::before {
  background: url(../img/deco_worries_pc.png) no-repeat 0 0 / auto;
  bottom: -22%;
  content: "";
  display: block;
  height: 119px;
  position: absolute;
  right: -3%;
  transform: translate(40%, -2%);
  width: 127px;
}

.solutionsList {
  width: 340px;
}

.iPad .worriesList,
.iPad .solutionsList {
  width: 350px;
}

.worriesList-item,
.solutionsList-item {
  background-color: #fff;
  border-radius: .4rem;
  margin-bottom: 1em;
  padding: .5em 1em .5em 2.2em;
}

.worriesList-item {
  background-color: #fff;
}

.worriesList-item-ttl,
.solutionsList-item-ttl {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: .3em;
  position: relative;
}

.solutionsList-item-ttl {
  color: #009380;
}

.worriesList-item-ttl::before,
.solutionsList-item-ttl::before {
  content: "#";
  position: absolute;
  left: -.05em;
  transform: translateX(-100%);
}

.worriesList-item-txt,
.solutionsList-item-txt {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
}

.worries-solutions-txt {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 5.5rem auto 0;
  text-align: center;
}

.features.sectionCtr {
  background-color: #e0ece6;
  padding-bottom: 9rem;
  padding-top: 8rem;
  position: relative;
}

.features.sectionCtr::before {
  color: #eaf4ef;
  content: "CODE\AMONKEY";
  display: block;
  font-size: 6.45rem;
  font-weight: 900;
  line-height: 1.1;
  position: absolute;
  right: calc((100% - 1000px) / 2 + 67px);
  text-align: right;
  top: 15px;
  white-space: pre;
}

.features.sectionCtr::after {
  bottom: 48px;
  color: #eaf4ef;
  content: "PROGRAMMING";
  display: block;
  font-size: 11.4rem;
  font-weight: 900;
  left: calc((100% - 1000px) / 2 - 7px);
  line-height: 1;
  position: absolute;
  text-orientation: mixed;
  white-space: pre;
  writing-mode: vertical-rl;
}

.features .sectionTtl {
  letter-spacing: .05em;
  line-height: 1.5;
  margin-bottom: 3.5rem;
  margin-left: 10.5%;
}

.featuresList {
  counter-reset: listNum;
  margin: 0 auto;
  position: relative;
  width: 82%;
  z-index: 2;
}

.iPad .featuresList {
  width: 90%;
}

.featuresList-wrapper:not(:first-of-type) {
  margin-top: 4.5rem;
}

.featuresList-ttl {
  align-items: baseline;
  display: flex;
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: .6em;
  position: relative;
  width: 100%;
}

.featuresList-ttl::before {
  color: #93caae;
  counter-increment: listNum;
  content: counter(listNum, decimal-leading-zero);
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-size: 4.8rem;
  font-weight: 400;
  letter-spacing: .05em;
  line-height: 1;
  margin-right: .5em;
  transform: scaleY(.85) skewX(-11deg);
  transform-origin: 50% 100%;
}

.featuresList-dtlList {
  display: flex;
  justify-content: space-between;
  position: relative;
  width: 100%;
}

.featuresList-dtlList::before {
  background-color: #009380;
  border: .5rem solid #93caae;
  border-radius: 50%;
  box-shadow: 0 0 0 .5rem #e0ece6;
  content: "";
  display: block;
  height: 5.5rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 5.5rem;
  z-index: 1;
}

.featuresList-dtlList::after {
  color: #fff;
  content: "┼";
  display: block;
  font-size: 1.2rem;
  height: 1em;
  left: 50%;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) scaleY(2.7) rotate(45deg);
  width: 1em;
  z-index: 1;
}

.featuresList-dtl {
  background-color: #fff;
  border-radius: .4rem;
  min-height: 275px;
  padding: 3.2rem 2rem 2rem;
  position: relative;
  width: 405px;
}

.iPad .featuresList-dtl {
  width: 447px;
}

.featuresList-dtl:nth-of-type(odd) {
  padding-right: 3rem;
}

.featuresList-dtl:nth-of-type(even) {
  padding-left: 3rem;
}

.featuresList-dtl.features-1-2 {
  background: #fff url(../img/img_features-1-2_pc.png) no-repeat right 18px bottom 22px / auto;
}

.iPad .featuresList-dtl.features-1-2 {
  background-position-x: right 30px;
}

.featuresList-dtl.features-3-1 {
  background: #fff url(../img/img_features-3-1_pc.png) no-repeat center bottom 15px / auto;
}

.featuresList-dtl.features-1-1::before,
.featuresList-dtl.features-1-2::before {
  background: no-repeat 0 0 / contain;
  content: "";
  display: block;
  height: 75px;
  position: absolute;
  right: 11px;
  top: -6px;
  width: 84px;
}

.featuresList-dtl.features-1-1::before {
  background-image: url(../img/deco_features-1-1_pc.png);
}

.featuresList-dtl.features-1-2::before {
  background-image: url(../img/deco_features-1-2_pc.png);
}

.featuresList-dtl-ttl {
  color: #009582;
  font-size: 2.6rem;
  margin-bottom: 2rem;
}

.featuresList-dtl-list {
  padding-left: 2.5rem;
}

.featuresList-dtl-item {
  font-size: 1.5rem;
  line-height: 1.5;
  margin-bottom: 1em;
  position: relative;
}

.features-2-1 .featuresList-dtl-item {
  align-items: stretch;
  display: flex;
  justify-content: flex-start;
}

.features-2-2 .featuresList-dtl-item {
  letter-spacing: -.1em;
}

.features-3-1 .featuresList-dtl-item {
  letter-spacing: -.07em;
}

.featuresList-dtl-item::before {
  color: #009380;
  content: "」";
  display: block;
  font-size: 1.8rem;
  font-weight: 900;
  left: 0;
  line-height: 1;
  position: absolute;
  top: 0;
  transform: translateX(-95%) rotate(45deg);
}

.featuresList-dtl-item-img {
  margin: 0;
  width: 100px;
}

.iPad .featuresList-dtl-item-img {
  width: 110px;
}

.featuresList-dtl-item-txt {
  align-items: center;
  background-color: #f6f6f6;
  border-radius: 0 .4rem .4rem 0;
  display: flex;
  padding: .2em .8em;
  width: 62%;
}

.reason-why.sectionCtr {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  height: 815px;
  overflow: hidden;
  position: relative;
}

.reason-why .sectionHdr {
  display: flex;
  justify-content: space-between;
  margin: 7.5rem auto 0;
  position: relative;
  width: 90%;
  z-index: 1;
}

.reason-why .sectionTtl {
  letter-spacing: 0;
  line-height: 1.5;
}

.reason-why .sectionHdr-txt {
  font-size: 1.5rem;
  line-height: 1.5;
  margin-top: 3.2rem;
}

.reasonsList {
  left: calc((100% - 1000px) / 2 + 155px);
  position: absolute;
  top: 64%;
  transform: translate(-50%, -50%);
}

.reasonsList-item {
  border-radius: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%)
}

.reasonsList-item.reasons-1 {
  background: #93caae url(../img/bg_reasons-1_pc.png) no-repeat 50% 50% / auto;
  height: 470px;
  width: 470px;
  z-index: 3;
}

.reasonsList-item.reasons-1::after {
  background: url(../img/deco_reasons-1_pc.png) no-repeat 100% 0 / cover;
  content: "";
  display: block;
  height: 36px;
  position: absolute;
  right: .2rem;
  top: 50%;
  transform: translateY(-50%);
  width: 95px;
}

.reasonsList-item.reasons-2 {
  background-color: #bedccd;
  height: 810px;
  width: 810px;
  z-index: 2;
}

.reasonsList-item.reasons-3 {
  background-color: #e0ece6;
  height: 1160px;
  width: 1160px;
  z-index: 1;
}

.reasonsList-item.reasons-3::after {
  background: url(../img/deco_reasons-3_pc.png) no-repeat 0 0 / auto;
  content: "";
  display: block;
  height: 36px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(100%, -50%);
  width: 58px;
}

.reasonsList-hdr {
  letter-spacing: -.1em;
  position: absolute;
}

.reasons-1 .reasonsList-hdr {
  left: 41%;
  top: 3%;
}

.reasons-2 .reasonsList-hdr {
  left: 69.5%;
  top: 17%;
}

.reasons-3 .reasonsList-hdr {
  left: 80%;
  top: 24.5%;
}

.resaonsList-ttl {
  font-size: 2.4rem;
  margin-bottom: .4rem;
}

.resaonsList-txt {
  font-size: 1.5rem;
  line-height: 1.5;
}

.reasonsList-detailList {
  align-content: space-between;
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.reasons-1 .reasonsList-detailList {
  height: 157px;
  left: 79%;
  width: 8.5rem;
}

.reasons-2 .reasonsList-detailList {
  height: 290px;
  left: 79%;
  width: 20rem;
}

.reasons-3 .reasonsList-detailList {
  height: 290px;
  left: 88%;
  width: 13rem;
}

.reasonsList-detailList-item {
  background-color: #fff;
  border-radius: 6rem;
  color: #009380;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: -.1em;
  line-height: 1.3;
  padding: .5rem 0;
  text-align: center
}

.reasons-1 .reasonsList-detailList-item {
  width: 100%;
}

.reasons-2 .reasonsList-detailList-item {
  width: 17rem;
}

.reasons-2 .reasonsList-detailList-item.item-1 {
  transform: translateX(-2.4rem);
  width: 18rem;
}

.reasons-2 .reasonsList-detailList-item.item-2 {
  margin-bottom: 25px;
}

.reasons-2 .reasonsList-detailList-item.item-3 {
  margin-top: 25px;
}

.reasons-2 .reasonsList-detailList-item.item-4 {
  transform: translateX(-1.9rem);
}

.reasons-3 .reasonsList-detailList-item {
  width: 100%;
}

.reasons-3 .reasonsList-detailList-item.item-1,
.reasons-3 .reasonsList-detailList-item.item-5 {
  transform: translateX(-2em);
}

.reasons-3 .reasonsList-detailList-item.item-2,
.reasons-3 .reasonsList-detailList-item.item-4 {
  transform: translateX(-1em);
}

.reasonsList-item.futureLeader {
  background-color: #009380;
  color: #fff;
  height: 300px;
  left: 640px;
  transform: translateY(-50%);
  width: 300px;
}

.futureLeader-ttl {
  font-size: 2.9rem;
  font-weight: 700;
  left: 4.2rem;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  width: fit-content;
}

.futureLeader-detailList-item {
  align-items: center;
  background-color: #009380;
  border-radius: 50%;
  display: flex;
  font-size: 1.8rem;
  font-weight: 700;
  justify-content: center;
  position: absolute;
}

.futureLeader-detailList-item.item-1 {
  height: 6.5rem;
  left: 8rem;
  top: -8.1rem;
  width: 6.5rem;
}

.futureLeader-detailList-item.item-2 {
  height: 4rem;
  left: 2.5rem;
  top: -3.4rem;
  width: 4rem;
}

.futureLeader-detailList-item.item-3 {
  bottom: -2.1rem;
  height: 4rem;
  left: .3rem;
  width: 4rem;
}

.futureLeader-detailList-item.item-4 {
  bottom: -8.6rem;
  height: 6.5rem;
  left: 11.5rem;
  width: 6.5rem;
}

.price.sectionCtr {
  background-color: #f4f4f4;
  padding-bottom: 5.5rem;
  padding-top: 8rem;
}

.price .sectionTtl {
  letter-spacing: 0;
  line-height: 1.3;
  margin-left: 11rem;
}

.priceTbl {
  margin: 0 auto;
  position: relative;
  width: 720px;
}

.iPad .priceTbl {
  width: 800px;
}

.priceTbl::before {
  background: url(../img/deco_priceTbl-hayashi_pc.png) no-repeat 0 0 / contain;
  content: "";
  height: 72px;
  left: 55%;
  position: absolute;
  top: 2px;
  transform: translate(-50%, -100%);
  width: 279px;
}

.priceTbl th,
.priceTbl td {
  background-color: #fff;
  border: 2px solid #f4f4f4;
  font-size: 1.5rem;
  text-align: center;
}

.priceTbl .priceTbl-hdr {
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: .01em;
  padding: 1rem 0;
}

.priceTbl-hdr.blank {
  background-color: transparent;
}

.priceTbl-hdr.basic {
  background-color: #009380;
  position: relative;
}

.priceTbl-hdr.basic::before {
  background: url(../img/deco_priceTbl_basic_pc.png) no-repeat 0 0 / contain;
  content: "";
  display: block;
  height: 48px;
  left: 7px;
  position: absolute;
  top: -5px;
  width: 27px;
}

.priceTbl-hdr.basic::after {
  color: #f20f04;
  content: "New!";
  display: block;
  font-size: 2rem;
  font-weight: 700;
  left: 40px;
  position: absolute;
  text-shadow: 1px 0 0 #fff, 1px 1px 0 #fff, 0 1px 0 #fff, -1px 1px 0 #fff, -1px 0 0 #fff, -1px -1px 0 #fff, 0 -1px 0 #fff, 1px -1px 0 #fff, 0 0 3px #fff;
  top: -13px;
  transform: rotate(-10deg);
}

.priceTbl-hdr.master {
  background-color: #00584C;
}

.priceTbl-hdr.basic .priceTbl-hdr-inner {
  margin: 0 auto;
  padding-left: 30px;
  text-align: left;
  width: fit-content;
}

.priceTxt {
  display: block;
  font-size: 1.6rem;
  letter-spacing: .1em;
}

.priceTxt .num {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  font-size: 4rem;
  font-weight: 300;
  margin-top: -.15em;
  transform: scaleY(.85);
  transform-origin: 0 100%;
}

.priceTxt .inTax {
  font-size: 1rem;
}

.priceTbl-item-hdr {
  padding: 1.6rem 0;
}

.priceTbl-item-hdr-sub {
  display: block;
  font-size: 1.2rem;
}

.priceTbl-item-hdr.support {
  background-color: #bfbfbf;
  width: 3rem;
}

.iPad .priceTbl-item-hdr.support {
  width: 4rem;
}

.priceTbl-item-dtl {
  padding: 1.3rem 0;
  vertical-align: top;
}

.priceTbl-item-dtl.basic {
  color: #009380;
  width: 37%;
}

.priceTbl-item-dtl.master {
  color: #00584c;
  width: 33%;
}

.priceTbl-item-dtl.bg {
  background-color: #e0ece6
}

.priceTbl-item-dtl.txt {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  padding: .7rem 0;
}

.verticalTxt {
  display: inline-block;
  letter-spacing: .2em;
  padding: 0 .5em;
  white-space: pre;
  writing-mode: vertical-rl;
}

.symbol {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
}

.annotation {
  color: #000;
  font-size: 1.4rem;
  font-weight: 500;
}

.priceTbl-item-hdr-list {
  font-size: 1.4rem;
}

.priceTbl-item-hdr-list li {
  line-height: 1.5;
}

.priceTbl-item-hdr-wrapper {
  line-height: 1.5;
  margin: 0 auto;
  text-align: left;
  width: fit-content;
}

.priceTbl-under th {
  background-color: transparent;
}

.priceTbl-under td {
  background-color: transparent;
  padding-left: 1.5rem;
  text-align: center;
}

.priceTbl-under td img {
  width: auto;
}

.priceTbl-under-txt {
  color: #00584c;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 2rem auto 0;
  text-align: left;
  width: fit-content;
}

.toPrice-a {
  color: #000;
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  margin: 3rem 16rem 0 auto;
  text-decoration: underline;
  width: fit-content;
}

.movies.sectionCtr {
  padding-bottom: 10rem;
  padding-top: 6.4rem;
}

.movies .sectionHdr {
  position: relative;
}

.movies .sectionHdr::after {
  border-bottom: 3px solid #009582;
  content: "";
  display: block;
  margin: 4.6rem auto 7.7rem;
  position: relative;
  width: 6rem;
}

.movies .sectionTtl {
  letter-spacing: .01em;
  margin: 0 auto;
  position: relative;
  width: fit-content;
}

.movies .sectionTtl::after {
  background: url(../img/deco_moviesTtl.png) no-repeat 0 0 / contain;
  bottom: 0;
  content: "";
  display: block;
  height: 46px;
  position: absolute;
  right: -2rem;
  transform: translateX(100%);
  width: 41px;
}

.movies .sectionTtl-fukidashi-wrapper {
  display: block;
  margin: 0 auto 1rem;
  position: relative;
  width: fit-content;
}

.movies .sectionTtl-fukidashi-wrapper::before {
  border: 4px solid #fff;
  border-radius: 2em;
  clip-path: polygon(0 0, 15% 0, 15% 45%, 0 45%);
  content: "";
  display: block;
  height: calc(100% + 2px);
  left: -1px;
  position: absolute;
  top: -1px;
  width: calc(100% + 2px);
  z-index: 1;
}

.movies .sectionTtl-fukidashi-wrapper::after {
  background: url(../img/deco_fukidashi_pc.svg) no-repeat 0 0 / contain;
  content: "";
  display: block;
  height: 16px;
  left: 2px;
  position: absolute;
  top: -2px;
  width: 17px;
  z-index: 1;
}

.movies .sectionTtl-fukidashi {
  border: 2px solid #009582;
  border-radius: 2em;
  color: #777;
  display: block;
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: .01em;
  padding: .7rem 1.4rem;
  position: relative;
  width: fit-content;
}

.movies .sectionTtl-fukidashi::after {
  background-color: #fff;
  border: 2px solid #009582;
  border-right: none;
  border-top: none;
  bottom: 0;
  content: "";
  display: block;
  height: 9px;
  left: 50%;
  position: absolute;
  transform: scaleX(.8) translate(-50%, 100%) rotate(-45deg);
  transform-origin: 0 50%;
  width: 9px;
}

.movies .sectionTtl-fukidashi .col-009582 {
  font-size: 2.1rem;
}

.movies .sectionTtl-fukidashi .italic {
  display: inline-block;
  transform: rotate(13.2deg);
}

.movies-wrapper {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 92.1%;
}

.movies-1,
.movies-2 {
  border: 1px solid #009582;
  border-radius: .7rem;
  padding-bottom: 2.6rem;
}

.movies-1 {
  border-width: 4px;
  width: 50%;
}

.movies-2 {
  width: 47.3%;
}

.movies-ttl {
  font-size: 2.2rem;
  font-weight: 700;
  height: 13.2rem;
  letter-spacing: 0;
  line-height: 1.5;
  margin-bottom: 1rem;
}

.movies-2 .movies-ttl {
  padding-top: 4.25rem;
}

.movies-ttl-txt {
  display: block;
  margin: 0 auto;
  width: 370px;
}

.movies-ttl .bg-009582 {
  color: #fff;
  display: block;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 2.5;
  margin-bottom: auto;
  text-align: center;
  width: 100%;
}

.marker-yellow {
  background: linear-gradient(to top, #fff796 .4em, transparent .4em);
  padding-right: .5em;
}

.emphasis {
  background: radial-gradient(currentColor .08em, transparent .09em) repeat-x top center / 1em 1em;
  padding-top: .45em;
}

.movies-ttl .col-009582 {
  font-size: 3rem;
}

.youtubeMovie {
  border-radius: .8rem;
  display: block;
  margin: 0 auto;
}

.faq.sectionCtr {
  background-color: #f4f4f4;
  padding-bottom: 6rem;
  padding-top: 6.4rem;
}

.faq .sectionHdr {
  position: relative;
}

.faq .sectionHdr::after {
  border-bottom: 3px solid #5aa0bb;
  content: "";
  display: block;
  margin: 4.6rem auto 4.5rem;
  position: relative;
  width: 6rem;
}

.faq .sectionTtl {
  letter-spacing: .01em;
  margin: 0 auto;
  position: relative;
  width: fit-content;
}

.faqList {
  margin: 0 auto;
  width: 76%;
}

.faqList-inner {
  border-bottom: 1px solid #616161;
  padding-bottom: 4.2rem;
  padding-top: 4.5rem;
}

.faqList-inner:first-of-type {
  padding-top: 0;
}

.faqList-inner:last-of-type {
  border-bottom: none;
}

.faqList-question {
  align-items: center;
  display: flex;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 2rem;
  position: relative;
}

.faqList-question::before {
  align-items: center;
  background-color: #5aa0bb;
  border-radius: 50%;
  color: #fff;
  content: "Ｑ";
  display: flex;
  flex-shrink: 0;
  font-family: "Oswald", sans-serif;
  font-size: 2.7rem;
  height: 5rem;
  justify-content: center;
  margin-right: 2.6rem;
  padding-bottom: .3em;
  width: 5rem;
}

.faqList-answer {
  background-color: #d9e9ef;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
  margin-left: 6.3rem;
  padding: 1em;
}

.faqList-answer-tbl {
  background-color: #fff;
  margin: 1rem auto;
}

.faqList-answer-tbl th,
.faqList-answer-tbl td {
  border: 1px solid #000;
  line-height: 1.5;
  padding: .5em;
}

.faqList-answer-tbl .course {
  width: 32%;
}

.faqList-answer-tbl .plan {
  width: 35%;
}

.annotation {
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em;
}