#sh135-temp .bonus-100 sup, #sh135-temp .bonus-100-badge sup {font-size: .6em; line-height: 0; vertical-align: super;}

#sh135-temp .bonus-100--large {margin-top: 50px; margin-bottom: 45px;}
#sh135-temp .bonus-100--large .bonus-100-box {display: flex; align-items: center; justify-content: space-between; gap: 40px; min-height: 268px; margin-right: 9px; padding: 24px 81px 24px 40px; color: #FFF; background: linear-gradient(90deg, #005456 0%, #008285 70%, #30B2AD 100%); border-radius: 30px 200px 200px 30px; box-shadow: 0 8px 17px rgba(0, 0, 0, .1);}
#sh135-temp .bonus-100--large .bonus-100-content {display: flex; flex-direction: column; align-items: flex-start; min-width: 0;}
#sh135-temp .bonus-100--large .bonus-100-label {display: inline-flex; align-items: center; gap: 16px; margin: 0 0 9px; padding: 5px 16px; font-size: 1.8rem; font-weight: 600; line-height: 1.5; color: #FFF; background-color: rgba(255, 255, 255, .2); border-radius: 8px;}
#sh135-temp .bonus-100--large .bonus-100-label svg {display: block; flex-shrink: 0; width: 18px; height: 18px;}
#sh135-temp .bonus-100--large .bonus-100-title {margin: 0; font-size: 3rem; font-weight: 600; line-height: 1.4; color: #FFF;}
#sh135-temp .bonus-100--large .bonus-100-list {margin: 4px 0 0; padding: 0; list-style: none; counter-reset: bonus-100;}
#sh135-temp .bonus-100--large .bonus-100-list li {position: relative; margin: 0; padding-left: 35px; font-size: 2.4rem; font-weight: 400; line-height: 1.55; color: #FFF; counter-increment: bonus-100;}
#sh135-temp .bonus-100--large .bonus-100-list li::before {content: counter(bonus-100) '.'; position: absolute; top: 0; left: 10px;}
#sh135-temp .bonus-100--large .bonus-100-btn {display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 100%; max-width: 318px; min-height: 60px; padding: 12px 24px; font-size: 2.4rem; font-weight: 600; line-height: 1.1; text-align: center; text-decoration: none; color: #E2007A; background-color: #FFF; border: 2px solid #FFF; border-radius: 200px; transition: color .3s, background-color .3s;}
#sh135-temp .bonus-100--large .bonus-100-btn:hover {color: #FFF; background-color: #E2007A;}
#sh135-temp .bonus-100--large .bonus-100-btn:focus-visible {outline: 2px solid #FFF; outline-offset: 3px;}
#sh135-temp .bonus-100--large .bonus-100-note {margin: 16px 0 0; padding-left: 16px; font-size: 1.6rem; font-weight: 400; line-height: 1.4; color: #757575;}

#sh135-temp .bonus-100--small {margin-top: 24px; margin-bottom: 28px;}
#sh135-temp .bonus-100--small .bonus-100-box {display: flex; align-items: center; justify-content: space-between; gap: 40px; min-height: 119px; padding: 16px 24px 16px 40px; color: #FFF; background: linear-gradient(90deg, #005456 0%, #008285 70%, #30B2AD 100%); border-radius: 40px;}
#sh135-temp .bonus-100--small .bonus-100-content {display: flex; flex-direction: column; gap: 2px; max-width: 922px; min-width: 0;}
#sh135-temp .bonus-100--small .bonus-100-title {margin: 0; font-size: 2.4rem; font-weight: 600; line-height: 1.4; color: #FFF;}
#sh135-temp .bonus-100--small .bonus-100-text {margin: 0; font-size: 1.8rem; font-weight: 400; line-height: 1.4; color: #FFF;}
#sh135-temp .bonus-100--small .bonus-100-btn {display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 100%; max-width: 318px; min-height: 60px; padding: 12px 24px; font-size: 2.0rem; font-weight: 600; line-height: 1.1; text-align: center; text-decoration: none; color: #E2007A; background-color: #FFF; border: 2px solid #FFF; border-radius: 200px; transition: color .3s, background-color .3s;}
#sh135-temp .bonus-100--small .bonus-100-btn:hover {color: #FFF; background-color: #E2007A;}
#sh135-temp .bonus-100--small .bonus-100-btn:focus-visible {outline: 2px solid #FFF; outline-offset: 3px;}
#sh135-temp .bonus-100--small .bonus-100-note {margin: 12px 0 0; padding-left: 16px; font-size: 1.4rem; font-weight: 400; line-height: 1.4; color: #757575;}
#sh135-temp .bonus-100 .bonus-100-note a {color: #E2007A; text-decoration: none;}
#sh135-temp .bonus-100 .bonus-100-note a:hover {color: #E2007A; text-decoration: underline;}
#sh135-temp #faq {scroll-margin-top: 120px;}

#sh135-temp .bonus-100-name-row {display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;}
#sh135-temp .bonus-100-badge {display: flex; flex-direction: column; flex-shrink: 0; align-items: center; justify-content: center; width: 84px; height: 50px; margin: -8px 0 0; padding: 0 8px; color: #FFF; text-align: center; letter-spacing: .02em; background-color: #008285; border-radius: 50px;}
#sh135-temp .bonus-100-badge-value {display: block; font-size: 1.8rem; font-weight: 700; line-height: 1;}
#sh135-temp .bonus-100-badge-label {display: block; margin-top: 2px; font-size: 1.3rem; font-weight: 300; line-height: 1;}

