@charset "UTF-8";

:root {
  --content-max: 1000px;
  --gutter-inline: 16px;
  --text: #333;
  --border: #ddd;
  --focus: #2684ff;
  /* --font-size-100: 1.2rem;
  --font-size-150: 1.3rem;
  --font-size-200: 1.4rem;
  --font-size-250: 1.5rem;
  --font-size-base: 1.6rem;
  --font-size-350: 1.7rem;
  --font-size-400: 1.8rem;
  --font-size-450: 2.0rem;
  --font-size-500: 2.4rem;
  --font-size-550: 2.8rem;
  --font-size-600: 3.2rem;
  --font-size-650: 3.8rem;
  --font-size-700: 4.2rem; */
  --font-size-100: 0.700em;
  --font-size-150: 0.750em;
  --font-size-200: 0.800em;
  --font-size-250: 0.850em;
  --font-size-base: 1.000em;
  --font-size-350: 1.025em;
  --font-size-400: 1.050em;
  --font-size-450: 1.075em;
  --font-size-500: 1.100em;
  --font-size-550: 1.125em;
  --font-size-600: 1.150em;
  --font-size-650: 1.175em;
  --font-size-700: 1.200em;
  --color-accent: #f74b4b;
  --color-bg: #fff;
  --color-muted: #666;
  --color-chip: #ffecce;
  --color-cta-normal: #4E75BA;
  --color-cta-apply: #cb5274;
  --color-cta-check: #2cb1bc;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --shadow-card: 0 2px 10px rgba(0, 0, 0, .06);
}

/*sec_tit*/
#main .sec_tit_01 {
  background: url(/img/hl/sec_tit_01.png) no-repeat;
  font-size: 150%;
  padding: 11px 0 11px 45px;
  margin: 0 0 10px;
  color: #520;
  font-weight: normal;
  text-align: left;
  width: 100%;
  height: 20px;
  line-height: 100%;
}

#main .sec_tit_02,
#main .sec_tit_02_cp,
#main .sec_tit_02_info {
  background: url(/img/hl/sec_tit_02.png) no-repeat;
  font-size: 150%;
  line-height: 240%;
  padding: 0 0 0 40px;
  margin: 50px 0 10px;
  height: 45px;
  color: #410;
  width: 100%;
  text-align: left;
}

#main .sec_tit_02_cp {
  background: url(/img/hl/sec_tit_02.png) no-repeat;
}

#main .sec_tit_02_info {
  background: url(/img/hl/sec_tit_02.png) no-repeat;
}

#main .sec_tit_03 {
  font-size: 1.25em;
  font-weight: 600;
  border-left: 5px solid #5d3a2f;
  padding-left: 0.5em;
  padding-top: 0.1em;
  padding-bottom: 0.2em;
  color: #5d3a2f;
  margin-top: 2em;
  margin-bottom: 1em;
}

#main .sec_tit_04 {
  margin: 25px 0 15px;
  padding: 0 0 2px;
  font-size: 1.3em;
  line-height: 1.6em;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: #5d3a2f;
  border-bottom: 2px solid #411c19;
}

#main .sec_tit_05 {
  background: url(/img/school-material/common/h-3.gif) no-repeat;
  font-size: 13px;
  line-height: 13px;
  font-weight: bold;
  padding: 1px 0 0 25px;
  color: #520;
  margin: 0 0 5px 0;
}

#main .tit_com {
  font-size: 130%;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: rgba(244, 115, 31, 0.75);
  border-top: 1px solid rgba(244, 115, 31, 0.15);
  border-bottom: 1px solid rgba(244, 115, 31, 0.15);
  background: rgba(255, 221, 147, 0.25);
  text-align: center;
  padding: 8px 0;
  margin: 30px 0 10px;
}

#main .tit_com.st_com {
  font-size: 140%;
  color: rgba(255, 0, 0, 0.75);
  border-top: 1px solid rgba(255, 0, 0, 0.15);
  border-bottom: 1px solid rgba(255, 0, 0, 0.15);
  background: rgba(255, 0, 40, 0.1);
}

#main .tit_com .blink {
  font-weight: 600;
  /*-webkit-animation:blink 5.0s ease-in-out infinite alternate;
-moz-animation:blink 5.0s ease-in-out infinite alternate;
animation:blink 5.0s ease-in-out infinite alternate;*/
}

@-webkit-keyframes blink {
  0% {
    opacity: 0.3;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes blink {
  0% {
    opacity: 0.3;
  }

  100% {
    opacity: 1;
  }
}

@keyframes blink {
  0% {
    opacity: 0.3;
  }

  100% {
    opacity: 1;
  }
}

#main .sec_tit_car,
#main .sec_tit_bike {
  font-size: 110%;
  line-height: 170%;
  font-weight: bold;
  padding: 8px 0 14px 60px;
  margin: 0 0 5px 0;
  color: #520;
}

#main .sec_tit_car {
  background: url(/img/hl/sec_tit_car.png) no-repeat;
}

#main .sec_tit_bike {
  background: url(/img/hl/sec_tit_bike.png) no-repeat;
}

/* display */
.dp_n {
  display: none !important;
}

.dp_b {
  display: block !important;
}

/*txt_box*/
.txt_box {
  border-radius: 4px;
  line-height: 160%;
  padding: 10px 15px 0;
}

.txt_box p {
  font-size: 90%;
  margin-bottom: 10px;
}

.txt_box a {
  font-weight: bold;
  margin: 0 3px;
}

.txt_f {
  margin: 15px 0;
  font-size: 105%;
  line-height: 2;
  font-weight: 700;
  padding: 0.25em 0.5em;
  color: #494949;
  background: transparent;
  border-left: solid 3px #411c19;
}

.btn_sug_flex {
  display: flex;
  justify-content: space-around;
  text-align: center;
  text-decoration: none;
}

.btn_sug {
  margin-bottom: 25px !important;
  padding: 10px 20px;
  border-radius: 5px;
  width: 20%;
  color: #FFF !important;
  text-decoration: none;
}

.btn_sug_flex .sug_cta {
  background: #0068b7;
}

.btn_sug_flex .sug_school {
  background: #ed6d35;
}

/*column_txt*/
#main .column_txt {
  font-size: 125%;
  line-height: 180%;
  margin-bottom: 15px;
}

#main .column_note {
  font-size: 105%;
  line-height: 1.6;
  margin-bottom: 15px;
}

.column_sub_tit {
  display: block;
  font-weight: 550;
  font-size: 115%;
}

.column_sub_tit:before {
  content: "〇";
  margin-right: 5px;
  font-size: 70%;
  position: relative;
  top: -1px;
}

.column_read {
  border: 1px solid rgba(244, 115, 31, 0.15);
  background: rgba(255, 221, 147, 0.25);
  color: rgba(244, 115, 31, 0.95);
  border-radius: 4px;
  line-height: 120%;
  padding: 10px 15px;
  margin-bottom: 10px;
}

.column_graph_l {
  float: left;
  width: 410px;
}

.column_graph_r {
  float: right;
  width: 340px;
}

.column_graph_tit {
  text-align: center;
  font-weight: bold;
  font-size: 90%;
  margin-bottom: 10px;
}

.column_graph_img img {
  width: 340px;
  height: auto;
}

.column_graph_comment {
  background: #fff5cf;
  border-radius: 6px;
  padding: 3px 8px;
  margin: 10px 0 15px;
}

.area_box a {
  font-size: 115%;
  margin: 0;
  color: #06c;
}

.area_box_mtit {
  font-size: 115%;
  color: #06c;
  margin: 10px auto 25px;
  border-radius: 5px;
}

.area_box_mtit li {
  padding-top: 20px;
  padding-left: 28px;
  text-indent: -28px;
  color: #333;
  font-weight: bold;
  font-size: 120%;
}

.area_box_tit {
  font-weight: bold;
  margin: 10px auto;
  padding-left: 1em;
  text-indent: -1em;
}

#main .area_box .column_txt {
  margin-bottom: 30px;
}

.area_box .txt_box p {
  font-size: 130%;
}

.area_box_tit::before {
  content: "●";
  color: #909b28;
  font-size: 120%;
  padding-right: 5px;
}

.area_box .column_txt {
  margin-left: 5px;
}

.area_box_link {
  margin-bottom: 20px;
}

.area_box_link li,
.area_box_link p {
  padding: 5px 0 10px 15px;
  line-height: 1.8;
}

/*top_txt*/
.top_txt a:hover {
  color: #e8710a;
  text-decoration: none;
}

.top_txt a {
  color: #06c;
}

.top_txt img {
  width: 105px;
}

/*report_box*/
.report_box {
  background: url(/img/common/report_back.png) repeat-y center top;
  padding: 24px 16px 15px;
  margin: 0 0 15px;
  border-radius: 2px;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, .13);
}

.report_box p {
  padding: 0 15px;
  line-height: 195%;
}

.report_box img {
  border-radius: 4px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, .5);
}

.report_box .report_stage {
  text-align: center;
  font-weight: bold;
  font-size: 120%;
  color: #ff6f89;
  margin-bottom: 5px;
}

.report_stage:before,
.report_stage:after {
  content: "～～～";
  margin: 0 5px;
  letter-spacing: 6px;
}

.report_tit {
  font-size: 150%;
  text-align: center;
  margin-bottom: 25px;
}

.report_tit:before,
.report_tit:after {
  content: "～";
  margin: 0 10px;
}

#main .report_tit_sub {
  font-weight: bold;
  font-size: 115%;
  margin-bottom: 5px;
}

.report_tit_sub_st {
  font-weight: bold;
  font-size: 90%;
  margin-right: 6px;
}

.report_tit_sub_st:before,
.report_tit_sub_st:after {
  letter-spacing: 6px;
}

.report_tit_sub_st:before {
  content: "【";
}

.report_tit_sub_st:after {
  content: "】";
}

.report_extra {
  border: solid 2px #f90;
  border-radius: 8px;
  padding: 8px 8px 0;
  margin-bottom: 15px;
}

.report_step {
  text-align: center;
  color: #666;
}

#main .report_step a {
  font-weight: normal;
  font-size: 140%;
  margin: 15px 0 5px;
  color: #666;
  text-decoration: none;
}

#main .report_step a:hover {
  color: #f60;
}

/*cm_tb*/
table.cm_tb {
  border: 1px solid #eee;
  width: 100%;
  font-size: 1.1em;
}

table.cm_tb tr,
table.cm_tb .pref,
table.cm_tb .school {
  background: #f9f8fa;
}

table.cm_tb th,
table.cm_tb td {
  border: 1px solid #ddd;
  vertical-align: middle;
  text-align: center;
  padding: 4px 6px;
}

table.cm_tb th {
  background: rgba(244, 236, 225, 0.8);
  border: 1px solid #fff;
  line-height: 2.5;
  font-weight: normal;
}

table.cm_tb td.school {
  text-align: left;
}

table.cm_tb a {
  text-decoration: none;
}

table.cm_tb.tb_txt_01 th {
  font-size: 110%;
}

table.cm_tb.tb_txt_01 td {
  font-size: 120%;
  font-weight: bold;
  color: #333;
}

table#school_list_tb .pref,
table#bike_list_tb .pref {
  background: #f9f8fa;
}

/*CampaignBanner*/
#CampaignBanner {
  width: 1024px;
  margin: 0 auto 10px;
}

#CampaignBanner a:hover {
  opacity: 0.7;
}

.banner_l {
  float: left;
}

.banner_r {
  float: right;
}

/*side_banner*/
#side_banner {
  margin: 10px auto 0;
  height: 0;
  width: 1024px;
}

#side_banner a:hover {
  opacity: 0.7;
}

.side_banner_l {
  margin-left: -1195px;
}

.side_banner_r {
  margin-left: 1039px;
  margin-top: -570px;
}

/*more*/
.more {
  text-align: right;
  margin-top: 6px;
}

.more:before {
  content: "★";
  color: #f80;
}

.more a {
  font-weight: normal;
  text-decoration: none;
}

.more a:hover {
  text-decoration: underline !important;
}

/*more_big*/
.more_big_red a {
  background: #d60304;
  border-radius: 30px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .2);
  color: #fff !important;
  display: block;
  font-size: 170%;
  font-weight: bold;
  margin: 15px auto 50px;
  padding: 15px 0;
  text-align: center;
  text-decoration: none;
  width: 90%;
}

.more_big_re a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/*banner_box*/
.banner_box {
  padding: 10px 0 0;
}

.banner_box li {
  float: left;
  margin: 0 6px 12px;
}

.banner_box img {
  border-radius: 2px;
}

/*banner_tri*/
.banner_tri dl {
  float: left;
  margin: 0 3px;
  width: 390px;
}

.banner_tri dt {
  margin-bottom: 5px;
  text-align: center;
  background: #fffbeb;
}

.banner_tri img {
  border-radius: 2px;
  width: 260px;
  height: auto;
}

#main .banner_tri a {
  color: #333;
}

#purpose_pick.banner_tri {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
}

#purpose_pick.banner_tri dl {
  flex-basis: 30%;
}

/*trend_pick feature_pick*/
#trend_pick {
  background: #ffe9e7;
}

#feature_pick {
  background: #fff1de;
}

/*school_pick*/
#school_pick {
  padding-top: 30px;
}

#school_pick ul {
  margin: auto;
  background: #fff;
  position: relative;
  height: 430px;
}

#school_pick ul li {
  text-align: center;
  width: 80%;
  animation-name: album;
  -webkit-animation-name: album;
  animation-duration: 32s;
  -webkit-animation-duration: 32s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
  opacity: 0;
}

#school_pick ul .img_01 {
  animation-delay: 0s;
  -webkit-animation-delay: 0s;
  position: absolute;
  top: 0;
  left: 10%;
}

#school_pick ul .img_02 {
  animation-delay: 8s;
  -webkit-animation-delay: 8s;
  position: absolute;
  top: 0;
  left: 10%;
}

#school_pick ul .img_03 {
  animation-delay: 16s;
  -webkit-animation-delay: 16s;
  position: absolute;
  top: 0;
  left: 10%;
}

#school_pick ul .img_04 {
  animation-delay: 24s;
  -webkit-animation-delay: 24s;
  position: absolute;
  top: 0;
  left: 10%;
}

@keyframes album {
  0% {
    opacity: 0;
    z-index: 9;
  }

  12.5% {
    opacity: 1;
    z-index: 101;
  }

  37.5% {
    opacity: 1;
    z-index: 10;
  }

  50% {
    opacity: 0;
    z-index: 9;
  }
}

@-webkit-keyframes album {
  0% {
    opacity: 0;
    z-index: 9;
  }

  12.5% {
    opacity: 1;
    z-index: 101;
  }

  37.5% {
    opacity: 1;
    z-index: 10;
  }

  50% {
    opacity: 0;
    z-index: 9;
  }
}

/*purpose_pick cheap_pick*/
#purpose_pick .txt_box,
#cheap_pick .txt_box {
  margin-bottom: 15px;
}

/*purpose_top*/
.purpose_top {
  margin-top: 10px;
}

.purpose_top ul li {
  float: left;
  margin: 0 4px 4px 0;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  box-shadow: 0 0 8px rgba(0, 0, 0, .05) inset;
}

.purpose_top ul li:hover {
  background: #fff5d7;
}

.purpose_top ul a {
  text-decoration: none;
  color: #111;
}

.purpose_top ul a:hover {
  color: #111;
}

.purpose_img,
.purpose_txt {
  float: left;
  display: block;
  height: 40px;
}

.purpose_img {
  width: 40px;
  border-right: dashed 1px #eee;
}

.purpose_img img {
  width: 25px;
  padding: 7px;
  border-radius: 8px;
}

.no_img img {
  width: 20px;
  padding: 10px;
}

.purpose_txt {
  width: 153px;
  font-size: 125%;
  line-height: 240%;
  text-align: center;
}

/*useful*/
.useful_box {
  float: left;
  width: 230px;
  margin-right: 7px;
  padding-bottom: 7px;
}

.useful_box:last-child {
  float: right;
  margin-right: 0;
}

.useful_tit {
  color: #520;
  background: #eeeadc;
  border: 1px solid #dad6c8;
  font-size: 125%;
  text-align: center;
  padding: 5px 0;
  border-radius: 8px;
  margin-bottom: 6px;
}

.useful_item {
  margin-bottom: 3px;
  padding-bottom: 5px;
  border-bottom: 1px dashed #eee;
}

.useful_item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
}

.useful_item_tit:before {
  content: "★";
  color: #f80;
  font-size: 80%;
  margin-right: 3px
}

.useful_item a {
  text-decoration: none;
  margin: 0;
}

.useful_item a:hover {
  opacity: 0.8;
}

.useful_item_tit {
  font-weight: bold;
}

.useful_item_txt {
  font-size: 85%;
  line-height: 135%;
  padding: 3px 5px;
  background: #fffbeb;
  color: #000;
  border-radius: 4px;
}

.useful_item_txt:hover {
  color: #333;
}

/*sokuho over*/
.situation_img_01,
.situation_img_02 {
  text-align: center;
}

