@charset "utf-8";
/*----共通---*/
#header {
  height: 50px;
}

#container {
  background-color: #F0F0F0;
  letter-spacing: .05em;
}

.teiki-content .small {
  font-size: 12px;
}

.teiki-content .under {
    background: linear-gradient(transparent 30%, #ffe9b9 30%);
    color: #111!important;
}

.teiki-content {
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
}

.teiki-content h2 {
  font-weight: bold;
  font-size: 20px;
  display: block;
  position: relative;
  text-align: center;
  margin: 0 auto;
}

.teiki-content h2:before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px;
  display: inline-block;
  width: 35px;
  height: 8px;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%);
  background-color: #E74B5B;
}

.teiki-content .qa-area h2:before, .teiki-content .check-area h2:before {
  display: none;
}

/*----メインエリア---*/
.teiki-content .main_l_area {
  max-width: 1200px;
  background-color: #FFFFFF;
  margin: 0 auto;
  margin-top:112px;
}

.teiki-content .main_l_area .main_img {
  max-width: 1200px;
}

.teiki-content .main_l_area .main_img_txt {
  background: linear-gradient(135deg, #e74b5b 0%, #b93b49 100%);
  color: #FFFFFF;
  text-align: center;
  font-size: 25px;
  padding: 16px 20px 14px;
  font-weight: bold;
  letter-spacing: .08em;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.teiki-content .main_l_area .main_img_txt>span{
  display:block;
}

.teiki-content .main_l_area .main_img_txt .delivery_lead{
  font-size:25px;
}

.teiki-content .main_l_area .main_img_txt .delivery_notice{
  margin:10px auto 0;
  padding:8px 14px;
  max-width:760px;
  font-size:15px;
  line-height:1.6;
  letter-spacing:0.04em;
  color:#fff8ef;
  background:rgba(255, 255, 255, 0.12);
  border:1px solid rgba(255, 255, 255, 0.18);
}

.teiki-content .main_l_area .main_img_txt .delivery_notice .notice_break{
  display:none;
}

.teiki-content .main_l_area .main_img_txt .delivery_notice em{
  font-style:normal;
  color:#fff3b8;
}

.teiki-content .main_l_area .main_img_txt .delivery_sub{
  margin-top:0px;
  font-size:12px;
  line-height:1.5;
  opacity:0.82;
}

.teiki-content .main_l_area .main_img_txt .sp_break{
  display:none;
}

/*----コンセプト---*/

.teiki-content .concept-area {
  padding: 4% 3%;
  text-align: center;
  font-weight: bold;
  background-image: url("../images/course/rakuraku_teiki/message_bk.jpg");
  width: auto;
  height: auto;
  padding-top: 8%;
  background-size: contain;
  background-repeat: no-repeat;
}

.teiki-content .concept-area .concept_txt {
  font-size: 20px;
  margin-bottom: 5%;
}

/*----こんな人におすすめ---*/

.teiki-content .recommend-area {
  background-image: url(../images/course/rakuraku_teiki/rcm_bk.jpg);
  height: 100%;
  padding-top: 2%;
  background-size: contain;
  background-repeat: no-repeat;
  text-align: center;
  padding: 4% 3% 29% 3%;
}

.teiki-content .recommend-area .rcd_txt {
  margin-top: 5%;
  font-size: 18px;
  text-align: center;
  display: block;
  padding-left: 4%;
}

.teiki-content .recommend-area .rcd_txt ul {
  padding-left: 0;
  list-style: none;
  display: inline-block;
}

.teiki-content .recommend-area .rcd_txt ul li {
  text-align: left;
  position: relative;
  padding-bottom: 10px;
}

.teiki-content .recommend-area .rcd_txt li:before {
  content: "";
  background-image: url(../images/course/rakuraku_teiki/check_mark.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  position: absolute;
  margin: auto;
  left: -10%;
  height: 30px;
  display: inline-block;
}

/*----間違いない理由---*/

.teiki-content .reason-area {
  display: block;
  padding: 3% 3% 0%;
}

.teiki-content .reason-area .reason_content {
  display: grid;
  grid-template-columns: 1fr 3fr;
  column-gap: 3%;
  padding: 3% 13% 1%;
}

.teiki-content .reason-area .first {
  padding: 6% 13% 0%;
}

.teiki-content .reason-area .reason_content .reason_img {
  max-width: 185px;
  width: 100%;
}

.teiki-content .reason-area .reason_content .reason_txt h3 {
  font-weight: bold;
  font-size: 16px;
  color: #E74B5B;
}

.teiki-content .reason-area .matome {
  text-align: center;
  font-weight: bold;
  padding-top: 4%;
  font-size: 20px;
}

.teiki-content .reason-area .yajirusi {
  display: block;
  margin: 0 auto;
  vertical-align: middle;
  color: #E74B5B;
  line-height: 1;
  position: relative;
  width: 0.18em;
  height: 3em;
  background: currentColor;
}

.teiki-content .reason-area .yajirusi::before {
  content: '';
  width: 1.5em;
  height: 1.5em;
  border: 0.25em solid currentColor;
  border-top: 0;
  border-right: 0;
  transform: rotate(-45deg);
  transform-origin: bottom left;
  position: absolute;
  left: 50%;
  bottom: -0.1em;
  box-sizing: border-box;
}

/*----おすすめポイント---*/

.teiki-content .point-area {
  background-image: url("../images/course/rakuraku_teiki/point_bk.jpg");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 3% 3%;
}
.teiki-content .point-area .point_content {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  margin: 6% 8%;
}
.teiki-content .point-area .point_content .point_txt {
  border-left: 1px solid #707070;
  padding-left: 15px;
  padding-right: 15px;
}
.teiki-content .point-area .point_content .point_txt:first-child {
  border-left: none;
}

.teiki-content .point-area .point_content .point_txt a.sample_btn{
  display:flex;
  justify-content:center;
  text-decoration:none;
  align-items:center;
  background:#fcf9e5;
  border-radius:10px;
  height:46px;
  cursor:pointer;
  border:solid 1px #cebead;
}

.teiki-content .point-area .point_content .point_txt a.sample_btn:hover{
  opacity:0.9;
}

.teiki-content .point-area .point_content .point_txt .sample_btn>p{
  margin:0;
}

.teiki-content .point-area .point_content .point_txt .sample_btn>img{
  width:30px; 
  margin:0;
  padding-right:5px;
  margin-left:-10px;
  margin-bottom:-4px;
}

.teiki-content .point-area .point_content img {
  max-width: 240px;
  width: 100%;
  margin: auto;
}
.teiki-content .point-area .point_content h3 {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  padding-top: 5%;
  padding-bottom: 3%;
}

/*----継続率---*/

.teiki-content .plus-area {
  margin-top: 1%;
  text-align: center;
}

.teiki-content .plus-area p {
  padding-top: 4%;
  font-size: 16px;
  margin-bottom:0px;
}
.teiki-content .plus-area .plus_content {
  display: block;
  margin:60px 0;
}

.teiki-content .plus-area.shokai .plus_content {
  display:block;
}

.teiki-content .plus-area .plus_content img{
  margin: 0 auto;
  max-width: 450px;
}

.teiki-content .plus-area.shokai img{
  width:330px;
}

.teiki-content .plus-area h3 {
  font-weight: bold;
  font-size: 18px;
}

/*----コース---*/

.teiki-content .course-area{
    padding: 4% 6% 3%;
    text-align: center;
}

.teiki-content .course-area .price_list{
    padding-top: 4%;
}

.teiki-content .course-area .price_list>p{
  padding:1% 9%;
  text-align:left;
}

.teiki-content .course-area h3{
    font-weight: bold;
    font-size: 20px;
    color: #FFFFFF;
    padding: 1.5% 0%;
    display: block;
    margin-bottom: 2%;
}

.teiki-content .course-area .price_list>h3>span{
  color:#fff;
  font-size:16px;
  display:block;
  padding:0;
  padding-top:3px;
  margin:0;
  line-height:1em;
  opacity:0.8;
  mix-blend-mode:overlay;
  letter-spacing:0.15em;
}

.teiki-content .course-area div.price_list>h3{
  line-height:1.2em;
  border-radius:4px;
}

.teiki-content .course-area .price5000 h3{
    background-color: #e74b5b;
}

.teiki-content .course-area .price10000 h3{
    background-color: #78ca58;
  color:#fff;
    padding: 1.5% 0;
  line-height:1.2em;
}

.teiki-content .course-area .ribbon_box {
  position: relative;
  display: block;
  line-height: 1.4;
  background-color: #959393;
}
.teiki-content .course-area .ribbon {
  display: inline-block;
  margin: 0 0 0 -5px;
  padding-top: 8px;
  width: 100px;
  height: 36px;
  position: absolute;
  top: -10px;
  left: 0;
  color: white;
  box-sizing: border-box;
  background-color: #E74B5B;
}
.teiki-content .course-area .mark_title {
  margin: 0;
  padding-left: 5px;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
}
.teiki-content .course-area .mark_title:before {
  position: absolute;
  top: 100%;
  left: 0;
  border: none;
  border-right: solid 5px #AC444D;
  border-bottom: solid 5px transparent;
  content: '';
}
.teiki-content .course-area .mark_title:after {
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  right: -10px;
  z-index: 1;
  border-style: solid;
  border-width: 18px 10px 18px 0;
  border-color: #E74B5B transparent;
  content: '';
}

.teiki-content .course-area .price20000 h3{
    background-color: #bfa74c;
}

.teiki-content .course-area .description{
    text-align: left!important;
}

.teiki-content .course-area img{
    max-width: 150px;
}

.teiki-content .course-area h4{
    font-weight: bold;
    font-size: 17px;
}

.teiki-content .course-area span.icon{
    color: #E74B5B;
}

.teiki-content .course-area span.waribiki{
    display:block;
}

.teiki-content .course-area .course_content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  margin:1% 8%;
}

.teiki-content .course-area .course_content .icon{
  color:#fff;
  background:#E74B5B;
  font-size:15px;
  margin:5px;
  padding:6px;
  border-radius:15px;
  white-space:nowrap;
}

.teiki-content .course-area .course_content .icon.red{
  background:#ca2031;
}

.teiki-content .course-area .course_content .icon.white{
  background:#67c243;
}

.teiki-content .course-area .course_content .icon.spark{
  background:#BA8400;
}

.teiki-content .course-area .course_content .icon.rose{
  background:#ed818c;
}

.teiki-content .course-area .course_content .icon.keizoku{
}

.teiki-content .course-area .course_content h3{
  background:none;
  color:#222;
  margin-bottom:0px;
}

.teiki-content .course-area .course_content li{
  display:flex;
  flex-direction:row;
  justify-content:space-between;
  align-items:center;
  border-bottom:#ccc solid 1px;
  padding:30px 0;
  position:relative;
}

.teiki-content .course-area .course_content li:before{
  position:absolute;
  content:"毎月";
  top:25px;
  left:-5px;
  font-size:16px;
  background:#edb500;
  color:#221b02;
  font-weight:bold;
  padding:10px 10px;
  border-radius:40px;
}

.teiki-content .course-area .course_content li.kakutuki:before{
  position:absolute;
  content:"隔月";
  background:#222;
  color:#fff;
  font-weight:bold;
  padding:10px 10px;
  border-radius:40px;
}

.teiki-content .course-area .course_content li>div{
  display:flex;
  flex-direction:row;
  justify-content:space-between;
  align-items:center;
  padding:0;
  gap:25px;
  font-size:18px;
  text-align:left;
}

.teiki-content .course-area .course_content li>div>.desc>.icons{
  line-height:44px;
}

.teiki-content .course-area .course_content li:last-child{
  border:none;
}

.teiki-content .course-area .course_content .course_img{
  border-radius:75px;
  width:150px;
  height:150px;
}

.teiki-content .course-area .course_content p{
  margin-bottom:0px;
}

.teiki-content .course-area .course_content .course_note{
  font-size:13px;
  line-height:1.7;
  padding-right: 30px;
}

.teiki-content .course-area .course_content .title_with_icon{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.teiki-content .course-area .course_content .title_with_icon .icons{
  line-height:1;
}

.teiki-content .course-area .course_content .title_with_icon .icon{
  margin:0;
}

.teiki-content .course-area .price20000 .title_with_icon .icons{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  column-gap:8px;
  row-gap:6px;
}

.teiki-content .course-area .price20000 .title_with_icon .icon{
  margin:0;
}

.teiki-content .course-area .price20000 .course_btn{
  width:215px;
  min-width:215px;
}

.teiki-content .course-area .price20000 .course_content li:nth-child(2) .title_with_icon .icons{
  margin-top:0;
  margin-bottom:8px;
}

.teiki-content .course-area .price20000 .course_content li:nth-child(2) .title_with_icon{
  align-items:flex-start;
  row-gap:0;
}

.teiki-content .course-area .price20000 .course_content li:nth-child(2) .title_with_icon h3{
  padding-bottom:0;
}

.teiki-content .course-area .price5000 .comparison_table{
  display:grid;
  grid-template-columns: 170px repeat(5, minmax(0, 1fr));
  grid-template-rows: 230px 86px 100px 88px 1fr 96px;
  gap:0;
  margin:3% 0 0;
  border:1px solid #d9cfc3;
  border-radius:0;
  overflow:visible;
  background:#fffdf9;
}

.teiki-content .course-area .price5000 .comparison_table>li{
  display:contents;
  padding:0;
}

.teiki-content .course-area .price5000 .comparison_table>li:before{
  display:none;
}

.teiki-content .course-area .price5000 .comparison_table .cell{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:74px;
  padding:16px 14px;
  border-bottom:1px solid #e8dfd4;
  text-align:center;
  font-size:14px;
  line-height:1.7;
  color:#4f4034;
  background:#fff;
  box-sizing:border-box;
  border-right:1px solid #d9cfc3;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell{
  justify-content:center;
  padding:16px 18px;
  font-weight:bold;
  color:#6b5648;
  background:#f3e6da;
}

.teiki-content .course-area .price5000 .comparison_table .cell_heading{
  min-height:auto;
  padding:20px 14px 18px;
  flex-direction:column;
  justify-content:flex-start;
  gap:12px;
  background:linear-gradient(180deg, #fff9f2 0%, #fff 100%);
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell_heading{
  justify-content:center;
  background:#f3e6da;
  color:#9b3f4b;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell_btn{
  background:#f3e6da;
}

.teiki-content .course-area .price5000 .comparison_table h4{
  margin:0;
  font-size:16px;
  line-height:1.5;
  color:#7f2b37;
}

.teiki-content .course-area .price5000 .comparison_table .cell_link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  color:inherit;
  text-decoration:none;
}

.teiki-content .course-area .price5000 .comparison_table .course_img{
  width:100px;
  height:100px;
  border-radius:50%;
  object-fit:cover;
  border:4px solid #f4eadf;
}

.teiki-content .course-area .price5000 .comparison_table .price_value{
  font-size:22px;
  font-weight:bold;
  color:#3c2e25;
  letter-spacing:0.02em;
}

.teiki-content .course-area .price5000 .comparison_table .icons{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
}

.teiki-content .course-area .price5000 .comparison_table .icon{
  margin:0;
  min-width:2.5em;
  padding:4px 8px;
  font-size:12px;
  line-height:1.2;
}

.teiki-content .course-area .price5000 .comparison_table .type_mix{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.teiki-content .course-area .price5000 .comparison_table .mix_group{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.teiki-content .course-area .price5000 .comparison_table .mix_row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:nowrap;
}

.teiki-content .course-area .price5000 .comparison_table .mix_icons{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:nowrap;
}

.teiki-content .course-area .price5000 .comparison_table .mix_text{
  font-weight:bold;
  color:#4f4034;
  white-space:nowrap;
}

.teiki-content .course-area .price5000 .comparison_table .mix_sep{
  font-size:10px;
  font-weight:bold;
  color:#8c7767;
  line-height:1;
}

.teiki-content .course-area .price5000 .comparison_table .mix_or{
  font-size:11px;
  line-height:1;
  color:#8c7767;
}

.teiki-content .course-area .price5000 .comparison_table .mix_note{
  font-size:11px;
  line-height:1.5;
  color:#8c7767;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(2) .cell:nth-child(4) .mix_icons{
  display:grid;
  grid-template-columns:repeat(2, max-content);
  justify-content:center;
  column-gap:8px;
  row-gap:6px;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(2) .cell:nth-child(4) .type_mix{
  padding-top:10px;
  padding-bottom:10px;
}

.teiki-content .course-area .price5000 .comparison_table .note{
  align-items:flex-start;
  font-size:13px;
}

.teiki-content .course-area .price5000 .comparison_table .cell_btn{
  padding:18px 12px;
  background:#fff9f2;
}

.teiki-content .course-area .price5000 .comparison_table .course_btn{
  width:100%;
  max-width:150px;
  height:48px;
  font-size:13px;
  border-radius:3px;
  box-shadow:none;
}

.teiki-content .course-area .price5000 .comparison_table .course_btn:after{
  right:12px;
}

.teiki-content .course-area .price5000 .comparison_table .cell_label{
  display:none;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(1){
  grid-column:1;
  grid-row:1;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(2){
  grid-column:1;
  grid-row:2;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(3){
  grid-column:1;
  grid-row:3;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(4){
  grid-column:1;
  grid-row:4;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(5){
  grid-column:1;
  grid-row:5;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(6){
  grid-column:1;
  grid-row:6;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(2) .cell{
  grid-column:2;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(3) .cell{
  grid-column:3;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(4) .cell{
  grid-column:4;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(5) .cell{
  grid-column:5;
}

.teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(6) .cell{
  grid-column:6;
  border-right:none;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(1){
  grid-row:1;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(2){
  grid-row:2;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(3){
  grid-row:3;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(4){
  grid-row:4;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(5){
  grid-row:5;
}

.teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(6){
  grid-row:6;
  border-bottom:none;
}

.teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:last-child{
  border-bottom:none;
}

.teiki-content .course-area .course_btn{
  display: flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:0 42px 0 20px;
  color: #221b02;
  background:#edb500;
  border:1px solid #d6a300;
  text-decoration: none;
  font-size: 16px;
  letter-spacing:0.06em;
  border-radius:4px;
  font-weight:bold;
  position:relative;
  width:215px;
  height:88px;
  box-shadow:none;
  transition:background 0.2s ease, transform 0.2s ease;
}

.teiki-content .course-area .course_btn:after{
    content: "";
    display:block;
    position:absolute;
    top:50%;
    right:14px;
    transform:translateY(-50%);
    width:26px;
    height:26px;
    border-radius:50%;
    background-color:rgba(255, 255, 255, 0.22);
    background-image:url(../images/menu/arrow_r.svg);
    background-repeat:no-repeat;
    background-position:center;
    background-size:7px 12px;
    cursor:pointer;
    pointer-events: none;
    opacity:0.95;
}

.teiki-content .course-area .course_btn:hover{
  color:#221b02;
  background:#e0aa00;
  transform:translateY(-1px);
}


.teiki-content .course-area .course_btn.comming{
  background:#6f675f;
  border-color:#625951;
  color:#f7f1e7;
  user-select:none;
  box-shadow:none;
}

.teiki-content .course-area .course_btn.comming:after{
  display:none;
}

.teiki-content .course-area .course_btn.comming:hover{
  opacity:1;
  cursor:auto;
}

.teiki-content .space_border{
    border-top: 1px solid rgba(0,0,0,0.2);
}

/*----ご確認事項---*/

.teiki-content .check-area {
  width: 100%;
  margin-top: 3%;
}
.teiki-content .check_content {
  padding: 1% 4% 3%;
  font-size: 14px;
  letter-spacing: .01em;
}
.teiki-content .check_content h2 {
  padding-bottom: 3%;
}

.teiki-content .check_content h3 {
    font-size:120%;
    margin-top:20px;
    font-weight:bold;
}

.teiki-content .check_content p.at{
    font-weight:bold;
    color:#e74b5b;
}

.teiki-content .check_content p.at span{
    font-size:130%;
    border-bottom:double;
}

.teiki-content .check_content ul{
    padding-left:1em;
}

.teiki-content .check_content ul li{
    list-style-type:disc;
}

.teiki-content .check_content ul ul{
    margin-top:0.5em;
}

.teiki-content .check_content ul ul li{
    list-style-type:"※";
}


@media screen and (max-width:1000px) {
  .teiki-content .check_content {
    padding: 5%;
    font-size: 12px;
  }
}

/*----ボタン設定---*/
.teiki-content .concept-area .scroll-btn {
  position: relative;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  background: transparent;
  border-radius: 50px;
  color: #E74B5B;
  outline: none;
  transition: all 0.2s ease;
}
.teiki-content .concept-area .scroll-btn:hover {
  border-color: transparent;
}
.teiki-content .concept-area .scroll-btn span {
  position: relative;
  z-index: 2;
  font-size: 18px;
  display: block;
  padding: 10px 30px;
  background: #E74B5B;
  border-radius: 50px;
  color: #FFF;
  transition: all 0.3s ease;
}

.pushdown:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 4px;
  left: 0;
  /*影の形状*/

  width: 100%;
  height: 100%;
  border-radius: 50px;
  background-color: #DADBE3;
}

.pushdown:hover span {
  background-color: #333;
  color: #fff;
  transform: translateY(4px);
}

/*----よくある質問----*/
.qa-area {
  background-color: #E4E4E4;
  padding-top: 4%;
}
.qa_section {
  padding: 0% 4% 3%;
  margin-top: 3%;
}

.qa_section h3{
    font-size:16px;
    font-weight:bold;
    margin-bottom:10px;
    margin-top:2em;
}

.accordion_list {
  margin-bottom: 1%;
}
.qa_header {
  background-color: #ffffff !important;
  padding: 1.5rem 4rem 1.5rem 2rem;
  position: relative;
  z-index: 1; /* +1 から修正 */
  cursor: pointer;
  transition: .2s;
}

/* 質問テキストの余白調整（必要に応じて） */
.qa_q-txt {
  margin: 0;
  font-size:16px;
  font-weight:bold;
}

/* 質問の先頭に「Q.」を追加 */
.qa_q-txt::before {
  content: "Q. ";
  font-weight: bold; /* 文字を太字にする場合 */
  color: #000;
}

/* 回答の先頭に「A.」を追加（もし必要であれば） */
.qa_a-txt::before {
  content: "A. ";
  font-weight: bold;
  color: #000;
}

.qa_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.qa_header .i_box:before, 
.qa_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.qa_header .i_box:before {
  border-top: 4px solid #000000;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 22px;
}
.qa_header .i_box:after {
  border-left: 4px solid #000000;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 30px;
  transition: .3s;
}
.qa_header.open .i_box:after {
  height: 0;
}
.qa_inner {
  display: none;
  /* 旧 qa_bodyinner の余白をここに統合 */
  padding: 1.5rem 4rem 1.5rem 2rem; 
  box-sizing: border-box;
  background: #fff;
}

/* 画面幅が768px以下のとき（スマホ・タブレット向け） */
@media screen and (max-width: 768px) {
  .qa_header {
    /* 右側のパディングを 4rem から 2.5rem に減らす（左側は2remをキープ） */
    padding: 1.5rem 3.5rem 1.5rem 2rem;
  }

  .qa_header .i_box {
    /* アイコンの位置を右端から 2rem から 1rem に寄せる */
    right: 0;
  }
}

/* 回答テキストの余白調整 */
.qa_a-txt {
  margin: 0;
}

@media screen and (max-width: 736px) {
  .question-unit .accordion_list .qa_header {
    padding: 1.5rem 2rem 1.5rem 1.0rem;
  }

  .question-unit .accordion_list .qa_header .i_box {
    right: 0.8rem;
    width: 15px;
    height: 15px;
    margin-top: -7px;
  }

  .question-unit .accordion_list .qa_header .i_box:before {
    width: 16px;
    right: 1px;
  }

  .question-unit .accordion_list .qa_header .i_box:after {
    height: 15px;
    right: 7px;
  }

  .question-unit .accordion_list .qa_inner {
    padding: 0 35px 20px 0;
  }
}

.qa_headinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.qa_headinner::before {
  position: absolute;
  left: 0;
  top: -5px;
  content: "Q.";
  color: #000000;
  font-size: 1.5em;
  font-weight: bold;
}
.qa_headinner p.qa_q-txt {
  margin-bottom: 0px;
}
.qa_headinner p.qa_q-txt {
  font-size: 1.1em;
  font-weight: bold;
}


@media screen and (max-width: 736px) {
  .qa_headinner {
    padding-left: 25px;
    padding-right: 25px;
  }

  .qa_headinner::before {
    font-size: 14px;
  }

  .qa_headinner p.qa_q-txt {
    font-size: 14px;
  }
}
.qa_bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.qa_bodyinner p.qa_a-txt {
  font-size: 14px;
  margin-bottom: 0px;
}
@media screen and (max-width: 736px) {
  .qa_bodyinner {
    padding-left: 25px;
  }

  .qa_bodyinner p.qa_a-txt {
    font-size: 13px;
  }
}

/*----ページトップに戻るボタン---*/
.page_top {
  display: none;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  position: fixed;
  right: 20px;
  bottom: 20px;
  background-color: #AA8875;
  opacity: 0.8;
  z-index: 10;
}
.page_top a {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
}
.page_top a::after {
  content: '';
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid;
  position: absolute;
  color: #FFF;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}

@keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 0.7
  }
}
.fade-animation {
  opacity: 0;
  transition: opacity 1.5s, transform 0.8s;
}
.fadein {
  opacity: 1;
}
@media only screen and (max-width: 850px) {
  .page_top {
    bottom: 70px;
  }
}

.teiki-content .sp {
  display: none;
}
@media screen and (max-width:850px) {
  .teiki-content .check_content {
    padding: 5%;
    font-size: 12px;
  }
  .teiki-content .sp {
    display: block;
  }
  .teiki-content .pc {
    display: none!important;
  }
}
@media only screen and (max-width: 1200px) {
    .teiki-content .point-area {
      background-image: url("../images/course/rakuraku_teiki/point_bk_sp.jpg");
      background-size: cover;
    }
}
@media only screen and (max-width: 850px) {

    .teiki-content .main_l_area {
      margin-top:142px;
    }

    .teiki-content .point-area .point_content .point_txt a.sample_btn {
      margin-bottom:40px;
    }
  
    .teiki-content .main_l_area .main_img_txt{
        font-size: 16px;
    }
    .teiki-content .main_l_area .main_img_txt .delivery_lead{
        font-size: 16px;
        line-height: 1.6;
    }
    .teiki-content .main_l_area .main_img_txt .delivery_notice{
        margin-top:8px;
        padding:7px 10px;
        font-size:12px;
        line-height:1.6;
    }
    .teiki-content .main_l_area .main_img_txt .delivery_notice .notice_break{
        display:inline;
    }
    .teiki-content .main_l_area .main_img_txt .delivery_sub{
        font-size:10px;
        line-height:1.5;
    }
    .teiki-content .concept-area{
        padding: 10% 3% 6%;
    }
    .teiki-content .concept-area {
      background-image: url("../images/course/rakuraku_teiki/message_bk_sp.jpg");
    }
    .teiki-content .concept-area .concept_txt {
        font-size: 15px;
        margin-bottom: 5%;
    }
    .teiki-content .concept-area .scroll-btn span {
        font-size: 14px;
    }
    .teiki-content .recommend-area {
        background-image: url(../images/course/rakuraku_teiki/rcm_bk_sp.jpg);
    padding: 6% 4% 30% 4%;
    background-size: cover;
    background-position: center;
    }
    .teiki-content .recommend-area .rcd_txt{
        font-size: 14px;
        margin-top: 10%;
        margin-left: 15px
    }
    .teiki-content .recommend-area .rcd_txt li:before {
        width: 25px;
    }
    .teiki-content .reason-area {
        padding: 10% 3% 0%;
    }
    .teiki-content .reason-area .reason_content {
        display:block;
        padding: 5% 5% 1%;
    }
    .teiki-content .reason-area .first{
        padding: 10% 5% 0%;
    }
    .teiki-content .reason-area .reason_content .reason_img {
        margin:auto;
        max-width: 160px;
            padding-bottom: 10px;
    }
    .teiki-content .reason-area .reason_content .reason_txt h3{
            font-size: 15px;
    }
    .teiki-content .reason-area .matome {
        font-size: 15px;
    }
    .teiki-content .point-area .point_content{
        display:block;
        margin: 10% 5% 6%;
    }
    .teiki-content .point-area .point_content .point_txt{
        border:none;
        padding: 0;
    }
    .teiki-content .point-area .point_content img{
        max-width: 180px;
    }
    .teiki-content .plus-area {
        padding: 10% 8% 6%;
    }
    .teiki-content .plus-area p{
        font-size: 15px;
    }
    .teiki-content .plus-area .plus_content {
        display: block;
    }
    .teiki-content .plus-area h3{
        font-size: 15px;
    }
    .teiki-content .plus-area p {
        padding-top: 10%;
    }
    .teiki-content .course-area .course_content{
      
    }
    .teiki-content .course-area img {
        margin:0 auto;
    }
    .teiki-content .course-area .price_list {
        padding-top: 10%;
    }
    .teiki-content .course-area .price_list:last-child{
        margin-top:10%;
    }
    .qa-area{
        padding-top: 7%;
    }
    .qa_headinner::before {
        top: 0;
    }
    .teiki-content .course-area .course_content li{
        flex-direction:column;
        gap:30px;
    }

    .teiki-content .course-area .price5000 .comparison_table{
      display:grid;
      grid-template-columns: 150px 92px 92px 170px 210px 140px;
      grid-template-rows: 72px repeat(5, auto);
      margin:6% 0 0;
      min-width:854px;
      width:max-content;
      border:1px solid #d9cfc3;
      border-radius:0;
      box-shadow:none;
      background:#fffdf9;
      overflow:visible;
    }

    .teiki-content .main_l_area .main_img_txt .sp_break{
      display:inline;
    }

    .teiki-content .course-area .price5000 .comparison_scroll{
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
      padding-bottom:10px;
    }

    .teiki-content .course-area .price5000 .comparison_table>li{
      display:contents;
    }

    .teiki-content .course-area .price5000 .comparison_table .cell{
      min-height:0;
      padding:12px 10px;
      justify-content:center;
      text-align:center;
      border-right:1px solid #d9cfc3;
    }

    .teiki-content .course-area .price5000 .comparison_table .cell_heading{
      min-height:0;
      padding:18px 12px 16px;
    }

    .teiki-content .course-area .price5000 .comparison_table h4{
      font-size:15px;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_img{
      width:86px;
      height:86px;
    }

    .teiki-content .course-area .price5000 .comparison_table .cell_label{
      display:none;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell{
      grid-row:1;
      padding:10px 8px;
      font-size:12px;
      line-height:1.5;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(1){
      grid-column:1;
      grid-row:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(2){
      grid-column:2;
      grid-row:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(3){
      grid-column:3;
      grid-row:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(4){
      grid-column:4;
      grid-row:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(5){
      grid-column:5;
      grid-row:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .comparison_labels .cell:nth-child(6){
      grid-column:6;
      grid-row:1;
      border-right:none;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(2) .cell{
      grid-row:2;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(3) .cell{
      grid-row:3;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(4) .cell{
      grid-row:4;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(5) .cell{
      grid-row:5;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column:nth-child(6) .cell{
      grid-row:6;
      border-right:1px solid #d9cfc3;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(1){
      grid-column:1;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(2){
      grid-column:2;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(3){
      grid-column:3;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(4){
      grid-column:4;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(5){
      grid-column:5;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_column .cell:nth-child(6){
      grid-column:6;
      border-right:none;
      border-bottom:1px solid #e8dfd4;
    }

    .teiki-content .course-area .price5000 .comparison_table .price_value{
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:18px;
    }

    .teiki-content .course-area .price5000 .comparison_table .note{
      display:flex;
      align-items:center;
      justify-content:flex-start;
      text-align:left;
      font-size:13px;
    }

    .teiki-content .course-area .price5000 .comparison_table .icons{
      justify-content:center;
    }

    .teiki-content .course-area .price5000 .comparison_table .type_mix{
      gap:6px;
    }

    .teiki-content .course-area .price5000 .comparison_table .mix_icons{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:4px;
      flex-wrap:nowrap;
    }

    .teiki-content .course-area .price5000 .comparison_table .mix_icons .icon{
      min-width:2.2em;
      padding:4px 7px;
      font-size:11px;
    }

    .teiki-content .course-area .price5000 .comparison_table .mix_text{
      font-size:12px;
      white-space:nowrap;
    }

    .teiki-content .course-area .price5000 .comparison_table .mix_sep{
      font-size:9px;
    }

    .teiki-content .course-area .price5000 .comparison_table .cell_btn{
      justify-content:center;
      padding:14px 10px;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_btn{
      max-width:142px;
      height:48px;
      font-size:13px;
      box-shadow:none;
    }

    .teiki-content .course-area .price5000 .comparison_table .course_btn:after{
      right:12px;
    }

    .teiki-content .course-area .price20000 .title_with_icon .icons{
      margin-bottom:8px;
    }

    .teiki-content .course-area .price20000 .course_content li:nth-child(2) .title_with_icon h3{
      padding-bottom:1.5%;
    }
    
    .teiki-content .course-area .price20000 .course_content .title_with_icon h3{
      line-height:150%;
    }    

    .teiki-content .course-area .course_btn{
      display: flex;
      align-items:center;
      justify-content:center;
      box-sizing:border-box;
      padding:0 40px 0 18px;
      color: #fffaf3;
      text-decoration: none;
      font-size: 17px;
      border-radius:4px;
      font-weight:bold;
      position:relative;
      width:215px;
      height:70px;
  }
  .teiki-content .course-area .course_btn:after{
      right:14px;
  }
  .teiki-content .course-area .course_content li>div{
    flex-direction:column;
    gap:10px;
  }
}
