.section { padding: 88px 0; }

.section:nth-of-type(odd) { background: #f5f5f5; }

@media screen and (max-width: 750px) { .section { padding: 64px 0; } }

.mainVisual { position: relative; background: #ffc733; }

.mainVisual__container { max-width: 950px; margin: 0 auto; }

@media screen and (max-width: 750px) { .mainVisual__container { max-width: 375px; } }

.mainVisual__term { color: #ffffff; background: #002A70; font-size: 1.7rem; font-weight: 700; text-align: center; padding: 16px 0; }

.mainVisual__announce { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; position: absolute; top: 82px; background: rgba(255, 255, 255, 0.8); width: 100%; height: calc(100% - 82px); }

@media screen and (max-width: 906px) { .mainVisual__announce { top: 56px; height: calc(100% - 56px); } }

.mainVisual__text--announce { background: #909090; color: #ffffff; font-size: 2rem; font-weight: 700; text-align: center; padding: 16px 24px; border-radius: 8px; -webkit-transform: rotate(-5deg); transform: rotate(-5deg); }

@media screen and (max-width: 750px) { .mainVisual__text--announce { position: absolute; top: 165px; font-size: 1.6rem; } }

@media screen and (max-width: 750px) { .entryButton { padding: 0 16px; } }

.entryButton__link { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; max-width: 665px; height: 70px; color: #ffffff !important; background: #ff0033; font-size: 2.4rem; font-weight: 700; text-align: center; margin: 24px auto 0; border-radius: 8px; }

.entryButton__link:hover { text-decoration: none; background: #b03932; }

.campaignBanner { padding: 24px 0; }

.campaignBanner__container { max-width: 950px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 750px) { .campaignBanner__container { max-width: 375px; } }

.campaignBanner__title { font-size: 3.1rem; font-weight: 700; text-align: center; }

.campaignBanner__title::after { content: ""; display: block; width: 40px; height: 4px; background: #ff0033; margin: 13px auto 0; }

@media screen and (max-width: 750px) { .campaignBanner__title { font-size: 2.4rem; } }

.campaignBanner__detail { margin-top: 16px; padding: 32px; }

@media screen and (max-width: 750px) { .campaignBanner__detail { padding: 16px; } }

.campaignBanner__text:nth-child(3) { margin-top: 24px; }

.campaignBanner__text--annotation { color: #606060; font-size: 1.2rem; }

.campaignBanner__list { margin-top: 8px; }

.campaign__container { max-width: 950px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 750px) { .campaign__container { max-width: 375px; } }

.campaign__title { font-size: 3.1rem; font-weight: 700; text-align: center; }

.campaign__title::after { content: ""; display: block; width: 40px; height: 4px; background: #ff0033; margin: 13px auto 0; }

@media screen and (max-width: 750px) { .campaign__title { font-size: 2.4rem; } }

.campaign__detail { margin-top: 48px; padding: 32px; border: 1px solid #f5f5f5; border-radius: 8px; }

@media screen and (max-width: 750px) { .campaign__detail { padding: 16px; } }

.campaign__text:nth-child(3) { margin-top: 24px; }

.campaign__text--annotation { color: #606060; font-size: 1.2rem; }

.campaign__list { margin-top: 8px; }

.conditions__title { font-size: 2.4rem; font-weight: 700; text-align: center; }

@media screen and (max-width: 750px) { .conditions__title { font-size: 1.8rem; } }

.conditions__text { margin: 32px 48px 0; }

@media screen and (max-width: 750px) { .conditions__text { margin: 32px 0 0; } }

.conditions__text--emphasis { color: #ff0033; font-size: 2.7rem; }

@media screen and (max-width: 750px) { .conditions__text--emphasis { font-size: 2.3rem; } }

.conditions__text--annotation { color: #606060; font-size: 1.2rem; text-align: center; margin-top: 8px; }

@media screen and (max-width: 750px) { .conditions__text--annotation { text-align: left; } }

.schedule { margin-top: 48px; padding-top: 48px; border-top: 1px solid #f5f5f5; }

@media screen and (max-width: 750px) { .schedule { margin-top: 32px; padding-top: 32px; } }

.schedule__title { font-size: 2.4rem; font-weight: 700; text-align: center; }

@media screen and (max-width: 750px) { .schedule__title { font-size: 1.8rem; } }

.schedule__text { color: #606060; font-size: 1.4rem; text-align: center; margin-top: 16px; }

@media screen and (max-width: 750px) { .schedule__text { text-align: left; } }

.schedule__term--first { position: relative; color: #16ae5e; background: #e1efd8; font-size: 1.8rem; font-weight: 700; text-align: center; margin-top: 32px; padding: 8px 0; }

@media screen and (max-width: 750px) { .schedule__term--first { font-size: 1.4rem; } }

.schedule__term--first::after { content: ""; position: absolute; right: 0; left: 0; bottom: -12px; width: 0; height: 0; margin: auto; border-style: solid; border-color: #e1efd8 transparent transparent transparent; border-width: 14px 10px 0 10px; }

.schedule__term--second { position: relative; color: #4f86c5; background: #d8ecfa; font-size: 1.8rem; font-weight: 700; text-align: center; margin-top: 32px; padding: 8px 0; }

@media screen and (max-width: 750px) { .schedule__term--second { font-size: 1.4rem; } }

.schedule__term--second::after { content: ""; position: absolute; right: 0; left: 0; bottom: -12px; width: 0; height: 0; margin: auto; border-style: solid; border-color: #d8ecfa transparent transparent transparent; border-width: 14px 10px 0 10px; }

.schedule__description { margin-top: 24px; }

.agreement { background: #eeeeee; margin-top: 32px; padding: 24px; border-radius: 8px; }

@media screen and (max-width: 750px) { .agreement { padding: 16px; } }

.agreement__title { font-size: 2rem; font-weight: 700; text-align: center; }

.agreement__container { background: #ffffff; margin-top: 24px; padding: 24px; border-radius: 8px; }

@media screen and (max-width: 750px) { .agreement__container { font-size: 1.4rem; padding: 16px; } }

.agreement__toggle { text-align: center; cursor: pointer; }

.agreement__button { position: relative; display: inline-block; background: #eeeeee; font-size: 1.3rem; width: 190px; padding: 8px 0; border-radius: 50px; }

.agreement__button::before { content: ""; position: absolute; top: 36%; left: 11%; display: inline-block; width: 7px; height: 7px; border: 2px solid; border-color: transparent transparent #666666 #666666; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.agreement__main { display: block; text-align: center; }

.agreement__definition { position: relative; height: 200px; overflow: hidden; }

.agreement__definition::after { content: ""; position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(90%, white)); background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 90%); background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, white 90%); }

.agreement__term { font-weight: 700; }

.agreement__term:not(:first-child) { margin-top: 24px; padding-top: 24px; border-top: 1px solid #eeeeee; }

.agreement__description { line-height: 1.7; margin-top: 8px; }

.agreement__item { margin-top: 8px; }

.paymentTerms__text--annotation { color: #606060; font-size: 1.2rem; }

.paymentTerms__item { padding-left: 1em; text-indent: -1em; margin-top: 24px; }

.paymentTerms__item--annotations { margin-top: 24px; padding-left: 1em; }

.paymentTerms__item--annotation { padding-left: 1.5em; text-indent: -1.5em; }

@media screen and (max-width: 750px) { .paymentTerms__item--annotation { padding-left: 1.7em; text-indent: -1.7em; } }

.paymentTerms__definition { padding-left: 1em; text-indent: -1em; }

.paymentTerms__term { margin-top: 24px; }

.other__list--hyphen { color: #606060; margin-top: 8px; }

.other__item { padding-left: 1em; text-indent: -1em; }

.other__item:not(:first-child) { margin-top: 8px; }

.other__item--notes { padding-left: 0.6em; text-indent: -0.6em; }

.coupon__container { max-width: 950px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 750px) { .coupon__container { max-width: 375px; } }

.coupon__title { font-size: 3.1rem; font-weight: 700; text-align: center; }

.coupon__title::after { content: ""; display: block; width: 40px; height: 4px; background: #ff0033; margin: 13px auto 0; }

@media screen and (max-width: 750px) { .coupon__title { font-size: 2.4rem; } }

.coupon__subTitle { font-size: 2.4rem; font-weight: 700; text-align: center; margin-top: 16px; }

@media screen and (max-width: 750px) { .coupon__subTitle { font-size: 1.8rem; } }

.coupon__detail { margin-top: 48px; padding: 32px; border: 1px solid #f5f5f5; border-radius: 8px; }

@media screen and (max-width: 750px) { .coupon__detail { padding: 16px; } }

.coupon__text { margin: 32px 48px 0; }

@media screen and (max-width: 750px) { .coupon__text { margin: 32px 0 0; } }

.coupon__text--emphasis { color: #ff0033; font-size: 2.7rem; }

@media screen and (max-width: 750px) { .coupon__text--emphasis { font-size: 2.3rem; } }

.coupon__text--annotation { color: #606060; font-size: 1.2rem; text-align: center; margin-top: 8px; }

@media screen and (max-width: 750px) { .coupon__text--annotation { text-align: left; } }

.customer__container { max-width: 950px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 750px) { .customer__container { max-width: 375px; } }

.customer__title { font-size: 3.1rem; font-weight: 700; text-align: center; }

.customer__title::after { content: ""; display: block; width: 40px; height: 4px; background: #ff0033; margin: 13px auto 0; }

@media screen and (max-width: 750px) { .customer__title { font-size: 2.4rem; } }

.customer__wrap { background: #ffffff; -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); margin-top: 32px; }

.customer__wrap:nth-child(2) { margin-top: 48px; }

.customer__headerGroup { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 750px) { .customer__headerGroup { position: relative; display: block; } }

.customer__photo { width: 40%; }

@media screen and (max-width: 750px) { .customer__photo { width: 100%; } }

.customer__textGroup { width: 60%; padding: 32px; }

@media screen and (max-width: 750px) { .customer__textGroup { position: absolute; bottom: 0; background: rgba(0, 0, 0, 0.4); color: #ffffff; width: 100%; padding: 16px; } }

.customer__lead { font-size: 2.7rem; }

@media screen and (max-width: 750px) { .customer__lead { font-size: 1.8rem; } }

.customer__definition { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: 1.4rem; }

@media screen and (max-width: 750px) { .customer__definition { font-size: 1.2rem; } }

.customer__definition:nth-child(2) { margin-top: 32px; }

@media screen and (max-width: 750px) { .customer__definition:nth-child(2) { margin-top: 8px; } }

.customer__term { margin-right: 8px; }

.customer__text { line-height: 2; padding: 32px; }

@media screen and (max-width: 750px) { .customer__text { font-size: 1.4rem; padding: 24px; } }

.customer__link { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; max-width: 665px; height: 70px; color: #ffffff !important; background: #ff0033; font-size: 2.4rem; font-weight: 700; text-align: center; margin: 48px auto 0; border-radius: 8px; }

.customer__link:hover { text-decoration: none; background: #b03932; }

.point { background: #fffbef; padding: 32px; }

@media screen and (max-width: 750px) { .point { padding: 24px; } }

.point__title { font-size: 2.7rem; font-weight: 700; }

.point__text--main { display: block; width: calc(100% - 46px); }

.point__text--emphasis { color: #ff0033; }

.point__list { list-style: none; counter-reset: number; }

.point__item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: baseline; -webkit-align-items: baseline; -ms-flex-align: baseline; align-items: baseline; font-weight: 700; margin-top: 8px; }

.point__item::before { counter-increment: number; content: counter(number); display: inline-block; background: #ff0033; color: #ffffff; width: 30px; text-align: center; margin-right: 16px; padding: 4px 0; border-radius: 3px; }

.ad { padding: 20px 0; text-align: center; }

.ad__container { max-width: 950px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 750px) { .ad__container { max-width: 375px; } }

.select::after { content: none; }