.situation_img_01 {
  background: #ffb9b0;
  border-radius: 4px;
}

.situation_bt {
  margin-bottom: 15px;
}

.situation_bt input {
  cursor: pointer;
  width: 250px !important;
  height: 100% !important;
  letter-spacing: 2px;
  margin: 0 20px;
  font-weight: bold;
  font-size: 120%;
  color: #fff;
  border-radius: 12px;
  padding: 8px 0 9px;
  text-decoration: none;
  text-align: center;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, .3);
  text-shadow: -1px -1px 1px rgba(0, 0, 0, .45);
  background: #d14044;
  background: -moz-linear-gradient(top, #d14044, #ff625d);
  background: -webkit-gradient(linear, left top, left bottom, from(#d14044), to(#ff625d));
  border-bottom: 5px solid #be2d31;
  border-right: 2px solid #be2d31;
  border-top: none;
  border-left: none
}

.situation_bt input:hover {
  border-bottom-width: 2px;
  border-right-width: 1px;
  margin: 3px 20px 0;
}

.a {
  background: #fff;
  border-radius: 4px;
  border: 1px solid #f2f2f2;
  box-shadow: 0 0 8px rgba(0, 0, 0, .05) inset;
  margin: 0 0 20px;
  padding: 5px 20px;
}

.situation {
  width: 100%;
  line-height: 120%;
  margin-bottom: 20px;
  border-collapse: collapse;
  border-spacing: 0;
}

.situation a {
  text-decoration: none;
  font-weight: bold;
}

.situation a:hover {
  text-decoration: underline !important;
}

.situation th,
.situation td {
  border: 1px solid;
  padding: 4px 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 85%;
}

.situation th {
  font-weight: bold;
}

.situation .situation_tit {
  background: #e42600 !important;
  color: #fff;
  padding: 4px 10px;
  font-size: 90%;
}

.situation .situation_school {
  font-size: 90%;
}

.situation .situation_school:before {
  content: "★";
  color: #f80;
  font-size: 90%;
}

#sokuho .sokuho_school {
  text-align: left;
  width: 40%;
}

.table-ind {
  color: white;
  font-size: 115% !important;
}

.sok-mt .table-ind {
  background: #448800;
}

.sok-mt th {
  background: #EEFFDD;
  padding: 9px 6px !important;
}

.sok-mt th,
.sok-mt td {
  border-color: #77cc22;
}

.sok-at .table-ind {
  background: #ff4455;
}

.sok-at th {
  background: #ffcbc8;
  padding: 9px 6px !important;
}

.sok-at th,
.sok-at td {
  border-color: #ffa6a8;
}

.sokuho_school {
  text-align: left !important;
  font-weight: bold;
  padding: 6px 3px !important;
  width: 50%;
}

.sokuho_school a:before {
  content: "★";
  color: #f19500;
  margin-right: 3px;
}

.attention {
  font-size: 85%;
  line-height: 135%;
}

.attention .bold {
  font-weight: bold;
}

/*school_cp*/
/*.school_cp_main{
float:left;
width:564px;
}*/
.school_cp_pamphlet {
  float: right;
}

.school_cp_bt li {
  float: left;
}

.school_cp_tit {
  font-size: 115%;
  margin-bottom: 6px;
}

.school_cp_tit:before {
  content: "★";
  color: #f80;
  margin-right: 3px;
  font-size: 125%;
}

.school_cp_tit_st {
  color: #f30;
  margin: 0 5px;
  font-weight: bold;
  font-size: 120%;
}

#school_cp_info .school_cp_cont {
  /*width:560px;*/
  height: 492px;
  overflow: auto;
  font-size: 13px;
  line-height: 18px;
  margin-bottom: 4px;
  background: #fff;
  border: solid 2px #e8e8e8;
  border-radius: 2px;
}

.school_cp_top #school_cp_info .school_cp_cont {
  height: 100%;
  overflow: inherit;
}

#school_cp_info .cpSchool a,
#school_cp_info .cpSchool .no_link {
  width: 95%;
  font-size: 105%;
  line-height: 130%;
  display: block;
  color: #fff;
  background: #325ee3;
  border-radius: 15px;
  padding: 2px 6px;
  margin: 5px 10px 3px;
  text-decoration: none;
}

#school_cp_info .cpSchool a:hover {
  background: #0942c8;
}

#school_cp_info .cpSchool a:after {
  content: "学校の詳細を見る";
  color: #0942c8;
  background: #fff;
  border-radius: 15px;
  padding: 1px 8px;
  margin-left: 8px;
  font-size: 75%;
  position: relative;
  top: -1px;
  opacity: 0.5;
}

#school_cp_info .cpSchool a:hover:after {
  opacity: 1;
}

#school_cp_info .cpName {
  font-size: 100%;
  margin: 4px 10px 5px;
}

#school_cp_info .cpName:before {
  content: "★";
  color: #f80;
  font-size: 100%;
}

#school_cp_info .cpName a {
  font-weight: bold;
  margin: 0 3px;
}

#school_cp_info .topInfo {
  width: 97%;
  border: 1px #fff solid;
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 105%;
  margin-left: 9px;
}

#school_cp_info .topInfo th {
  padding: 3px;
  color: #fff;
  border: #fff solid;
  border-width: 0 0 1px 1px;
  background: #f8a696;
  line-height: 120%;
  text-align: center;
  font-size: 90%;
}

#school_cp_info .topInfo td {
  padding: 2px 1px;
  color: #ff8c7c;
  border: 1px #ffc4b4 solid;
  border-width: 0 0 1px 1px;
  text-align: center;
  vertical-align: middle;
  font-size: 90%;
  font-weight: bold;
}

/*#school_cp_info .topInfo th:hover{
background:#fd6656;
color:#fff;
}
#school_cp_info .topInfo td:hover{
background:#f7ac40;
color:#fff;
}*/
#school_cp_info .topInfo .cpPrice {
  color: #fff;
  background: #eb0900;
  border: 1px solid #fff;
  font-size: 110%;
  line-height: 125%;
  font-weight: bold;
  padding: 2px 5px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, .5);
}

#school_cp_info .attention {
  font-size: 90%;
  line-height: 105%;
  margin-left: 15px;
}

#school_cp_info .borderLine {
  margin: 5px 0;
}

/*review_box*/
.review_box {
  float: right;
  width: 195px;
  height: 508px;
}

/*spring_cp*/
#spring_cp_school li {
  float: left;
  margin: 0 5px 10px;
}

/*cp_pagelink*/
.cp_pagelink {
  font-size: 13px;
  font-weight: bold;
  line-height: 13px;
  margin: 20px 0;
  text-align: center;
}

.cp_pagelink li {
  background: url(/img/search/list-item/arrow.gif) no-repeat scroll left center transparent;
  display: inline;
  padding: 1px 6px 1px 17px;
}

/*examineArea*/
ul#examineArea {
  font-size: 14px;
  line-height: 25px;
  font-weight: bold;
  margin-bottom: 15px;
  color: #da8;
}

ul#examineArea li {
  display: inline;
  padding: 1px 6px 1px 17px;
  background: url(/img/hl/3.gif) no-repeat left;
}

ul#examineArea li a {
  text-decoration: none;
}

ul#examineArea li a:link {
  color: #520;
}

ul#examineArea li a:visited {
  color: #520;
}

ul#examineArea li a:active {
  color: #da8;
}

ul#examineArea li a:hover {
  color: #da8;
}

/*school_pick*/
.school_pick_set {
  float: left;
  width: 238px;
  margin: 0 10px 10px 0;
  padding: 10px;
}

.school_pick_set:nth-child(3n) {
  margin-right: 0;
}

.school_pick_set:nth-child(3n+1) {
  clear: both;
}

.school_pick_set .school_pick_img {
  margin-bottom: 5px;
  text-align: center;
}

.school_pick_set .school_pick_tit {
  margin-bottom: 5px;
  font-size: 95%;
}

.school_pick_txt li {
  font-size: 90%;
}

.school_pick_txt li:before {
  content: "★";
  color: #f80;
  margin-right: 3px;
}

/*school_pick_more*/
.spm_set {
  margin-top: 20px;
}

.spm_set a {
  display: flex;
  flex-wrap: wrap;
  border: solid 2px rgba(45, 4, 0, 0.85);
  border-top-width: 8px;
  border-radius: 2px 2px 6px 6px;
  text-decoration: none;
}

.spm_set a:hover {
  opacity: 0.7;
}

.spm_set_cp .spm_txt:after {
  content: "★ キャンペーン料金";
  background: #eb0900;
}

.spm_img {
  float: left;
  flex-basis: 220px;
  background: rgba(244, 236, 225, 0.5);
  border-radius: 8px 0 0 8px;
}

.spm_img img {
  width: 100%;
}

.spm_box_01,
.spm_box_02 {
  float: left;
  min-height: 200px;
}

.spm_box_01 {
  flex-basis: 328px;
  border-right: dashed 1px #ddd;
  padding: 12px 8px;
}

.spm_box_02 {
  width: 231px;
}

.spm_box_02 .spm_fee_set:nth-child(2) {
  border-top: dashed 1px #ddd;
  margin: -10px 0 20px;
}

.spm_fee_set {
  padding-right: 10px;
  height: 50%;
}

.spm_tit {
  color: rgba(45, 4, 0, 0.95);
  font-weight: 600;
  font-size: 120%;
}

.spm_car_type {
  line-height: 95%;
  margin-top: 5px;
  text-align: right;
  font-size: 125%;
  font-weight: bold;
  color: #000;
}

.spm_pref {
  color: #fff;
  background: rgba(45, 4, 0, 0.85);
  font-size: 85%;
  font-weight: bold;
  border-radius: 2px;
  padding: 1px 4px 2px;
  margin-right: 5px;
}

.spm_room_typ {
  margin: 12px 0 5px;
}

.spm_room_typ li {
  float: left;
  margin-right: 3px;
  margin-bottom: 3px;
  color: #fff;
  background: #57b57f;
  font-size: 90%;
  border-radius: 2px;
  padding: 1px 6px 0;
}

.spm_txt {
  color: #333;
  font-size: 110%;
}

.spm_txt:after {
  content: "教習所を見る";
  display: block;
  width: max-content;
  font-size: 120%;
  font-weight: 600;
  background: #f80;
  color: #fff;
  border-radius: 6px;
  padding: 10px 20px;
  margin-top: 18px;
}

.spm_red_word {
  color: #f00;
  font-size: 95%;
  font-weight: bold;
  text-align: right;
}

.spm_txt li {
  color: rgba(45, 4, 0, 0.95);
  font-weight: 600;
  font-size: 90%;
  margin-top: 5px;
  text-indent: -1.2em;
  margin-left: 1.2em;
}

.spm_txt li:before {
  content: "★";
  color: #f80;
  margin-right: 3px;
}

.spm_fee,
.spm_fee_only_at,
.spm_fee_special {
  color: #eb0900;
  font-size: 170%;
  line-height: 90%;
  margin-top: 9px;
  text-align: right;
}

.spm_fee:before {
  color: #333;
  margin-right: 15px;
}

.spm_fee_only_at:before {
  color: #333;
  margin-right: 15px;
}

.spm_box_02 .spm_fee_set:nth-child(1) .spm_fee:before {
  content: "MT";
}

.spm_box_02 .spm_fee_set .spm_fee_only_at:before {
  content: "AT";
}

.spm_box_02 .spm_fee_set:nth-child(2) .spm_fee:before {
  content: "AT";
}

.spm_box_02 .spm_fee_set:nth-child(1) .spm_f .spm_fee:before {
  display: none !important;
}

.spm_box_02 .spm_fee_set .spm_fee_special:before {
  content: none !important;
}

.fee_mt:before,
.fee_at:before {
  content: "税込";
  color: #fff;
  background: #eb0900;
  font-size: 50%;
  font-weight: bold;
  border-radius: 2px;
  padding: 0 4px 2px;
  margin-right: 5px;
  position: relative;
  top: -4px;
}

.spm_fee_no_tax {
  color: #666;
  font-size: 110%;
  line-height: 90%;
  margin-top: 3px;
  margin-bottom: 3px;
  text-align: right;
}

.spm_fee_no_tax:before {
  content: "税抜";
  color: #fff;
  background: #666;
  font-size: 70%;
  font-weight: bold;
  width: 2em;
  border-radius: 2px;
  padding: 1px 4px;
  margin-right: 5px;
}

.spm_day,
.spm_gday {
  color: #333;
  font-size: 85%;
  font-weight: bold;
  text-align: right;
}

.spm_day:before {
  content: "入校日：";
  font-weight: normal;
}

.spm_gday:before {
  content: "卒業日：";
  font-weight: normal;
}

.spm_room {
  color: #333;
  font-size: 95%;
  font-weight: bold;
  text-align: right;
  padding-top: 5px;
}

.spm_shortest {
  color: #333;
  font-size: 95%;
  font-weight: bold;
  text-align: right;
}

.spm_shortest:before {
  content: "最短日数：";
  font-weight: normal;
}

/*.spm_room:before{
content:"部屋タイプ：";
font-weight:normal;
}*/
.spm_kc {
  color: #333;
  text-align: right;
  font-size: 140%;
  margin-top: 9px;
  font-weight: lighter;
}

.spm_cp {
  color: #333;
  font-size: 85%;
  font-weight: bold;
  text-align: right;
  margin: 3px 0 5px;
}

.spm_com {
  flex-basis: 100%;
  text-align: center;
  font-size: 110%;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.03em;
  padding: 9px 0 7px;
  background: rgba(45, 4, 0, 0.85);
  color: rgba(255, 255, 255, 0.95);
}

.spm_com_dec {
  font-weight: 600;
}

.spm_com_dec:before,
.spm_com_dec:after {
  content: "★☆★";
  margin: 0 5px;
  font-size: 80%;
  position: relative;
  top: -2px;
}

.spm_dayset {
  text-align: right;
}

/*dummy*/
span.dummy {
  display: none;
}

/*sec_link*/
.sec_link {
  border-radius: 4px;
  background: #fed;
  padding: 8px;
  margin-top: 15px;
}

.sec_link li {
  float: left;
  margin-right: 20px;
}

.sec_link li:before {
  content: "★";
  color: #f80;
}

.sec_link li a {
  font-weight: bold;
  text-decoration: none;
  line-height: 200%;
  font-size: 120%;
}

/*page_main_txt*/
.page_main_txt {
  font-size: 1.2em;
  line-height: 180%;
}

.page_main_txt a {
  font-weight: bold;
  text-decoration: none;
  margin: 0 5px;
}

#main .page_main_txt a:hover {
  text-decoration: underline;
}

/*column_txt*/
.column_txt {
  font-size: 115%;
  line-height: 180%;
}

.column_img {
  width: 75%;
  margin: 0 auto;
}

/*bt_01*/
#main .bt_01 a {
  display: block;
  color: rgba(0, 0, 255, 0.9) !important;
  text-decoration: none;
  line-height: 1.4;
  text-align: center;
  background: rgba(192, 192, 192, 0.85);
  border: solid 2px rgba(192, 192, 192, 0.85);
  border-radius: 2px;
  margin: 0 auto 30px;
  padding: 5px 10px;
  font-size: 145%;
  font-weight: bold;
}

#main .bt_01 a:hover {
  opacity: 0.7;
}

/* gNav */
.gNavArea {
  position: relative;
}

.gNavWord {
  position: absolute;
  bottom: 6px;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  font-size: 16px;
  font-weight: bold;
}

.onWord {
  color: #572900;
}

.offWord {
  color: #de9462;
}

/*recomend*/
.rec_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
}

.rec_plan {
  flex-basis: 49%;
  margin-bottom: 30px;
  filter: brightness(105%);
}

.rec_plan a:link {
  color: #520 !important;
  text-decoration: none !important;
}

.rec_plan a:visited {
  color: #520 !important;
}

.sec_rec .rec_plan:first-of-type {
  margin: 20px auto;
}

.sec_rec .rec_plan:last-child {
  margin: 20px auto;
}

.rec_plan img {
  max-width: 100%;
  height: auto;
}

.rec_plan h3 {
  font-size: 1.2rem;
  margin-top: 10px;
  font-weight: 700;
}

.rec_txt {
  margin-top: 10px;
}

.rec_btn {
  margin-top: 15px;
  padding: 5px;
  width: 105px;
  vertical-align: middle;
  background: #411c19;
  border-radius: 5px;
}

.rec_btn p {
  color: #fff;
}

/*link_list*/
.link_list {
  overflow: hidden;
  border-top: 1px solid #cecece;
}

.link_list dl {
  clear: both;
  padding: 0 0 3px;
}

.link_list .featureList-arrow {
  background: url(/sp/images/index/menu_icon.png) no-repeat scroll 97% center rgba(0, 0, 0, 0);
  clear: both;
  overflow: hidden;
  border-bottom: 1px solid #cecece;
}

.link_list dt {
  float: left;
  margin: 6px 0 0 5px;
  width: 67px;
}

.link_list dt img:not([width]),
input[type=image]:not([width]) {
  width: 100px;
}

