@charset "utf-8";

/*
 common
======================================================= */
html{
  overflow: auto;
}
body{
  position: relative;
  overflow-x: hidden;
  min-width: 960px;
}
.main_contents{
  color: #333;
}
.win960{
  width: 960px;
  transform: translateX(-50%);
  margin-left: 50%;
}
.ecm-reward-header{
  padding: 4px 8px 8px;
}
/*
coupon
======================================================= */
.coupon_bnr{
  width: 368px;
  margin: 0 auto;
}
.coupon_bnr a:hover {
  opacity: .8;
  cursor: pointer;
}
/* coupon_bnr_col1 */
.coupon_bnr_col1{
  width: 480px;
  margin: 0 auto;
}
/* coupon_bnr_col2 */
.coupon_bnr_col2{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin: 0 auto;
}
/*
ttl
======================================================= */
.ttl01{
  width: 540px;
  margin: 0 auto 34px;
}
.ttl02{
  width: 540px;
  margin: 0 auto;
  padding-bottom: 40px;
}
/* ttl03 */
.ttl03{
  width: 100%;
  background: #f99958;
  background-size: 100%;
  height: 156px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 65px;
}
/* ttl04 */
.ttl04{
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  color: #333;
  margin-bottom: 20px;
}
.ttl04 ._text{
  position: relative;
  padding: 0 20px;
}
.ttl04 ._text::before ,
.ttl04 ._text::after {
  content: "";
  position: absolute;
  bottom: 6px;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: #333 transparent transparent transparent;
  z-index: 2;
  border-bottom-right-radius: 2px;
}
.ttl04 ._text::before{
  right: 0;
}
.ttl04 ._text::after{
  left: 0;
}
/* ttl05 */
.ttl05 ._text{
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 56px;
}
/*
main_section
======================================================= */
.main_section{
  position: relative;
}
.main_section._bg_col01::before {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_img01.png);
  background-size: 100%;
  width: 1920px;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -1;
  background-repeat: repeat;
}
/* _dec01 */
._dec01{
  position: relative;
  padding-bottom: 52px;
}
._dec01::before {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec01.png) no-repeat;
  background-size: 100%;
  width: 856px;
  height: 111px;
  position: absolute;
  top: -1px;
  left: 0;
  right: 62px;
  margin: auto;
  z-index: -1;
}
._dec01::after {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec02.png) no-repeat;
  background-size: 100%;
  width: 1920px;
  height: 65px;
  position: absolute;
  bottom: -80px;
  z-index: -1;
  transform: translateX(-50%);
  margin-left: 50%;
}
/* _dec02 */
._dec02{
  position: relative;
  padding-top: 87px;
}
._dec02::before {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec03.png) no-repeat;
  background-size: 100%;
  width: 900px;
  height: 139px;
  position: absolute;
  top: 14px;
  right: 3px;
  z-index: 0;
}
._dec02::after {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec07.png) no-repeat;
  background-size: 100%;
  width: 1920px;
  height: 65px;
  position: absolute;
  top: -29px;
  z-index: -1;
  transform: translateX(-50%);
  margin-left: 50%;
}
/* _dec03 */
._dec03{
  position: relative;
}
._dec03::before {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec04.png) no-repeat;
  background-size: 100%;
  width: 669px;
  height: 114px;
  position: absolute;
  top: -43px;
  z-index: -1;
  transform: translateX(-50%);
  margin-left: 50%;
}
/* _dec04 */
._dec04{
  position: relative;
}
._dec04::before {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec05.png) no-repeat;
  background-size: 100%;
  width: 798px;
  height: 119px;
  position: absolute;
  top: -44px;
  left: 0;
  right: 44px;
  margin: auto;
  z-index: 0;
}
/* _pc_bg_dec01 */
/* ._pc_bg_dec01::after {
  content: "";
  background: url(https://r.r10s.jp/evt/event/genre/school/2026/_pc/img/all/bg_dec08.png) no-repeat;
  background-size: 100%;
  width: 1621px;
  height: 392px;
  position: absolute;
  top: 548px;
  left: 0;
  transform: translateX(-50%);
  margin-left: 50%;
  z-index: 0;
} */
/*
floating_area
======================================================= */
.floating_area{
  background-color: #faf2cb;
}
.floating_area .ecm-floating-navi {
  height: 60px;
  background: #fbe184;
  width: 960px;
  margin: 0 auto;
}
.floating_area .ecm-floating-navi-item {
  display: flex;
  justify-content: center;
  align-items: center;
  border-right: 4px solid #fff;
  font-size: 16px;
  color: #333;
  font-weight: bold;
  width: 100%;
}
.floating_area .ecm-floating-navi-item:hover{
  background-color: #62c8a8;
}
.floating_area .ecm-floating-navi-item._active{
  background-color: #62c8a8;
}
.floating_area .ecm-floating-navi-item:last-of-type {
  border-right: none;
}
/* .floating_area .ecm-floating-navi-item.ecm-floating-navi-item-anchor[data-in-viewport=true] {
  background-color: #62c8a8;
  border: none;
  color: #fff;
} */
/*
ad_area
======================================================= */
.-text3lines {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}
.-text2lines {
    -webkit-line-clamp: 2;
    height: 2.6em;
}
.ad_area .ecm-ad{
  box-shadow: 0px 3px 8px 0px rgba(0,0,0,.2);
  border-radius: 6px;
  overflow: hidden;
}
.ad_area .ecm-ad-body{
  padding: 12px 12px 8px;
}
.ad_area .ecm-ad-shop{
  padding: 12px;
  padding-top: 0;
}
/* bnr */
.bnr_link_box{
  width: 600px;
  margin: 80px auto 0;
}
.bnr_link_list{
  box-shadow: 2px 3px 5px 0px rgba(51, 51, 51, 0.19);
  border-radius: 10px;
}
.bnr_link_list a:hover {
  opacity: .8;
  cursor: pointer;
}
/* alcor_area */
.alcor_area{
  padding: 16px 0;
  background: #fff;
}
.alcor_area .ecm-slider{
  padding: 0 16px;
}
/* ad_coupon_box */
.ad_coupon_box .ecm-ad{
  border: 1px solid #ebebeb;
  padding: 16px;
  border-radius: 6px;
}
/*
banners
======================================================= */
/* other_list01 */
.other_list01 .other_list_box{
  gap: 16px;
}
.other_list01 a{
  display: block;
}
.other_list01 a:hover {
  opacity: .8;
  cursor: pointer;
}
.other_list01 a img {
  width: 100%;
}
/*
footernavi
======================================================= */
.footernavi_box{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.footernavi_box a{
  color: #333;
  font-size: 22px;
  font-weight: bold;
}
.footernavi_box a:hover {
  opacity: .8;
  cursor: pointer;
  text-decoration: none;
}
.footernavi_box li:nth-of-type(1) .footernavi_list{
  background-color: #ff976e;
}
.footernavi_box li:nth-of-type(2) .footernavi_list{
  background-color: #ff90b4;
}
.footernavi_box li:nth-of-type(3) .footernavi_list{
  background-color: #95dbff;
}
.footernavi_box li:nth-of-type(4) .footernavi_list{
  background-color: #84d089;
}
.footernavi_list{
  position: relative;
  display: flex;
  align-items: center;
  box-shadow: 2px 3px 5px 0px rgba(51, 51, 51, 0.19);
}
.footernavi_list::before {
  content: "";
  position: absolute;
  right: 4px;
  bottom: 3px;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 17px 17px;
  border-color: transparent transparent #fff transparent;
  z-index: 2;
  border-bottom-right-radius: 2px;
}
.footernavi_img{
  width: 106px;
  min-width: 106px;
}
.footernavi_txt{
  display: flex;
  align-items: center;
  width: 100%;
  padding-left: 55px;
}


