@charset "UTF-8";

.ranking .img-fit{
  height: 260px;
  object-fit: cover;
}

/* おすすめポイント */
.ranking .recommend{
  border: 3px solid #1bc7ea;
  border-radius: 15px;
  padding: 20px;
  margin: 20px 0;
}
.ranking .recommend ul{
}
.ranking .recommend li{
  position: relative;
  padding-left: 20px;
  font-size: 1.55rem;
}
.ranking .recommend li:not(:last-child){
  margin-bottom: 10px;
}
.ranking .recommend li::before{
  position: absolute;
  top: 10px;
  left: 1px;
  display: inline-block;
  width: 6px;
  height: 6px;
  content: "";
  background: #1bc7ea;
  border-radius: 50%;
}

/* 目次 */
.ranking .indexlist ol{
  list-style: decimal;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: .05em;
  margin: 10px 0 15px 20px;
  text-indent: 0.5em;
  font-weight: 500;
}

.ranking .indexlist a{
  /* color: #000 !important; */
  color: #383838;
}
.ranking .indexlist a:hover{
  opacity: 0.5;
}
.ranking .indexlist a:visited{
  color: #000 !important;
}

.ranking .indexlist ol ul{
  list-style: disc;
  color: #000;
  margin-left: 20px;
  margin-bottom: 10px;;
}
.ranking .indexlist ol ul li{
}

/* ランキング */
.ranking .ranking-box{
  display:flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  border-bottom: 1px solid #d2d2d2;
  margin-bottom: 20px;
  margin-top: 30px;
  padding-bottom: 20px;
}

.ranking .ranking-box p{
  margin: 0 !important;
}
.ranking .ranking-box .title{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  margin-left: 60px;
  font-weight: 500;
  line-height: 1.4 !important;
}

.ranking .ranking-box .title .pref  {
  display: block;
  width: 15%;
  font-size: 1.4rem !important;
  background: #1bc7ea;
  padding: 3px;
  border-radius: 20px;
  text-align: center;
  color: #fff;
  -webkit-font-smoothing: subpixel-antialiased;
}

.ranking .ranking-box .title .school {
  width: 70%;
  display: block;
  font-size: 2rem !important;
  font-weight: 500;
  color: #000;
  margin-left: 20px !important;
}
.ranking .ranking-box .title .school:before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  padding-right: 5px;
  font-weight: 900;
  color: #1bc7ea !important;
}
.ranking .ranking-box .title .school a {
  /* color: #000 !important; */
  color: #383838;
}
.ranking .ranking-box .title .school a:hover {
  opacity: 0.5;
}
.ranking .ranking-box .price{
  font-weight: 400;
  line-height: 2 !important;
  width: 100%;
  font-size: 20px !important;
  color: #fa7769;
  font-size: 20px;
  font-weight: 600;
}
.ranking .ranking-box .room,
.ranking .ranking-box .car,
.ranking .ranking-box .graduation{
  font-weight: 400;
  line-height: 1.5 !important;
  width: 100%;
  font-size: 14px !important;
}

.ranking .ranking-box .price span,
.ranking .ranking-box .room span,
.ranking .ranking-box .car span,
.ranking .ranking-box .graduation span
{
  width: 120px;
  margin-right: 15px;
  display: inline-block;
  font-size: 14px;
}

.ranking .ranking-box .price span{
  color: #fa7769;
  font-weight: 600;
  font-size: 2rem !important;
}

.ranking .ranking-box .leftarea{
  width: 10%;
}
.ranking .ranking-box .leftarea img{
  height: 30px;
}
.ranking .ranking-box .centerarea{
  width: 67%;
  display: flex;
  flex-wrap: wrap;
}
.ranking .ranking-box .rightarea{
  width: 23%;
}
.ranking .ranking-box .rightarea .entry{
  background: rgb(250,119,105);
  border-radius: 5px;
  padding: 12px 20px;
  color: #fff;
  font-size: 1.6rem;
  -webkit-font-smoothing: subpixel-antialiased;
}
.ranking .ranking-box .rightarea .entry:after{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  padding-left: 5px;
  font-weight: 900;
}
.ranking .ranking-box .rightarea .entry:hover{
  text-decoration: none !important;
  opacity: 0.5;
}
.ranking .ranking-box .rightarea .entry:visited{
  color: #fff !important;
}
.ranking .searchBox-sl .searchBox-Leftitem {
  width: 20%;
  text-align: center;
}
.ranking .searchBox-sl .searchBox-Rightitem {
  width: 80%;
  text-align: center;
  margin: 0;
}
.ranking .searchBox-wrap{
  margin: 5px 0 !important;
  width: 85%;;
}

/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  .ranking .left-area .t-main_inner .p-section .h3-p2 {
    display: flex;
    background: #1bc7eb;
    color: #FFF;
    margin: 40px 0 0;
    font-size: 1.6rem;
    line-height: 1.66;
    letter-spacing: 1.1px;
    border-radius: 50px 8px 8px 50px;
    font-weight: 500;
    align-items: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }
  .ranking .left-area .t-main_inner .p-section .h3-p2::before {
    font-family: "Font Awesome 5 Free";
    content: "\f27a";
    font-weight: 900;
    font-size: 1.9rem;
    background: #f8f7f4;
    border-radius: 15px 0 0 15px;
    color: #1bc7eb;
    width: 8%;
    margin-right: 15px;
    padding: 13px 9px 12px 11px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .ranking .indexlist ol{
    list-style: decimal;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: .05em;
    margin: 10px 0 15px 20px;
    text-indent: 0.5em;
    font-weight: 500;
  }
  .ranking .ranking-box{
    display:flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    border-bottom: 1px solid #d2d2d2;
    margin-bottom: 20px;
    margin-top: 30px;
    padding-bottom: 20px;
  }
  .ranking .ranking-box .price{
    font-weight: 400;
    line-height: 2 !important;
    width: 100%;
    font-size: 1.6rem !important;
  }
  .ranking .ranking-box .room,
  .ranking .ranking-box .car,
  .ranking .ranking-box .graduation{
    font-weight: 400;
    line-height: 1 !important;
    width: 100%;
    font-size: 1.6rem !important;
  }
  .ranking .ranking-box .price span{
    color: #fa7769;
    font-weight: 600;
    font-size: 16px !important;
    /* margin: 10px 0 !important; */
  }
  .ranking .ranking-box .room span,
  .ranking .ranking-box .car span,
  .ranking .ranking-box .graduation span
  {
    width: 120px;
    margin-right: 15px;
    display: inline-block;
    font-size: 12px;
  }
  .school-detail-top-right .school-name h4 {
    font-size: 1.8rem;
    font-weight: 500;
    display: inline-block;
  }
}