.link_list dd {
  float: left;
  margin: 6px 0 0 40px;
  padding: 0;
  text-align: left;
  width: 80%;
}

.link_list .featureList-head {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  color: #000000;
  margin-bottom: 10px;
}

.link_list .featureList-body-01 {
  color: #000000;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
}

.link_list .featureList-body-01 span {
  font-weight: bold;
}

.link_list .black {
  color: #000000;
  font-weight: bold;
}

/*sch_cp_tb*/
.sch_cp_tb {
  width: 100%;
  box-sizing: border-box;
  border-collapse: collapse;
  border: 1px solid #333;
}

.sch_cp_tb tr {
  padding: 5px;
  border: 1px dotted #333;
}

.sch_cp_tb tr:first-child {
  border: 1px solid #333;
}

.sch_cp_tb tr:nth-child(even) {
  background: #f9f8fa;
}

.sch_cp_tb th {
  width: 18%;
  padding: 5px;
  text-align: center;
  background: #f9f5f0;
  border: 1px solid #333;
  font-weight: 500;
  font-size: 110%;
}

.sch_cp_tb th:first-child {
  width: auto;
}

.sch_cp_tb td {
  padding: 10px 5px;
  vertical-align: middle;
  border: 1px dotted #333;
}

/* sch_li */
.sch_li_item {
  padding: 15px 0 5px;
  margin: 0 auto;
  border-top: solid 1px darkgrey;
}

.sch_li_item a {
  color: rgba(45, 4, 0, 0.95) !important;
  text-decoration: none;
}

.sch_li .sch_li_item:last-child {
  border-bottom: solid 1px darkgrey;
}

.sch_n_area {
  text-align: center;
}

.sch_n {
  margin-bottom: 10px;
  text-align: left;
  font-size: 125%;
  font-weight: 700;
}

.sch_n_pl {
  margin-right: 10px;
  padding: 3px 10px;
  background: rgba(45, 4, 0, 0.85);
  color: #fff;
  font-size: 90%;
  font-weight: bold;
  border-radius: 2px;
}

.sch_li_img {
  text-align: center;
}

.sch_li_img img {
  max-width: 100%;
}

.sch_li_cp {
  background: red;
  border-radius: 4px;
  margin-top: 5px;
}

.sch_li_cp p {
  padding: 4px;
  border-radius: 4px;
  text-align: center;
  font-size: 115%;
  font-weight: 700;
  color: white;
}

.sch_li_fee {
  width: 330px;
  height: 220px;
  background: #f9f5f0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sch_li_flex {
  display: flex;
  justify-content: space-around;
  margin: 10px 0;
}

.tax_inc {
  margin-bottom: 5px;
  color: red;
  font-size: 160%;
  font-weight: 700;
}

.no_tax {
  font-size: 115%;
  font-weight: 500;
}

.tax_inc:before {
  content: "税込";
  width: 2em;
  margin-right: 5px;
  padding: 2px 4px;
  vertical-align: middle;
  background: #eb0900;
  border-radius: 2px;
  line-height: 100%;
  color: #fff;
  font-size: 60%;
  font-weight: bold;
}

.no_tax:before {
  content: "税抜";
  width: 2em;
  margin-right: 5px;
  padding: 1px 4px;
  vertical-align: middle;
  background: #666;
  border-radius: 2px;
  color: #fff;
  font-size: 80%;
  font-weight: bold;
}

.sch_li_plan {
  border-top: dashed 2px #999;
  border-bottom: dashed 2px #999;
}

.car_type {
  margin: 5px 0;
  font-size: 150%;
  font-weight: 500;
}

.sch_li_other {
  text-align: left;
  margin: 5px 0;
}

/*areaMap_top*/
.areaMap_top ul#areaMap {
  width: 610px;
  height: 500px;
  background: url(/img/search/area/map.gif) no-repeat;
  position: relative;
  margin: 0 auto;
}

.areaMap_top ul#areaMap li.hokkaido {
  position: absolute;
  top: 30px;
  left: 490px;
  width: 99px;
  height: 84px;
  background: url(/img/search/area/hokkaido.gif) no-repeat;
}

.areaMap_top ul#areaMap li.hokkaido a {
  width: 99px;
  height: 45px;
}

.areaMap_top ul#areaMap li.tohoku {
  position: absolute;
  top: 130px;
  left: 330px;
  width: 108px;
  height: 82px;
  background: url(/img/search/area/tohoku.gif) no-repeat;
}

.areaMap_top ul#areaMap li.tohoku a {
  position: absolute;
  width: 99px;
  height: 45px;
  left: 0;
}

.areaMap_top ul#areaMap li.kanto {
  position: absolute;
  top: 270px;
  left: 440px;
  width: 111px;
  height: 71px;
  background: url(/img/search/area/kanto.gif) no-repeat;
}

.areaMap_top ul#areaMap li.kanto a {
  position: absolute;
  left: 12px;
  width: 100px;
  height: 46px;
}

.areaMap_top ul#areaMap li.hokuriku {
  position: absolute;
  top: 220px;
  left: 270px;
  width: 100px;
  height: 135px;
  background: url(/img/search/area/hokuriku.gif) no-repeat;
}

.areaMap_top ul#areaMap li.hokuriku a {
  width: 100px;
  height: 76px;
}

.areaMap_top ul#areaMap li.kansai {
  position: absolute;
  top: 380px;
  left: 310px;
  width: 99px;
  height: 77px;
  background: url(/img/search/area/kansai.gif) no-repeat;
}

.areaMap_top ul#areaMap li.kansai a {
  position: absolute;
  bottom: 0;
  width: 99px;
  height: 45px;
  left: 0;
}

.areaMap_top ul#areaMap li.chugoku {
  position: absolute;
  top: 270px;
  left: 150px;
  width: 98px;
  height: 88px;
  background: url(/img/search/area/chugoku.gif) no-repeat;
}

.areaMap_top ul#areaMap li.chugoku a {
  width: 98px;
  height: 45px;
}

.areaMap_top ul#areaMap li.shikoku {
  position: absolute;
  top: 410px;
  left: 200px;
  width: 99px;
  height: 75px;
  background: url(/img/search/area/shikoku.gif) no-repeat;
}

.areaMap_top ul#areaMap li.shikoku a {
  position: absolute;
  bottom: 0;
  width: 99px;
  height: 45px;
  left: 0;
}

.areaMap_top ul#areaMap li.kyushu {
  position: absolute;
  top: 300px;
  left: 30px;
  width: 117px;
  height: 85px;
  background: url(/img/search/area/kyushu.gif) no-repeat;
}

.areaMap_top ul#areaMap li.kyushu a {
  position: absolute;
  width: 99px;
  height: 45px;
  left: 0px;
}

.areaMap_top ul#areaMap li.okinawa {
  position: absolute;
  top: 380px;
  left: 10px;
  width: 97px;
  height: 67px;
  background: url(/img/search/area/okinawa.gif) no-repeat;
}

.areaMap_top ul#areaMap li.okinawa a {
  width: 97px;
  height: 45px;
}

/*q_and_a*/
.q_and_a {
  margin-bottom: 20px;
  font-size: 125%;
  line-height: 180%;
  text-indent: -2.3em;
  padding-left: 2.3em;
}

.question {
  margin-bottom: 5px;
  font-weight: 600;
}

.question::before {
  content: "Q";
  padding: 0px 5.5px 5px;
  margin-right: 10px;
  background: #89c3eb;
  border-radius: 3px;
  font-size: 21px;
  font-weight: 600;
  color: white;
}

.answer::before {
  content: "A";
  padding: 0px 6px 4px;
  margin-right: 10px;
  background: #ee827c;
  border-radius: 3px;
  font-size: 20px;
  font-weight: 600;
  color: white;
}

/* no_vacancy */
.no_vacancy {
  margin-left: 5px;
  padding: 2px;
  background-color: red;
  border-radius: 3px;
  font-weight: 700;
  color: #fff;
}

/*fix_insta*/
#fix_insta {
  position: fixed;
  right: -10px;
  bottom: 100px;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#fix_insta img {
  width: 35px;
  margin: 10px 15px 13px 10px;
}

#fix_insta a:hover {
  filter: brightness(105%);
  right: 0;
}

#fix_insta a {
  display: inline-block;
  position: relative;
  margin: 0 -5px;
  padding: 8px 0 10px;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 0 4px rgb(0 0 0 / 35%);
  border-radius: 3px 0 0 3px;
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.15em;
  text-decoration: none;
  text-align: center;
  color: rgba(0, 0, 0, 0.95) !important;
}

#fix_insta a::after {
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  pointer-events: none;
  position: absolute;
  margin: 3px;
  background-image:
    linear-gradient(to right, #000000, #000000 3px, transparent 3px, transparent 1px),
    linear-gradient(to right, #000000, #000000 3px, transparent 3px, transparent 1px),
    linear-gradient(to bottom, #000000, #000000 3px, transparent 3px, transparent 1px);
  background-size: 10px 1px, 10px 1px, 1px 10px;
  background-position: left top, left bottom, left top;
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
}

#fix_insta a span {
  display: block;
  font-size: 130%;
  letter-spacing: -0.05em;
  font-weight: bold;
  padding: 1px 5px 2px;
  margin: 0 15px 0 9px;
  background: #FFd800;
  border-radius: 2px;
  text-shadow: 1px 1px 1px rgb(255 255 255 / 40%);
}

/*top_plan*/
.top_plan {
  position: relative;
  margin: 10px 5px;
  padding: 5px;
  background: rgba(244, 236, 225, 0.9);
  border-bottom: dashed 2px #777;
  border-top: dashed 2px #777;
}

.top_plan::before {
  content: "";
  display: block;
  z-index: -1;
  position: absolute;
  bottom: -5%;
  left: 0;
  width: 100%;
  height: 110%;
  background: rgba(244, 236, 225, 0.9);
}

.top_plan a {
  text-decoration: none;
}

.top_plan .flex {
  display: flex;
  justify-content: space-between;
}

.top_plan .top_img {
  flex-basis: 34%;
}

.top_plan .top_img img {
  width: 100%;
  height: auto;
}

.top_plan .main_plan {
  flex-basis: 63%;
}

.top_plan .main_plan .area {
  display: block;
  width: 4.5em;
  margin: 0 5px 3px 0;
  padding: 3px 0;
  background: rgba(45, 4, 0, 0.9);
  border-radius: 2px;
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #fff;
}

.top_plan .main_plan .name {
  margin: 5px 0;
  text-decoration: underline;
  font-size: 100%;
  font-weight: bold;
}

.top_plan .specific {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 5px 0;
  font-size: 110%;
  color: #523e22;
}

.top_plan .specific:hover {
  color: #523e22;
}

.top_plan .price {
  font-size: 100%;
  font-weight: bold;
  color: red;
}

/* exlink */
.exlink {
  width: 95%;
  margin: 0 auto 15px;
}

.exlink dt {
  font-size: 115%;
  font-weight: bolder;
  margin-bottom: 8px;
}

.exlink dd::before {
  color: black;
  content: "・";
}

.exlink a {
  color: #06c;
}

.exlink a:active,
.exlink a:hover {
  color: #e8710a;
}

/*sps*/
br.sps {
  display: none;
}

/*new_plan_style*/
.new_plan_style .spm_set a {
  justify-content: space-between;
  min-height: 240px;
}

.new_plan_style .flex {
  display: flex;
}

.new_plan_style .spm_fee {
  font-size: 1.5rem;
}

.new_plan_style .spm_fee_no_tax {
  font-size: 1.1rem;
}

.new_plan_style .spm_tit {
  font-size: 1.1rem;
  margin: 5px 5px 10px;
}

.new_plan_style .spm_fee_no_tax {
  display: block;
}

.new_plan_style .spm_img {
  flex-basis: 40%;
  margin: 5px;
  background: none;
}

.new_plan_style .spm_img img {
  width: 222px;
}

.new_plan_style .spm_txt {
  font-weight: 600;
}

.new_plan_style .spm_txt_box {
  flex-basis: 70%;
}

.new_plan_style .spm_box:nth-child(1) {
  flex-basis: 70%;
}

.new_plan_style .spm_box:nth-child(3) {
  flex-basis: 26%;
  margin-right: 10px;
  padding-left: 10px;
  border-left: dashed 1px #ddd;
}

.new_plan_style .spm_box:nth-child(2) .spm_fee:before {
  content: "MT";
}

.new_plan_style .spm_box:nth-child(3) .spm_fee:before {
  content: "AT";
}

/*new_plan*/
.sch_title {
  display: inline-block;
  margin: 10px 0;
  font-weight: bold;
  font-size: 1.4em;
  color: #333;
}

.flex_rec {
  display: flex;
  align-items: flex-end;
}

.school_list .flex_rec {
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: baseline;
}

.plan_pt .flex_rec {
  align-items: center;
}

.plan_pt .flex_rec.cta_flex {
  justify-content: space-around;
}

.school_list {
  padding: 12px;
  color: #333;
  background: rgba(244, 236, 225, 0.8);
  width: 776px;
  display: inline-block;
  margin-bottom: 12px;
}

.school_list .plan_pt {
  flex-basis: 100%;
  margin: 5px 0;
  padding: 10px 10px 15px;
  background: #fff;
}

#main .school_img {
  flex-basis: 40%;
  text-align: center;
  float: none;
  width: auto;
}

#main .school_img img {
  height: auto;
}

#main .flex_about {
  flex-basis: 50%;
}

.school_name {
  background: rgba(255, 187, 153, 0.65);
  font-size: 120%;
  padding: 8px 6px;
  margin: 10px 0;
}

.about {
  flex-basis: 45%;
  margin: 0 0 10px;
  line-height: 1.4;
}

.about p {
  font-size: 1.1rem;
  color: #333;
}

.about .price_before {
  text-decoration: line-through;
  font-size: 1rem;
}

.about .price_after {
  text-decoration: underline;
  font-size: 1.5rem;
  font-weight: bold;
  color: #f80052;
}

.about .car:before,
.about .price:before,
.about .day:before,
.about .shortest:before,
.about .room:before,
.about .net:before,
.about .bath:before,
.about .near:before,
.about .pos_license:before {
  font-size: 0.8rem;
}

.about .car:before {
  content: "車種：";
}

.about .price:before {
  content: "税込料金：";
}

.about .price:nth-child(3)::before {
  content: "税抜料金：";
}

.about .day:before {
  content: "入校日：";
}

.about .shortest:before {
  content: "最短日数：";
}

.about .room:before {
  content: "部屋プラン：";
}

.about .net:before {
  content: "ネット：";
}

.about .bath:before {
  content: "風呂・トイレ：";
}

.about .near {
  text-indent: -3.7em;
  padding-left: 3.7em;
}

.about .near:before {
  content: "周辺施設：";
}

.about .pos_license:before {
  content: "所持免許：";
}

.school_txt_area {
  flex-basis: 50%;
}

.about_hotel {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(33, 33, 33, 0.5);
  position: relative;
}

.about_hotel:after {
  position: absolute;
  content: "宿泊施設情報";
  top: -9px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  padding: 0 5px;
  background: rgba(255, 255, 255, 1);
}

.about .full {
  display: inline-block;
  width: 100%;
  padding: 5px 0;
  background: rgba(245, 30, 60, 0.8);
  border-radius: 6px;
  text-align: center;
  font-size: 1.1em;
  font-weight: bold;
  color: #fff;
}

#main .school_txt {
  flex-basis: 50%;
  float: none;
  width: 97%;
  padding: 5px;
  background: rgba(255, 160, 100, 0.15);
  line-height: 1.3rem;
  font-size: 0.75rem;
}

#main .school_txt span {
  font-size: 0.9rem;
  font-weight: 500;
}

#main .school_txt span:before {
  content: "★";
  color: #ff4f6e;
}

#main .school_txt span.red:before {
  content: "";
}

.lic_type {
  font-size: 1.1rem;
  margin: 2px;
}

.lic_type:before {
  content: "★";
  color: #fa2;
  vertical-align: top;
}

.lic_type p {
  display: inline-block;
  margin-left: 4px;
  font-weight: bold;
}

/*地域別料金新FM*/
.spm_set_2 {
  margin-top: 20px;
}

.spm_set_2 a:hover {
  opacity: 0.7;
}

.spm_set_2 a {
  display: flex;
  border: solid 2px rgba(45, 4, 0, 0.85);
  border-top-width: 8px;
  border-radius: 2px 2px 6px 6px;
  text-decoration: none;
  justify-content: space-between;
}

.spm_set_2_c {
  flex-basis: 68%;
  display: flex;
  flex-wrap: wrap;
}

.spm_img_2 {
  flex-basis: 35%;
  background: rgba(244, 236, 225, 0.5);
  border-right: dashed 1px #ddd;
}

.spm_img_2 img {
  width: 100%;
  height: auto;
}

.spm_data_2 {
  flex-wrap: wrap;
  flex-basis: 62%;
  margin: 5px 1%;
}

