@charset "shift_jis";
/* Updated 2025/09/16.T */
/*---------------------------------------------
base
---------------------------------------------*/
#footer-content {
  margin-top: 0;
}
#footer-fixed .panel {
  background: #ffffffb2;
}
#main-area {
  overflow-y: hidden;
}
.section-main {
  margin: auto;
  max-width: 500px;
  box-shadow: 0px 3px 20px 0px #141d1d33;
}
.section-main::before {
  content: '';
  display: block;
  width: 100vw;
  height: 100vh;
  background: url(/kojin/olive/special/campaign/collab/akachanhonpo202509/imgs/index_bg_01.png) center center / cover no-repeat;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
.content-block02.-bg01 {
  background: #ffeeee;
}
.content-block02.-bg02 {
  background: #d9f2ff;
}
.content-block02.-bg03 {
  background: #f5f9e6;
}
.content-block02:not(:first-child) {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .content-block02:not(.-contentsFull01)>.inner {
    padding: 0 4.8%;
  }
}
@media screen and (max-width: 767px) {
  .section-main {
    max-width: 100%;
  }
}
/*---------------------------------------------
card
---------------------------------------------*/
.card-box01.-bdRadius12 {
  border-radius: 12px;
  padding: 40px 20px 26px;
}
.card-box01._bd-radius10 {
  padding: 46px 16px;
}
.card-lamp01 {
  margin: auto;
  max-width: 290px;
  padding: 10px 69px 24px 7px;
  background: #f4f8e5;
  position: relative;
  top: 7px;
  left: 4px;
}
.card-lamp01>.text {
  text-align: left;
  font-weight: bold;
  font-size: 1.4rem;
  color: #017a4f;
}
.card-lamp01>.img {
  position: absolute;
  top: -5px;
  right: 0;
}
.card-lamp01::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  border: 3px solid #147a4f;
  position: absolute;
  top: -7px;
  left: -8px;
}
@media screen and (max-width: 375px) {
  .card-lamp01 {
    padding: 10px 18vw 24px 7px;
  }
  .card-lamp01>.text {
    font-size: 3.733vw;
  }
  .card-lamp01>.img {
    width: 21.8663vw;
  }
}
/*---------------------------------------------
table
---------------------------------------------*/
.table-type01.-radius01 {
  border-right: 0;
  border-bottom: 0;
  border-radius: 12px;
  overflow: hidden;
}
.table-type01.-radius01>tbody>.row:first-child>* {
  border-top: 0;
}
.table-type01.-radius01>tbody>.row>.header {
  border-left: 0;
  background: #006444;
}
/*---------------------------------------------
list
---------------------------------------------*/
.list-step01.-green01>.item:not(:first-child) {
  padding-top: 102px;
}
.list-step01.-green01>.item:not(:first-child)::before {
  top: 39px;
  left: calc(50% - 39px);
  border-width: 23px 39px 0 39px;
  border-color: #c6de78 transparent transparent transparent;
}
.list-step01.-narrow01>.item:not(:first-child) {
  padding-top: 78px;
}
.list-step01.-narrow01>.item:not(:first-child)::before {
  top: 30px;
}
.list-circle01>.item::before {
  background: #56635f;
}
.list-normal01.-menu01>.item>a {
  display: block;
  padding: 7px 17px;
  color: #fff;
  position: relative;
  z-index: 1;
}
.list-normal01.-menu01>.item>a:hover,
.list-normal01.-menu01>.item>a:focus {
  text-decoration: none;
}
.list-normal01.-menu01>.item>a.is-current::before,
.list-normal01.-menu01>.item>a:hover::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #0000001a;
  border-radius: 5px;
  position: absolute;
  top: 0;
  left: 0;
}
.list-normal01.-menu01>.item:not(:first-child) {
  margin-top: 10px;
}
/*---------------------------------------------
button
---------------------------------------------*/
.btn-type01.-orange01 {
  background: #ff5f04;
  box-shadow: 0px 6px 8px 0px #c15d004d;
}
.btn-type01.-orange01:not(:disabled):not([aria-disabled=true]):hover {
  background: #e95501;
}
/*---------------------------------------------
label
---------------------------------------------*/
.label-mark02 {
  font-family: "roboto";
  min-width: 80px;
  font-size: 2.0rem;
}
/*---------------------------------------------
mark
---------------------------------------------*/
.mark-arrow02 {
  position: relative;
  width: 138px;
  height: 70px;
  top: calc((56px + 70px) / 2);
  left: 50%;
  transform: translate(-50%, -50%);
}
.mark-arrow02::before,
.mark-arrow02::after {
  content: '';
  display: block;
  width: 69px;
  height: 29px;
  background: #c6de78;
  border-radius: 3px 0 0 3px;
  transform: skew(0deg, 31deg);
  position: absolute;
  top: 20px;
  left: 0;
}
.mark-arrow02::after {
  background: #a0c81e;
  transform: skew(0deg, -31deg) scaleX(-1);
  left: 69px;
}
/*---------------------------------------------
fixed
---------------------------------------------*/
.menu-fixed {
  padding: 42px 33px;
  width: 363px;
  min-height: 490px;
  font-weight: bold;
  font-size: 2.0rem;
  background: #e70012;
  border-radius: 20px;
  position: fixed;
  bottom: calc(50% - 250px);
  left: 22px;
}
.menu-fixed>.list {
  position: relative;
}
.menu-fixed>.list::before {
  content: '';
  display: block;
  width: 335px;
  height: 301px;
  background: url(/kojin/olive/special/campaign/collab/akachanhonpo202509/imgs/index_bg_02.png) 0 0 / contain no-repeat;
  position: absolute;
  bottom: -92%;
  left: -55px;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .menu-fixed {
    display: none !important;
  }
}
@media screen and (max-height: 510px) {
  .menu-fixed {
    display: none !important;
  }
}
/*---------------------------------------------
general
---------------------------------------------*/
._t-gray01 {
  color: #56635f !important;
}
._t-orange01 {
  color: #e95501 !important;
}