.contrast #sh135-temp .bonus-100 .bonus-100-box {background: #000 !important; border: 2px solid #FFF; box-shadow: none;}
.contrast #sh135-temp .bonus-100 .bonus-100-title, .contrast #sh135-temp .bonus-100 .bonus-100-text, .contrast #sh135-temp .bonus-100 .bonus-100-list li {color: #FFF !important;}
.contrast #sh135-temp .bonus-100 .bonus-100-label {color: #FFE800 !important; background: #000 !important; border: 1px solid #FFE800;}
.contrast #sh135-temp .bonus-100 .bonus-100-btn {color: #FFE800 !important; background: #000 !important; border-color: #FFE800 !important;}
.contrast #sh135-temp .bonus-100 .bonus-100-btn:hover {color: #000 !important; background: #FFE800 !important;}
.contrast #sh135-temp .bonus-100 .bonus-100-note {color: #FFF !important;}
.contrast #sh135-temp .bonus-100 .bonus-100-note a {color: #FFE800 !important; background: transparent !important;}
.contrast #sh135-temp .bonus-100-badge {color: #FFE800 !important; background: #000 !important; border: 1px solid #FFE800;}

@media all and (max-width: 1600px) {
		#sh135-temp .bonus-100--large .bonus-100-label {font-size: 1.6rem;}
		#sh135-temp .bonus-100--large .bonus-100-title {font-size: 3rem;}
		#sh135-temp .bonus-100--large .bonus-100-list li {font-size: 2.0rem;}
		#sh135-temp .bonus-100--large .bonus-100-btn {font-size: 2.0rem;}
		#sh135-temp .bonus-100--small .bonus-100-title {font-size: 2.2rem;}
		#sh135-temp .bonus-100--small .bonus-100-text {font-size: 1.6rem;}
		#sh135-temp .bonus-100--small .bonus-100-btn {font-size: 1.8rem;}
}

@media all and (max-width: 1400px) {
		#sh135-temp .bonus-100--large .bonus-100-box {min-height: 240px; padding-right: 60px;}
		#sh135-temp .bonus-100--large .bonus-100-title {font-size: 2.8rem;}
		#sh135-temp .bonus-100--large .bonus-100-list li {font-size: 1.8rem;}
		#sh135-temp .bonus-100--large .bonus-100-btn {max-width: 280px; min-height: 54px; font-size: 1.8rem;}
		#sh135-temp .bonus-100--small .bonus-100-title {font-size: 2.0rem;}
		#sh135-temp .bonus-100--small .bonus-100-btn {max-width: 280px; min-height: 54px; font-size: 1.6rem;}
		#sh135-temp .bonus-100-badge {width: 74px; height: 44px;}
		#sh135-temp .bonus-100-badge-value {font-size: 1.6rem;}
		#sh135-temp .bonus-100-badge-label {font-size: 1.2rem;}
}

@media all and (max-width: 992px) {
		#sh135-temp .bonus-100--large {margin-top: 32px;}
		#sh135-temp .bonus-100--large .bonus-100-box {flex-direction: column; align-items: flex-start; gap: 24px; min-height: 0; margin-right: 0; padding: 28px 32px; border-radius: 30px;}
		#sh135-temp .bonus-100--small .bonus-100-box {flex-direction: column; align-items: flex-start; gap: 20px; min-height: 0; padding: 24px 32px; border-radius: 30px;}
		#sh135-temp .bonus-100--small .bonus-100-content {max-width: none;}
}

@media all and (max-width: 768px) {
		#sh135-temp .bonus-100--large {margin-top: 24px; margin-bottom: 16px;}
		#sh135-temp .bonus-100--large .bonus-100-box {gap: 20px; padding: 20px 16px; border-radius: 20px;}
		#sh135-temp .bonus-100--large .bonus-100-label {gap: 10px; margin-bottom: 10px; padding: 4px 10px; font-size: 1.4rem; border-radius: 6px;}
		#sh135-temp .bonus-100--large .bonus-100-label svg {width: 16px; height: 16px;}
		#sh135-temp .bonus-100--large .bonus-100-title {font-size: 2.2rem; line-height: 1.3;}
		#sh135-temp .bonus-100--large .bonus-100-list {margin-top: 8px;}
		#sh135-temp .bonus-100--large .bonus-100-list li {padding-left: 22px; font-size: 1.6rem; line-height: 1.5;}
		#sh135-temp .bonus-100--large .bonus-100-list li::before {left: 2px;}
		#sh135-temp .bonus-100--large .bonus-100-btn {min-height: 48px; padding: 10px 20px; font-size: 1.6rem;}
		#sh135-temp .bonus-100--large .bonus-100-note {margin-top: 10px; padding-left: 0; font-size: 1.3rem;}
		#sh135-temp .bonus-100--small {margin-top: 4px; margin-bottom: 20px;}
		#sh135-temp .bonus-100--small .bonus-100-box {gap: 16px; padding: 20px 16px; border-radius: 20px;}
		#sh135-temp .bonus-100--small .bonus-100-title {font-size: 1.8rem; line-height: 1.3;}
		#sh135-temp .bonus-100--small .bonus-100-text {font-size: 1.5rem;}
		#sh135-temp .bonus-100--small .bonus-100-btn {min-height: 48px; padding: 10px 20px; font-size: 1.6rem;}
		#sh135-temp .bonus-100--small .bonus-100-note {margin-top: 8px; padding-left: 0; font-size: 1.2rem;}
		#sh135-temp .bonus-100-badge {width: 64px; height: 38px; margin-top: 0;}
		#sh135-temp .bonus-100-badge-value {font-size: 1.4rem;}
		#sh135-temp .bonus-100-badge-label {margin-top: 1px; font-size: 1.1rem;}
}