.spm_car_typ_2 li {
  margin-right: 0.2em;
  margin-bottom: 0.3em;
  color: #fff;
  background: #00612A;
  font-size: 85%;
  border-radius: 0.3em;
  padding: 0.1em 0.3em;
  display: inline-block;
}

.spm_tit_2 {
  line-height: 130%;
  color: rgba(45, 4, 0, 0.95);
  font-weight: 600;
  font-size: 120%;
  margin-bottom: 10px;
}

.spm_pref_2 {
  color: #fff;
  background: rgba(45, 4, 0, 0.85);
  font-size: 90%;
  font-weight: bold;
  border-radius: 0.2em;
  padding: 0.1em 0.2em;
  margin: 0 0.2em;
}

.spm_txt_2 {
  color: #333;
  font-size: 110%;
  margin-top: 0.5em;
  padding-left: 0.5em;
}

.spm_txt_2 li:before {
  content: "★";
  color: #f80;
  margin-right: 0.2em;
}

.spm_txt_2 li {
  color: rgba(45, 4, 0, 0.95);
  font-weight: 600;
  font-size: 90%;
  margin-top: 5px;
  text-indent: -1.2em;
  margin-left: 1.2em;
}

.spm_set_fee_2 {
  flex-basis: 32%;
  border-left: dashed 1px #ddd;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
}

.spm_fee_box_2 {
  padding: 10px 2%;
}

.spm_fee_box_2:nth-child(2) {
  border-top: dashed 1px #ddd;
}

.spm_fee_tit_2 {
  color: #333;
  line-height: 1.2;
  text-align: left;
  margin-bottom: 10px;
}

.spm_fee2_2:before {
  content: "税込";
  color: #fff;
  background: #eb0900;
  font-size: 60%;
  line-height: 100%;
  font-weight: bold;
  border-radius: 0.3em;
  margin-right: 0.5em;
  padding: 0.2em 0.3em;
}

.spm_fee2_2.none:before {
  content: none;
}

.spm_fee2_2 {
  color: #eb0900;
  font-size: 130%;
  line-height: 1;
  font-weight: 600;
  margin-bottom: 10px;
  text-align: right;
}

.spm_fee2_2.none {
  padding-left: initial;
  flex-basis: 100%;
  text-align: center;
}

.spm_room_2 {
  color: #333;
  font-size: 95%;
  font-weight: bold;
  text-align: right;
}

.spm_cp_typ_2 {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}

.spm_cp_typ_2 li {
  color: #fff;
  font-size: 115%;
  font-weight: 550;
  border-radius: 0.4em;
  padding: 0.2em 0.4em;
}

.spm_cp_typ_2 li.fa {
  background: #E20851;
}

.spm_cp_typ_2 li.gr {
  background: #388555;
}

.spm_cp_typ_2 li.st {
  background: #1F69FF;
}

.spm_cp_2:before {
  content: "★";
  color: #f80;
  margin-right: 0.1em;
}

.spm_cp_2 {
  font-weight: bold;
}

.spm_cp_attent_2 {
  margin-top: 5px;
  color: #333;
  font-size: 78%;
  margin-left: 1em;
  text-indent: -1em;
}

/*rich_anchor*/
.rich_anchor {
  border: 1px solid #1185fb5c;
  box-shadow: 3px 3px 3px #c6b7b77d;
  position: relative;
  margin: 15px 0.5em;
  padding: 0.4em 0.5em 0.9em;
  border-radius: 5px;
}

.rich_anchor .rich_anchor_tit {
  padding-left: 0.25em;
  margin: 0.5em 0.2em;
  flex-basis: 100%;
  text-align: left;
  font-size: 1.2em;
  font-weight: 600;
  border-left: 5px solid #bf5757;
}

.follow .rich_anchor .rich_anchor_tit {
  background: rgb(255 252 245);
}

.rich_anchor a {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.tt.rich_anchor a {
  display: block;
}

.rich_anchor a .sp_img {
  flex-basis: 30%;
}

.rich_anchor a .sp_img img {
  width: 100%;
  height: auto;
}

.rich_anchor a .sp_txt {
  position: relative;
  font-size: 1.2em;
  color: #333;
  text-decoration: none;
  flex-basis: 65%;
}

.rich_anchor a .sp_txt:after {
  content: "詳細をチェック \025b6";
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 1em;
  padding: 5px;
  background: #3ba3b3;
  border-radius: 5px;
  color: #fff;
}

.tt.rich_anchor a .sp_txt:after {
  content: "空き状況を見る \025b6";
  background: #3ba3b3;
  border-bottom: 5px solid #175df7;
  -webkit-box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  font-size: 1.3em;
}

/*pick_box*/
.pick_box {
  margin-top: 15px;
}

.pick_box .br_sp {
  display: none;
}

.pick_set {
  margin-bottom: 60px;
}

#main .pick_set a {
  display: block;
  color: rgba(0, 0, 0, 0.95);
  box-sizing: border-box;
  text-decoration: none;
  margin-bottom: 15px;
}

#main .pick_set h3 a,
#main .pick_set h4 a {
  display: inline !important;
  color: #06c;
  text-decoration: underline;
}

#main .pick_set a:link {
  color: rgba(0, 0, 0, 0.95);
}

#main .pick_set h3 a:link,
#main .pick_set h4 a:link {
  color: #06c !important;
}

#main .pick_set a:hover {}

.pick_tit {
  display: flex;
  flex-direction: column-reverse;
}

.pick_tit h3 {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.95);
  background: rgba(51, 26, 0, 1);
  margin-bottom: 15px;
}

.pick_tit h3>* {
  padding: 10px 15px;
}

.pick_tit h4 {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.95);
  background: rgba(51, 26, 0, 1);
  margin-bottom: 15px;
}

.pick_tit h4>* {
  padding: 10px 15px;
}

.pick_tit .tit_pref {
  flex-basis: 15%;
  font-weight: bold;
  text-align: center;
}

.pick_tit .tit_name {
  flex-basis: 93%;
  line-height: 1.2;
  font-weight: bold;
  border-left: solid 3px rgba(255, 255, 255, 1);
  text-decoration: underline;
}

.pick_tit .tit_tag {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  font-weight: bold;
  color: rgba(244, 49, 123, 1);
  background: rgba(255, 227, 235, 1);
  text-align: center;
  padding: 8px;
  margin-bottom: 3px;
}

.pick_tit .tag_s {
  font-size: 1.0rem;
  font-weight: bold;
  margin: 5px;
}

.pick_plan {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.pick_plan .plan_img_box {
  flex-basis: 30%;
}

.pick_plan.plan3 .plan_img_box {
  order: -2;
}

.pick_plan .plan_img_box .plan_img img {
  width: 100%;
  height: auto;
  border-radius: 3px;
}

.pick_plan .plan_set_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.pick_plan .plan_set_box ul {
  flex-basis: 60%;
}

.pick_plan .plan_set_box ul:first-of-type {
  flex-basis: 40%;
  font-size: 0.8em;
}

.pick_plan.plan3.many .plan_set_box {
  justify-content: flex-start;
}

.pick_plan.plan1 .plan_set_box {
  flex-basis: 35%;
}

.pick_plan.plan2 .plan_set_box {
  flex-basis: 70%;
}

.pick_plan.plan3 .plan_set_box {
  flex-basis: 100%;
  border-top: dashed 1px rgba(221, 221, 221, 1);
  padding-top: 15px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.pick_plan .plan_set {
  border: solid 1px #f2f2f2;
  box-sizing: border-box;
}

.pick_plan .plan_set ul {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-bottom: 10px;
}

.pick_plan.plan1 .plan_set {
  flex-basis: 92%;
  margin-left: 8%;
}

.pick_plan.plan2 .plan_set {
  flex-basis: 46%;
  margin-left: 4%;
}

.pick_plan.plan3 .plan_set {
  flex-basis: 32%;
  margin-right: 2%;
}

.pick_plan.plan3 .plan_set:nth-child(3n) {
  margin-right: 0;
}

.pick_plan.plan3 .plan_set:nth-child(n+4) {
  margin-top: 15px;
}

.pick_plan .plan_set .lic {
  font-size: 0.8rem;
  letter-spacing: 0.03em;
  font-weight: bold;
  text-align: center;
  background: #eee;
  padding: 3px 10px;
  width: 100%;
  box-sizing: border-box;
}

.pick_plan .plan_set .lic.lic_h:before {
  content: "所持免許：";
  font-size: 0.75rem;
  font-weight: normal;
}

.pick_plan .plan_set .lic .lic_b {
  font-size: 1.0rem;
  margin-left: 3px;
}

.pick_plan .plan_set .lic .lic_or {
  display: block;
  font-weight: bold;
}

.pick_plan .plan_set .lic .lic_or:before {
  content: "or";
  margin: 0 5px;
}

.pick_plan .plan_set .catch {
  font-size: 0.95rem;
  letter-spacing: 0.03em;
  font-weight: bold;
  background: rgba(255, 233, 150, 1);
  color: rgba(0, 0, 0, 0.8);
  border-radius: 3px;
  padding: 3px 8px;
  margin: 10px 5px 0 0;
}

.pick_plan .plan_set .price {
  font-size: 2.0rem;
  font-weight: bold;
  color: rgba(244, 49, 123, 1);
  padding: 0 4px;
  margin-top: 15px;
}

.pick_plan .plan_set .price:before {
  content: "税込";
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  font-weight: bold;
  background: rgba(244, 49, 123, 1);
  color: rgba(255, 255, 255, 0.95);
  padding: 2px 4px;
  border-radius: 3px;
  position: relative;
  top: -3px;
}

.pick_plan .plan_set .price span {
  font-weight: bold;
}

.pick_plan .plan_set .price span:before {
  content: "￥";
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0 4px 0 8px;
}

.pick_plan .plan_set .room {
  font-size: 0.8rem;
  margin-top: 8px;
}

.pick_plan .plan_set .short,
.pick_plan .plan_set .week {
  font-size: 0.8rem;
  margin: 8px 5px 0 0;
}

.pick_plan .plan_set .short:before,
.pick_plan .plan_set .week:before {
  font-size: 0.7rem;
}

.pick_plan .plan_set .short:before {
  content: "最短日数：";
}

.pick_plan .plan_set .week:before {
  content: "曜日：";
}

.pick_plan .plan_set .day {
  font-size: 0.8rem;
  line-height: 1.5;
  font-weight: bold;
  margin-top: 15px;
  text-indent: -3.6em;
  padding: 0px 7px 0 4.2em;
}

.pick_plan .plan_set .day:before {
  content: "入校日";
  font-size: 0.7rem;
  margin-right: 10px;
}

.pick_plan .plan_stay {
  flex-basis: 100%;
  border-top: dashed 1px #ddd;
  padding-top: 10px;
  margin: 15px 0 -3px;
}

.pick_plan.plan3 .plan_stay {
  border-bottom: dashed 1px rgba(221, 221, 221, 1);
  padding-bottom: 12px;
  margin-bottom: 15px;
  margin-top: 0;
}

.pick_plan .plan_stay .name,
.pick_plan .plan_stay .equip,
.pick_plan .plan_stay .near {
  display: flex;
  align-items: center;
  line-height: 1.5;
}

.pick_plan .plan_stay .equip,
.pick_plan .plan_stay .near {
  font-size: 0.95rem;
  margin-top: 8px
}

.pick_plan .plan_stay .name span,
.pick_plan .plan_stay .equip span,
.pick_plan .plan_stay .near span {
  flex-basis: 92%;
}

.pick_plan .plan_stay .name span {
  font-size: 1.15rem;
  font-weight: bold;
}

.pick_plan .plan_stay .name:before,
.pick_plan .plan_stay .equip:before,
.pick_plan .plan_stay .near:before {
  font-size: 0.75rem;
  font-weight: bold;
  flex-basis: 8%;
}

.pick_plan .plan_stay .name:before {
  content: "宿舎名";
}

.pick_plan .plan_stay .equip:before {
  content: "設備";
}

.pick_plan .plan_stay .near:before {
  content: "周辺施設";
}

.pick_plan .plan_stay .bath {
  margin-left: 2em;
}

.pick_plan .plan_stay .bath:before {
  content: "風呂/トイレ：";
}

.pick_plan .plan_check_box {
  flex-basis: 100%;
  border-top: dashed 1px rgba(221, 221, 221, 1);
  padding-top: 15px;
  margin-top: 15px;
  position: relative;
}

.pick_plan.plan3 .plan_check_box {
  order: -1;
  flex-basis: 67%;
  margin-left: 3%;
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}

.pick_plan .plan_check,
.pick_plan .plan_point,
.pick_plan .plan_note {
  padding: 15px;
  background: #f6f6f6;
}

.pick_plan .plan_point,
.pick_plan .plan_note {
  flex-basis: 100%;
  margin-top: 3px;
}

.pick_plan .plan_check li,
.pick_plan .plan_point p {
  display: flex;
  align-items: center;
  font-size: 0.85rem;
}

.pick_plan .plan_check li {
  margin-bottom: 8px;
}

.pick_plan .plan_point p {
  line-height: 1.8;
}

.pick_plan .plan_check li:last-child {
  margin-bottom: 0;
}

.pick_plan .plan_check li:before,
.pick_plan .plan_point p:before {
  font-size: 0.6rem;
  font-weight: bold;
  background: rgba(51, 26, 0, 1);
  color: rgba(255, 255, 255, 0.95);
  padding: 0 4px;
  border-radius: 3px;
  margin-right: 10px;
  position: relative;
  top: 1px;
}

.pick_plan .plan_check li:before {
  content: "Check";
}

.pick_plan .plan_point p:before {
  content: "Point";
}

.pick_plan .plan_check_box .plan_bt {
  font-size: 1.45rem;
  letter-spacing: 0.08em;
  font-weight: bold;
  text-align: center;
  background: rgba(244, 49, 123, 1);
  color: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, .25);
  border-radius: 3px;
  padding: 16px 10px 15px;
  margin: 10px auto 0;
  box-sizing: border-box;
  position: absolute;
  top: -6px;
  right: 20px;
  width: 27.5%;
  transform: rotate(-3deg);
}

.pick_plan .plan_check_box .plan_bt.bt_full {
  display: none;
}

.pick_plan.full .plan_check_box .plan_bt {
  display: none;
}

.pick_plan.full .plan_check_box .plan_bt.bt_full {
  display: block;
  background: #909090;
}

.pick_plan.plan3 .plan_check_box .plan_bt {
  position: inherit;
  top: 0;
  right: 0;
  width: 100%;
  padding-bottom: 12px;
  transform: none;
}

.pick_plan .plan_check_box .plan_bt:before {
  content: "この教習所";
  font-size: 1.0rem;
  letter-spacing: 0.03em;
  background: rgba(255, 255, 255, 0.95);
  color: rgba(244, 49, 123, 1);
  border-radius: 3px;
  padding: 3px 5px;
  margin-right: 13px;
  position: relative;
  top: -2px;
  display: block;
  width: max-content;
  margin: 0 auto 10px;
}

.pick_plan.plan .plan_check_box .plan_bt:before {
  content: "このプラン";
}

.pick_plan.plan3 .plan_check_box .plan_bt:before {
  display: inline-block;
  margin: 0 13px 0 0;
}

.pick_plan.full .plan_check_box .plan_bt.bt_full:before {
  content: "全日程";
  color: #808080;
}

.pick_plan .plan_note p {
  font-size: 0.95rem;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 8px;
  text-indent: -1.4em;
  padding-left: 1.4em;
}

.pick_plan .plan_note p:last-child {
  margin-bottom: 0;
}

.pick_plan .plan_note p:before {
  content: "★";
  font-size: 0.7rem;
  color: rgba(51, 26, 0, 1);
  margin-right: 10px;
  position: relative;
  top: -1px;
}

.pick_plan .plan_note .note_st {
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  font-weight: bold;
  color: rgba(244, 49, 123, 1);
}

.pick_cta a,
.pick_cta p {
  display: block;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  font-weight: bold;
  text-align: center;
  background: #909090;
  color: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, .25);
  border: none !important;
  border-radius: 3px;
  padding: 16px 15px;
  margin: 25px auto 0;
  max-width: 310px;
  box-sizing: border-box;
  cursor: pointer;
}

.cta_flex {
  display: flex;
  justify-content: space-around;
}

.cta_flex>* {
  flex-basis: 45%;
}

.pick_cta a:hover,
.pick_cta p:hover {
  opacity: 0.7;
}

.pick_cta.space_ask a,
.pick_cta.space_ask p {
  font-size: 1.2em;
  background: #3ba3b3;
}

.pick_cta.order a,
.pick_cta.order p {
  font-size: 1.2em;
  background: #cb5274;
}

.pick_cta.tel a {
  font-size: 1.8rem;
  background: rgba(25, 130, 14, 1);
  padding-bottom: 12px;
}

.pick_cta.tel a:before {
  content: "合宿免許の空き確認は";
  display: inline-block;
  font-size: 1.1rem;
  letter-spacing: 0.03em;
  background: rgba(255, 255, 255, 0.95);
  color: rgba(25, 130, 14, 1);
  border-radius: 3px;
  padding: 3px 5px;
  margin-right: 13px;
  position: relative;
  top: -2px;
}

