.page-contact{color:#333333;background-color:#FFFFFF;max-width:100%;overflow-x:hidden}
.page-contact h1,.page-contact h2,.page-contact h3{color:#017439}
.page-contact__hero-section{padding-top:0;margin-top:0;width:100%;overflow:hidden}
.page-contact__hero-image{width:100%;max-width:1200px;margin:0 auto;padding:0 16px;box-sizing:border-box}
.page-contact__hero-image img{width:100%;height:auto;display:block;border-radius:12px;object-fit:cover}
.page-contact__hero-content{max-width:1100px;margin:0 auto;padding:16px}
.page-contact__main-title{font-weight:700;line-height:1.3;letter-spacing:-0.01em;max-width:900px;margin:0 0 12px}
.page-contact__intro-text{font-size:1.05rem;line-height:1.7;color:#333333;max-width:820px;margin:0 0 16px}
.page-contact__hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.page-contact__btn{display:inline-block;padding:12px 22px;border-radius:8px;font-weight:600;text-decoration:none;text-align:center;box-sizing:border-box;line-height:1.4;transition:opacity .2s ease;cursor:pointer;border:none;font-size:1rem}
.page-contact__btn--primary{background-color:#C30808;color:#FFFF00}
.page-contact__btn--secondary{background-color:#017439;color:#FFFFFF}
.page-contact__btn:hover{opacity:.9}
.page-contact__intro-section,.page-contact__channels-section,.page-contact__form-section,.page-contact__response-section,.page-contact__guide-section,.page-contact__topics-section,.page-contact__commitment-section,.page-contact__faq-section,.page-contact__cta-section{max-width:1100px;margin:0 auto;padding:28px 16px}
.page-contact__section-title{font-size:1.5rem;line-height:1.35;margin:0 0 16px;font-weight:700}
.page-contact__subsection-title{font-size:1.15rem;line-height:1.4;margin:16px 0 8px;font-weight:600;color:#017439}
.page-contact p{line-height:1.75;margin:0 0 14px}
.page-contact__channels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.page-contact__channel-card{background-color:#f4faf6;border:1px solid #d8ecdf;border-radius:12px;padding:20px;box-sizing:border-box}
.page-contact__channel-title{font-size:1.15rem;margin:0 0 10px;font-weight:700;color:#017439}
.page-contact__channel-list{margin:0;padding-left:20px;line-height:1.7;color:#333333}
.page-contact__channel-card p{color:#333333}
.page-contact__form{max-width:760px;margin:0 auto;display:block}
.page-contact__form-note{max-width:760px;margin:0 auto 18px;color:#333333}
.page-contact__form-group{margin-bottom:18px}
.page-contact__form-label{display:block;margin-bottom:8px;font-weight:600;color:#017439}
.page-contact__form-input,.page-contact__form-select,.page-contact__form-textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #c9d8ce;border-radius:8px;font-size:1rem;color:#333333;background-color:#FFFFFF;font-family:inherit}
.page-contact__form-textarea{resize:vertical;min-height:140px}
.page-contact__form-input:focus,.page-contact__form-select:focus,.page-contact__form-textarea:focus{outline:2px solid #017439;outline-offset:1px}
.page-contact__form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.page-contact__form-status{margin-top:14px;font-weight:600;color:#017439;min-height:1.4em}
.page-contact__response-table{width:100%;border-collapse:collapse;margin:0 0 16px}
.page-contact__response-table th,.page-contact__response-table td{border:1px solid #d8ecdf;padding:12px;text-align:left;vertical-align:top;line-height:1.6}
.page-contact__response-table th{background-color:#017439;color:#FFFFFF;font-weight:600}
.page-contact__response-table td{color:#333333;background-color:#FFFFFF}
.page-contact__response-tip{background-color:#f4faf6;border-left:4px solid #017439;padding:12px 16px;border-radius:0 8px 8px 0;color:#333333}
.page-contact__guide-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:start}
.page-contact__guide-image img{width:100%;height:auto;display:block;border-radius:12px;object-fit:cover}
.page-contact__topics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.page-contact__topic-card{background-color:#f4faf6;border:1px solid #d8ecdf;border-radius:12px;padding:20px;box-sizing:border-box}
.page-contact__topic-title{font-size:1.1rem;margin:0 0 8px;font-weight:700;color:#017439}
.page-contact__topic-card p{color:#333333}
.page-contact__text-link{display:inline-block;margin-top:6px;color:#017439;font-weight:600;text-decoration:underline}
.page-contact__commitment-list{margin:0 0 14px;padding-left:20px;line-height:1.8;color:#333333}
.page-contact__commitment-list strong{color:#017439}
.page-contact__faq-list{display:flex;flex-direction:column;gap:10px}
.page-contact__faq-item{border:1px solid #d8ecdf;border-radius:10px;overflow:hidden;background-color:#FFFFFF}
.page-contact__faq-question{width:100%;box-sizing:border-box;text-align:left;background-color:#f4faf6;color:#017439;border:none;padding:16px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:inherit}
.page-contact__faq-question::after{content:'+';font-size:1.3rem;line-height:1;color:#017439}
.page-contact__faq-question[aria-expanded='true']::after{content:'\2212'}
.page-contact__faq-answer{display:none;padding:0 16px 16px;background-color:#FFFFFF}
.page-contact__faq-answer p{color:#333333;margin:0}
.page-contact__faq-item--open .page-contact__faq-answer{display:block}
.page-contact__cta-inner{background-color:#017439;border-radius:14px;padding:32px 24px;box-sizing:border-box;text-align:center}
.page-contact__cta-title{color:#FFFFFF;font-size:1.5rem;margin:0 0 10px;font-weight:700}
.page-contact__cta-text{color:#FFFFFF;max-width:720px;margin:0 auto 18px;line-height:1.7}
.page-contact__cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.page-contact__cta-inner .page-contact__btn--primary{background-color:#C30808;color:#FFFF00}
.page-contact__cta-inner .page-contact__btn--secondary{background-color:#FFFFFF;color:#017439}
.page-contact a{color:#017439}
.page-contact__cta-inner a{color:inherit}
@media (max-width:768px){
.page-contact img{max-width:100%!important;height:auto!important}
.page-contact__hero-image{padding:0 12px}
.page-contact__hero-content{padding:14px 12px}
.page-contact__hero-actions{flex-direction:column;align-items:stretch}
.page-contact__btn{max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;width:100%}
.page-contact__form-actions{flex-direction:column;align-items:stretch}
.page-contact__channels-grid{grid-template-columns:1fr}
.page-contact__topics-grid{grid-template-columns:1fr}
.page-contact__guide-layout{grid-template-columns:1fr}
.page-contact__cta-actions{flex-direction:column;align-items:stretch}
.page-contact__response-table{display:block;overflow-x:auto}
.page-contact__section-title{font-size:1.3rem}
.page-contact__cta-title{font-size:1.3rem}
.page-contact__intro-section,.page-contact__channels-section,.page-contact__form-section,.page-contact__response-section,.page-contact__guide-section,.page-contact__topics-section,.page-contact__commitment-section,.page-contact__faq-section,.page-contact__cta-section{padding:22px 12px}
}