@charset "shift_jis";
/* Updated 2025/09/01.T */
/************************************
font
*************************************/
@font-face {
  font-family: "noto-sans-black";
  src: url("/kojin/special/fonts/NotoSansJP-Black.woff") format("woff");
}
/*********************************************
include-card-wrap01
*********************************************/
.include-card-wrap01{
  position: relative;
  background: #fff;
  margin: 40px 0 0;
  border-radius: 12px;
  padding: 44px 16px 30px;
  box-shadow: 0 0 20px rgba(0, 72, 49, 0.16);
}
.include-card-wrap01 + .include-card-wrap01{
  margin-top: 56px;
}
.include-card-wrap01>.card-ttl01{
  position: absolute;
  left: 0;
  right: 0;
  top: -20px;
  text-align: center;
}
.include-card-wrap01>.card-ttl01>span{
  display: inline-block;
  padding: 8px 20px;
  border-radius: 8px;
  background: linear-gradient( to right, #2FA600 0%, #017D10 100%);
  color: #fff;
  font-weight: bold;
  font-size:2.0rem;
  line-height: 1;
}
.include-card-wrap01>.card-ttl01>span>em{
  font-weight: bold;
  font-size:2.4rem;
  font-family: roboto;
}
.include-card-wrap01 .card-img01{
  margin: 6px 0;
  text-align: center;
}
/*********************************************
include-card-wrap02
*********************************************/
.include-card-wrap02{
  position: relative;
  background: #F5F9E6;
  margin: 0;
  border-radius: 12px;
  padding: 20px 32px;
  text-align: center;
}
.include-card-wrap02.-type02{
  padding: 16px 30px;
}
.include-card-wrap02>.card-icon01{
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: -24px;
  top: -10px;
  background: #C4D700;
  border-radius: 50% 50% 0 50%;
  width: 48px;
  height: 48px;
  font-weight: bold;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1;
}
.include-card-wrap02>.card-icon01 .num{
  font-weight: bold;
  font-size: 2rem;
  font-family: roboto;
  color: #004831;
}
.include-card-wrap02>.card-icon02{
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: -24px;
  top: calc(50% - 18px);
  background: #017A4F;
  border-radius: 4px;
  width: 48px;
  height: 36px;
  font-weight: bold;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1.2;
  color: #fff;
}
.include-card-wrap02>.card-txt01{
  font-weight: bold;
  font-size: 1.6rem;
}
.include-card-wrap02>.card-txt01>em{
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  color: #004831;
}
.include-card-wrap02>.card-txt02{
  margin: 16px 8px 0;
  padding: 2px 10px;
  border-radius: 8px;
  background: #fff;
  font-weight: bold;
  font-size: 1.2rem;
  color: #56635F;
}
.include-card-wrap02>.card-txt02>.inner {
  background-color: #E2EFBC;
  border-radius: 8px;
  padding: 4px 10px;
  margin: 10px 0;
}
.include-card-wrap02>.card-ttl01{
  border-radius: 12px 12px 0 0;
  margin: -20px -32px 20px;
  padding: 10px 40px;
  background: #004831;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  color: #fff;
}
.include-card-wrap02>.card-ttl01>em{
  background: #004831;
  font-weight: bold;
  color: #C4D700;
}
/*********************************************
include-text-layout01
*********************************************/
.include-text-layout01{
  position: relative;
  margin: 16px 0 0;
  background: url(/kojin/olive/special/offers/20250831/imgs/pointget01_bg_01.png) no-repeat center bottom / 100%;
  text-align: center;
}
.include-text-layout01.-type02{
  background-position: center bottom 34px;
}
.include-text-layout01>.layout-img01{
  position: absolute;
  right: -30px;
  bottom: -48px;
  width: 90px;
}
.include-text-layout01>.layout-img01.-type02{
  bottom: -30px;
}
.layout-img02 {
  position: absolute;
  right: -19px;
  bottom: -36px;
}
.layout-img03 {
  position: absolute;
  right: -19px;
  bottom: -57px;
}
.include-text-layout01>.text-wrap{
  display: flex;
  justify-content: center;
}
.include-text-layout01>.text-wrap>p{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  background: linear-gradient( transparent 64%, #FFEDB3 64%,#FFEDB3 88%,transparent 88%);
  line-height: 1;
  color: #E95501;
}
.include-text-layout01>.text-wrap .text01{
  font-family: roboto;
  font-weight: bold;
  font-size: 7.2rem;
  letter-spacing: -.025em;
}
.include-text-layout01>.text-wrap .text01>span{
  font-size: 6.4rem;
}
.include-text-layout01>.text-wrap .text02{
  display: flex;
  flex-direction: column;
  margin-left: 5px;
}
.include-text-layout01>.text-wrap .text0201{
  font-size: 3.6rem;
  font-weight: bold;
}
.include-text-layout01>.text-wrap .text0202{
  margin-top: 5px;
  font-size: 2.0rem;
  font-weight: bold;
}
.include-text-layout01>.text-wrap .text03{
  margin-right: 5px;
  width: 1em;
  font-size: 2rem;
  line-height: 1.2;
  color: #141D1D;
  font-weight: bold;
}
.include-text-layout01 .text-wrap02{
  display: flex;
  justify-content: center;
  margin: 16px 0 0;
}
.include-text-layout01 .text-wrap02>span{
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  min-width: 162px;
  padding: 2px 10px;
  height: 28px;
  background: #E2EFBC;
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  color: #004831;
}
.include-text-layout01 .text-wrap02>span>em{
  font-size: 1.6rem;
  font-weight: bold;
}
.include-text-layout01.no-bg {
  background: none;
}
/*-type02*/
.include-text-layout01>.text-wrap.-type02>p{
  background: linear-gradient( transparent 64%, #F7E6EF 64%,#F7E6EF 88%,transparent 88%);
  color: #E1457E;
}
/*********************************************
include-olive-about01
*********************************************/
.include-olive-about01 {
  margin: 0 auto;
  padding: 0;
  background-color: #ffffff;
  text-align: center;
  font-weight: bold;
  color: #004831;
}
.include-olive-about01 .ttl01 {
  position: relative;
  z-index: 1;
  margin: 0 0 -30px 0;
  font-weight: bold;
  font-size: 3.6rem;
  font-family: "noto-sans-black";
}
.include-olive-about01 .img01 {
  height: auto;
  width:100%;
  margin-top: 20px;
}
.include-olive-about01 .txt01 {
  position: relative;
  z-index: 1;
  margin: -10px 0 0 0;
  letter-spacing: .03em;
  font-size: 1.8rem;
  line-height: 1.7;
}
.include-olive-about01 .txt02 {
  color: #ee7800;
  font-weight: bold;
  font-size: 2.2rem;
}
/*********************************************
include-miryoku-area
*********************************************/
.include-miryoku-area {
  margin: 0;
  padding: 60px 0 0;
  background-color: #fff;
}
.include-miryoku-area .frame01 {
  overflow: hidden;
  margin-top: 20px;
  border-radius: 12px;
}
.include-miryoku-area .frame01 + .frame01 {
  margin-top: 64px;
}
.include-miryoku-area .head01 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 2px;
  min-height: 60px;
  background-color: #006444;
  color: #ffffff;
  font-weight: bold;
  font-size: 2.2rem;
}
.include-miryoku-area .body01 {
  padding: 20px 20px 0;
  background-color: #ffffff;
}
.include-miryoku-area .wrap01 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 0 0 0;
}
.include-miryoku-area .wrap02 {
  display: inline-flex;
  align-items: flex-end;
  margin: -2px 0 -4px 0;
}
.include-miryoku-area .info01 {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  margin: 0 0 0 20px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background-color: #016444;
  color: #ffffff;
  line-height: 1;
}
.include-miryoku-area .ttl01 {
  text-align: center;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.3;
  color: #004831;
}
.include-miryoku-area .ttl02 {
  text-align: center;
  font-weight: bold;
  font-size: 2.0rem;
  line-height: 1.5;
  color: #006444;
}
.include-miryoku-area .list01 {
  margin: 0 -20px;
}
.include-miryoku-area .item01 {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: 2px solid #EAEFED;
}
.include-miryoku-area .item01:first-child {
  padding-top: 0;
  border-top: 0;
}
.include-miryoku-area .img01 {
  flex: 1;
  max-width: 172px;
  width: 172px;
}
.include-miryoku-area .txt01 {
  line-height: 1.5;
}
.include-miryoku-area .txt10 {
  display: inline-block;
  letter-spacing: .23em;
  font-weight: bold;
  font-size: 2.1rem;
}
.include-miryoku-area .txt11 {
  display: inline-block;
  margin: 4px 0 0 0;
  font-size: 1.1rem;
}
.include-miryoku-area .txt12 {
  display: inline-block;
  margin: 0 0 4px 0;
  font-size: 1.2rem;
}
.include-miryoku-area .txt13 {
  display: inline-block;
  font-weight: bold;
  font-size: 2.0rem;
  font-family: "roboto";
  transform: translate(2px, -5px);
}
.include-miryoku-area .txt14 {
  display: inline-block;
  font-weight: bold;
  font-size: 2.0rem;
  font-family: "roboto";
  transform: translate(2px, -3px);
}
.include-miryoku-area .txt15 {
  display: inline-block;
  font-weight: bold;
  font-size: 2.0rem;
  font-family: "roboto";
  transform: translate(2px, -3px);
}
.include-miryoku-area .num01 {
  letter-spacing: -.00em;
  font-weight: bold;
  font-size: 3.0rem;
  font-family: "roboto";
}
.include-miryoku-area .card-normal01 > .inner > .body {
  color: #141d1d;
}
.include-miryoku-area .card-normal01 .item * {
  line-height: 1.5;
}
.include-miryoku-area .card-normal01 .item .list-circle01{
  margin-top: 0;
}
.include-miryoku-area .card-normal01 .item a {
  text-decoration: underline;
}
.include-miryoku-area .card-normal01>.inner>.header {
  padding: 16px 30px;
  border-radius: 8px;
}
.include-miryoku-area .toggle-block01.card-normal01>.inner>.header[role=tab]::after {
  top: calc(50% - 12px);
  right: 10px;
  width: 24px;
  height: 24px;
}
.include-miryoku-area .toggle-block01>.inner>.header[role=tab]>.title{
  padding: 0;
  font-size: 1.6rem;
}
.include-miryoku-area .toggle-block01{
  margin-top: 40px;
}
/*********************************************
ttl-sub03
*********************************************/
.include-ttl-sub03{
  margin: 12px 0 0;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #004831;
}
.include-ttl-sub03>.inner{
  display: inline-block;
  position: relative;
}
.include-ttl-sub03>.inner::before,
.include-ttl-sub03>.inner::after{
  display: block;
  content: '';
  position: absolute;
  bottom: 0;
  width: 20px;
  height: 20px;
  background: url(/kojin/olive/special/offers/20250831/imgs/index_ico_02.svg) no-repeat 0 0 / 100%;
}
.include-ttl-sub03>.inner::before{
  left: -25px;
}
.include-ttl-sub03>.inner::after{
  right: -25px;
  transform: scaleX(-1);
}
.include-ttl-sub03 + .btn-list01{
  margin-top: 6px;
}
/*********************************************
.include-txt-
*********************************************/
._t-inc-orange01 {
  color: #e95501!important;
}
._t-inc-green01 {
  color: #017A4F!important;
}
/*********************************************
include-ttl-img01
*********************************************/
.include-ttl-img01{
  margin: -16px 0 0;
  text-align: center;
}
/*********************************************
include-text-style01
*********************************************/
.include-text-style01{
  max-width: 248px;
  margin: 8px auto 0;
  padding: 8px;
  background: #F6C7D8;
  border-radius: 30px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #141D1D;
  line-height: 1;
}
.include-text-style01>em{
  font-size: 2rem;
  font-weight: bold;
  color: #004831;
}
/*********************************************
include-account-bg01
*********************************************/
.include-account-bg01{
  padding: 40px 18px;
  background: #F5F9E6;
}
/*********************************************
include-account-bg02
*********************************************/
.include-account-bg02{
  padding: 40px 18px;
  background: #fff;
}
/*********************************************
include-account-ttl01
*********************************************/
.include-account-ttl01{
  font-size: 2.4rem;
  color: #004831;
  text-align: center;
  font-family: "noto-sans-black";
}
/*********************************************
include-account-ttl02
*********************************************/
.include-account-ttl02{
  font-size: 2.0rem;
  color: #004831;
  text-align: center;
  font-family: "noto-sans-black";
}
/*********************************************
include-account-ttl03
*********************************************/
.include-account-ttl03{
  margin: 33px 0 0;
  font-size: 1.6rem;
  text-align: center;
  font-weight: bold;
}
.include-account-ttl03>span{
  display: inline;
  background: linear-gradient(transparent 60%, #c6de78 60%);
}
.include-account-ttl03 em{
  font-weight: bold;
  color: #E95501;
}
.include-account-ttl03 sup{
  font-size: 1rem;
  font-weight: normal;
}
/*********************************************
include-account-ttl04
*********************************************/
.include-account-ttl04{
  margin: 40px 0 0;
  font-size: 1.8rem;
  color: #004831;
  text-align: center;
  font-family: "noto-sans-black";
}
.include-account-ttl04>span{
  display: inline;
  background: linear-gradient(transparent 60%, #c6de78 60%);
}
.include-account-ttl04 em{
  font-size: 2.4rem;
}
.include-account-ttl04 sup{
  font-size: 1rem;
  font-weight: normal;
}
/*********************************************
include-account-ttl05
*********************************************/
.include-account-ttl05{
  margin: 40px 0 0;
  font-size: 4.10vw;
  color: #004831;
  text-align: center;
  font-family: "noto-sans-black";
}
.include-account-ttl05 .num01{
  font-size: 6.4vw;
  font-family: roboto;
  font-weight: bold;
  line-height: 1;
}
/*********************************************
include-account-card01
*********************************************/
.include-account-card01{
  margin: 40px 0 0;
  border-radius: 12px;
  padding: 40px 18px;
  background: #fff;
}
/*********************************************
include-account-text01
*********************************************/
.include-account-text01{
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 8px 0 0;
  background: linear-gradient(transparent 80%, #c6de78 80%);
  line-height: 1.2;
  font-weight: bold;
  color: #004831;
}
.include-account-text01 em{
  font-weight: bold;
}
.include-account-text01>.text01{
  width: 1em;
  font-size: 5.86vw;
}
.include-account-text01>.text02{
  margin-bottom: -.6em;
  font-family: roboto;
  line-height: 1;
}
.include-account-text01>.text02>em:nth-child(1){
  font-size: 27.73vw;
}
.include-account-text01>.text02>em:nth-child(2){
  font-size: 24.26vw;
}
.include-account-text01>.text03>em:nth-child(1){
  font-size: 6.1vw;
}
.include-account-text01>.text03>em:nth-child(2){
  font-size: 12.5vw;
}
/*********************************************
include-account-tenpo
*********************************************/
.include-account-tenpo{
  margin: 40px 0 0;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0px 4px 6px 0px #141D1D14,0px 0px 4px 0px #141D1D0D;
}
.include-account-tenpo>.head01{
  padding: 6px;
  border-radius: 8px 8px 0 0;
  background: #C6DE78;
  font-size: 1.6rem;
  color: #004831;
  font-weight: bold;
  text-align: center;
}
.include-account-tenpo>.body01{
  padding: 12px 0;
  border-radius: 0 0 8px 8px;
  text-align: center;
}
/*********************************************
include-account-img01
*********************************************/
.include-account-img01{
  margin: 40px 0 0;
  text-align: center;
}
/*********************************************
include-account-textlist01
*********************************************/
.include-account-textlist01{
  margin: 40px 0 0;
  font-size: 1.6rem;
}
.include-account-textlist01>li{
  display: flex;
  align-items: center;
  margin: 16px 0 0;
}
.include-account-textlist01>li>.icon{
  width: 66px;
  margin-right: 11px;
}
.include-account-textlist01>li>.text{
  flex: 1;
}
.include-account-textlist01 sup{
  font-size: 1rem;
  font-weight: normal;
}
/*********************************************
include-account-next01
*********************************************/
.include-account-next01{
  display: block;
  position: relative;
  border: 1px dashed #C6DE78;
  border-width: 1px 0 0;
  margin: 55px 0 33px;
  overflow: initial;
}
.include-account-next01::after{
  display: block;
  content: '';
  position: absolute;
  top: -28px;
  left: calc(50% - 28px);
  width: 56px;
  height: 56px;
  background: url(/kojin/olive/special/offers/20250831/imgs/account01_ico_05.svg) no-repeat center center / 100%;
}
/*********************************************
include-account-button01
*********************************************/
.include-account-button01{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 40px auto 0;
  max-width: 303px;
  border-radius: 8px;
  border: 1px solid #004831;
  min-height: 64px;
  font-size: 1.6rem;
  color: #004831;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
/*********************************************
include-account-textlayout01
*********************************************/
.include-account-textlayout01{
  font-family: "noto-sans-black";
  text-align: center;
  color: #004831;
}
.include-account-textlayout01>.text01{
  font-size: 2rem;
}
.include-account-textlayout01>.text01>em{
  display: inline-block;
  position: relative;
  padding: 0 20px;
}
.include-account-textlayout01>.text01>em::before,
.include-account-textlayout01>.text01>em::after{
  display: block;
  content: '';
  position: absolute;
  bottom: 0.3em;
  width: 14px;
  height: 20px;
  background: url(/kojin/olive/special/offers/20250831/imgs/account01_ico_07.svg) no-repeat 0 0 /100%;
}
.include-account-textlayout01>.text01>em::before{
  left: 0;
}
.include-account-textlayout01>.text01>em::after{
  right: 0;
  transform: scale(-1,1);
}
.include-account-textlayout01>.text01._2line>em{
  padding: 0 40px;
}
.include-account-textlayout01>.text01._2line>em::before,
.include-account-textlayout01>.text01._2line>em::after{
  bottom: 0.2em;
  width: 32px;
  height: 48px;
  background: url(/kojin/olive/special/offers/20250831/imgs/account01_ico_09.svg) no-repeat 0 0 /100%;
}
.include-account-textlayout01>.text02{
  margin-top: 14px;
  font-size: 1.6rem;
}
.include-account-textlayout01>.text03>em{
  font-size: 3.4rem;
  background: linear-gradient(transparent 60%, #c6de78 60%);
}
.include-account-textlayout01>.text01+.text03{
  margin-top: 14px;
}
.include-account-textlayout01>.img01{
  margin-bottom: 14px;
}
/*********************************************
include-account-iconlist01
*********************************************/
.include-account-iconlist01{
  display: flex;
  flex-wrap: wrap;
}
.include-account-iconlist01>.item01{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: 8px;
  width: 31.6%;
  padding: 5px;
  margin-top: 16px;
  background: #006444;
  color: #fff;
  text-align: center;
}
.include-account-iconlist01>.item01:not(:first-child){
  margin-left: 2.3%;
}
.include-account-iconlist01>.item01>.text01{
  font-size: 1.4rem;
  line-height: 1.3;
}
.include-account-iconlist01>.item01>.text02{
  font-size: 2.8rem;
  line-height: 1.3;
  font-weight: bold;
  color: #C6DE78;
}
.include-account-iconlist01>.item01>.text03{
  font-size: 1.2rem;
}
/*********************************************
include-account-iconlist02
*********************************************/
.include-account-iconlist02{
  display: flex;
  flex-wrap: wrap;
  max-width: 85.3vw;
  margin: 26px auto 0;
}
.include-account-iconlist02>.item01{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: 50%;
  width: 40vw;
  height: 40vw;
  padding: 5px;
  margin-top: 14px;
  background: #006444;
  font-size: 3.7vw;
  color: #fff;
  text-align: center;
  line-height: 1.3;
}
.include-account-iconlist02>.item01:nth-child(even){
  margin-left: 5.2vw;
}
.include-account-iconlist02>.item01 .num01{
  font-size: 12.2vw;
  font-weight: bold;
  color: #C6DE78;
  font-family: roboto;
  line-height: 1;
}
.include-account-iconlist02>.item01 .num02{
  font-size: 10.1vw;
  font-weight: bold;
  color: #C6DE78;
  font-family: roboto;
  line-height: 1;
}
.include-account-iconlist02>.item01 .num03{
  font-size: 6.4vw;
  font-weight: bold;
  font-family: roboto;
  line-height: 1;
}
.include-account-iconlist02>.item01 .text01{
  font-size: 9vw;
  font-weight: bold;
  color: #C6DE78;
}
.include-account-iconlist02>.item01 sup{
  font-size: 1rem;
  font-weight: normal;
}
@media screen and (min-width:500px) {
  .include-account-text01>.text01{
    font-size: 2.86rem;
  }
  .include-account-text01>.text02>em:nth-child(1){
    font-size: 13.5rem;
  }
  .include-account-text01>.text02>em:nth-child(2){
    font-size: 11.8rem;
  }
  .include-account-text01>.text03>em:nth-child(1){
    font-size: 2.99rem;
  }
  .include-account-text01>.text03>em:nth-child(2){
    font-size: 6.11rem;
  }
  /*********************************************
  include-account-iconlist02
  *********************************************/
  .include-account-iconlist02{
    max-width: 416px;
  }
  .include-account-iconlist02>.item01{
    width: 195px;
    height: 195px;
    font-size: 1.8rem;
  }
  .include-account-iconlist02>.item01:nth-child(even){
    margin-left: 18px;
  }
  .include-account-iconlist02>.item01 .num01{
    font-size: 5.9rem;
  }
  .include-account-iconlist02>.item01 .num02{
    font-size: 4.9rem;
  }
  .include-account-iconlist02>.item01 .num03{
    font-size: 3.1rem;
  }
  .include-account-iconlist02>.item01 .text01{
    font-size: 4.4rem;
  }
  /*********************************************
  include-account-ttl05
  *********************************************/
  .include-account-ttl05{
    font-size: 2.0rem;
  }
  .include-account-ttl05 .num01{
    font-size: 3.1rem;
  }
}