.pick_cta .cta_s {
  font-size: 1.5rem;
  font-weight: bold;
  margin: 3px;
}

/* pick_box_simple */
#main .pick_box_simple .pick_set {
  position: relative;
  margin: 0;
  padding: 15px 0;
  background: #fff;
  border-bottom: #4a42424a 1px solid;
}

#main .pick_box_simple .pick_set:last-child {
  border-bottom: none;
}

#main .pick_box_simple .pick_set a:hover {
  border: solid 2px #fff;
}

#main .pick_box_simple h3,
#main .pick_box_simple h4 {
  font-size: 1.4em;
  font-weight: bold;
}

#main .pick_box_simple h3 span,
#main .pick_box_simple h4 span {
  border-right: 3px solid #bf5757;
  padding-right: 5px;
  margin-right: 5px;
  font-size: 0.9em;
}

#main .pick_box_simple .tit_name {
  text-decoration: underline;
  font-size: 1.8em;
  font-weight: bold;
  color: #4b4be0;
}

#main .pick_box_simple .pick_plan {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
  margin-top: 10px;
  cursor: pointer;
}

.pick_box_simple .pick_plan.lic_area {
  height: 220px;
}

#main .pick_box_simple .pick_plan .plan_img_box {
  flex-basis: 24.5%;
}

#main .pick_box_simple .pick_plan .plan_img_box .plan_img {
  flex-basis: 100%;
}

#main .pick_box_simple .plan_set_box {
  flex-basis: 73%;
  display: flex;
  justify-content: space-between;
  line-height: 1.2;
}

#main .pick_box_simple .plan_set_box ul:nth-child(2) {
  text-align: end;
  line-height: 1.7;
}

#main .pick_box_simple .plan_set_box ul:nth-child(2) li {
  font-weight: bold;
  margin-left: auto;
}

#main .pick_box_simple .plan_set_box .price {
  font-size: 1.8em;
  font-weight: bold;
  color: #EF1A0A;
}

#main .pick_box_simple .plan_set_box .price:before {
  content: "税込￥";
  font-size: 0.7em;
}

#main .pick_box_simple .plan_set_box .price.lt {
  text-decoration: line-through;
  font-size: 1.4em;
  font-weight: 100;
  color: #000;
}

#main .pick_box_simple .plan_set_box .cp {
  font-size: 1.1em;
  background: #FF601F;
  width: fit-content;
  padding: 3px 3px 2px;
  border-radius: 3px;
  color: white;
}

#main .pick_box_simple .plan_set_box .cp.benefit {
  font-size: 1.1em;
  background: #827800;
}

.pick_box_simple .plan_set_box ul:nth-child(2) {
  font-size: 1.1em;
}

.pick_box_simple .plan_set_box .room:before,
.pick_box_simple .plan_set_box .day:before,
.pick_box_simple .plan_set_box .day_full:before,
.pick_box_simple .plan_set_box .short:before,
.pick_box_simple .plan_set_box .license:before,
.pick_box_simple .plan_set_box .trans_exp::before {
  font-size: 0.8em;
}

.pick_box_simple .plan_set_box .room:before {
  content: "部屋プラン：";
}

.pick_box_simple .plan_set_box .day:before {
  content: "入校日(卒業日)：";
}

.pick_box_simple .plan_set_box .short:before {
  content: "最短日数：";
}

.pick_box_simple .plan_set_box .license:before {
  content: "所持免許：";
}

.pick_box_simple .plan_set_box .trans_exp::before {
  content: "交通費支給：";
}

.pick_box_simple .plan_set_box .lic {
  display: inline-block;
  text-align: initial;
}

.pick_box_simple .plan_set_box .day_full {
  font-size: 1.1em;
  font-weight: bold;
  color: red;
  text-decoration: underline;
}

.pick_box_simple .plan_set_box .pre {
  color: #f38901;
  margin: 5px 0;
  font-size: 1.05em;
}

.pick_box_simple .plan_set_box .lic {
  display: inline-block;
  text-align: initial;
}

#main .pick_box_simple .cta {
  width: 35%;
  position: absolute;
  bottom: -10px;
  right: 10px;
  margin: 10px 0;
  padding: 5px 0;
  border-radius: 4px;
  background: #3ba3b3;
  border-bottom: 5px solid #175df7;
  -webkit-box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  letter-spacing: 3px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
  font-size: 1.3em;
  line-height: 1.5;
}

#main .pick_box_simple .cta.bt_tel {
  background: rgba(238, 119, 17, 0.85);
  border-bottom-color: #c96006;
}

#main .pick_box_simple .cta.full {
  background: #909090;
  border-bottom-color: #6c6c6c;
}

#main .pick_box_simple .cta.pre {
  background: #41c9e1;
  border-bottom-color: #2e93a4;
  letter-spacing: 2.5px;
  font-size: 0.95rem;
  line-height: 1.8;
}

/*full_txt*/
.full_txt {
  position: relative;
  width: 95%;
  line-height: 1.5;
  margin: 40px auto 15px;
  padding: 5px 0;
  border-top: 1px solid rgba(20, 4, 0, 0.55);
  font-size: 1.15em;
}

.full_txt:before {
  content: "受入情報";
  position: absolute;
  top: -37px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  background: rgba(50, 7.3, 1);
  border-radius: 5px;
  padding: 1px 3px;
  font-size: 1.3em;
  color: #fff;
}

.full_txt p {
  text-align: left;
  border-bottom: 1px solid rgba(20, 4, 0, 0.55);
  padding: 10px 0;
}

.full_txt .red {
  color: rgba(244, 49, 123, 1);
}

.full_txt .txt_b {
  font-size: 1.2em;
  font-weight: bold;
}

.full_txt .txt_emp {
  font-weight: bold;
  text-emphasis: filled;
  -webkit-text-emphasis: filled;
}

.full_txt .rec_early a {
  text-decoration: underline;
  color: #06c;
}

.full_txt .note,
.full_txt .rec_early {
  font-size: 0.8em;
}

/*sokuho_cond*/
.sokuho_cond {
  margin-top: 5px;
  padding: 0.3em;
}

.sokuho_cond a {
  background: rgb(255 0 0 / 55%);
  display: inline-block;
  padding: 0.4em;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgb(0 0 0 / 15%);
  letter-spacing: 0.15em;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff !important;
  font-size: 1.1rem;
  float: none;
  cursor: pointer;
}

/*full_table*/
.full_table th:nth-child(1) {
  width: 7em;
}

.full_table th:nth-child(3) {
  width: 15em;
}

/*pick_con*/
.pickup_container {
  margin: 10px auto;
  background-color: rgb(254 220 189 / 27%);
  background-size: 100% 2em;
  line-height: 2em;
}

.pickup_container .pickup_title {
  text-align: center;
  padding: 11px 0 9px;
  background: rgb(125 34 28);
  position: relative;
}

.pickup_container .pickup_title:after {
  content: "";
  position: absolute;
  background: rgb(125 34 28);
  top: 40px;
  left: 50%;
  width: 15px;
  height: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pickup_container .pickup_box {
  width: 95%;
  margin: 20px auto 0;
}

.pickup_container>.pickup_box {
  padding-bottom: 25px;
}

.pickup_container .pickup_title span {
  color: white;
  font-size: 1.4em;
  font-weight: bold;
}

.pickup_container .box_title {
  justify-content: center;
  display: flex;
  position: relative;
  letter-spacing: 0.05em;
  font-size: 1.4em;
  font-weight: bold;
}

.pickup_container .box_title span {
  font-size: 1.8em;
  color: #ef5810e3;
}

.pickup_container .box_title.last_box_title {
  margin: 60px auto 40px;
  font-size: 1.7em;
}

.pickup_container .box_title.last_box_title:after {
  content: "";
  position: absolute;
  bottom: -45px;
  width: 0;
  height: 0;
  transform: rotate(90deg);
  border: 13px solid transparent;
  border-right: 0 solid transparent;
  border-left: 20px solid #333;
}

.pickup_container .pickup_box1 {
  text-align: center;
  gap: 20px;
  margin-top: 5px;
  font-size: 1.15em;
}

.pickup_container .pickup_box1 p {
  letter-spacing: 0.07em;
}

.pickup_container .pickup_box1 p span {
  letter-spacing: 0.01em;
  text-decoration: underline;
  color: rgb(249 38 38 / 80%);
  font-weight: bold;
  font-size: 1.3em;
}

.pickup_container .pickup_box1 img {
  width: 60%;
  height: auto;
  margin-bottom: 15px;
}

/* pick_monthly_rich */
.pick_rich .pick_set_2 {
  margin-bottom: 6em;
}

.pick_rich .pick_set_2:last-child {
  margin-bottom: 3em;
}

.pick_set_2 img {
  width: 100%;
  height: auto;
}

.pick_set_2 .sch_tit {
  margin: 10px 0 0;
  padding-top: 3px;
  padding-left: 6px;
  border-left: 6px solid #B84221;
  line-height: 1;
  font-size: 1.5em;
  color: #5A282A;
}

.pick_set_2 .sch_tit .tit_pref {
  vertical-align: bottom;
  font-size: 0.8em;
  margin-right: 4px;
  font-weight: bold;
}

.pick_set_2 .sch_tit h3 a {
  display: inline;
  color: #06c;
  text-decoration: underline;
  font-weight: bold;
}

.pick_set_2 .sch_tit .tit_name {
  vertical-align: bottom;
  font-weight: bold;
}

.pick_set_2 .sch_com {
  margin: 8px auto;
}

.pick_set_2 .head_txt {
  display: inline-block;
  letter-spacing: 0.05em;
  margin: 25px 0 30px;
  padding: 0 10px 5px;
  font-weight: bold;
  font-size: 1.6em;
  color: #AF4425;
  border-bottom: 5px solid #B84221;
}

.pick_set_2 .main_img,
.pick_set_2 .sub_img {
  display: flex;
  justify-content: space-between;
}

.pick_set_2 .img_box .img_txt {
  text-align: right;
  color: #666;
  font-size: 85%;
  font-weight: bold;
  margin-top: 3px;
  color: #666;
}

.pick_set_2 .img_box {
  flex-basis: 46%;
  margin-bottom: 6px;
}

.pick_set_2 .main_box,
.sub_box {
  margin-bottom: 3em;
  text-align: center;
}

.pick_set_2 .sub_img .img_box {
  flex-basis: 49%;
  margin-right: 1%;
}

.pick_set_2 .main_img .com_box,
.pick_set_2 .sub_img .com_box {
  flex-basis: 45%;
  text-align: left;
  line-height: 1.7;
}

.pick_set_2 .main_img .com_box .txt,
.pick_set_2 .sub_img .com_box .txt {
  font-size: 1.1em;
  margin-bottom: 1em;
}

.pick_set_2 .main_img .com_box .txt:last-child,
.pick_set_2 .sub_img .com_box .txt:last-child {
  margin-bottom: 0;
}

.pick_set_2 .plan_detail {
  display: flex;
}

.pick_set_2 .two_plan {
  display: flex;
  justify-content: space-around;
}

.pick_set_2 .two_plan .plan_detail {
  display: block;
  flex-basis: 45%;
  padding: 10px;
  border: 1px solid #b8422152;
  box-shadow: 1px 1px 2px #c6b7b77d;
}

.pick_set_2 .plan_detail .accept {
  font-size: 1.35em;
  margin: 0 auto 20px;
  font-weight: bolder;
  text-align: center;
}

.pick_set_2 .plan_detail .yet {
  color: rgba(255, 0, 0, 0.9);
}

.pick_set_2 .plan_detail .plan_set_box {
  flex-basis: 50%;
}

.pick_set_2 .plan_detail .room_box {
  flex-basis: 50%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.pick_set_2 .root {
  font-size: 85%;
  position: relative;
  text-indent: 18px;
  margin-top: 8px;
}

.pick_set_2 .root:before {
  height: 16px;
  width: 16px;
  content: "";
  background-image: url(/img/common/map.png);
  display: inline-block;
  background-size: contain;
  position: absolute;
  bottom: 1px;
  left: 0;
}

.pick_set_2 .plan_set_box .price {
  font-size: 1.4em;
  /*
font-weight: bold;*/
  color: #EF1A0A;
  margin: 5px 0px;
}

.pick_set_2 .plan_set_box .price:before {
  content: "税込￥";
  font-weight: bold;
  font-size: 0.7em;
}

.pick_set_2 .plan_set_box .price.max:before {
  content: "最高値：税込￥";
  font-weight: bold;
  font-size: 0.8em;
}

.pick_set_2 .plan_set_box .price.min:before {
  content: "最安値：税込￥";
  font-weight: bold;
  font-size: 0.8em;
}

.pick_set_2 .plan_set_box .price.lt {
  text-decoration: line-through;
  font-size: 1.1em;
  font-weight: 100;
  color: #000;
}

.pick_set_2 .plan_set_box .car {
  text-align: center;
  font-size: 1rem;
}

.pick_set_2 .plan_set_box .cp {
  font-size: 12px;
  background: #FF601F;
  display: inline-block;
  padding: 3px 3px 2px;
  border-radius: 3px;
  color: white;
  margin-top: 0;
  font-weight: bold;
}

.pick_set_2 .plan_set_box .cp:empty {
  display: none;
}

.pick_set_2 .plan_set_box .day,
.pick_set_2 .plan_set_box .trans_exp,
.pick_set_2 .plan_set_box .plan,
.pick_set_2 .plan_set_box .day_full {
  font-size: 1.1em;
  line-height: 1.5;
}

.pick_set_2 .plan_set_box .day_full {
  font-size: 1.1em;
  font-weight: bold;
}

.pick_set_2 .plan_set_box .day:before,
.pick_set_2 .plan_set_box .trans_exp:before,
.pick_set_2 .plan_set_box .plan:before {
  font-size: 0.8em;
  font-weight: bold;
}

.pick_set_2 .plan_set_box .day:before {
  content: "入校(卒業)：";
}

.pick_set_2 .plan_set_box .trans_exp:before {
  content: "交通費支給：";
}

.pick_set_2 .plan_set_box .plan:before {
  content: "部屋プラン：";
}

.pick_set_2 .plan_set_box .plan.min:before {
  content: "最安値部屋プラン：";
}

.pick_set_2 .plan_set_box .plan.max:before {
  content: "最高値部屋プラン：";
}

.pick_set_2 .plan_set_box .day_full {
  font-size: 1.4em;
  text-decoration: underline;
  color: red;
}

.pick_set_2 .plan_set_box li {
  margin: 1px 0;
}

.pick_set_2 .room_box {
  display: flex;
  position: relative;
  padding-left: 36px;
  font-size: 90%;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 12px;
  font-weight: bold;
}

.pick_set_2 .room_box:before {
  height: 28px;
  width: 28px;
  content: "";
  background-image: url(/img/common/house.png);
  display: inline-block;
  background-size: contain;
  position: absolute;
  bottom: 1px;
  left: 0;
}

.pick_set_2 .room_box .man:before {
  content: "男性：";
  font-size: 90%;
}

.pick_set_2 .room_box .woman:before {
  content: "女性：";
  font-size: 90%;
}

.pick_set_2 .room_box .plan_check li:first-child {
  margin-bottom: 2px;
}

.pick_set_2 .room_box .plan_check {
  font-size: 15px;
}

.pick_set_2 .room_box p {
  font-size: 13px;
}

.pick_set_2 .room_box a {
  color: blue;
  text-decoration: underline;
}

.pick_set_2 .room_box a:after {
  content: "＞";
}

.pick_set_2 .two_plan .plan_detail .pick_cta a,
.pick_set_2 .two_plan .plan_detail .pick_cta p {
  min-width: 310px;
}

.covBtn {
  width: 85%;
  margin: 10px auto 20px;
  padding: 10px 0;
  border: 1px solid #ffccd4;
  background: #ffebee;
  text-align: center;
}

.covBtn p {
  margin-top: 10px;
  text-decoration: underline;
  font-size: 15px;
  font-weight: 600;
}

.covBtn i::before {
  content: "i";
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  background: #411c19;
  text-align: center;
  margin-bottom: 10px;
  padding: 4px 13px 4px 11px;
  border-radius: 50%;
}

.pick_set_2 .two_plan .pick_cta {
  text-align: center;
}

.pick_set_2 .pick_cta a,
.pick_set_2 .pick_cta p {
  background: #3ba3b3;
  padding: 15px 0;
  border-radius: 5px;
  box-shadow: 2px 2px 2px rgb(0 0 0 / 15%);
  letter-spacing: 3px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.5em;
  float: none;
  color: rgba(255, 255, 255, 0.95) !important;
}

.pick_set_2 .two_plan .pick_cta a,
.pick_set_2 .two_plan .pick_cta p {
  display: inline-block;
  margin-top: 5px;
  font-size: 1.2rem;
}

.pick_set_2 .pick_cta a:before,
.pick_set_2 .pick_cta a:after,
.pick_set_2 .pick_cta p:before,
.pick_set_2 .pick_cta p:after {
  content: none;
}

/* CTA */
a.reservation:hover {
  opacity: 0.8;
}

a.reservation {
  display: block;
  text-align: center;
  padding: 20px 0;
  width: 480px;
  margin: 18px auto 30px;
  border: 1px solid #8bf;
  border-radius: 12px;
  color: #fff !important;
  text-shadow: 1px 1px 1px #48f;
  -webkit-text-shadow: 1px 1px 1px #c60;
  box-shadow: 1px 1px 2px 0 #888, inset 1px 1px 2px 0 #93d1ff;
  -webkit-box-shadow: 1px 1px 2px 0 #888, inset 1px 1px 2px 0 #93d1ff;
  background: linear-gradient(180deg, rgba(147, 209, 255, 1) 0%, rgba(136, 204, 255, 1) 5%, rgba(136, 204, 255, 1) 95%, rgba(147, 209, 255, 1) 100%);
  text-decoration: none;
  font-size: 150%;
  position: relative;
}

a.reservation::before {
  position: absolute;
  top: 24px;
  right: 36px;
  width: 8px;
  height: 8px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
}

/* cheap_table */
.pick_table {
  width: 100%;
  margin: 16px auto;
}

.pick_table th {
  background: #fee;
  text-align: center;
  font-weight: bold;
}

.pick_table tr:nth-child(2n-1) {
  background: #faf9f9;
}

.pick_table th,
.pick_table td {
  border: 1px solid;
  padding: 8px 4px;
  vertical-align: middle;
}

.pick_table a {
  text-decoration: none !important;
}

.pick_table .cta {
  background: #3ba3b3;
  box-shadow: 2px 2px 2px rgb(0 0 0 / 15%);
  color: #fff !important;
  padding: 7px 0;
  border-radius: 4px;
  width: 70%;
  display: block;
  margin: 0 auto;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 2px;
  cursor: pointer;
}

.pick_table .cta:hover {
  opacity: 0.8;
}

.pick_table span.tax {
  font-size: 12px;
  margin-right: 2px;
  font-weight: bold;
}

.pick_table span.price {
  font-size: 15px;
}

/* return */
p.return a {
  display: inline-block;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(45, 4, 0, 0.95);
  background: rgba(244, 236, 225, 0.3);
  border: solid 1px rgba(45, 4, 0, 0.3);
  padding: 8px 15px 8px 30px;
  margin-bottom: 3px;
  border-radius: 4px;
  position: relative;
}

p.return a:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 18px;
  margin: auto;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 1px solid rgba(45, 4, 0, 0.45);
  border-right: 1px solid rgba(45, 4, 0, 0.45);
  -moz-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

p.return a:hover:before {
  width: 8px;
  height: 8px;
  border-width: 2px;
  -moz-transition: width .3s ease-out;
  -webkit-transition: width .3s ease-out;
  transition: width .3s ease-out;
  -moz-transition: height .3s ease-out;
  -webkit-transition: height .3s ease-out;
  transition: height .3s ease-out;
}

/* box_futsu */
.box_futsu,
.box_top {
  position: relative;
  border: dashed 2px white;
  line-height: 20px;
  padding: 10px 15px 1px;
  color: rgb(93, 58, 47);
}

.box_futsu {
  background: #fff0cd;
  box-shadow: 0px 0px 0px 5px #fff0cd;
}

.box_top {
  margin: 0 0 15px;
  padding: 15px 15px 20px;
  background: #f0f0f0;
  box-shadow: 0px 0px 0px 5px #f0f0f0;
  font-size: 1.4em;
}

.box_futsu:after,
.box_top:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-style: solid;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

.box_futsu:after {
  border-width: 0 0 15px 15px;
  border-color: #ffdb88 #fff #ffdb88;
}

.box_top:after {
  border-width: 0 0 20px 20px;
  border-color: #f0f0f0 #fff #f0f0f0;
}

.box_futsu .box_futsu_tit {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 140%;
}

.box_top .box_top_tit {
  margin-bottom: 10px;
  text-align: center;
  font-weight: bold;
}

.box_top .box_top_txt {
  list-style: disc;
  padding-left: 1em;
  font-size: 0.85em;
}

.box_top .box_top_txt li {
  padding-bottom: 10px;
}

.box_top .box_top_txt li:last-child {
  padding-bottom: 0;
}

/* CTA関係 */
#main .bt_cta,
#main .bt_school {
  display: block;
  min-width: 360px;
  max-width: 380px;
  margin: auto;
}

#main .bt_cta a,
#main .bt_school a,
#main .bt_cta>div,
#main .bt_school>div {
  display: block;
  padding: 10px;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .15);
  letter-spacing: 3px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff !important;
  font-size: 1.2em;
  line-height: 1.8;
  float: none;
  width: auto;
  cursor: pointer;
}