/* 教習所一覧 */
.ranking .school-list{
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: .05em;
  margin: 10px 0 10px 0;
  font-weight: 500;
}
.ranking .school-list{
  display: flex;
  flex-wrap: wrap;
  border-top: 3px solid;
  border-bottom: 3px solid;
}
.ranking .school-list dt{
  width: 30%;
  padding: 5px;
  border-right: 1px solid;
  text-align: center;
}
.ranking .school-list dd{
  width: 70%;
  padding: 5px 0 5px 20px;
}
.ranking .school-list dt:first-child{
  background: #e8f9fb;
  font-weight: 500;
}
.ranking .school-list dd:nth-child(2){
  background: #e8f9fb;
  font-weight: 500;
}
.ranking .school-list dd:not(:nth-child(2))::before{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  padding-right: 5px;
  margin-left: 0px;
  font-weight: 900;
  color: #1bc7ea;
}
.ranking .school-list dd a{
  /* color: #000 !important; */
  color: #383838;
}
.ranking .school-list dd a:hover{
  opacity: 0.5;
}
.ranking .school-list dt:not(:last-child), .ranking .school-list dd:not(:last-child){
  border-bottom: 1px dotted;
}


/* 詳細 */
.school-detail {
  margin-top: 15px;
}

.school-detail-information{
  border: 1px solid #c3c3c3;
  border-top: 5px solid #1bc7ea;
  border-left: 1px solid #d2d2d2;
  border-right: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  border-radius: 0px 0px 5px 5px;
  padding: 20px;
  margin-bottom: 30px;
}
.ranking-no1, .ranking-no2, .ranking-no3, .ranking-no4, .ranking-no5, .ranking-no6, .ranking-no7, .ranking-no8, .ranking-no9, .ranking-no10 {
  position: relative;
}
.ranking-no1:before, .ranking-no2:before, .ranking-no3:before, .ranking-no4:before, .ranking-no5:before, .ranking-no6:before, .ranking-no7:before, .ranking-no8:before, .ranking-no9:before, .ranking-no10:before {
  content: "";
  position: absolute;
  width: 66px;
  height: 67px;
  z-index: 1;
  left: 20px;
  top: -12px;
}

.ranking-no1:before{
  background: url(/assets/img/cmn/ico_no1.svg) no-repeat;
}
.ranking-no2:before{
  background: url(/assets/img/cmn/ico_no2.svg) no-repeat;
}
.ranking-no3:before{
  background: url(/assets/img/cmn/ico_no3.svg) no-repeat;
}
.ranking-no4:before{
  background: url(/assets/img/cmn/ico_no4.svg) no-repeat;
}
.ranking-no5:before {
  background: url(/assets/img/cmn/ico_no5.svg) no-repeat;
}
.ranking-no6:before {
  background: url(/assets/img/cmn/ico_no6.svg) no-repeat;
  background-size: 100%;
}
.ranking-no7:before {
  background: url(/assets/img/cmn/ico_no7.svg) no-repeat;
  background-size: 100%;
}
.ranking-no8:before {
  background: url(/assets/img/cmn/ico_no8.svg) no-repeat;
  background-size: 100%;
}
.ranking-no9:before {
  background: url(/assets/img/cmn/ico_no9.svg) no-repeat;
  background-size: 100%;
}
.ranking-no10:before {
  background: url(/assets/img/cmn/ico_no10.svg) no-repeat;
  background-size: 100%;
}


.school-detail-top{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.school-detail-top-left {
  width: 49%;
}

.school-detail-top-right {
  width: 49%;
}

.slider, .thumbnail_slider {
  width: 265px;
  margin: 0 auto 10px;
}

.slider .slick-slide img {
  width: 100%;
  margin: 0 auto;
}

.thumbnail_slider img {
  width: 90%;
  margin: 0 auto;
}

.school-detail{
  margin-bottom: 10px;
}
/*
.school-detail::before{
  content: "";
  position: relative;
  display: block;
  height: 4px;
  background-image: url(/assets/img/cmn/bg_line-bule.svg);
  margin: 0px auto 5px;
}
*/

.school-detail-top-right .address p {
  display: inline-block;
  font-weight: 500;
  margin: 0 !important;
}

.school-detail-top-right .address p.area:after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  margin-left: 3px;
  font-weight: 900;
}

.school-detail-top-right>.address>p>a {
  color: #1bc7ea !important;
}

.school-detail-top-right .school-name {
  margin: 0 0 0 0 !important;
}

.school-detail-top-right .school-name p {
  font-size: 2rem !important;
  color: #1bc7ea !important;
  font-weight: 500;
}

.school-detail-top-right .school-name {
  margin: 0 0 10px 0 !important;
}

.school-detail-top-right .school-name p a {
  /* color: #000 !important; */
  color: #383838;
}
.school-detail-top-right .school-name p a:hover {
  /* color: #000 !important; */
  color: #383838;
}
.school-detail-top-right .school-name h4 a:hover {
  opacity: 0.5;
}
.fas{
  color: #1bc7ea !important;
  font-size: 20px !important;
  padding: 3px;
}

.school-detail-top-right-detail {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
}

.school-detail-top-right-point {
  /*display: flex;*/
}

.school-detail-top-right-point p span {
  color: #1bc7ea;
}
.school-detail-top-right-point p span::after {
  color: #fa7769;
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  margin: 5px;
  font-weight: 900;
}
/*
  キャッシュバック
*/
.school-detail-bottom-cashback {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  border-top: #c3c3c3 1px dashed;
  border-bottom: #c3c3c3 1px dashed;
}

.school-detail-bottom-cashback>.school-detail-bottom-cashback-txt {
  width: 45%;
  text-align: center;
}

.school-detail-bottom-cashback>.school-detail-bottom-cashback-txt>p {
  font-weight: 600;
  font-size: 1.0em;
}

