
:root{--ink:#172f4a;--green:#647a4b;--paper:#f7f6f1;--line:#dce2d5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.9}a{color:inherit}a:focus-visible{outline:3px solid #407aab;outline-offset:4px}.wrap{width:min(900px,calc(100% - 40px));margin:auto}header{border-bottom:1px solid var(--line)}.head{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}.brand{font-family:"Yu Mincho",serif;font-size:18px;font-weight:600;text-decoration:none}.back{font-size:12px;text-decoration:none;color:#5d6c78;padding:12px 0}main{padding:28px 0 40px}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:28px}.tabs a{display:flex;align-items:center;justify-content:center;min-height:52px;background:#fff;border:1px solid var(--line);border-radius:4px;text-align:center;padding:9px 8px;text-decoration:none;font-size:12px}.tabs a[aria-current]{background:var(--green);color:white;border-color:var(--green)}.tabs a:hover{border-color:var(--green)}h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(26px,5vw,36px);font-weight:600;line-height:1.6;letter-spacing:.06em;margin:0 0 25px}.content{background:#fff;border:1px solid var(--line);border-radius:5px;padding:30px}h2{font-size:22px;line-height:1.7;margin:0 0 16px}p{font-size:14px;margin:0 0 19px}.button{display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--green);color:white;padding:17px 21px;text-decoration:none;border-radius:4px;margin:20px 0;font-size:16px;font-weight:600}.button:hover{background:#52663c}.button small{font-size:11px;font-weight:400;white-space:nowrap}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.secondary:hover{background:#f0f4ec}.note{color:#65725e;font-size:12px}.previews{display:grid;gap:22px;margin-top:26px}.previews figure{margin:0}.previews img{display:block;width:100%;height:auto;border:1px solid var(--line)}figcaption{font-size:11px;color:#65725e;margin-top:6px}.brochure-cover{width:min(100%,360px);margin-inline:auto!important}.previews a{display:block}.events{display:grid;gap:0}.event{display:grid;grid-template-columns:165px 1fr;border-bottom:1px solid var(--line);padding:17px 0;gap:22px}.event:first-child{padding-top:0}.event-date{font-size:14px;font-weight:600;color:#536b3d}.event-title{font-size:14px;margin:0}.event-title a{text-underline-offset:4px}.event-sub{display:block;font-size:12px;color:#5d6c78;margin-top:5px}.contact{border-top:1px solid var(--line);margin-top:30px;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.contact p{font-size:12px;color:#5d6c78;margin:0}.contact a{font-family:Georgia,serif;font-size:24px;white-space:nowrap;text-decoration:none}.contact strong{color:var(--ink)}footer{border-top:1px solid var(--line);text-align:center;font-size:10px;color:#65725e;padding:18px}.action-list{display:grid;gap:14px}.action-list .button{margin:0;min-height:84px}.action-list .button span small{display:block;white-space:normal;margin-top:3px}.pdf-label{font-size:11px;font-weight:400}.return{display:inline-block;margin-top:25px;font-size:13px;text-decoration:none;padding:10px 0}@media(max-width:600px){.wrap{width:calc(100% - 32px)}.head{min-height:70px;gap:12px}.brand{font-size:15px}.back{font-size:11px}main{padding-top:20px}.tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:24px}.tabs a{font-size:12px;min-height:50px}h1{font-size:27px;margin-bottom:20px}.content{padding:22px 18px}h2{font-size:20px}p{font-size:13px}.button{font-size:15px;padding:16px}.button small{font-size:10px}.event{grid-template-columns:1fr;gap:3px;padding:15px 0}.event-title{font-size:13px}.event-date{font-size:13px}.contact{flex-direction:column;align-items:start;gap:12px}.contact a{display:block;padding:10px 14px;border:1px solid var(--line);border-radius:4px;background:#fff;width:100%}}
.life-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.life-card{display:block;background:white;border:1px solid var(--line);border-radius:5px;overflow:hidden;text-decoration:none}.life-card:hover{background:#f0f4ec}.life-card img{display:block;width:100%;height:175px;object-fit:cover}.life-card-body{padding:20px 22px;border-top:4px solid var(--green)}.life-card h2{font-size:22px;margin:0 0 6px}.life-card p{font-size:12px;color:#5d6c78;margin:0}.card-line{display:flex;justify-content:space-between;align-items:center}.card-line span{font-size:23px}.content+.content{margin-top:22px}.content h2{font-size:23px}.intro{font-family:"Yu Mincho",serif;font-size:24px;line-height:1.7;margin:0 0 20px;color:var(--green)}.day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.day-item{background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden}.day-item img{display:block;width:100%;height:auto}.day-copy{padding:20px 22px}.day-copy h2{font-size:20px;margin:0 0 10px}.day-copy h2 small{display:inline-block;color:var(--green);font-family:Georgia,serif;font-weight:400;font-size:20px;margin-right:10px}.day-copy p{font-size:13px;margin:0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 0}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto;border-radius:3px}.gallery figcaption{font-size:11px;margin-top:5px}.calendar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.month{background:#fff;border:1px solid var(--line);border-radius:5px;padding:22px}.month h2{color:var(--green);font-size:23px;margin:0 0 12px}.month ul{padding-left:1.3em;margin:0;font-size:13px}.month li{margin-bottom:5px}.admissions-event{color:#607947}.club-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;list-style:none;padding:0;margin:20px 0}.club-list li{background:#f2f5ee;border-radius:3px;padding:12px 14px;font-size:13px}.poster{max-width:680px;margin:26px auto 0}.poster img{display:block;width:100%;height:auto}.poster a{display:block}.poster figcaption{font-size:11px;margin-top:8px;color:#65715e}.graduate{background:#fff;border:1px solid var(--line);border-radius:5px;padding:28px;margin-top:22px}.graduate:first-child{margin-top:0}.graduate-profile{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}.graduate-profile img{width:130px;height:auto;border-radius:3px;flex-shrink:0}.graduate-profile .affiliation{font-size:14px;color:var(--green);margin:0 0 8px}.graduate-profile h2{font-size:23px;margin:0 0 4px}.graduate-profile h2 small{font-size:13px;font-weight:400;margin-left:5px}.graduate-profile .school{font-size:11px;color:#5d6c78;margin:0}.graduate blockquote{margin:0;padding-left:20px;border-left:3px solid var(--green)}.graduate blockquote p{font-size:14px;line-height:2.15;margin:0 0 16px}.graduate blockquote p:last-child{margin:0}.life-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}.life-actions .button{margin:0}.life-top-link{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #dce2d5;border-left:5px solid #647a4b;border-radius:5px;padding:22px 24px;margin:24px 0 30px}.life-top-link:hover{background:#f1f5ed}.life-top-link h2{font-size:23px;line-height:1.5;margin:0 0 8px}.life-top-link p{font-size:12px;color:#5d6c78;margin:0}.life-top-link>span{font-size:25px;color:#647a4b}@media(max-width:600px){.life-cards,.calendar,.day-grid{grid-template-columns:1fr;gap:14px}.life-card{display:grid;grid-template-columns:110px minmax(0,1fr)}.life-card img{height:100%;min-height:145px}.life-card-body{padding:18px 16px;border-top:0;border-left:4px solid var(--green)}.life-card h2{font-size:20px}.life-card p{font-size:11px}.day-copy{padding:19px}.content h2{font-size:21px}.intro{font-size:22px}.month{padding:20px}.gallery{grid-template-columns:1fr 1fr;gap:12px}.club-list{gap:8px}.club-list li{font-size:12px;padding:10px}.graduate{padding:22px 18px}.graduate-profile{gap:16px;align-items:start}.graduate-profile img{width:96px}.graduate-profile .affiliation{font-size:12px}.graduate-profile h2{font-size:21px}.graduate-profile .school{font-size:10px}.graduate blockquote{padding-left:14px}.graduate blockquote p{font-size:13px}.life-actions{grid-template-columns:1fr}.life-top-link{padding:20px 18px;margin:20px 0 27px}.life-top-link h2{font-size:22px}.life-top-link p{font-size:11px}}