#main .bt_cta a,
#main .bt_cta>div {
  background: #3ba3b3;
  -webkit-box-shadow:  0 3px 5px rgb(115 114 114 / 31%);
  box-shadow: 0 3px 5px rgb(115 114 114 / 31%);
  margin-top: 15px;
  margin-bottom: 10px;
}

#main .bt_cta.bt_line a,
#main .bt_cta.bt_line>div {
  background: #4ba04a;
}

#main .bt_cta.bt_tel a,
#main .bt_cta.bt_tel>div {
  background-color: rgba(238, 119, 17, 0.85);
}

.bt_school a,
.bt_school>div {
  background: #999;
}

#main .bt_cta.bt_tel a,
#main .bt_cta.bt_tel > div {
  background-color: rgba(238, 119, 17, 0.85);
}

#main .bt_time {
  text-align: center;
}

/* .top_page */
.top_page {
  display: flex;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.top_page li {
  align-items: stretch
}

.top_page li:nth-child(1) {
  flex-basis: 55%;
}

.top_page li:nth-child(2) {
  flex-basis: 20%;
}

.top_page li:nth-child(3) {
  flex-basis: 25%;
}

.top_page.line li:nth-child(1),
.top_page.line2 li:nth-child(1),
.top_page.tel li:nth-child(1),
.top_page.ask li:nth-child(1) {
  flex-basis: 60%;
}

.top_page.line li:nth-child(2),
.top_page.line2 li:nth-child(2),
.top_page.tel li:nth-child(2),
.top_page.ask li:nth-child(2) {
  flex-basis: 40%;
}

.top_page li a,
.top_page li div {
  cursor: pointer;
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: center;
  height: 70px;
  margin: 10px 5px;
  padding: 10px 0;
  background: #3ba3b3;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.2em;
  color: white !important;
  border-bottom: 5px solid #175df7;
  border-radius: 15px;
  -webkit-box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  box-shadow: 0 3px 5px rgb(0 0 0 / 30%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.top_page.ask .tel a,
.top_page.ask .tel div {
  background-color: rgba(238, 119, 17, 0.85);
  border-bottom: 5px solid #c96006;
}

.top_page.tel li a,
.top_page.tel li div {
  background-color: rgba(238, 119, 17, 0.85);
  border-bottom: 5px solid #c96006;
}

.top_page li:nth-child(1) a,
.top_page li:nth-child(1) div {
  font-size: 1.4em;
}

.top_page li:nth-child(1) a:after,
.top_page li:nth-child(2) a:after,
.top_page li:nth-child(1) div:after,
.top_page li:nth-child(2) div:after {
  content: "";
  position: absolute;
  display: inline-block;
  background-size: contain;
  vertical-align: middle;
}

/*.top_page li:nth-child(1) a:after,
.top_page li:nth-child(1) div:after{
background-image:url(/img/common/bt_space_ask.png);
top:25px;
right: 105px;
width:24px;
height:24px;
}*/
.top_page.tel li:nth-child(1) a:after,
.top_page.tel li:nth-child(1) div:after {
  background-image: none;
}

/*
.top_page li:nth-child(2) a:after,
.top_page li:nth-child(2) div:after{
width: 23px;
height: 23px;
top: 38px;
right: 25px;
margin-left:7px;
background-image:url(/img/common/bt_order.png);
}*/
.top_page li:nth-child(3) a,
.top_page.line li:nth-child(2) a,
.top_page.tel li:nth-child(2) a,
.top_page.ask li:not(.tel):nth-child(2) a,
.top_page li:nth-child(3) div,
.top_page.line li:nth-child(2) div,
.top_page.tel li:nth-child(2) div,
.top_page.ask li:not(.tel):nth-child(2) div {
  position: relative;
  height: 65px;
  background: white;
  border: rgb(68 114 196 / 0.9) solid 2px;
  font-weight: normal;
  font-size: 1.1em;
  color: #333 !important;
}

.top_page.line2 li:nth-child(2) a,
.top_page.line2 li:nth-child(2) div {
  position: relative;
  height: 70px;
  background: #06c755f7;
  border-bottom: 5px #009f41 solid;
  font-weight: 500;
  font-size: 1.3em;
}

.top_page li:nth-child(3) div:after,
.top_page.line li:nth-child(2) div:after,
.top_page.tel li:nth-child(2) div:after,
.top_page li:nth-child(3) a:after,
.top_page.line li:nth-child(2) a:after,
.top_page.tel li:nth-child(2) a:after {
  content: ">";
  position: absolute;
  right: 10px;
}

.ask_cta div {
  background: #3ba3b3 !important;
}

.triangle {
  position: relative;
  margin-bottom: 60px;
}

.triangle:after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  display: inline-block;
  width: 0;
  height: 0;
  margin-top: 20px;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 25px solid #fb535f;
}

/*PCとスマホ＆サンクスページで伸縮するバナー*/
.bn_03 {
  margin: 10px auto 20px;
  width: 95%;
  max-width: 800px;
}

.bn_03 img {
  width: 100%;
}

/*bt_link*/
.bt_link {
  width: 98%;
  padding: 0 10px;
  margin: 20px auto;
  box-sizing: border-box;
}

.bt_link li a {
  position: relative;
  text-align: center;
  padding: 10px 5px;
  margin-bottom: 10px;
  color: #fff !important;
  font-size: 0.9rem;
  font-weight: bold;
  line-height: 1.6;
  display: block;
  text-decoration: none;
  background: rgba(45, 4, 0, 0.85);
  border-radius: 4px;
}

.bt_link li a:after {
  content: "";
  position: absolute;
  top: 40%;
  right: 15px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
}

.bt_link.area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  margin: 0;
}

.bt_link.area li {
  flex-basis: 28%;
  margin: 5px;
}

/*list_plan*/
.list_plan .list_plan_cta {
  font-size: 0.9rem;
  background: #3ba3b3;
  padding: 4px 13px;
  color: #fff !important;
  display: inline-block;
  cursor: pointer;
  border-radius: 8px;
  text-align: center;
  margin: 0 5px;
  text-decoration: none;
  letter-spacing: 1px;
  box-shadow: 2px 2px 2px rgb(0 0 0 / 15%);
}

#main .pick_box_simple.list_plan .pick_plan {
  cursor: auto;
}

#main .pick_box_simple.list_plan .cm_tb {
  margin-top: 20px;
}

#main .list_plan .plan_set_txt {
  margin-top: 10px;
  line-height: 1.5;
  font-size: 1.1rem;
}

#main .list_plan .plan_set_txt li:before {
  content: "★";
  color: #e53d3d;
  font-size: 1rem;
}

/* relation */
.relation {
  margin-top: 10px;
  margin-bottom: 20px;
}

.relation dt {
  font-size: 110%;
  font-weight: bolder;
  margin-bottom: 5px;
}

.relation dd::before {
  color: black;
  content: "・";
}

/* sokuho_pick */
.sokuho_pick .sokuho_pick_area {
  border: 1px solid #7851215c;
  box-shadow: 3px 3px 3px #c6b7b77d;
  padding: 8px;
  margin: 15px 2%;
  line-height: 1.5;
}

.sokuho_pick_area h4,
.sokuho_pick_area p.sch_name {
  font-size: 1.3em;
}

.sokuho_pick_area h4 span,
.sokuho_pick_area p.sch_name span {
  border-right: 3px solid #bf5757;
  padding-right: 5px;
  margin-right: 5px;
  font-size: 0.9em;
}

.sokuho_pick_area ul {
  display: flex;
  flex-flow: column;
}

.sokuho_pick_area ul li.price {
  font-size: 1.3em;
  font-weight: bold;
  color: #EF1A0A;
}

.sokuho_pick_area ul .price:before {
  content: "税込￥";
  font-size: 0.8em;
}

.sokuho_pick_area ul .price.lt {
  text-decoration: line-through;
  font-size: 1.05em;
  font-weight: 100;
  color: #000;
}

.sokuho_pick_area ul .sex:before {
  content: "性別と人数：";
  font-size: 0.8em;
}

.sokuho_pick_area ul .room:before {
  content: "部屋タイプ：";
  font-size: 0.8em;
}

.sokuho_pick_area ul .short:before {
  content: "最短期間：";
  font-size: 0.8em;
}

.sokuho_pick_area ul .license:before {
  content: "所持免許：";
  font-size: 0.8em;
}

.sokuho_pick_area ul .trans_exp:before {
  content: "交通費：";
  font-size: 0.8em;
}

.sokuho_pick_area ul li.day {
  font-size: 1.2em;
  font-weight: 600;
}

.sokuho_pick_area ul .day:before {
  content: "入校(卒業)：";
  font-size: 0.75em;
}

.sokuho_pick_area ul .cp {
  font-size: 1em;
  background: #FF601F;
  display: inline-block;
  padding: 3px 3px 2px;
  border-radius: 3px;
  color: white;
  width: fit-content;
}

.sokuho_pick_area ul .cp.benefit {
  font-size: 0.8em;
  background: #827800;
}

.sokuho_pick_area div:not(.sokuho_pick_n),
.sokuho_pick_area a:not(.sokuho_pick_n) {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #333 !important;
}

.sokuho_pick_area a {
  text-decoration: none;
}

.sokuho_pick_area p a.sokuho_pick_n {
  color: #06c;
  text-decoration: underline;
}

.sokuho_pick_area p a {
  display: inline-block;
}

.sokuho_pick_area div>div,
.sokuho_pick_area a>div {
  flex-basis: 80%;
}

.sokuho_pick_area div>.cta,
.sokuho_pick_area a>.cta {
  flex-basis: 15%;
  font-size: 1.2rem;
  font-weight: bolder;
  background: #3ba3b3;
  padding: 10px 5px;
  color: #fff !important;
  display: inline-block;
  cursor: pointer;
  border-radius: 10px;
  text-align: center;
  text-decoration: none;
  letter-spacing: 1px;
  box-shadow: 2px 2px 2px rgb(0 0 0 / 15%);
}

.sokuho_pick_area a div.bt_tel {
  background: rgba(238, 119, 17, 0.85);
}

/* qualification */
#main table.qualification {
  width: 680px;
  font-size: 13px;
  line-height: 16px;
  margin: 0 auto 10px;
}

#main table.qualification th {
  width: 110px;
  border: 1px #aaa solid;
  background: #f6f4f0;
  text-align: center;
}

#main table.qualification td {
  border: 1px #aaa solid;
  padding: 8px 0.8em;
  text-align: left;
}

#main table.qualification td .small {
  font-size: 0.8em;
}

.dl_area {
  display: flex;
  justify-content: space-between;
  margin: 5px;
}

.dl1 {
  max-width: 450px;
  flex-basis: 45%;
  margin: 0 auto 15px;
  padding: 10px;
  background: #e3ffe2;
  font-size: 1rem;
}

.dl1 dt,
.dl1 dd {
  margin-bottom: 10px;
  line-height: 1.5;
}

.dl1 dt {
  text-align: center;
  font-size: 1.2rem;
  font-weight: bold;
}

