
:root{--cream:#fbf8f0;--cream2:#f2ebda;--ink:#26221c;--ink7:#473f35;--ink5:#655b4f;--line:rgba(38,34,28,.2);--line-s:rgba(38,34,28,.42);
  --accent:#a5541a;--soft:#f6c590;--field:#8c8272}
html{scroll-padding-top:80px}
@media(min-width:981px){html{scroll-padding-top:64px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--cream);color:var(--ink);font-size:16.5px;line-height:1.95}
.serif{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
h1,h2,h3{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.brand{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.foot b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.apply .tel a{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.meta b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.collage .badge{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chair blockquote{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.stats b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.scard .ph b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.scard dd{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.check h4{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.flowlink b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.map-static-in b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.steps .step b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.steps .step h6{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.thanks .check{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.thanks h4{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chairc blockquote{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chairc .sig b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chair-quote{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chair-quote::before{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.chair-sig b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.slogan-card .ko{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.slogan-card .ph{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.stat-num{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.act-num{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.act h4{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.gphoto figcaption{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.fy-num{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.fy h5{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.timeline h4{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.tl-row time{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.cta .cta-next .cn-date{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.cta .cta-next .cn-title{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.fstep time{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.fstep b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.gallery2 .gphoto figcaption{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.qa h3{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.cite-q p{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.mem-count span{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.off dt{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.nm-date b{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.nm-date i{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.nm-theme{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.mslist time{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.mslist .t{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.cal .d{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
.cal .ev>span{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
ol.sch time{font-family:'Shippori Mincho B1','Noto Serif JP',"游明朝",serif}
h1,h2,h3{font-weight:700}
.btn,.btn-p,.btn-primary,.nav-cta{border-radius:2px}
.btn-p,.btn-primary{background:var(--accent)}
.req,.opt{font-size:12.5px;font-weight:500;padding:0 8px;line-height:1.7;letter-spacing:.08em;border-radius:2px;white-space:nowrap}
.req{background:var(--accent);color:#fff}
.opt{background:#e7dfcc;color:var(--ink7)}
.nav.mast{position:static;background:var(--cream);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:0}
.mast .nav-in{position:relative;max-width:1160px;margin:0 auto;padding:22px 40px 16px;display:flex;align-items:center;justify-content:flex-start;gap:18px}
.mast .brand{gap:14px;font-family:'Zen Old Mincho','Shippori Mincho B1','Noto Serif JP',serif;font-weight:900;font-size:28px;letter-spacing:.08em;color:var(--ink)}
.mast .brand b{font-weight:900}
.mast .mark{width:56px;height:56px;border-radius:0;background:none;flex:none}
.mast .menu-btn{display:none}
.menu-close{display:none}
.rule2{width:calc(100% - 80px);max-width:1080px;margin:0 auto;border-top:3px solid var(--ink);border-bottom:1px solid var(--ink);height:6px}
@media(min-width:981px){
  .links{position:sticky;top:0;z-index:50;display:flex;justify-content:flex-start;flex-wrap:nowrap;gap:22px;margin:0;padding:12px 24px 13px max(40px,calc((100% - 1160px)/2 + 40px));
    font-size:15px;font-weight:500;color:var(--ink7);background:rgba(251,248,240,.97);border-bottom:1px solid var(--line)}
  .links a{white-space:nowrap}
  .links a:hover{color:var(--accent)}
  .links a[aria-current="page"]{color:var(--accent);font-weight:700}
}
@media(min-width:981px) and (max-width:1150px){.links{gap:12px;font-size:14px}}   
.nav-cta2{display:none;align-items:center;min-height:38px;padding:0 16px;background:var(--accent);color:#fff;font-size:14px;font-weight:500;letter-spacing:.06em;border-radius:2px;white-space:nowrap}
@media(max-width:980px){
  .nav.mast{position:sticky;top:0;z-index:55}
  .mast .nav-in{justify-content:space-between;padding:10px 20px;gap:10px}
  .mast .brand{min-width:0;gap:10px;font-size:17px;letter-spacing:.05em}
  .mast .mark{width:40px;height:40px}
  .mast .menu-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:108px;height:48px;padding:0 11px;gap:7px;margin-left:auto;
    border:0;border-radius:2px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;letter-spacing:.02em;cursor:pointer}
  .mast .menu-ic{display:inline-block}
  .mast .menu-ic i{background:#fff}
  .mast .menu-txt{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}
  #menu:checked~.mast .menu-txt{display:none}
  #menu:checked~.mast .menu-close{display:inline}
  #menu:checked~.mast .menu-ic i:nth-child(1){transform:translateY(7px) rotate(45deg)}
  #menu:checked~.mast .menu-ic i:nth-child(2){opacity:0}
  #menu:checked~.mast .menu-ic i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .rule2{width:calc(100% - 40px)}
  .links{position:fixed;top:68px;left:0;right:0;z-index:60;max-height:calc(100vh - 68px);overflow-y:auto;margin:0;padding:6px 20px 22px;
    background:var(--navy);border:0;box-shadow:0 10px 24px rgba(38,34,28,.18)}
  .links a{display:flex;align-items:center;min-height:56px;padding:0;font-size:17px;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}
  .links a:last-child{border-bottom:0}
  .links a[aria-current="page"]{color:var(--soft);font-weight:700}
  .links a[href$="apply.html"]:not(.nav-cta2){display:none}
  .links a.nav-cta2,.links.is-stuck a.nav-cta2{display:flex;justify-content:center;margin-top:16px;min-height:54px;padding:0;background:var(--accent);color:#fff;border-bottom:0;font-size:17px;font-weight:700;letter-spacing:.04em}
}
.menu-scrim{display:none}
@media(max-width:980px){#menu:checked~.menu-scrim{display:block;position:fixed;left:0;right:0;top:68px;bottom:0;z-index:58;background:rgba(18,22,30,.55);cursor:pointer}}
@media(max-width:374px){
  .mast .nav-in{padding:10px 14px;gap:8px}
  .mast .brand{gap:8px;font-size:16px;letter-spacing:.04em}
  .mast .mark{width:36px;height:36px}
  .mast .menu-btn{min-width:100px;font-size:13.5px;padding:0 9px;gap:6px}
  .rule2{width:calc(100% - 28px)}
}
@media(min-width:981px){main.sub .pagehead .wrap,main.sub .content .wrap,main.sub .cta .wrap{max-width:1160px;padding:0 40px}}
.foot{padding:72px 0 30px;font-size:15px;color:#d9d3c3}
.foot-in{max-width:1160px;padding:0 40px;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,4fr);column-gap:56px;gap:0 56px}
.foot-name{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.foot-mark{width:44px;height:44px;flex:none}
.foot .foot-name b{display:inline;margin:0;font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:800;font-size:22px;letter-spacing:.12em;color:#fff}
.foot p{font-size:15px;line-height:1.9}
.foot-in>div:not(:first-child)>b{font-family:'Noto Sans JP',sans-serif;font-weight:500;font-size:14px;letter-spacing:.2em;color:var(--soft);margin-bottom:12px}
.foot ul{font-size:15px;line-height:2.1;gap:0}
.foot .sns{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:10px;padding:0;border:0;border-bottom:1px solid rgba(255,255,255,.6);border-radius:0;
  color:#fff;font-size:15.5px;letter-spacing:.04em}
.foot .sns:hover{background:none}
.copy{max-width:1160px;margin:44px auto 0;padding:20px 40px 0;border-top:1px solid rgba(255,255,255,.2);font-size:13px;color:#b9b3a3;letter-spacing:.08em}
@media(max-width:760px){
  .foot{padding:40px 0 26px}
  .foot-in{grid-template-columns:minmax(0,1fr);gap:0;padding:0 20px}
  .foot-name{gap:10px;margin-bottom:10px}
  .foot-mark{width:40px;height:40px}
  .foot .foot-name b{font-size:20px;letter-spacing:.08em}
  .foot-in>div:not(:first-child)>b{margin:24px 0 6px;letter-spacing:.18em}
  .foot .sns{min-height:48px}
  .foot-in>div:nth-child(2) ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;line-height:1.6}
  .foot-in>div:nth-child(2) li{border-bottom:1px solid rgba(255,255,255,.14)}
  .foot-in>div:nth-child(2) li a{display:flex;flex-wrap:wrap;align-items:center;align-content:center;min-height:48px}   
  .copy{margin-top:26px;padding:16px 20px 0;letter-spacing:.06em}
}
.totop{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));z-index:70;display:flex;align-items:center;justify-content:center;
  width:56px;height:56px;padding:0;border:1px solid rgba(38,34,28,.16);border-radius:50%;color:var(--navy);
  background:radial-gradient(circle at 35% 28%,#fff 0%,#fbf8f0 55%,#ebe3d0 100%);box-shadow:0 3px 0 #cbbfa6,0 8px 16px rgba(0,0,0,.26),inset 0 1px 0 #fff;cursor:pointer;
  opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:opacity .25s,transform .25s,visibility 0s linear .25s}
.totop.is-on{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .25s,transform .25s,visibility 0s}
.totop.is-on:active{transform:translate(-50%,2px);box-shadow:0 1px 0 #cbbfa6,0 3px 8px rgba(0,0,0,.24),inset 0 1px 0 #fff}
.totop svg{width:26px;height:26px;flex:none}
.totop:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.totop,.totop.is-on{transition:none}}
@media(min-width:881px){.totop{display:none}}
.home .eyebrow{display:flex;align-items:center;gap:14px;font-size:14px;letter-spacing:.24em;color:var(--accent);font-weight:500;margin-bottom:14px}
.home .eyebrow::before{content:"";width:34px;height:1px;background:currentColor;flex:none}
.home .phero .eyebrow{display:block;letter-spacing:.22em;margin-bottom:6px}
.home .phero .eyebrow::before{content:none}
@media(min-width:881px){.home .phero .eyebrow{display:none}}   
.home .welcome .more,.home .about .more,.home .seminar .flowlink2{display:inline-block;margin-top:26px;padding-bottom:3px;font-size:16.5px;font-weight:500;
  color:var(--accent);border-bottom:1px solid var(--accent);letter-spacing:.06em}
@media(max-width:880px){
  .home .eyebrow{gap:12px;letter-spacing:.2em;margin-bottom:10px}
  .home .eyebrow::before{width:26px}
  .home .welcome .more,.home .about .more{display:inline-flex;align-items:center;min-height:48px;margin-top:14px;padding-bottom:0;letter-spacing:.04em}
  .home .seminar .flowlink2{margin-top:16px;padding:6px 0 3px;letter-spacing:.04em}
}
.home .phero-slides{height:clamp(280px,calc(100vh - 330px),640px)}   
.home .phero .card{max-width:1160px;margin:-112px auto 0;padding:0 40px}
.home .phero .card>div{max-width:1080px;margin:0 auto;background:var(--cream);border-top:3px solid var(--accent);padding:38px 48px 42px}
.home .phero h1{font-size:clamp(40px,4.2vw,54px);line-height:1.45;letter-spacing:.04em;white-space:nowrap}
.home .phero p{font-size:18px;line-height:1.9;color:var(--ink7)}
@media(min-width:881px){.home .phero .card>div{column-gap:56px;padding:22px 48px 24px}.home .phero .card p{margin:0}}   
@media(min-width:881px){.home .phero-img[src="images/photo18.jpg"]{object-position:50% 70%}.home .phero-img[src="images/photo19.jpg"]{object-position:50% 100%}}
@media(max-width:880px){
  .home .phero-slides{height:340px}
  .home .phero .card{margin:-32px 12px 0;padding:0}
  .home .phero .card>div{max-width:none;padding:24px 16px 28px}
  .home .phero h1{font-size:31px;line-height:1.5;letter-spacing:.02em}
  .home .phero p{font-size:17px;margin:14px 0 0}
}
@media(max-width:374px){.home .phero h1{font-size:27px;white-space:normal}}
.home .mband{margin-top:0;padding:0;gap:0;background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(min-width:881px){.home .mband{--k:1.32}}
@media(max-width:880px){.home .mband{--k:1.2}}
.home .mband-row{-webkit-mask-image:none;mask-image:none}
.home .mband-row+.mband-row{border-top:1px solid var(--line)}
.home .mband-item{margin:0;height:84px;padding:0 30px;gap:14px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;
  font-size:17px;font-weight:500;color:var(--ink)}
.home .mband-item a{gap:14px}
.home .mband-item em{font-size:13px;font-weight:400;color:var(--ink5)}
.home .mband-item i:not(.ico){display:none}
.home .mband-item i.ico{height:40px}
.home .mband-item .ico img{max-width:96px;border-radius:0;object-fit:contain}   
.home .mband-nav::before{background:linear-gradient(90deg,var(--cream) 34%,rgba(251,248,240,0))}
.home .mband-nav::after{background:linear-gradient(270deg,var(--cream) 34%,rgba(251,248,240,0))}
.home .mband-btn{display:none}
@media(max-width:880px){
  .home .mband{margin-top:0}
  .home .mband-item{height:72px;padding:0 22px;gap:12px;font-size:16.5px}
  .home .mband-item a{gap:12px}
  .home .mband-item i.ico{height:34px}
  .home .mband-item .ico img{max-width:80px}
}
.home .welcome{padding:104px 0}
.home .welcome .wrap{max-width:1160px;padding:0 40px;text-align:left}
.home .welcome h2{font-size:clamp(30px,3.3vw,42px);line-height:1.45}
.home .welcome .body{margin:0;max-width:none;text-align:left;font-size:17.5px;line-height:2.05;color:var(--ink)}
.home .welcome .body p{margin:0}
.home .welcome .body p+p{margin-top:1.1em}
.home .welcome .pc-br{display:none}
.home .welcome .w-photo{margin:22px 0 4px;max-width:none}
.home .welcome .w-photo img{box-shadow:0 12px 30px rgba(43,38,32,.18)}
@media(min-width:881px){
  .home .welcome .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:80px;align-items:start}
  .home .welcome .eyebrow{grid-column:1 / 3;grid-row:1}
  .home .welcome h2{grid-column:1 / 3;grid-row:2}
  .home .welcome .w-photo{grid-column:1;grid-row:3;margin:36px 0 0}
  .home .welcome .w-right{grid-column:2;grid-row:3;align-self:center;margin-top:36px}
}
@media(max-width:880px){
  .home .welcome{padding:48px 0}
  .home .welcome .wrap{padding:0 20px}
  .home .welcome h2{font-size:28px;line-height:1.5}
  .home .welcome .body{margin-top:16px;font-size:16.5px;line-height:2}
  .home .welcome .body p+p{margin-top:.9em}
  .home .welcome .w-photo{max-width:420px}
}
.home .about{background:var(--cream2);padding:92px 0;text-align:left}
.home .about .wrap{max-width:1160px;padding:0 40px}
.home .about h2{font-size:42px;line-height:1.45}
.home .about .lede{max-width:880px;margin:22px 0 0;font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:500;font-size:25px;line-height:2;letter-spacing:.04em;color:var(--ink)}
@media(max-width:880px){
  .home .about{padding:48px 0}
  .home .about .wrap{padding:0 20px}
  .home .about h2{font-size:28px;line-height:1.5}
  .home .about .lede{margin-top:14px;font-size:19.5px;letter-spacing:.03em}
}
@media(max-width:374px){.home .about .lede{letter-spacing:0}}
.home .seminar{padding:104px 0}
.home .seminar .wrap{max-width:1160px;padding:0 40px}
.home .seminar h2{font-size:42px;line-height:1.45}
.home .seminar .lede{max-width:760px;margin:16px 0 0;font-size:18px;color:var(--ink7)}
.home .sgrid{margin-top:48px}
.home .scard{background:#fff;border:1px solid var(--line);border-radius:0}
.home .scard .ph::after{display:none}
.home .scard .ph b{left:0;bottom:0;padding:10px 20px;background:var(--navy);color:#fff;font-family:'Noto Sans JP',sans-serif;font-weight:400;font-size:15px;
  letter-spacing:.1em;line-height:1.6;text-shadow:none}
.home .scard .body{padding:44px 44px 40px}
.home .scard h3{font-size:30px;line-height:1.55;margin-bottom:22px}
.home .scard dl{border-top:0}
.home .scard .row{grid-template-columns:76px minmax(0,1fr);gap:0 16px;padding:15px 0;border-bottom:0;border-top:1px solid var(--line)}
.home .scard dt{font-size:13.5px;letter-spacing:.14em;color:var(--ink5);padding-top:5px}
.home .scard dd{font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:21px;line-height:1.5;letter-spacing:.04em}
.home .scard dd small{margin-top:3px;font-family:'Noto Sans JP',sans-serif;font-weight:400;font-size:14.5px;line-height:1.8;letter-spacing:0;color:var(--ink7)}
.home .scard dd small.addr{word-break:keep-all;overflow-wrap:anywhere}
@media(min-width:881px){.home .scard{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.home .scard .ph{min-height:560px}}
@media(min-width:881px) and (max-width:1023px){
  .home .scard{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media(max-width:880px){
  .home .seminar{padding:48px 0}
  .home .seminar .wrap{padding:0 20px}
  .home .seminar h2{font-size:28px;line-height:1.5}
  .home .seminar .lede{font-size:16.5px}
  .home .sgrid{margin-top:24px}
  .home .scard .ph{aspect-ratio:auto;height:240px}
  .home .scard .ph b{padding:8px 16px;font-size:14.5px;letter-spacing:.08em}
  .home .scard .body{padding:24px 20px 22px}
  .home .scard h3{font-size:24px;margin-bottom:12px}
  .home .scard .row{grid-template-columns:62px minmax(0,1fr);gap:0 12px;padding:12px 0}
  .home .scard dt{font-size:14px;letter-spacing:.1em;padding-top:3px}
  .home .scard dd{font-size:19px;letter-spacing:.03em}
  .home .scard dd small{margin-top:2px;font-size:15px}
}
@media(max-width:374px){.home .scard .row{grid-template-columns:minmax(0,1fr);gap:2px 0}.home .scard dt{padding-top:0}}
.home .applysec{background:var(--cream2);padding:104px 0}
.home .applysec .wrap{max-width:1200px;padding:0 40px}
.home .ap-h{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:72px;align-items:end;margin-bottom:48px}
.home .ap-h h2{font-size:48px;line-height:1.45}
.home .ap-h .lede{margin:0;max-width:none;font-size:18px;line-height:2;color:var(--ink7)}
.home .apply-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:0}   
.home .apply-side{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:72px;align-content:start;background:var(--navy);color:#ece7da;padding:48px 52px 44px}
.home .steps-fold{grid-column:1;grid-row:1}
.home .steps-fold>summary{display:none}
.home .steps-fold .steps-pc{display:block;max-width:none;margin:0}
.home .steps .step{--pad:18px;--line:31.2px;--ball:42px;--top:calc(var(--pad) + (var(--line) - var(--ball)) / 2);
  grid-template-columns:minmax(0,1fr);gap:0;padding:0 0 0 60px;position:relative;border-top:0}
.home .steps .step:first-of-type{--top:calc((var(--line) - var(--ball)) / 2)}
.home .steps .step>div{padding:var(--pad) 0}
.home .steps .step:first-of-type>div{padding-top:0}
.home .steps .step+.step>div{border-top:1px solid rgba(255,255,255,.28)}
.home .steps .step b{display:none}
.home .steps .step::before{content:"";position:absolute;left:0;top:var(--top);width:var(--ball);height:var(--ball);border-radius:50%;
  box-shadow:0 2px 0 rgba(0,0,0,.3),0 5px 10px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.65)}
.home .steps .step:nth-of-type(1)::before{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%231f3656'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M6%203.5h8l4%204v13H6z'%2F%3E%3Cpath%20d%3D'M14%203.5v4h4'%2F%3E%3Cpath%20d%3D'M9%2012.5h6M9%2016h6'%2F%3E%3C%2Fsvg%3E") center/24px 24px no-repeat,radial-gradient(circle at 34% 30%,#ffe9cf 0%,#f6c590 52%,#d4935a 100%)}
.home .steps .step:nth-of-type(2)::before{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%231f3656'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3.5'%20y%3D'6'%20width%3D'17'%20height%3D'12'%20rx%3D'1.5'%2F%3E%3Cpath%20d%3D'M4.5%207.5l7.5%205.5%207.5-5.5'%2F%3E%3C%2Fsvg%3E") center/24px 24px no-repeat,radial-gradient(circle at 34% 30%,#ffe9cf 0%,#f6c590 52%,#d4935a 100%)}
.home .steps .step:nth-of-type(3)::before{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%231f3656'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M3%2018.5h18'%2F%3E%3Cpath%20d%3D'M7%2018.5a5%205%200%200%201%2010%200'%2F%3E%3Cpath%20d%3D'M12%206v3M5.6%2010.6l1.8%201.4M18.4%2010.6l-1.8%201.4'%2F%3E%3C%2Fsvg%3E") center/24px 24px no-repeat,radial-gradient(circle at 34% 30%,#ffe9cf 0%,#f6c590 52%,#d4935a 100%)}
.home .steps .step:nth-of-type(4)::before{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%231f3656'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M5%2010h11v3.5a5%205%200%200%201-5%205h-1a5%205%200%200%201-5-5z'%2F%3E%3Cpath%20d%3D'M16%2011h1.2a2.3%202.3%200%200%201%200%204.6H16'%2F%3E%3Cpath%20d%3D'M8.5%204.5c-.6.8.6%201.6%200%202.6M12%204.5c-.6.8.6%201.6%200%202.6'%2F%3E%3C%2Fsvg%3E") center/24px 24px no-repeat,radial-gradient(circle at 34% 30%,#ffe9cf 0%,#f6c590 52%,#d4935a 100%)}
.home .steps .step:not(:last-of-type)::after{content:"";position:absolute;left:calc(var(--ball) / 2 - 1px);top:calc(var(--top) + var(--ball) + 2px);
  bottom:calc(9px - var(--pad) - (var(--line) - var(--ball)) / 2);width:2px;border-radius:1px;background:rgba(246,197,144,.72)}
.home .steps .step+.step>div::before{content:"";position:absolute;left:calc(var(--ball) / 2 - 5px);top:calc(var(--top) - 9px);
  border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid rgba(246,197,144,.95)}
.home .steps .step h6{margin:0 0 3px;font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:19.5px;line-height:1.6;letter-spacing:.05em;color:#fff}
.home .steps .step p{font-size:15.5px;line-height:1.85;color:#e1dccd}
.home .tel-box{grid-column:2;grid-row:1;align-self:start;padding:0 0 0 36px;border-left:6px double rgba(255,255,255,.5)}
.home .tel-h{display:block;margin-bottom:12px;font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:24px;letter-spacing:.06em;color:#fff}
.home .tel-pc{margin:0;font-size:16.5px;line-height:2}
.home .apply-side a[href^="tel:"]{color:#fff;border-bottom-color:rgba(255,255,255,.6)}
.home .tel-pc a{font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:26px;letter-spacing:.05em}
.home .tel-sp{display:none}
.home .line-row{display:flex;gap:20px;align-items:center;margin-top:18px;padding-top:0;border-top:0}
.home .line-qr{width:112px;height:112px;padding:6px;background:#fff;border:0}
.home .line-txt p{margin:0;font-size:15.5px;line-height:1.85}
.home .line-btn{display:inline-flex;align-items:center;min-height:50px;margin-top:8px;padding:0 22px;background:#06c755;color:#fff;font-size:16px;font-weight:700;border-radius:4px;box-shadow:0 3px 0 #05a648,0 6px 16px rgba(0,0,0,.25);text-shadow:0 1px 1px rgba(0,0,0,.15)}
.home .line-btn:active{transform:translateY(2px);box-shadow:0 1px 0 #05a648,0 3px 8px rgba(0,0,0,.25)}
.home .line-txt small{margin-top:6px;font-size:14px;color:#d6d0c0}
.applypage .form{background:var(--cream);padding:48px 48px 44px;border:0;border-top:6px double var(--ink);border-left:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}
.applypage .form-wip{margin:0 0 28px;padding:12px 16px;background:var(--cream2);border-left:0;font-size:15.5px;line-height:1.85;color:var(--ink7)}
.applypage .field-row{gap:22px}
.applypage .field,.applypage fieldset.field{margin-bottom:24px;gap:8px}
.applypage .field label,.applypage .field legend{gap:10px;font-size:16px;font-weight:700;letter-spacing:.04em;color:var(--ink)}
.applypage .field legend{margin-bottom:8px;line-height:1.7}
.applypage .field input,.applypage .field select{height:56px;padding:0 14px;font-size:16.5px;border:1px solid var(--field);border-radius:2px;background:#fff}
.applypage .field textarea{min-height:140px;padding:12px 14px;font-size:16.5px;line-height:1.8;border:1px solid var(--field);border-radius:2px;background:#fff}
.applypage .field input:focus,.applypage .field select:focus,.applypage .field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(165,84,26,.18)}
.applypage .hint{font-size:14.5px;line-height:1.8;color:var(--ink5)}
.applypage .radios{display:flex;flex-wrap:wrap;gap:10px}
.applypage .radio{min-height:52px;padding:0 20px;gap:10px;border:1px solid var(--field);border-radius:2px;background:#fff;font-size:16.5px;font-weight:500;color:var(--ink)}
.applypage .radio input{width:20px;height:20px;accent-color:var(--accent)}
.applypage .radio.on{border-color:var(--accent);box-shadow:0 0 0 2px rgba(165,84,26,.25)}
.applypage .form-foot{display:block;margin-top:8px;padding-top:24px;border-top:1px solid var(--line)}
.applypage .form-foot small{display:block;margin-bottom:18px;font-size:15px;line-height:1.85;color:var(--ink7)}
.applypage .form-foot .btn-primary{display:flex;width:100%;min-height:62px;justify-content:center;padding:0 20px;font-size:19px;letter-spacing:.1em}
.applypage .thanks{border-radius:0;border:0;border-top:6px double var(--ink);background:var(--cream)}
.applypage .thanks .check{background:var(--accent)}
@media(min-width:881px) and (max-width:1150px){
  .home .apply-side{column-gap:40px;padding:40px 36px}
  .home .tel-box{padding-left:28px}
  .home .tel-h{font-size:21px}
  .home .tel-pc a{font-size:23px}
  .home .line-row{flex-direction:column;align-items:flex-start;gap:12px}
}
@media(max-width:880px){
  .home .applysec{padding:48px 0 40px}
  .home .applysec .wrap{padding:0}
  .home .ap-h{display:block;margin:0;padding:0 20px 22px}
  .home .ap-h h2{font-size:32px;line-height:1.5;margin-bottom:12px}
  .home .ap-h .lede{font-size:17px;line-height:1.95}
  .home .apply-side{display:block;padding:24px 20px 28px}
  .home .steps-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:0 2px;cursor:pointer;list-style:none;
    font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:18px;letter-spacing:.04em;color:#fff;border-bottom:1px solid rgba(255,255,255,.28)}
  .home .steps-fold>summary::-webkit-details-marker{display:none}
  .home .steps-fold>summary::after{content:"";flex:none;width:10px;height:10px;margin-right:6px;border-right:2px solid var(--soft);border-bottom:2px solid var(--soft);transform:translateY(-3px) rotate(45deg)}
  .home .steps-fold[open]>summary::after{transform:translateY(3px) rotate(-135deg)}
  .home .steps-fold .steps-pc{padding-top:14px}
  .home .steps .step{--pad:13px;--line:29.6px;padding-left:58px}
  .home .steps .step h6{font-size:18.5px}
  .home .tel-box{margin-top:20px;padding:20px 0 0;border-left:0;border-top:6px double rgba(255,255,255,.5)}
  .home .tel-h{font-size:22px}
  .home .tel-pc{display:none}
  .home .tel-sp{display:block}
  .home .apply-side a.call{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:62px;margin-top:10px;padding:6px 16px;
    border:1px solid rgba(255,255,255,.7);border-radius:2px;color:#fff;line-height:1.5;white-space:normal}
  .home .call small{display:block;font-size:14px;line-height:1.5;color:#e1dccd}
  .home .call b{font-family:'Shippori Mincho B1','Noto Serif JP',serif;font-weight:700;font-size:22px;letter-spacing:.03em;white-space:nowrap}
  .home .line-row{display:block;margin-top:14px}
  .home .line-qr,.home .line-pc{display:none}
  .home .line-sp{display:block}
  .home .line-btn{display:flex;justify-content:center;width:100%;min-height:58px;font-size:17px;letter-spacing:.05em}
  .applypage .form{padding:26px 20px 24px;border-left:0;border-bottom:0}
  .applypage .field-row{grid-template-columns:minmax(0,1fr);gap:0}
  .applypage .field,.applypage fieldset.field{margin-bottom:18px;gap:6px}
  .applypage .field input,.applypage .field select{height:54px;font-size:16px}
  .applypage .field textarea{min-height:120px;font-size:16px}
  .applypage .radios,.applypage .radios.radios-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .applypage .radios .radio{padding:0 14px;font-size:16px}
  .applypage .radios:not(.radios-2) .radio:last-child{grid-column:1 / 3}
  .applypage .form-foot small{margin-bottom:14px;font-size:14.5px}
  .applypage .form-foot .btn-primary{min-height:60px;font-size:18px}
}
@media(max-width:359px){.applypage .radios:not(.radios-2){grid-template-columns:minmax(0,1fr)}.applypage .radios:not(.radios-2) .radio:last-child{grid-column:auto}}
.home .access{padding:104px 0}
.home .access .wrap{max-width:1200px;padding:0 40px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 64px;align-items:stretch}
.home .access .map-embed{order:-1;min-height:380px;border:1px solid var(--line);border-radius:0;background:var(--cream2)}
.home .access .map-embed iframe{min-height:380px}
.home .map-open{left:18px;right:auto;bottom:18px;padding:12px 20px;background:var(--cream);border:1px solid var(--line);border-radius:0;box-shadow:none;
  font-size:16px;font-weight:700;letter-spacing:.04em;color:var(--ink)}
.home .access h2{font-size:46px;line-height:1.4;margin-bottom:22px}
.home .access dl{display:grid;grid-template-columns:84px minmax(0,1fr);gap:0;margin:0;font-size:17.5px}
.home .access dt,.home .access dd{padding:14px 0;border-top:1px solid var(--line)}
.home .access dt{padding-top:17px;font-size:14.5px;letter-spacing:.14em;color:var(--ink5)}
.home .access dd{font-size:17.5px}
@media(max-width:880px){
  .home .access{padding:48px 0}
  .home .access .wrap{display:block;padding:0 20px}
  .home .access h2{font-size:28px;line-height:1.5;margin-bottom:14px}
  .home .access dl{display:block}
  .home .access dt{padding:11px 0 0;font-size:14px;letter-spacing:.12em}
  .home .access dd{padding:0 0 11px;border-top:0;font-size:17px;line-height:1.8}
  .home .access .map-embed{margin-top:18px;min-height:0;height:200px}
  .home .access .map-embed iframe{min-height:200px}
  .home .map-open{left:12px;bottom:12px;display:flex;align-items:center;min-height:48px;padding:0 16px}
}
@media(max-width:374px){.cite-q{padding-left:16px;padding-right:16px}}
h1 .q,h2 .q{margin-left:-.25em}
.fstep img[src="images/photo22.jpg"]{object-position:50% 20%}
.fstep figcaption{padding-top:64px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.5) 45%,rgba(0,0,0,.8))}
@media(max-width:640px){.fstep figcaption{padding-top:48px}}
@media(min-width:761px) and (max-width:880px){.home .mslist li.next{margin-left:-12px;padding-left:8px}}
.home .apply-go{background:var(--cream);border:0;border-top:6px double var(--ink);border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:44px 48px 46px}
.home .apply-go .ag-t{font-size:18px;color:var(--ink)}
.home .apply-go .ag-t small{font-size:15px}
.home .apply-go .ag-btn{min-height:66px;font-size:19px;border-radius:2px}
.applypage .apply-page .form{border-right:1px solid var(--line)}
@media(max-width:880px){
  .home .apply-go{padding:28px 20px 30px;border-left:0;border-bottom:0}
  .home .apply-go .ag-t{font-size:16.5px}
  .home .apply-go .ag-btn{min-height:60px;font-size:17.5px}
  .applypage .apply-page{margin:0 -24px}   
  .applypage .apply-page .form{border-right:0}
}
@media(max-width:880px){.totop{bottom:calc(81px + env(safe-area-inset-bottom))}}
#menu:checked~.totop{visibility:hidden}   
.btn-p,.btn-primary,.pc-bar .pc-bar-btn,.cta-bar .cb-apply{background:linear-gradient(180deg,#c0692b 0%,#a5541a 55%,#8f4714 100%) border-box;box-shadow:0 3px 0 #77390f,0 6px 16px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35);text-shadow:0 1px 1px rgba(0,0,0,.18)}
.btn-p:hover{background:linear-gradient(180deg,#a5541a 0%,#8f4714 55%,#77390f 100%) border-box}   
.cta-bar .cb-tel,.mast .menu-btn{background:linear-gradient(180deg,#33507a 0%,#1f3656 55%,#192d48 100%) border-box;box-shadow:0 3px 0 #122238,0 6px 16px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35);text-shadow:0 1px 1px rgba(0,0,0,.18)}
.cta-bar .cb-tel{border-bottom-color:transparent}   
.cta-bar .cb-line,.home .line-btn{background:linear-gradient(180deg,#2ad470 0%,#06c755 55%,#05b34c 100%) border-box;box-shadow:0 3px 0 #05a648,0 6px 16px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35);text-shadow:0 1px 1px rgba(0,0,0,.18)}
.home .map-open,.applypage .radio{background:linear-gradient(180deg,#fff 0%,#fff 55%,#efe7d6 100%) border-box;box-shadow:0 3px 0 #cbbfa6,0 6px 16px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.35)}
.applypage .radio.on{box-shadow:0 0 0 2px rgba(165,84,26,.25),0 3px 0 #cbbfa6,0 6px 16px rgba(0,0,0,.16)}   
.pc-bar{box-shadow:0 -6px 18px rgba(38,34,28,.10)}   
.btn-p:active,.btn-primary:active,.pc-bar .pc-bar-btn:active,.cta-bar .cb-apply:active{transform:translateY(2px);box-shadow:0 1px 0 #77390f,0 3px 8px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35)}
.cta-bar .cb-tel:active,.mast .menu-btn:active{transform:translateY(2px);box-shadow:0 1px 0 #122238,0 3px 8px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35)}
.cta-bar .cb-line:active,.home .line-btn:active{transform:translateY(2px);box-shadow:0 1px 0 #05a648,0 3px 8px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.35)}
.home .map-open:active,.applypage .radio:active{transform:translateY(2px);box-shadow:0 1px 0 #cbbfa6,0 3px 8px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.35)}
.mem-grid .mem-card{box-shadow:0 2px 4px rgba(38,34,28,.07),0 12px 28px rgba(38,34,28,.13)}
@media(min-width:681px){.slogan .slogan-card{box-shadow:0 2px 4px rgba(38,34,28,.07),0 12px 28px rgba(38,34,28,.13)}}
.cal .ev{box-shadow:0 1px 2px rgba(38,34,28,.08),0 4px 10px rgba(38,34,28,.10)}
@media(min-width:981px){.links{box-shadow:0 6px 16px rgba(38,34,28,.10)}}
.applypage .field input:not([type=radio]):not([type=checkbox]),.applypage .field select,.applypage .field textarea,.mem-search input,.mem-sel select{box-shadow:inset 0 2px 3px rgba(38,34,28,.10)}
.applypage .field input:not([type=radio]):not([type=checkbox]):focus,.applypage .field select:focus,.applypage .field textarea:focus{box-shadow:inset 0 2px 3px rgba(38,34,28,.10),0 0 0 3px rgba(165,84,26,.18)}
.blog-list h2,.blog-list h3,.post h1,.tn-head h2{word-break:auto-phrase}
.blog-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.blog-list a{display:grid;grid-template-columns:220px 1fr;column-gap:32px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}
.blog-list a:hover h2,.blog-list a:hover h3{color:var(--accent)}
.bl-thumb{aspect-ratio:4/3;background:var(--cream2);overflow:hidden;display:flex;align-items:center;justify-content:center}
.bl-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.blog-list time{font-size:13.5px;color:var(--accent);letter-spacing:.06em}
.blog-list h2,.blog-list h3{font-size:21px;line-height:1.6;margin:4px 0 6px;border:0;padding:0}
.bl-who{margin:0;font-size:13.5px;color:var(--ink7)}
.bl-empty{margin:0;padding:28px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line);color:var(--ink7)}
.bl-pager{display:flex;justify-content:space-between;gap:16px;margin:32px 0 0;font-size:14.5px}
.bl-pager a{display:inline-block;border:1px solid var(--ink);padding:10px 24px;color:var(--ink);text-decoration:none}
.bl-howto{margin-top:40px;background:var(--cream2);padding:20px 24px;font-size:14.5px}
.bl-howto h3{font-size:17px;margin:0 0 6px}.bl-howto p{margin:0}
.post{max-width:760px;margin:0 auto}
.post-meta{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:14px;color:var(--ink7);border-bottom:1px solid var(--line-s);padding-bottom:14px;margin-bottom:28px}
.post-meta time{color:var(--accent)}
.post h1{font-size:clamp(23px,3.2vw,32px);line-height:1.55;margin:6px 0 14px}
.post-body p{margin:0 0 1.4em;overflow-wrap:anywhere}
.post-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 32px}
.post-photos.n1{grid-template-columns:1fr}
.post-photos figure{margin:0}.post-photos a{display:block}.post-photos img{width:100%;height:auto;object-fit:cover;display:block}
.post-photos:not(.n1) img{aspect-ratio:4/3}
.post-photos.n1.tall{max-width:440px;margin-left:auto;margin-right:auto}
.post-photos.n3 figure:first-child{grid-column:1/-1}   
.post-nav{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-top:1px solid var(--line-s);padding-top:18px;font-size:14px}
.post-nav a{color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor}
.post-nav .pn-back{flex:none;white-space:nowrap}
.post-nav .pn-tail{white-space:nowrap}
.post-note{font-size:12.5px;color:var(--ink5);margin:28px 0 0}
.top-new li a{grid-template-columns:120px 1fr;padding:16px 0}
.top-new h3{font-size:17px}
.tn-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}
.tn-head h2{font-size:24px;margin:0}.tn-head a{font-size:14px;color:var(--accent);border-bottom:1px solid currentColor;text-decoration:none;white-space:nowrap}
@media(max-width:760px){
 .blog-list a{grid-template-columns:104px 1fr;column-gap:16px;padding:18px 0}
 .blog-list h2,.blog-list h3{font-size:16.5px;margin:2px 0 4px}.blog-list time,.bl-who{font-size:12.5px}
 .top-new li a{grid-template-columns:88px 1fr}
 .post-photos{grid-template-columns:1fr}
 .post-nav,.bl-pager{flex-direction:column}
 .post-nav{align-items:stretch}
 .bl-pager>span:empty{display:none}
}
