@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");.ccm-mission{background:#fff;padding:0 0 72px;position:relative}.ccm-mission__hero{background-position:50%;background-size:cover;margin-bottom:64px;padding:150px 24px;position:relative}.ccm-mission__hero-overlay{background:hsla(0,0%,8%,.45);inset:0;position:absolute}.ccm-mission__hero-text{margin:0 auto;position:relative;text-align:center;z-index:1}.ccm-mission__heading{animation:ccm-fade-in 2.4s ease-out .3s forwards;color:#fff;display:table;font-family:Shippori Mincho,serif;font-size:min(3.4vw,46px);font-weight:700;line-height:1.4;margin:0 auto 20px;opacity:0;padding-bottom:16px;position:relative;text-shadow:0 2px 12px rgba(0,0,0,.4);white-space:nowrap}.ccm-mission__heading:after{animation:ccm-fade-soft 2s ease-out 1.8s forwards;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 600 24'%3E%3Cpath fill='none' stroke='%23d64545' stroke-linecap='round' stroke-width='7' d='M4 15c56-6 116 3 186-3s130 5 210-1c60-4 130 5 196-1'/%3E%3Cpath fill='none' stroke='%23d64545' stroke-linecap='round' stroke-width='3' d='M20 19c70-5 140 2 230-3s180 4 330-1' opacity='.55'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:100% 100%;border-radius:0;bottom:-4px;content:"";height:18px;left:0;opacity:0;position:absolute;width:100%}.ccm-mission__subheading{animation:ccm-fade-in 2.4s ease-out 1.2s forwards;color:#fff;font-family:Shippori Mincho,serif;font-size:min(1.6vw,24px);font-weight:400;margin:0;opacity:0;text-shadow:0 2px 10px rgba(0,0,0,.4);white-space:nowrap}.ccm-mission__inner{margin:0 auto;max-width:1040px;padding:0 24px}.ccm-mission__body{color:#5a4e3f;font-family:Zen Kaku Gothic New,sans-serif;font-size:17px;line-height:1.95;margin:0 auto 36px;max-width:860px}.ccm-mission__body>*{max-width:100%}.ccm-mission__body div,.ccm-mission__body p{background-color:transparent}.ccm-mission__body p{margin:0 0 1.1em}.ccm-mission__body strong{color:#231a12;font-weight:700}.ccm-mission__list{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin:0 auto 44px;max-width:1000px;padding:0}.ccm-mission__list-item{align-items:center;background:#fff;border:1px solid #e5d9c6;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.05);color:#231a12;display:flex;flex-direction:column;font-family:Zen Kaku Gothic New,sans-serif;font-size:13px;gap:8px;justify-content:center;min-width:0;padding:24px 12px;text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.ccm-mission__list-item:hover{border-color:#bd5a34;box-shadow:0 6px 16px rgba(0,0,0,.09);transform:translateY(-3px)}.ccm-mission__list-label{color:#bd5a34;font-size:15px;font-weight:700;white-space:nowrap}.ccm-mission__list-desc{color:#5a4e3f}.ccm-mission__closing{color:#231a12;font-family:Zen Kaku Gothic New,sans-serif;font-size:17px;line-height:1.9;margin:0 0 32px;text-align:center}.ccm-mission__cta{margin-bottom:0;text-align:center}.ccm-mission__cta-main{border-bottom:1px solid #bd5a34;color:#bd5a34;font-family:Zen Kaku Gothic New,sans-serif;font-size:20px;font-weight:700;padding-bottom:2px;text-decoration:none;transition:color .2s ease,border-color .2s ease}.ccm-mission__cta-main:hover{border-color:#7c3b20;color:#7c3b20}@keyframes ccm-fade-in{0%{filter:blur(8px);opacity:0;transform:translateY(8px)}to{filter:blur(0);opacity:1;transform:translateY(0)}}@keyframes ccm-fade-soft{0%{filter:blur(6px);opacity:0}to{filter:blur(0);opacity:1}}@media (prefers-reduced-motion:reduce){.ccm-mission__heading,.ccm-mission__heading:after,.ccm-mission__subheading{animation:none;filter:none;opacity:1;transform:none}}@media (max-width:1200px){.ccm-mission__heading,.ccm-mission__subheading{white-space:normal}.ccm-mission__heading{display:block;font-size:32px}.ccm-mission__subheading{font-size:18px}}@media (max-width:900px){.ccm-mission__list{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.ccm-mission__hero{padding:64px 20px}.ccm-mission__heading{font-size:22px}.ccm-mission__subheading{font-size:15px}.ccm-mission__inner{padding:0 20px}}@media (max-width:480px){.ccm-mission__list{grid-template-columns:1fr}}