.top_vis {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.top_vis>*:first-child {
  flex-basis: 45%;
}

.top_vis>*:first-child img {
  width: 100%;
  height: auto;
}

.top_vis>*:last-child {
  flex-basis: 40%;
  font-size: 1.1em;
  line-height: 1.5;
}

/*sch_tit_area*/
.sch_tit_area .sch_tit_04 {
  text-align: center;
  font-size: 1.2em;
  font-weight: 600;
}

.sch_tit_area {
  background: #f9f5f0;
  padding: 1em 0 0;
  margin: 1em 0;
  border-top: #411c1973 solid 2px;
  border-bottom: #e5afafbd dotted 0.5px;
}

.sch_tit_area a {
  text-decoration: none;
  color: #523e22;
}

.sch_tit_area ul.search_list li {
  background: url(images/arrow.png) no-repeat 97% center;
  border-bottom: 1px solid #d5d5d5;
  padding-bottom: 1em;
}

.sch_tit_area ul.search_list li dl.area_search_dl {
  padding: 1px 18px 3px 20px;
  margin: 7px 0 0 0;
}

.sch_tit_area ul.search_list li dl.area_search_dl dt {
  font-size: 1.1em;
  font-weight: bold;
  margin-bottom: 0.5em;
}

.sch_tit_area ul.search_list li dl.area_search_dl dd {
  font-size: 0.9em;
  color: #333;
  font-weight: bold;
  color: #523e22;
}

.sch_tit_area ul.search_list li div.caricon_box {
  margin: 3px 35px 3px 8px;
}

.sch_tit_area ul.search_list li div.caricon_box img {
  margin: 0 0.2em 0.2em;
}

.sch_tit_area h3.sch_tit_04 a,
ul.search_list li dl.area_search_dl dt {
  color: #06c !important;
  text-decoration: underline;
}

.sch_tit_area .search_list li dl.area_search_dl dd.state:before {
  content: "◆";
}

.sch_tit_area .search_list li dl.area_search_dl dd.price:before {
  content: "普通車AT 税込料金";
  font-size: 0.8em;
}

.sch_tit_area .search_list li dl.area_search_dl dd.state {
  font-size: 1.1em;
  margin-top: 0.4em;
}

.sch_tit_area ul.search_list li dl.area_search_dl dd.price {
  font-size: 1.2em;
  margin-top: 0.5em;
}

.sch_tit_area ul.search_list li dl.area_search_dl dd.price span {
  color: red;
  margin: 0.2em;
  font-weight: 500;
}

.sch_tit_area ul.search_list li dl.area_search_dl dd.price span:before {
  content: "￥";
}

.li3 li a {
display: block;
font-weight: 400;
line-height: 1.4;
color: rgba(45,4,0,0.95)!important;
text-decoration: none;
background: rgba(244,236,225,0.3);
border: solid 1px rgba(45,4,0,0.3);
padding: 12px 30px 12px 15px;
margin-bottom: 6px;
border-radius: 4px;
position: relative;
}

.li3 li a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 1px solid rgba(45, 4, 0, 0.45);
  border-right: 1px solid rgba(45, 4, 0, 0.45);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.slider_plan1 {
  line-height: 1.5;
  letter-spacing: 0.03em;
  display: flex;
  overflow: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  margin-bottom: 2em;
  font-size: 1.1em;
}

.slider_plan1::-webkit-scrollbar {
  width: 10px;
}

.slider_plan1::-webkit-scrollbar-track {
  background-color: #ccc;
}

.slider_plan1::-webkit-scrollbar-thumb {
  background-color: #17585d;
  border-radius: 5px;
}

.slider_plan1 .slider_plan_area {
  width: 280px;
  margin: 1em;
  flex-shrink: 0;
  color: #333 !important;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background-color: #33333305;
  padding: 0.5em;
}

.slider_plan1 .slider_plan_area a {
  text-decoration: none;
}

.slider_plan1 .slider_plan_area a:hover {
  opacity: 0.7;
}

.slider_plan1 .slider_plan_area a .background {
  background: #33333305;
  padding: 0.5em;
}

.slider_plan1 .slider_plan_area .img img {
  margin-bottom: 0.2em;
}

.slider_plan1 .slider_plan_area .img img {
  width: 100%;
  height: auto;
}

.slider_plan1 .slider_plan_area .tit {
  font-weight: 600;
  font-size: 1.1em;
  text-decoration: underline;
}

.slider_plan1 .slider_plan_area .plan {
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 2px solid #333;
  color: #333;
}

.slider_plan1 .slider_plan_area .plan .room_price {
  font-size: 0.9em;
}

.slider_plan1 .slider_plan_area .plan .room_price span {
  font-size: 1.2em;
  font-weight: bold;
  color: #f22851;
}

.slider_plan1 .slider_plan_area .plan .room_price span:before {
  content: "：";
}

.slider_plan1 .slider_plan_area .plan .day:before {
  content: "入校(卒業)：";
  font-size: 0.9em;
}

.slider_plan1 .slider_plan_area .plan .trans_exp:before {
  content: "交通費：";
  font-size: 0.9em;
}

#main .slider_plan1 .bt_cta {
  margin: auto 0 0;
}

#main .slider_plan1 .bt_cta div {
  font-size: 1.1em;
  padding: 0.9em 0;
}

/* pick_rich_area */
.pick_box.pick_rich.area .pick_set_2 .plan_set_box,
.pick_box.pick_rich.area .pick_set_2 .room_box .plan_check {
  text-align: left;
}

.pick_box.pick_rich.area .pick_set_2 .plan_detail {
  flex-flow: column;
  flex-basis: 50%;
}

.pick_box.pick_rich.area .pick_set_2 .plan_access {
  width: 75%;
  margin: auto;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .price:before {
  content: "税込";
  font-size: 0.7em;
}

.pick_box.pick_rich.area .pick_set_2 .car_type {
  text-align: left;
}

.pick_box.pick_rich.area .pick_set_2 .car_type li {
  margin-right: 0.2em;
  margin-bottom: 0.3em;
  color: #fff;
  background: #00612A;
  font-size: 85%;
  border-radius: 0.3em;
  padding: 0.1em 0.3em;
  display: inline-block;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box p {
  margin-bottom: 20px;
  text-align: center;
  font-size: 1.2em;
  font-weight: 600;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box dl {
  position: relative;
  width: 97%;
  margin: 10px auto 25px;
  padding: 32px 5px 10px;
  border: 1px solid rgb(20 4 0 / 25%);
  border-radius: 5px;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box dl .price span:before {
  content: "￥";
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box dl .period {
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  background: rgb(255, 255, 255);
  padding: 5px;
  border-radius: 5px;
  font-size: 1em;
  font-weight: 600;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box dl .day_full {
  font-size: 1em;
  margin-top: 5px;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .car {
  font-size: 1.2rem;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .plan::before {
  font-size: 1rem
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .price {
  font-size: 2rem;
  margin: 30px 0px 12px;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .plan {
  font-size: 1.1rem;
}

.pick_box.pick_rich.area .pick_set_2 .main_img,
.pick_box.pick_rich.area .pick_set_2 .sub_img {
  flex-wrap: wrap;
  align-items: center;
}

.pick_box.pick_rich.area .pick_set_2 .img_box {
  flex-basis: 35%;
}

.pick_box.pick_rich.area .pick_set_2 .car_type {
  flex-basis: 100%;
}

.pick_box.pick_rich.area .pick_set_2 p {
  margin-bottom: 15px;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box {
  font-size: 1.2em;
  line-height: 1.5;
  margin-bottom: 10px;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box .price {
  font-size: 2.2em;
  margin: 10px 0;
}

.pick_box.pick_rich.area .pick_set_2 .plan_set_box dl .period {
  top: -23px;
}

.pick_box.pick_rich.area .pick_set_2 .car_type:before {
  content: "・取り扱い車種";
  display: block;
  margin-bottom: 0.5em;
  font-size: 0.8em;
}

/* school_list */
.map_area {
  text-align: center;
}

.map_area img {
  width: 60%;
  height: auto;
}

.map_list_area {
  position: relative;
  width: 78%;
  margin: 30px auto 25px;
  border: 1px solid #5d3a2f;
  border-radius: 10px;
  padding: 2.2em 6% 0.3em;
  display: flex;
  justify-content: center;
  gap: 1em;
  font-size: 1.1em;
  line-height: 2.2;
}

.map_list_area a {
  text-decoration: underline;
}

.map_list_area:before {
  content: "教習所一覧";
  background-color: #4379B7;
  display: block;
  position: absolute;
  left: 50%;
  top: -1.3em;
  font-size: 1.1em;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 5px;
  padding: 1px 3px;
  color: #fff;
  width: 17.5em;
  text-align: center;
  padding: 0.2em 0.3em;
}

/* read_more */
.readmore {
  position: relative;
  box-sizing: border-box;
}

.readmore-content {
  position: relative;
  overflow: hidden;
  height: 100px;
}

.readmore-content.h_4l {
  height: 140px;
}

.readmore-content.h_3l {
  height: 105px;
}

.readmore-content.h_2l {
  height: 70px;
}

.readmore-content::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  content: "";
  height: 20px;
  /* background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.8) 50%, #fff 100%);
background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.8) 50%, #fff 100%); */
}

.readmore-label {
  display: table;
  bottom: 5px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  margin: 0 auto;
  z-index: 2;
  padding: 3px 15px;
  background-color: #815956;
  border-radius: 10px;
  color: #FFF;
}

.readmore-label:before {
  content: "目次を見る";
}

.index_box.readmore-label:before {
  content: "もっと見る";
}

.readmore-check {
  display: none;
}

.readmore-check:checked~.readmore-label {
  position: static;
  transform: translateX(0);
  -webkit-transform: translateX(0);
}

.readmore-check:checked~.readmore-label:before {
  content: "閉じる";
}

.index_box .readmore-check:checked~.readmore-label:before {
  content: "目次を閉じる";
}

.readmore-check:checked~.readmore-content {
  height: auto;
}

.readmore-check:checked~.readmore-content::before {
  display: none;
}

/*link_small*/
.link_small {
  display: flex;
  justify-content: center;
  margin: 1.5em 0 3em;
}

.link_small li a {
  color: #333;
  padding: 1em;
  text-decoration: none;
  margin: 0 1em;
  font-size: 1.1em;
}

.link_small li a::before {
  content: "▼";
  font-size: 0.8rem;
  padding: 0 10px 0 0;
  color: #d16a6a;
}

/* voice_area */
.voice_area {
  margin: 0.5em;
}

.voice_area .sch_cp_set {
  background: #f9f5f0;
  position: relative;
  display: block;
  margin: 2em 0;
  padding: 0.5em 0;
  color: #443f4c;
  text-decoration: none;
}

.voice_area .sch_cp_set dd {
  margin-right: 1.5em;
}

.voice_area .sch_cp_set>div {
  margin: 0.5em;
  display: flex;
  gap: 0.5em;
}

.voice_area .sch_cp_set .voice_area_img {
  flex-basis: 130px;
}

.voice_area .sch_cp_set .voice_area_img img {
  width: 100%;
  height: auto;
}

.voice_area .sch_cp_set .sch_voice {
  flex-basis: 55%;
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}

.voice_area .sch_cp_set .tit {
  font-weight: bold;
  font-size: 1.1em;
  margin-bottom: 0.5em;
  color: #e16464;
}

.voice_area_txt span {
  display: block;
  line-height: 1.5;
  letter-spacing: 0.1px;
}

.voice_area .readmore-check:checked~.readmore-content,
.voice_area .readmore-content.voice_area_txt {
  margin: 5px;
}

.voice_area .readmore {
  position: relative;
  box-sizing: border-box;
}

.voice_area .readmore-content {
  overflow: hidden;
  position: unset;
}

.voice_area .readmore-content::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  content: "";
  height: 50px;
  margin: 1px;
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.8) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.8) 50%, #fff 100%);
}

.voice_area .readmore-label {
  display: table;
  bottom: 5px;
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  margin: 0 auto;
  z-index: 2;
  padding: 3px 15px;
  background-color: #815956;
  border-radius: 10px;
  color: #FFF;
}

.voice_area .readmore-label:before {
  content: "続きを読む";
}

.voice_area .readmore-check {
  display: none;
}

.voice_area .readmore-check:checked~.readmore-label {
  position: static;
  transform: translateX(0);
  -webkit-transform: translateX(0);
}

.voice_area .readmore-check:checked~.readmore-label:before {
  content: "閉じる";
}

.voice_area .readmore-check:checked~.readmore-content {
  height: auto;
}

.voice_area .readmore-check:checked~.readmore-content::before {
  display: none;
}

/* follow_txt */
.follow {
  background: rgb(255 251 243 / 87%);
  border: solid 1px rgb(215 169 99 / 70%);
  padding: 15px 0.5em;
  margin: 0.5em;
}

.follow_tit {
  margin-bottom: 10px;
  text-align: center;
  font-weight: bold;
  font-size: 1.2em;
  color: rgb(97 64 64 / 90%);
}

.follow_txt {
  margin: 10px;
  letter-spacing: 0.05em;
  line-height: 1.7;
  font-size: 1.1em;
  color: rgb(97 64 64 / 90%);
}

@media screen and (min-width: 896px) {
  .follow {
    max-width: 630px;
    margin: 1em auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

/* accordion */
.accordion_bt {
  display: none;
}

.accordion {
  display: block;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(45, 4, 0, 0.95);
  background: rgba(244, 236, 225, 0.3);
  border: solid 1px rgba(45, 4, 0, 0.3);
  padding: 8px 30px 8px 15px;
  margin-bottom: 3px;
  border-radius: 4px;
  position: relative;
  text-indent: 0em;
}

.accordion:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 1px solid rgba(45, 4, 0, 0.45);
  border-right: 1px solid rgba(45, 4, 0, 0.45);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.accordion:hover:after {
  width: 8px;
  height: 8px;
  border-width: 2px;
  -moz-transition: width .3s ease-out;
  -webkit-transition: width .3s ease-out;
  transition: width .3s ease-out;
  -moz-transition: height .3s ease-out;
  -webkit-transition: height .3s ease-out;
  transition: height .3s ease-out;
}

.accordion_area {
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}

.accordion_bt:checked+.accordion {
  opacity: 0.75;
}

.accordion_bt:checked+.accordion:after {
  transform: rotate(135deg);
  transition: .5s;
}

.accordion_bt:checked+.accordion+.accordion_area {
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}

/* marker */
.marker {
  background-color: #ffd6e2;
  padding: 0.1em;
  font-weight: 500;
}

/* plan_sec */
#main .plan_sec {
  margin: 2em 0;
  border: solid 3px #f6e8d78c;
}

#main .plan_sec h3 {
  padding: 1em;
  margin: 0 0 1em;
  background: #cfad83;
  font-size: 1.2em;
  color: #fff;
  font-weight: 600;
}

#main .plan_sec>*:not(h3) {
  margin: 1em;
}

/* pick */
ul.area_pick {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 1em;
  gap: 1.5em;
}

ul.area_pick li {
  position: relative;
}

ul.area_pick li a {
  font-size: 1.3em;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
  padding: 1em 0;
  text-align: center;
  background: #3ba3b3a3;
  display: block;
}

.area_pick li a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 3px solid rgba(255, 255, 255, 1.45);
  border-right: 3px solid rgba(255, 255, 255, 1.45);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media screen and (min-width: 896px) {
  .area_pick {
    justify-content: space-between;
  }

  ul.area_pick li {
    flex-basis: 30%;
  }
}

/* sch_staff */
.sch_staff .sch_staff_area .staff_img_area img {
  width: 80%;
  height: auto;
}

#main .sch_staff .sch_staff_area .staff_img_area a,
#main .sch_staff .sch_staff_area .staff_img_area .staff_box {
  display: flex;
  align-items: center;
  gap: 0.5em;
  color: #333;
  text-decoration: none;
}

#main .sch_staff .sch_staff_area .staff_img_area>a p:first-of-type,
#main .sch_staff .sch_staff_area .staff_img_area>.staff_box p:first-of-type {
  width: 70px;
  padding: 0.6em 0.2em;
  margin-right: 0.5em;
  text-align: center;
}

.sch_staff .sch_staff_area .staff_img_area a>p:last-of-type,
#main .sch_staff .sch_staff_area .staff_img_area>.staff_box p:last-of-type {
  text-align: left;
  margin-bottom: 0.5em;
  font-size: 1.1em;
}

.sch_staff .sch_staff_area .staff_txt_area {
  background: #f1f1f1;
  padding: 0.5em;
  font-size: 1.1em;
  line-height: 1.7;
  letter-spacing: 0.01em;
}

/* cat */
.cat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 600px;
  margin: auto;
}

.cat .cat_head {
  width: 120px;
  text-align: center;
  flex-basis: 20%;
}

.cat .cat_head img {
  width: 100%;
  height: auto;
}

.cat .cat_txt {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  font-size: 1.1em;
  background: #FFF;
  border: solid 1px #555;
  box-sizing: border-box;
  flex-basis: 74%;
  line-height: 1.7;
  letter-spacing: 0.02em;
  border-radius: 0.5em;
}

.cat .cat_txt:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -26px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #FFF;
  z-index: 2;
}

.cat_txt:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -27px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #555;
  z-index: 1;
}

.cat.cat_reverse {
  flex-direction: row-reverse;
}

.cat.cat_reverse .cat_txt::before {
  transform: rotate(180deg);
  left: unset;
  right: -26px;
}

.cat.cat_reverse .cat_txt:after {
  transform: rotate(180deg);
  left: unset;
  right: -27px;
}

.highlight {
  font-weight: bolder;
  background: rgba(255, 0, 40, 0.1);
}

/*list*/
.li1 li,
.li2 li {
  margin-bottom: 10px;
}

.li1 li:last-child,
.li2 li:last-child {
  margin-bottom: 0;
}

.li1>li {
  text-indent: -1em;
  padding: 0 1em;
}

.li1>li:before {
  content: "・";
}

.li1>li>.li1 {
  margin-top: 5px;
}

.li1>li>.li1>li {
  font-size: 1.2rem;
  font-weight: normal;
  color: rgba(45, 4, 0, 0.85);
  background: #f9f5f0;
  width: fit-content;
  border-radius: 4px;
  text-indent: 0;
  padding: 2px 5px;
  margin-bottom: 5px;
  overflow-wrap: initial;
}

.li1>li>.li1>li:before {
  content: none;
}

.li2 {
  counter-reset: number;
}

.li2>li {
  text-indent: -1.8em;
  padding-left: 1.8em;
}

.li2>li:before {
  content: counter(number)".";
  counter-increment: number;
  padding-right: 10px;
}

.li_s {
  font-size: 1.3rem !important;
}
.li3 li a{
display:block;
font-weight:400;
line-height: 1.4;
color:rgba(45,4,0,0.95);
background: rgba(244,236,225,0.3);
border: solid 1px rgba(45,4,0,0.3);
padding:12px 30px 12px 15px;
margin-bottom:6px;
border-radius:4px;
position:relative;
}

.li3 li a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 1px solid rgba(45, 4, 0, 0.45);
  border-right: 1px solid rgba(45, 4, 0, 0.45);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.li3 li a:hover:after {
  width: 8px;
  height: 8px;
  border-width: 2px;
  -moz-transition: width .3s ease-out;
  -webkit-transition: width .3s ease-out;
  transition: width .3s ease-out;
  -moz-transition: height .3s ease-out;
  -webkit-transition: height .3s ease-out;
  transition: height .3s ease-out;
}

/* bg */
.bg1 {
  background: rgba(250, 247, 245, 0.95);
  padding: 10px;
  margin-bottom: 15px;
}

/*dl*/
.dl1,
.dl2 {
  background: rgba(250, 247, 245, 0.95);
  padding: 10px;
  margin-bottom: 15px;
}

.dl2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}

