.umj-contact-page{color:#173343;background:#f7f9f8;font-family:"Noto Sans JP",sans-serif}
.umj-contact-page *{box-sizing:border-box}
.umj-contact-hero{min-height:470px;position:relative;overflow:hidden;background:#edf1ed}
.umj-contact-hero__image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(247,249,246,.98) 0%,rgba(247,249,246,.95) 26%,rgba(247,249,246,.68) 43%,rgba(247,249,246,.08) 70%),url('../img/official/contact-hero-umj-20261007.webp');background-position:center,center 46%;background-size:cover}
.umj-contact-hero__inner{position:relative;z-index:1;max-width:1200px;margin:auto;padding:86px 32px 78px}
.umj-contact-eyebrow{margin:0 0 18px;color:#a96420;font-size:11px;font-weight:800;letter-spacing:.17em}
.umj-contact-hero h1{margin:0 0 22px;color:#173343;font-size:clamp(38px,5vw,66px);line-height:1.22;letter-spacing:.08em}
.umj-contact-hero__lead{margin:0 0 17px;color:#173343;font-size:clamp(22px,2.3vw,30px);font-weight:700;line-height:1.55}
.umj-contact-hero__copy{margin:0 0 28px;color:#36505b;font-size:15px;line-height:1.9}
.umj-contact-hero__button{display:inline-flex;align-items:center;min-height:44px;gap:26px;padding:13px 22px;border-radius:6px;background:#d87422;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 10px 25px rgba(167,93,33,.2)}
.umj-contact-hero__button:hover{background:#b95f17}
.umj-contact-hero__button:focus-visible{outline:3px solid #175c68;outline-offset:3px}
.umj-contact-wrap{max-width:1200px;margin:auto;padding:0 32px 100px}
.umj-contact-breadcrumb{display:flex;gap:11px;padding:21px 0;color:#71838a;font-size:12px}
.umj-contact-breadcrumb a{color:inherit;text-decoration:none}
.umj-contact-intro{padding:53px 0 62px;text-align:center}
.umj-contact-intro h2{margin:0 0 18px;color:#173343;font-size:clamp(26px,3vw,38px);line-height:1.45}
.umj-contact-intro>p:last-of-type{max-width:720px;margin:0 auto 34px;color:#526873;font-size:14px;line-height:1.9}
.umj-contact-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:left}
.umj-contact-path{display:flex;align-items:flex-start;gap:17px;min-height:142px;padding:27px 22px;border:1px solid #e0e8e7;border-radius:12px;background:#fff;color:#173343!important;text-decoration:none;box-shadow:0 10px 30px rgba(19,50,62,.045);transition:transform .2s,box-shadow .2s}
.umj-contact-path:hover{transform:translateY(-3px);box-shadow:0 15px 36px rgba(19,50,62,.11)}
.umj-contact-path:focus-visible{outline:3px solid #175c68;outline-offset:3px}
.umj-contact-path__number{color:#c77631;font-family:Georgia,serif;font-size:24px;line-height:1}
.umj-contact-path__body{display:flex;flex:1;flex-direction:column;gap:11px}
.umj-contact-path__body strong{font-size:16px;line-height:1.45}
.umj-contact-path__body small{color:#607780;font-size:12px;line-height:1.75}
.umj-contact-path__arrow{color:#bf722e;font-size:18px}
.umj-contact-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(240px,1fr);align-items:start;gap:28px;scroll-margin-top:40px}
.umj-contact-form-card,.umj-contact-aside__card,.umj-contact-aside__note{border:1px solid #e0e9e7;border-radius:16px;background:#fff;box-shadow:0 14px 38px rgba(19,50,62,.05)}
.umj-contact-form-card{padding:42px 50px 52px}
.umj-contact-form-card__head{margin:0 0 31px;padding-bottom:26px;border-bottom:1px solid #e7edeb}
.umj-contact-form-card__head h2{margin:0 0 9px;color:#173343;font-size:28px}
.umj-contact-form-card__head>p:last-child{margin:0;color:#657983;font-size:13px}
.umj-contact-required{color:#d76342}
.umj-contact-form-card .wpcf7 form>p{margin:0 0 23px;color:#263e49;font-size:14px;font-weight:700;line-height:1.6}
.umj-contact-form-card .wpcf7 input:not([type="submit"]):not([type="checkbox"]),.umj-contact-form-card .wpcf7 textarea,.umj-contact-form-card .wpcf7 select{display:block;width:100%;min-height:46px;margin-top:8px;padding:10px 13px;border:1px solid #cdd9da;border-radius:7px;background:#fff;color:#173343;font:inherit;font-weight:400;box-shadow:none}
.umj-contact-form-card .wpcf7 textarea{min-height:140px}
.umj-contact-form-card .wpcf7 input:focus,.umj-contact-form-card .wpcf7 textarea:focus,.umj-contact-form-card .wpcf7 select:focus{outline:2px solid #82bfc3;outline-offset:1px}
.umj-contact-form-card .wpcf7 input[type="submit"]{width:100%;min-height:54px;border:0;border-radius:7px;background:#d87422;color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.umj-contact-form-card .wpcf7 input[type="submit"]:hover{background:#b95f17}
.umj-contact-form-card .wpcf7 input[type="submit"]:focus-visible{outline:3px solid #175c68;outline-offset:3px}
.umj-contact-form-card .umj-contact-category-field,.umj-contact-form-card .umj-contact-industry-field:not([hidden]){margin:0 0 23px;color:#263e49;font-size:14px}
.umj-contact-aside{display:grid;gap:16px}
.umj-contact-aside__card{padding:31px 27px}
.umj-contact-aside__card h2{margin:0 0 25px;font-size:20px}
.umj-contact-aside__card ol{list-style:none;margin:0;padding:0}
.umj-contact-aside__card li{display:flex;gap:13px;margin:0 0 23px}
.umj-contact-aside__card li:last-child{margin-bottom:0}
.umj-contact-aside__card li>span{display:grid;flex:0 0 29px;height:29px;place-items:center;border-radius:50%;background:#e8f1ef;color:#2b7276;font-weight:700}
.umj-contact-aside__card li strong{font-size:14px}
.umj-contact-aside__card li p,.umj-contact-aside__note p{margin:7px 0 0;color:#647982;font-size:12px;line-height:1.8}
.umj-contact-aside__note{padding:24px 27px;background:#f1f6f5}
.umj-contact-aside__note strong{font-size:14px}
@media(max-width:900px){.umj-contact-layout{grid-template-columns:1fr}.umj-contact-aside{grid-template-columns:repeat(2,1fr)}.umj-contact-paths{grid-template-columns:1fr}.umj-contact-path{min-height:auto}}
@media(max-width:600px){.umj-contact-hero{min-height:530px}.umj-contact-hero__image{background-image:linear-gradient(90deg,rgba(247,249,246,.96),rgba(247,249,246,.81) 57%,rgba(247,249,246,.45)),url('../img/official/contact-hero-umj-20261007.webp');background-position:center,65% center}.umj-contact-hero__inner{padding:79px 22px 62px}.umj-contact-hero__copy br{display:none}.umj-contact-wrap{padding:0 18px 70px}.umj-contact-intro{padding:37px 0 45px}.umj-contact-form-card{padding:29px 21px 36px}.umj-contact-aside{grid-template-columns:1fr}.umj-contact-form-card__head h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.umj-contact-path{transition:none}}