.school-detail-bottom-cashback>.school-detail-bottom-cashback-type {
  width: 55%;
}

.school-detail-bottom-cashback>.school-detail-bottom-cashback-type p {
  border: 1px solid #1bc7ea;
  text-align: center;
  padding: 5px 10px;
  display: inline-block;
  margin: 5px 0 5px !important;
  font-size: 0.9em;
  line-height: 1 !important;
}
.school-detail-bottom-cashback>.school-detail-bottom-cashback-type p:not(:last-child) {
  margin: 0 5px 5px 0;
}

.school-detail-bottom .school-detail-bottom-cheapest{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 15px 0 0;
  font-size: 2rem;
}

.school-detail-bottom .school-detail-bottom-cheapest-left{
  width: 50%;
}
.school-detail-bottom .school-detail-bottom-cheapest-right{
  width: 50%;
}
.school-detail-bottom .school-detail-bottom-cheapest-left p, .school-detail-bottom .school-detail-bottom-cheapest-right p{
  margin: 0 !important
}


/* PCレイアウト */
@media only screen and (min-width: 768px) {
  .left-area .t-main_inner .p-section .h3-p1 {
    display: flex;
    margin: 20px 0 0px;
    font-size: 2.0rem;
    line-height: 1.66;
    letter-spacing: 1.1px;
    font-weight: 500;
    color: #1bc7ea;
    align-items: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }
  .left-area .t-main_inner .p-section .h3-p1::before {
    content: "";
    width: 38px;
    height: 42px;
    margin-right: 10px;
    vertical-align: middle;
    background-size: contain;
    background-image: url("/assets/img/cmn/ico_fukidashi.png");
  }
  .left-area .t-main_inner .p-section .h3-p2 {
    display: flex;
    background: #1bc7eb;
    color: #FFF;
    margin: 40px 0 0;
    font-size: 2.0rem;
    line-height: 1.66;
    letter-spacing: 1.1px;
    border-radius: 50px 8px 8px 50px;
    font-weight: 500;
    padding-left: 5px 0;
    align-items: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }
  .left-area .t-main_inner .p-section .h3-p2::before {
    font-family: "Font Awesome 5 Free";
    content: "\f27a";
    font-weight: 900;
    font-size: 2.4rem;
    background: #f8f7f4;
    border-radius: 20px 0 0 20px;
    color: #1bc7eb;
    width: 8%;
    margin-right: 20px;
    padding: 16px 5px 12px 8px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .school-detail-top-right .school-name h4 {
    font-size: 2.0rem;
    font-weight: 500;
    display: inline-block;
  }
  .title-ym{
    color: #1bc7ea;
    background: #e8f9fb;
    margin-bottom: -10px !important;
    margin-top: 50px !important;
    padding: 10px;
    font-size: 2.0rem !important;
    font-weight: 600;
  }
  .school-detail-top-right-point p {
    margin: 0 0 5px 0 !important;
    line-height: 1.4 !important;
    font-weight: 500;
  }
  .school-detail-bottom .school-detail-bottom-cheapest p{
    /* margin: 0 !important; */
    font-size: 16px !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention {
    background: #1bc7ea;
    padding: 5px 15px 5px 15px;
    border-radius: 3px;
    color: #fff;
    font-weight: 600;
    position: relative;
    width: 220px;
    text-align: center;
    float: right;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -7px;
    border: 8px solid transparent;
    border-left: 15px solid #1bc7ea;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention span{
    margin-right: 5px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price {
    margin-left: 25px !important;
    color: #fa7769;
    font-weight: 600;
    font-size: 20px !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price2 {
    margin-left: 25px !important;
    color: #fa7769;
    font-weight: 600;
    font-size: 20px !important;
  }
  /* 部屋タイプ別料金 */
  .ranking .school-detail-bottom-room-price .school-detail-bottom-room-price-title{
    font-size: 16px !important;
    font-weight: 600;
    padding-top: 10px;
  }
}

/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  .title-ym{
    color: #1bc7ea;
    background: #e8f9fb;
    margin-bottom: -10px !important;
    margin-top: 35px !important;
    padding: 10px;
    font-size: 1.6rem !important;
    font-weight: 600;
  }
  .school-detail-top-right-point p {
    margin: 0 0 5px 0 !important;
    line-height: 2 !important;
    font-weight: 500;
  }
  .school-detail-bottom .school-detail-bottom-cheapest p{
    /* margin: 0 !important; */
    font-size: 15px !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 44%;
    margin-top: -7px;
    border: 12px solid transparent;
    border-top: 15px solid #1bc7ea;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention span{
    margin-right: 5px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price {
    margin-left: 25px !important;
    color: #fa7769;
    font-weight: 600;
    font-size: 18px !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price2 {
    margin-left: 25px !important;
    color: #fa7769;
    font-weight: 600;
    font-size: 18px !important;
  }
  /* 部屋タイプ別料金 */
  .ranking .school-detail-bottom-room-price .school-detail-bottom-room-price-title{
    font-size: 14px !important;
    font-weight: 600;
    padding-top: 10px;
    margin: 5px 0  0 !important;
  }

  .ranking .card-layout .card-item {
    width:100%
  }
}

.school-detail-bottom .school-detail-bottom-cheapest .price span{
  border: 1px solid #1bc7ea;
  font-size: 1.5rem !important;
  /* color: #000 !important; */
  color: #383838 !important;
  width: 60px;
  display: inline-block;
  text-align: center;
  margin-right: 10px;
  font-weight: 400;
}
.school-detail-bottom .school-detail-bottom-cheapest .price2 span{
  border: 1px solid #1bc7ea;
  font-size: 1.5rem !important;
  /* color: #000 !important; */
  color: #383838 !important;
  width: 60px;
  display: inline-block;
  text-align: center;
  margin-right: 10px;
  font-weight: 400;
  margin-left: 240px;
}

.ranking .school-detail-bottom-room-price .tableArea th {
  padding: 15px 20px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.70;
  text-align: left;
  background-color: #e0f1f3;
}
.ranking .school-detail-bottom-room-price .tableArea .vertical tr:not(:last-child) {
  border-bottom: 2px solid !important;
}
.ranking .school-detail-bottom-room-price .tableArea td{
  display: flex;
  flex-wrap: wrap;
  padding: 0 !important;
}
.ranking .school-detail-bottom-room-price .tableArea td p {
  margin: 0 !important;
  font-weight: 500;
  padding: 10px;
  width: 100%;
  color: #fa7769;
  font-weight: 600;
  font-size: 1.5rem !important;
}
.ranking .school-detail-bottom-room-price .other {
  margin: 0 !important;
  padding: 10px;
  width: 100%;
  font-size: 1.5rem !important;
  color: #383838 !important;
  font-weight: 400 !important;
}
.ranking .school-detail-bottom-room-price .tableArea td p span{
  border: 1px solid #1bc7ea;
  text-align: center;
  padding: 0px 0;
  margin-right: 15px;
  font-size: 12px !important;
  /* color: #000 !important; */
  color: #383838 !important;
  width: 60px;
  display: inline-block;
  font-weight: 500;
}

.ranking .school-detail-bottom-room-price .tableArea td p:not(:last-child) {
  border-bottom: 1px dashed #000;
}

/* ピックアップ */
.ranking .school-detail-bottom-room-pickup{
  border-bottom: #c3c3c3 1px dashed;
}

/* PCレイアウト */
@media only screen and (min-width: 768px) {
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-title{
    font-size: 16px !important;
    font-weight: 600;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name{
    font-weight: 500;
    font-size: 15px;
    color: #000 !important;
    transition: .3s;
  }
}

/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-title{
    font-size: 14px !important;
    font-weight: 600;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name{
    font-weight: 500;
    font-size: 14px;
    color: #000 !important;
  }
}

.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
  border-top: #c3c3c3 1px dashed;
  /* border-bottom: #c3c3c3 1px dashed; */
  margin-top: 15px;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-img{
  width: 50%;
  padding: 30px;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro{
  width: 50%;
  padding: 10px;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name:hover{
  opacity: 0.5;
}


.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name::before{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  padding-right: 5px;
  margin-left: 0px;
  font-weight: 900;
  color: #1bc7ea;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name a:hover{
  text-decoration: none;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-text{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  line-height: 1.4;
}
.ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-text span{
  display: block;
  font-weight: 500;
}

.ranking .school-detail .school-detail-bottom-calendar{
  border-radius: 3px;
  background: #1bc7ea;
  text-align: center;
  margin: auto;
  width: 320px;
  -webkit-font-smoothing: subpixel-antialiased;
  transition: .3s;
}
.ranking .school-detail .school-detail-bottom-calendar:hover{
  opacity: 0.5;
}
.ranking .school-detail .school-detail-bottom-calendar a:hover{
  text-decoration: none !important;
}
.ranking .school-detail .school-detail-bottom-calendar a p{
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  padding: 4px 0;
  position: relative;
}

.ranking .school-detail .school-detail-bottom-calendar a p:after{
  content: "\f0da";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 50%;
  right: 10px;
  margin-top: -12px;
}

/* お知らせ */
.ranking .school-detail .school-detail-bottom-infomation {
  padding-top: 20px;
}
.ranking .school-detail .school-detail-bottom-infomation-area{
  background: #fbfaf7;
  padding: 20px;
  margin-top: -15px;
}
.ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title {
  color: #1bc7ea;
  text-align: center;
  font-size: 22px !important;
  position: relative;
  font-weight: 500;
}

.ranking .school-detail .school-detail-bottom-toggle{
  display: block;
  width: 80%;
  border: 1px #1bc7ea dashed;
  text-align: center;
  padding: 5px 10px;
  margin: 0 auto 30px;
  color: #1bc7ea;
  position: relative;
  cursor: pointer;
  font-weight: 500;
}
.ranking .school-detail .school-detail-bottom-toggle:hover{
  opacity: 0.5;
}
.ranking .school-detail .school-detail-bottom-toggle:after{
  content: "\f107";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 50%;
  right: 10px;
  margin-top: -12px;
}
.ranking .school-detail .school-detail-closeArea{
  display: none;
}
.ranking .reason-info{
  margin-bottom:50px;
  text-align: center;
}

.ranking .reason-info .red{
  color: #fa8376;
  font-weight: 600;
}
.ranking .reason-info p:not(.reason-info-attention, .gasyuku-title, .tugaku-title){
  margin: 0 !important;
  text-align: center;
  font-size: 1.8rem !important;
  font-weight: 500 !important;
}
.ranking .reason-info .reason-info-title{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  border-bottom: 2px #1bc7ea solid;
}
.ranking .reason-info .reason-info-title img{
  height: 36px;
  width: auto;
  margin-top: 10px;

}
.ranking .reason-info h3.point1, .ranking .reason-info h3.point2, .ranking .reason-info  h3.point3{
  display: block;
  font-size: 2.4rem;
  font-weight: 600;
  color: #1bc7ea;
  margin-left: 15px;
}
/*
.ranking .reason-info h3.point1:before,.ranking .reason-info h3.point2:before,.ranking .reason-info h3.point3:before{
  position: absolute;
  content: "";
  height: 33px;
  width: 100%;
}
.ranking h3.point1:before{
  background: url(/assets/img/cmn/ico_point1.png) no-repeat;
  left: 185px;
}
.ranking h3.point2:before{
  background: url(/assets/img/cmn/ico_point2.png) no-repeat;
  left: 180px;
}
.ranking h3.point3:before{
  background: url(/assets/img/cmn/ico_point3.png) no-repeat;
  left: 178px;
}
*/
/* PCレイアウト */
@media only screen and (min-width: 768px) {
  .ranking .reason-info-attention{
    position: relative;
    font-size: 2.2rem !important;
    text-align: center;
    font-weight: 600 !important;
  }
}
/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  .ranking .reason-info-attention{
    position: relative;
    font-size: 2.0rem !important;
    text-align: center;
    font-weight: 600 !important;
  }
}
.ranking .reason-info-attention:before{
  position: absolute;
  content: "";
  height: 33px;
  width: 23px;
  margin-left: -37px;
  background: url(../../assets/img/cmn/ico_news-line-left.svg) no-repeat;
  margin-top: 9px;
}
.ranking .reason-info-attention:after{
  position: absolute;
  content: "";
  height: 34px;
  width: 27px;
  /* margin-right: -27px; */
  background: url(../../assets/img/cmn/ico_news-line-right.svg) no-repeat;
  margin-top: 9px;
}
.ranking .reason-info .gasyuku-title{
  background: #e8f9fb;
  color: #1bc7ea;
  position: relative;
  margin-top: 30px !important;
  font-weight: 600;
  font-size: 2rem !important;
  padding: 9px;
}
.ranking .reason-info .gasyuku-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #e8f9fb;
}
.ranking .reason-info .gasyuku-text{
  margin-top: 10px !important;
  margin-bottom: 15px !important;
}
@media only screen and (min-width: 768px) {
  .ranking .reason-info .gasyuku-text span{
    color: #fa7769;
    font-size: 3rem !important;
    font-weight: 600;
  }
  .ranking .reason-info .tugaku-text span{
    font-size: 3rem !important;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .ranking .reason-info .gasyuku-text span{
    color: #fa7769;
    font-size: 2.6rem !important;
    font-weight: 600;
  }
  .ranking .reason-info .tugaku-text span{
    font-size: 2.6rem !important;
    font-weight: 600;
  }
}
.ranking .reason-info .tugaku-title{
  background: #eeeeee;
  position: relative;
  margin-top: 30px !important;
  font-weight: 600;
  font-size: 2rem !important;
  padding: 9px;
}
.ranking .reason-info .tugaku-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #eeeeee;
}
.ranking .reason-info .tugaku-text{
  margin-top: 10px !important;
}
@media only screen and (min-width: 768px) {
  .ranking .reason-info p.refresh-title, .ranking .reason-info p.exp-title {
    margin-top: 10px;
    display: inline;
    font-size: 2.4rem !important;
    font-weight: 600 !important;
    color: #1bc7ea;
    border-bottom: 2px #1bc7ea solid;
    text-align: center;
    width: 100%;
  }
}
/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  .ranking .reason-info p.refresh-title, .ranking .reason-info p.exp-title {
    margin-top: 10px;
    display: inline;
    font-size: 2.0rem !important;
    font-weight: 600 !important;
    color: #1bc7ea;
    border-bottom: 2px #1bc7ea solid;
    text-align: center;
    width: 100%;
  }
}
.ranking .reason-info  .lead-area{
  border: 1px solid #1bc7ea;
  padding: 15px;
  margin-top: 20px;
}
.ranking .reason-info  .lead-area p{
  font-size: 1.6rem !important;
  font-weight: 300 !important;
  text-align: left;
}

/* PCレイアウト */
@media only screen and (min-width: 768px) {
  .ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title:before{
    position: absolute;
    content: "";
    height: 33px;
    width: 23px;
    margin-left: -37px;
    background: url(../../assets/img/cmn/ico_news-line-left.svg) no-repeat;
    margin-top: 9px;
  }
  .ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title:after{
    position: absolute;
    content: "";
    height: 34px;
    width: 27px;
    /* margin-right: -27px; */
    background: url(../../assets/img/cmn/ico_news-line-right.svg) no-repeat;
    margin-top: 9px;
  }
  .ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-text p{
    text-align: center;
    margin: 0 !important;
  }
  .ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry{
    border-radius: 3px;
    background: #1bc7ea;
    text-align: center;
    margin: auto;
    width: 60%;
    -webkit-font-smoothing: subpixel-antialiased;
    transition: .3s;
  }
}


.ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry a p{
  position: relative;
  color: #fff !important;
  padding: 5px 10px;
}
.ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry a p:after{
  content: "\f0da";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 42%;
  right: 10px;
  margin-top: -12px;
}

.ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry a:hover{
  text-decoration: none !important;
}

.ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry:hover{
  opacity: 0.5;
}

.p-about-kv_list .slick-list img {
  height: 240px;
}

/*  SPレイアウト  */
@media screen and (max-width: 767px) {
  /*
    詳細ページ
  */
  .ranking .t-main_inner .c-title {
    padding: 5px 0 30px;
  }

  .ranking .t-main_inner .p-section p {
    font-size: 1.4rem;
    line-height: 1.7;
    /* letter-spacing: .05em; */
    margin: 8px 0;
  }

  .ranking .t-main_inner .p-section a {
    /* color: #1a0dab; */
    color: #383838;
    /* font-size: 14px; */
  }

  .ranking .t-main_inner .p-section a:hover {
    text-decoration: underline;
  }

  .ranking .t-main_inner .p-section a:visited {
    color: #660099;
  }

  .ranking .t-main_inner .p-section .c-heading {
    margin-bottom: 10px;
    border-radius: 4px;
  }

  .ranking .t-main_inner .p-section .c-heading_inner {
    padding: 16px 22px 16px 45px;
    font-size: 1.7rem;
    font-weight: 500;
    letter-spacing: 1.6px;
    margin-top: 40px;
  }

  .ranking .t-main_inner .p-section .c-heading_inner:before, .c-heading_inner:after {
    left: 22px;
    width: 3px;
  }

  .ranking .t-main_inner .p-section .c-section-list li {
    font-size: 1.5rem;
    line-height: 1.7;
    letter-spacing: .05em;
    margin: 10px 0;
  }
/*
  .ranking .t-main_inner .p-section h3 {
    margin-top: 15px;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    color: #1bc7ea;
    align-items: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }

  .ranking .t-main_inner .p-section h3::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 33px;
    margin-right: 10px;
    vertical-align: middle;
    background-size: contain;
    background-image: url("/assets/img/cmn/ico_fukidashi.png");
  }
*/

  .ranking .t-main_inner .p-section h5 {
    margin: 10px 0 10px;
  }

  .ranking .t-main_inner .p-section .c-apply-link .c-btn {
    position: relative;
    display: flex;
    width: 87%;
    padding: 14px 10px 15px;
    margin: 0 auto;
    font-size: 1.42rem;
    font-weight: 500;
    line-height: 1;
    color: #ffffff;
    text-align: center;
    letter-spacing: 0.7px;
    cursor: pointer;
    border-radius: 4px;
    align-items: center;
    justify-content: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }

  .ranking .t-main_inner .p-section .c-apply-link .c-btn.c-btn-grade:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 50%;
    content: "";
    background: rgba(255, 255, 255, 0.25);
    transition: .3s;
  }

  .ranking .t-main_inner .p-section .c-apply-link .c-btn:after {
    position: absolute;
    top: 50%;
    right: 15px;
    display: inline-block;
    width: 6px;
    height: 12px;
    margin-top: -6px;
    content: "";
    background: url("/assets/img/cmn/ico_ar_r-white01.svg") center right no-repeat;
    background-size: 6px 12px;
  }

  .ranking .t-main_inner .p-section .c-apply-link .c-btn {
    margin-top: 20px;
  }

  .ranking .t-main_inner .p-section .c-apply-link a {
    color: #fff;
  }

  .ranking .t-main_inner .p-section .c-apply-link a:hover {
    text-decoration: none;
  }

  .ranking .t-main_inner .p-section .c-apply-link a::before {
    content: "";
  }

  /*
    右コンテンツ
  */
  .right-area{
    padding: 0 20px;
    margin: 0 auto 30px;
  }
  .right-area-content{
    padding: 0 10px;;
    margin: 0px 0 35px 0;
  }
  .right-area-content-title{
    position: relative;
    font-weight: 500;
    font-size: 1.68rem;
    text-align: center;
    margin-bottom: 15px;
  }
  .right-area-content-title::before{
    content: "";
    position: absolute;
    width: 15px;
    height: 2px;
    left: 47%;
    bottom: 28px;
    background: #1bc7ea;
  }

  .school-list{
    display: flex;
    flex-wrap: wrap;
  }
  .school-list dt{
    font-size: 1.4rem;
    border-bottom: 1px dotted;
    text-align: left !important;
    width: 40%;
    padding: 5px 0 5px 10px;
    display: flex;
    align-items: center;
  }
  .school-list dd{
    font-size: 14px;
    border-bottom: 1px dotted;
    text-align: left;
    width: 60%;
    padding: 5px 0 5px 10px;
    display: flex;
    align-items: center;
  }
  .school-list dt:first-child{
    background: #e8f9fb;
    font-weight: 500;
    border-top: 3px solid;

  }
  .school-list dd:nth-child(2){
    background: #fef1ee;
    font-weight: 500;
    border-top: 3px solid;
  }

  .other-termlist{
    font-size: 1.2em;
    font-weight: 500;
    border-left: solid 5px #1bc7ea;
    padding-left: 10px;
  }

  .ranking .recommend{
    padding: 10px;
  }
  .ranking .recommend li {
    font-size: 1.45rem;
  }
  .ranking .img-fit{
    height: 136px;
    object-fit: cover;
  }
  .ranking .ranking-box .ranking-no{
    width: 10%;
  }
  .ranking .ranking-box .ranking-no img{
    height: 30px;
  }

  .ranking .ranking-box .title {
    margin-left: 0;
    align-items: center;
  }
  .ranking .ranking-box .title .pref {
    width: initial;
    padding: 5px 10px;
    text-align: left;
  }
  .ranking .ranking-box .title .school {
    width: initial;
    margin-left: 0 !important;
    font-size: 16px !important;
    padding: 5px 0px 0px 0px;
  }
  .ranking .ranking-box .price {
    font-size: 1.8rem !important;
    margin:0 !important;
  }
  .ranking .ranking-box .price span, .ranking .ranking-box .room span, .ranking .ranking-box .car span, .ranking .ranking-box .graduation span {
    width: 90px;
  }
  .ranking .ranking-box .leftarea {
    width: 15%;
  }

  .ranking .ranking-box .centerarea {
    width: 100%;
  }
  .ranking .ranking-box .rightarea {
    width: 100%;
    margin-top: 10px;
  }
  .ranking .ranking-box .rightarea .entry {
    background: rgb(250,119,105);
    /* background: linear-gradient(0deg, rgba(250,119,105,1) 0%, rgba(255,164,154,1) 100%); */
    border-radius: 5px;
    padding: 7px;
    color: #fff;
    font-size: 15px;
    display: block;
    text-align: center;
    margin: 0 auto;
    margin-top: 10px;
    width: 87%;
  }
  .ranking .school-detail-top-left {
    display: block;
    width: 100%;
  }
  .ranking .school-detail-top-right {
    display: block;
    width: 100%;
  }
  .slider, .thumbnail_slider {
    width: 100%;
  }
  .slider .slick-slide img {
    padding-right: 5px;
    margin-left: -5px;
  }
  .school-detail-top-right-point {
    display: flex;
  }
  .school-detail-bottom-cashback>.school-detail-bottom-cashback-txt {
    text-align: left;
  }
  .ranking .t-main_inner .p-section p {
      /*font-size: 14px !important;*/
  }
  .school-detail-bottom .school-detail-bottom-cheapest {
    justify-content: space-around;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .attention {
      background: #1bc7ea;
      padding: 5px 5px;
      border-radius: 3px;
      color: #fff;
      font-weight: 600;
      width: 183px;
      position: relative;
      text-align: center;
      margin: 0 auto !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price span {
    border: 1px solid #1bc7ea;
    font-size: 1.4rem !important;
    color: #000 !important;
    width: 60px;
    display: inline-block;
    text-align: center;
    margin-right: 10px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price {
    font-weight: 600;
    font-size: 1.8rem !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price span {
    width: 45px;
    margin-right: 7px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price2 span {
    border: 1px solid #1bc7ea;
    font-size: 1.4rem !important;
    color: #000 !important;
    width: 60px;
    display: inline-block;
    text-align: center;
    margin-left: 0px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price2 {
    margin-left: 0px !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest .price2 span {
    width: 45px;
    margin-right: 15px;
  }
  .ranking .school-detail-bottom-room-price .tableArea th {
    font-size: 13px !important;
    padding: 5px 10px;
  }
  .ranking .school-detail-bottom-room-price .tableArea td p {
    font-size: 13px !important;
  }

  .ranking .school-detail-bottom-room-price .tableArea td p span{
    border: 1px solid #1bc7ea;
    text-align: center;
    padding: 0px 0;
    margin-right: 8px;
    font-size: 12px !important;
    /* color: #000 !important; */
    color: #383838 !important;
    width: 60px;
    display: inline-block;
    font-weight: 500;
  }

  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail{
    align-items: start;
    justify-content: space-between;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-img {
    width: 100%;
    padding: 0px;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro {
    width: 100%;
    padding: 10px;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-img {
    width: 45%;
    padding: 0px;
    margin: 10px 0;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro {
    width: 55%;
    margin: 10px 0;
    padding: 0 0 0 10px;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-name {
    margin: 0;
    line-height: 1.4;
  }
  .ranking .school-detail-bottom-room-pickup .school-detail-bottom-room-pickup-detail .room-pickup-intro .room-pickup-intro-text {
    margin: 4px 0 0 0;
    line-height: 1.4;
  }

  .ranking .school-list {
    border-top: 0px;
    border-bottom: 1px solid;
  }
  .school-detail-bottom-room-price .tableArea .vertical{
    min-width: initial;
  }
  .p-about-kv_list .slick-list img {
    height: 200px;
    object-fit: cover;
  }
  .ranking .school-detail-bottom-room-price .tableArea td p span{
    width: 45px;
  }
  .ranking .school-detail .school-detail-bottom-calendar{
    width: 100%;
  }
  .ranking .ranking-box .price {
    border-bottom: 1px #666;
    font-size: 16px !important;
    border-style: dashed;
    padding: 8px 0px 2px;
    color: #fa7769;
    font-weight: 600;
  }
  .ranking .ranking-box .room, .ranking .ranking-box .car, .ranking .ranking-box .graduation {
   /* border-bottom: 1px #666; */
   font-size: 12px !important;
   border-style: dashed;
   padding: 8px 0px 2px;
 }
 .ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title {
   color: #1bc7ea;
   text-align: center;
   font-size: 18px !important;
   position: relative;
   font-weight: 500;
 }
 .ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title:before{
   position: absolute;
   content: "";
   height: 33px;
   width: 23px;
   margin-left: -37px;
   background: url(../../assets/img/cmn/ico_news-line-left.svg) no-repeat;
   /* margin-top: 9px; */
 }
 .ranking .school-detail .school-detail-bottom-infomation p.school-detail-bottom-infomation-title:after{
   position: absolute;
   content: "";
   height: 34px;
   width: 27px;
   /* margin-right: -27px; */
   background: url(../../assets/img/cmn/ico_news-line-right.svg) no-repeat;
   /* margin-top: 9px; */
 }
 .ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry{
   border-radius: 3px;
   background: #1bc7ea;
   text-align: center;
   margin: auto;
   /* width: 60%; */
   -webkit-font-smoothing: subpixel-antialiased;
 }
 .ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry a p{
   position: relative;
   color: #fff !important;
   padding: 12px;
 }
 .ranking .school-detail .school-detail-bottom-infomation .school-detail-bottom-infomation-entry a p:after{
   content: "\f0da";
   position: absolute;
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   top: 50%;
   right: 10px;
   margin-top: -12px;
 }
 .searchBox-sl .searchBox-Leftitem {
  display: block;
  width: 100% !important;
  }
  .searchBox-sl .searchBox-Leftitem p{
    font-weight: 500;
    font-size: 1.5rem !important;
    }
  .searchBox-sl .searchBox-Rightitem {
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
  }
  .ranking .searchBox-wrap{
    width: 100% !important;
  }
  .searchBox-sl {
    background: #f1f1f0;
    padding: 10px;
    margin-top: 20px !important;
  }

  .school-detail-top-right>.address>p>a {
  }
  .school-detail-top-right .school-name p{
    margin: 0 0 0 0 !important;
    font-size: 1.9rem !important;
  }
  .school-detail-top-right-detail{
    margin-bottom: 15px;
  }
  .school-detail-top-right-detail p{
    margin: 0 !important;
  }
  .school-detail-bottom .school-detail-bottom-cheapest-left {
    width: 100%;
    margin-bottom: 10px;
  }
  .school-detail-bottom .school-detail-bottom-cheapest-right {
    width: 80%;
  }
  .ranking .reason-info .gasyuku-title {
    font-size: 1.8rem !important;
    padding: 5px;
  }
  .ranking .reason-info .tugaku-title {
    font-size: 1.8rem !important;
    padding: 5px;
  }
  .ranking .reason-info p:not(.reason-info-attention, .gasyuku-title, .tugaku-title, .refresh-title, .exp-title) {
    margin: 0 !important;
    font-size: 1.5rem !important;
  }
  .searchBox-select select {
    width: 85%;
  }
  .search-block-btn-qs {
    width: 55px;
  }
  .school-detail-bottom-cashback>.school-detail-bottom-cashback-type p {
    padding: 5px 5px;
  }
}

/* PCレイアウト */
@media only screen and (min-width: 768px) {
  /*
    メイン要素
  */
  .t-main {
    width: 1000px;
    margin: 50px auto;
    display: block;
  }
  /*
    2カラム左コンテンツ
  */
  .left-area {
    max-width: 640px;
    display: inline-block;
    line-height: 1.4;
  }
  /*
  右コンテンツ
  */
  .right-area {
    max-width: 350px;
    display: inline-block;
    vertical-align: top;
  }

  .right-area {
    width: 310px;
    display: inline-block;
    vertical-align: top;
    margin-left: 40px;
  }

  .right-area-content {
    border-bottom: 1px solid #d2d2d2;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }

  .right-area-content>.right-area-content-title {
    font-size: 1.8rem;
    margin: 10px 0;
  }

  .right-area-content>.right-area-content-title::before {
    content: "";
    position: relative;
    top: -6.5px;
    width: 16px;
    height: 2px;
    margin-right: 10px;
    display: inline-block;
    background-image: url("/assets/img/cmn/ico_horizontal.svg");
  }

  .right-area-content ul li {
    margin-top: 10px;
  }
  /*
    詳細ページ
  */
  .ranking .left-area .t-main_inner {
    display: block;
    width: auto;
    padding: 0;
    justify-content: space-between;
    align-items: center;
  }
  .ranking .left-area .t-main_inner .c-title {
    padding: 0 0 40px;
  }
  .ranking .left-area .t-main_inner .p-section p {
    font-size: 1.5rem;
    line-height: 1.9;
    margin: 8px 0 ;
  }
  .ranking .left-area .t-main_inner .p-section a {
    /* color: #1a0dab; */
  }
  .ranking .left-area .t-main_inner .p-section a::before:not(.index-list) {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    padding-right: 5px;
    margin-left: 0px;
    font-weight: 900;
  }
  .ranking .left-area .t-main_inner .p-section a:hover {
    text-decoration: underline;
    opacity: 0.5;
  }
  .ranking .left-area .t-main_inner .p-section a:visited:not(.index-list) {
    color: #660099;
  }
  .ranking .left-area .t-main_inner .p-section .c-heading {
    margin-top: 90px;
    margin-bottom: 10px;
    border-radius: 4px;
  }
  .ranking .left-area .t-main_inner .p-section .c-heading_inner {
    padding: 16px 22px 16px 45px;
    font-size: 2.2rem;
    font-weight: 500;
    letter-spacing: 1.6px;
  }
  .ranking .left-area .t-main_inner .p-section .c-heading_inner:before, .c-heading_inner:after {
    left: 22px;
    width: 3px;
  }
  .ranking .left-area .t-main_inner .p-section .c-section-list li {
    font-size: 1.5rem;
    line-height: 1.7;
    letter-spacing: .05em;
    margin: 10px 0;
  }
  /*
  .ranking .left-area .t-main_inner .p-section h3:not(.point1, .point2, .point3) {
    display: inline-block;
    margin: 20px 0 0px;
    font-size: 2.0rem;
    line-height: 1.66;
    letter-spacing: 1.1px;
    font-weight: 500;
    color: #1bc7ea;
    align-items: center;
    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: subpixel-antialiased;
  }
  .ranking .left-area .t-main_inner .p-section h3:not(.point1, .point2, .point3)::before {
    content: "";
    display: inline-block;
    width: 38px;
    height: 42px;
    margin-right: 10px;
    vertical-align: middle;
    background-size: contain;
    background-image: url("/assets/img/cmn/ico_fukidashi.png");
  }
  */
  /*
  .ranking .left-area .t-main_inner .p-section h4 {
    padding: 0 0 8px 8px;
    margin: 10px 0 15px;
    font-size: 2rem;
    line-height: 1.7;
    letter-spacing: 0.04em;
    border-bottom: 2px solid #1bc7ea;
  }
  .ranking .left-area .t-main_inner .p-section h4::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    vertical-align: middle;
    background-size: contain;
    background-image: url("/assets/img/cmn/ico_donut.svg");
  }
  */
  .ranking .left-area .t-main_inner .p-section h5 {
    margin: 8px 0;
    font-size: 1.5rem;
    line-height: 1.9;
  }
  .ranking .left-area .t-main_inner .p-section h5::before {
    top: 13px;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link .c-btn {
    width: 100%;
    padding: 22px 13px 22px 13px;
    font-size: 18px;
    letter-spacing: 1.3px;
    border-radius: 7px;
    transition: .3s;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link .c-btn:after {
    right: 30px;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link .c-btn {
    width: 600px;
    margin-top: 20px;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link a {
    color: #fff;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link a:hover {
    text-decoration: none;
  }
  .ranking .left-area .t-main_inner .p-section .c-apply-link a::before {
    content: "";
  }

  .ranking .right-area-content {
    border-bottom: 1px solid #d2d2d2;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  .ranking .right-area-content>.right-area-content-title {
    font-size: 1.8rem;
    margin: 10px 0;
  }
  .ranking .right-area-content>.right-area-content-title::before {
    content: "";
    position: relative;
    top: -6.5px;
    width: 16px;
    height: 2px;
    margin-right: 10px;
    display: inline-block;
    background-image: url("/assets/img/cmn/ico_horizontal.svg");
  }
  .ranking .right-area-content ul li {
    margin-top: 10px;
  }

  .check-point p{
    margin: 5px 0 !important;
  }
  .check-point p span{
    background:linear-gradient(transparent 85%, #ff7f7f 70%);
  }
  .mkj{
    border: 1px solid #1bc7ea;
  }
  .mkj h2{
    background: #1bc7ea;
    padding: 10px;
    color: #fff;
    font-size: 1.7rem;
  }

  .mkj .index-list{
    margin: 0px 6%;
    list-style: decimal;
  }
  .mkj .index-list li{
    margin: 10px 0;
    font-size: 1.2em;
  }

  .warning span{
    color: #fff;
    background: #fa7769;
    padding: 5px;
  }
  .warning p{
    margin: 0 !important;
  }
  .warning .waku{
    border: 4px dotted #fa7769;
    padding: 0 10px;
  }
  .column02{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    min-height: 250px;
    justify-content: space-evenly;
  }

  .column02 div{
    width: 48%;
    text-align: center;
    padding: 10px 5px;
    min-height: 120px;
    border:1px solid #c3c3c3;
  }
  .column02 div p{
    padding: 0 15px;
    line-height: 1 !important;
    margin: 0 !important;
  }
  .column02 div img {
    max-width: 100% !important;
    width: auto;
  }
  .school-about .title h4{

  }
  .school-about .title h4:before{

  }
  .school-about .title img{
    width: auto;
  }

  .other-termlist{
    font-size: 1.2em;
    font-weight: 500;
    border-left: solid 5px #1bc7ea;
    padding-left: 10px;
  }

  .p-about-kv_list .prev-arrow {
    width: 18px;
    height: 34px;
    margin-left: -130px;
  }
  .p-about-kv_list .next-arrow {
    width: 18px;
    height: 34px;
    margin-right: -130px;
  }

}

/* Loader */
#rank_result, #rank_result_sale, .test {
  position: relative;
  overflow: hidden;
}
.load_txt{
position: absolute;
  right: 38%;
  /* margin-right: -80px; */
  /* top: 44%; */
  margin-top: -86px;
  color: #fc2665;
}
@media screen and (max-width: 766px){
  .load_txt{
    margin-right: -100px;
  }
}
.loader {
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 5px solid rgba(255,0,102, 0.2);
  border-right: 5px solid rgba(255,0,102, 0.2);
  border-bottom: 5px solid rgba(255,0,102, 0.2);
  border-left: 5px solid #ff0066;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
.loader, .loader:after {
  border-radius: 50%;
  width: 3em;
  height: 3em;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.loader:before{
  position:absolute;
  content:"実行中...";
  display:block;
}