.dl1 dt,
.dl2 dt,
.dl1 dd,
.dl2 dd {
  line-height: 1.4;
  padding: 5px 0;
}

.dl1 dt,
.dl2 dt {
  font-size: 1.05em;
  font-weight: 600;
}

.swp .dl2 dt {
  flex-basis: 100%;
  padding-right: 0;
  border-bottom: none;
  margin-bottom: 0;
}

.dl1.dd_li dd,
.dl1.dd_star dd {
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.dl1.dd_li dd:before {
  content: "・";
}

.dl1.dd_star dd:before {
  content: "★";
  font-size: 80%;
  color: rgba(196, 26, 26, 0.75);
  padding-right: 5px;
  position: relative;
  top: -1px;
}

.dl2 dt,
.dl2 dd {
  border-bottom: solid 1px rgba(26, 128, 196, 0.25);
  margin-bottom: 15px;
}

.dl2>*:nth-last-child(1),
.dl2>*:nth-last-child(2) {
  border-bottom: none;
  margin-bottom: 0;
}

.dl2 dt {
  flex-basis: 24%;
  padding-right: 2%;
}

.dl2 dd {
  flex-basis: 74%;
}

.swp .dl2 dd {
  flex-basis: 100%;
}

.dl1 .dl_s {
  font-size: 1.3rem;
}

.dl1 .li1 li {
  line-height: 1.5;
  margin-bottom: 0;
}

/* top_list */
ul.top_license_list.slider_plan img {
  width: 100%;
  height: auto;
}

.top_license_list {
  margin-bottom: 2em;
}

.top_license_list a {
  position: relative;
  color: #333;
  margin: 0.5em;
  display: block;
  background: #fff;
  border: #d2d7e5 solid 1px;
  width: 145px;
  box-shadow: 3px 3px 15px -5px #777777;
  border-radius: 10px;
}

.top_license_list a img {
  border-radius: 10px 10px 0 0;
}

.list_txt {
  padding: 0.2em;
}

@media screen and (min-width: 850px) {
  .top_license_list {
    margin-bottom: 3em;
  }

  #main .top_license_list a {
    width: 245px;
    color: #333;
    text-decoration: none;
  }

  .list_txt {
    text-align: center;
  }
}

.slider_plan {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.1em;
}

.school_att_lab {
  position: relative;
  display: block;
  line-height: 1.6;
  font-size: 1.2em;
  font-weight: 600;
  padding: 0.3em 0;
  margin-bottom: 1em;
  border-bottom: #3336 solid 1px;
  text-indent: inherit;
}

.school_att_lab:before {
  display: none;
}

.school_att_lab:after {
  content: "";
  position: absolute;
  top: 30%;
  right: 15px;
  left: inherit;
  border-top: solid 3px #3c3a3a6b;
  border-right: solid 3px #3c3a3a6b;
  width: 10px;
  height: 10px;
  transition: .5s;
  transform: rotate(45deg);
}

.school_att {
  height: 0;
  opacity: 0;
  transition: .5s;
  display: none;
}

.school_att_inp {
  display: none;
}

.school_att_inp:checked+.school_att_lab:after {
  transform: rotate(135deg);
  transition: .5s;
}

.school_att_inp:checked+.school_att_lab+.school_att {
  height: auto;
  opacity: 1;
  transition: .5s;
  display: block;
}

.sort_btn {
  display: flex;
}

.sort_btn p {
  padding: 0.5em;
  margin: 0.5em;
  background: #fff;
  border: #b7b7b7 solid 1px;
  border-radius: 0.5em;
}

/* top_link_banner */
.top_nav .top_link_banner {
  position: relative;
  line-height: 1.5;
  letter-spacing: 0.03em;
  display: flex;
  overflow: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  margin-bottom: 1em;
  -ms-overflow-style: none;
  height: 220px;
}

.top_link_banner li {
  width: 80vw;
  height: 160px;
}

.top_link_banner img {
  width: 100%;
  height: auto;
}

.top_link_banner a {
  display: block;
  position: relative;
  min-width: 290px;
  max-width: 290px;
  margin: 0 1em;
}

.top_link_banner h3 {
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-bottom: 1px solid rgba(0, 0, 0, .15);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  width: 180px;
  font-size: 15px;
  background: #fff;
  color: #6b524d;
  z-index: 3;
  font-weight: 600;
}

/* item_scroll */
.item_scroll {
  overflow: scroll;
  overflow-y: hidden;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

.item_scroll table.cm_tb {
  letter-spacing: 0.01em;
  line-height: 1.7;
}

.item_scroll table.cm_tb th {
  line-height: 1.7;
  background: #fcfdfd;
  border: #b7b9b9 solid 1px;
  color: #767676;
  font-weight: 600;
}

.item_scroll table.cm_tb td {
  border-left: #dddddd solid 1px;
  color: #333;
}

.item_scroll table.cm_tb a {
  color: #333;
  text-decoration: underline;
}

.item_scroll .cm_tb tr:nth-child(even) td {
  background: #f9f8fa;
}

.item_scroll .cm_tb tr:nth-child(odd) td {
  background: #f1f1f1;
}

.item_scroll .cm_tb img {
  max-width: 60px;
}

.item_scroll table.cm_tb tr .sch {
  width: 150px;
  min-width: 150px;
  white-space: pre-line;
}

.item_scroll table.cm_tb tr td.sch {
  text-align: left;
}

#main .item_scroll .cm_tb a,
#main .item_scroll .cm_tb a:visited {
  color: #333;
}

@media screen and (max-width:800px) {
  .item_scroll table {
    font-size: 0.8em;
  }
}

.sort_comment {
  font-size: 0.9em;
  letter-spacing: 0.7px;
  line-height: 1.7;
  margin: 0.5em;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width:800px) {
  .sort_comment {
    font-size: 0.8em;
  }
}

/* link_area */
a.link_area {
  display: flex;
  flex-wrap: wrap;
  margin: 1em auto;
  width: 82%;
  border: 3px #3333331c solid;
  padding: 1em;
  gap: 1em;
  align-items: center;
  text-decoration: none;
}

a.link_area .tit {
  text-align: center;
  font-weight: bold;
  font-size: 1.2em;
  color: rgb(97 64 64 / 90%);
  flex-basis: 100%;
  text-decoration: none;
}

a.link_area .img_area {
  flex-basis: 32%;
}

a.link_area .img_area img {
  width: 100%;
  height: auto;
}

a.link_area .com_area {
  flex-basis: 64%;
}

a.link_area .com_area p {
  font-size: 1.1em;
  line-height: 1.7;
  text-decoration: underline;
}

.link_area_cta {
  text-align: right;
}

.link_area_cta span {
  font-size: 1em;
  margin-top: 0.5em;
  margin-right: auto;
  margin-left: 0;
  padding: 5px;
  background: #3ba3b3;
  border-radius: 5px;
  color: #fff;
  text-decoration: none;
  display: inline-block;
}

@media screen and (max-width:900px) {
  a.link_area {
    width: 88%;
    margin-top: 3em;
    margin-bottom: 3.5em;
  }

  a.link_area .img_area {
    flex-basis: 35%;
  }

  a.link_area .com_area {
    flex-basis: 59%;
  }

  a.link_area .com_area p {
    font-size: 0.9em;
    color: #06c;
  }
}

@media screen and (min-width:900px) {
  a.link_area {
    align-items: stretch;
  }

  a.link_area .com_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
  }
}

a.pick_link {
  display: block;
  max-width: 300px;
  text-decoration: none;
  margin: 1em auto;
  border: 1px solid #959595e8;
  border-radius: 10px;
  color: #333333de !important;
}

a.pick_link img {
  width: 100%;
  height: auto;
  border-radius: 10px 10px 0 0;
}

a.pick_link p.txt {
  font-size: 1em;
  font-weight: 600;
  padding: 0.5em;
}

p.pick_link_tit {
  margin: 1.5em 1em 0.5em;
  font-weight: 600;
  font-size: 1.15em;
  color: #333;
}

@media screen and (width > 900px) {
  a.pick_link {
    max-width: 570px;
  }

  .pick_link_box {
    display: flex;
    gap: 1em;
  }
}

.cta_img img {
  height: auto;
  width: 100%;
  cursor: pointer;
}

.cta_img {
  width: 80%
}

#main .cta_img {
  width: 60%
}

#main .cta_img.tel {
  width: 65%
}

.cta_img {
  margin: 0.5em auto;
  text-align: center;
}

ul.bottom_flex {
  display: flex;
  justify-content: space-around;
  max-width: 530px;
  margin: 1em auto 2.5em;
  font-size: 0.9em;

  li {
    flex-basis: 31%;
    text-align: center;

    a,
    p {
      position: relative;
      display: flex;
      color: #fff !important;
      text-decoration: none;
      background: #6b9ff2;
      border-radius: 5px;
      padding: 5px;
      font-weight: 600;
      min-height: 4em;
      align-items: center;
      justify-content: center;

      &::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 9px;
        margin: auto;
        vertical-align: middle;
        width: 5px;
        height: 5px;
        border-top: 2px solid #ffffff;
        border-right: 2px solid #ffffff;
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
      }
    }

    p {
      background: #a3a3a3;
    }
  }
}


.school-card__wrap {
  margin: 20px 5px;

  @media (width > 1000px) {
    display: flex;
    justify-content: flex-start;
    gap: 1.5%;
    margin: 20px 0;
    flex-wrap: wrap;

    &>* {
      flex-basis: 32%;
    }
  }

  .school-card {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 50px 0;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: var(--color-bg);
    color: var(--text);
    font-size: var(--font-size-base);
    box-shadow: var(--shadow-card);
    overflow: hidden;

    & .school-card__link {
      display: block;
      color: inherit;

      &:hover .school-card__title {
        text-decoration: underline;
      }

      &:focus-visible {
        outline: 3px solid var(--focus);
        outline-offset: 2px;
      }
    }

    & .school-card__image {
      aspect-ratio: 16 / 9;
      background: #f6f6f6;
      overflow: hidden;

      & > img {
        display: block;
        inline-size: 100%;
        block-size: 100%;
        object-fit: cover;
      }
    }

    & .school-card__header {
      padding: 8px 12px 0;

      & .school-card__title {
        margin: 0;
        font-size: var(--font-size-400);
        font-weight: 600;
        line-height: 1.4;
        color: var(--text);
      }

      & .school-card__address {
        position: relative;
        margin: 5px 0 0;
        padding-inline-start: 1.4em;
        line-height: 1.5;
        font-size: var(--font-size-250);

        a {
          color: var(--color-muted);
        }

        &::before {
          content: "";
          position: absolute;
          inset-block-start: .2em;
          inset-inline-start: 0;
          inline-size: var(--font-size-250);
          block-size: var(--font-size-250);
          background: url(/img/ping.png) no-repeat center/contain;
        }
      }
    }

    & .school-card__price {
      padding: 4px 12px;
      font-size: var(--font-size-450);
      display: flex;
      align-items: baseline;
      gap: 6px;

      &::before {
        content: "普通車AT";
        font-size: var(--font-size-250);
        color: #ffffff;
        background: #3d8f40;
        padding: 5px;
        display: inline-block;
      }

      & .school-card__price-min {
        color: var(--color-accent);
        font-weight: 700;
      }

      & .school-card__price-max {
        color: #5d5d5d;
        font-weight: 700;
      }

      & .school-card__price-range {
        font-size: var(--font-size-350);
        color: #5d5d5d;
        font-weight: 700;
      }
    }

    & .school-card__graduation-days {
      padding: 4px 12px;
      font-size: var(--font-size-350);
      display: flex;
      align-items: baseline;
      gap: 6px;

      &::before {
        content: "最短卒業日数：";
        font-size: var(--font-size-250);
        color: #757575;
      }
    }

    & .school-card__discounts {
      display: flex;
      gap: 6px;
      padding: 0 12px;
      margin: 6px 0 2px;
      list-style: none;

      & .school-card__discount {
        font-size: 0.82em;
        background: var(--color-chip);
        padding: 6px 8px;
        border-radius: var(--radius-sm);
        font-weight: 600;
        line-height: 1;
        letter-spacing: .02em;

        &--early {}

        &--student {}

        &--group {}
      }
    }

    & .school-card__features {
      display: flex;
      justify-content: space-around;
      gap: 6px;
      padding: 0 12px;
      list-style: none;

      & .school-card__feature {
        inline-size: 60px;
        block-size: 60px;
        border-radius: 8px;
        background: #faf7f2;
        display: grid;
        place-items: center;
        margin-top: auto;

        &>img {
          inline-size: 56px;
          block-size: 56px;
          object-fit: contain;
          display: block;
        }

        &.school-card__feature--off {
          opacity: .45;
          filter: grayscale(.2);
        }
      }
    }

    & .school-card__subtitle {
      margin: 10px 12px 4px;
      font-size: var(--font-size-250);
      font-weight: 700;
    }

    & .school-card__cars {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      padding: 0 12px 10px;
      list-style: none;

      & li a {
        background: #878787;
        text-decoration: none;
        border-radius: 3px;
        padding: 2px 5px;
        color: #fff;
      }
    }

    & .school-card__points {
      position: relative;
      margin: auto 12px 8px;
      padding: 12px;
      border: 2px solid #ffcc95;
      border-radius: var(--radius-md);
      background: #fffdf9;

      & .school-card__points-label {
        position: absolute;
        inset-inline-start: 12px;
        inset-block-start: -12px;
        padding: 0 8px;
        line-height: 1.4;
        font-weight: 800;
        color: #ffcc95;
        background: #fff;
      }

      & .school-card__points-list {
        margin: 0;
        line-height: 1.6;

        &>li {
          display: flex;
          align-items: center;
          gap: 5px;
          margin-block: 0.25em;
          font-size: var(--font-size-200);

          .school-card__check-box img {
            display: flex;
            width: var(--font-size-200);
            height: auto;
          }
        }
      }
    }

    & .school-card__cta {
      display: flex;
      gap: 10px;
      justify-content: center;
      padding: 12px;
      margin-top: auto;

      & .school-card__btn {
        flex: 1 1 0;
        text-align: center;
        padding: 12px 14px;
        border-radius: var(--radius-md);
        color: #fff;
        font-weight: 700;
        font-size: var(--font-size-350);
        text-decoration: none;
        transition: transform .06s ease, filter .2s ease;

        &:hover {
          filter: brightness(1.03);
        }

        &:active {
          transform: translateY(1px);
        }

        &:focus-visible {
          outline: 3px solid var(--focus);
          outline-offset: 2px;
        }

        &.school-card__btn--apply {
          background: var(--color-cta-apply);
        }

        &.school-card__btn--check {
          background: var(--color-cta-check);
        }
      }
    }

    @media (min-width: 768px) {
      border-radius: var(--radius-lg);

      & .school-card__header .school-card__title {
        font-size: var(--font-size-400);
      }

      & .school-card__price {
        font-size: var(--font-size-400);

        &::before {
          font-size: var(--font-size-200);
          padding: 2px 3px;
        }
      }

      & .school-card__features .school-card__feature {
        inline-size: 50px;
        block-size: 50px;
      }

      & .school-card__features .school-card__feature>img {
        inline-size: 48px;
        block-size: 48px;
      }

      & .school-card__cars img {
        inline-size: 44px;
      }

      & .school-card__cta .school-card__btn {
        font-size: var(--font-size-350);
      }
    }
  }

  /* 状態モディファイア */
  .school-card--disabled {
    opacity: .7;
    filter: grayscale(.1);
    pointer-events: none;
  }
}