.ccsf-notice {
box-sizing: border-box;
width: 100%;
max-width: 760px;
margin: 12px auto 28px;
padding: 28px;
border: 1px solid #c5ded8;
border-radius: 12px;
background: #f5faf8;
color: #253832;
text-align: left;
font-size: 16px;
line-height: 1.9;
overflow-wrap: anywhere;
}
.ccsf-notice .ccsf-notice__title {
margin: 0 0 12px;
color: #21483b;
font-size: 20px;
font-weight: 700;
line-height: 1.6;
}
.ccsf-notice .ccsf-notice__text {
margin: 0 0 20px;
font-size: 16px;
line-height: 1.9;
}
.ccsf-notice a.ccsf-notice__link {
display: inline-block;
box-sizing: border-box;
max-width: 100%;
padding: 13px 20px;
border: 2px solid #16633f;
border-radius: 6px;
background: #16633f;
color: #fff;
font-size: 16px;
font-weight: 700;
line-height: 1.6;
text-decoration: none;
text-align: center;
}
.ccsf-notice a.ccsf-notice__link:hover {
border-color: #104c30;
background: #104c30;
color: #fff;
text-decoration: underline;
}
.ccsf-notice a.ccsf-notice__link:focus-visible {
outline: 3px solid #243b72;
outline-offset: 4px;
}
@media (max-width: 480px) {
.ccsf-notice { padding: 20px 18px; }
.ccsf-notice .ccsf-notice__title { font-size: 19px; }
.ccsf-notice a.ccsf-notice__link { width: 100%; padding: 13px 14px; }
}