
:root{--navy:#005183;--navy-d:#003a5e;--gray:#666464;--bg2:#f2f2f3;--line:rgba(0,81,131,.25);--white:#fff;
--jp:'Zen Kaku Gothic New','Yu Gothic',sans-serif;--en:'Jost','Zen Kaku Gothic New',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--gray);font-family:var(--jp);font-size:15px;line-height:2.1;letter-spacing:.08em;-webkit-text-size-adjust:100%}
img{display:block;max-width:100%;height:auto}a{color:var(--navy)}
:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px}
.notice{margin:0;background:var(--navy);color:#fff;font-size:12px;text-align:center;padding:5px 12px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
/* header */
.hd{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96)}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:80px;max-width:1280px}
.logo{display:flex;flex-direction:column;text-decoration:none;color:var(--navy);min-height:48px;justify-content:center}
.logo b{font-weight:500;font-size:19px;letter-spacing:.14em;line-height:1.4}
.logo small{font-family:var(--en);font-weight:300;font-size:12px;letter-spacing:.3em}
.gn ul{list-style:none;margin:0;padding:0;display:flex;align-items:center}
.gn a{display:flex;align-items:center;min-height:48px;padding:0 12px;text-decoration:none;color:var(--navy);font-family:var(--en);font-weight:400;font-size:13px;letter-spacing:.16em;position:relative}
.gn a::after{content:"";position:absolute;left:12px;right:12px;bottom:10px;height:1px;background:var(--navy);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.gn a:hover::after,.gn a[aria-current=page]::after{transform:scaleX(1)}
.gn .cta a{border:1px solid var(--navy);border-radius:999px;margin-left:10px;padding:0 22px;font-family:var(--jp);letter-spacing:.1em}
.gn .cta a::after{display:none}
.gn .cta a:hover{background:var(--navy);color:#fff}
.mb{display:none}
/* hero */
.hero{position:relative;padding:0 0 80px}
.hero .wrap{display:grid;grid-template-columns:1fr 280px;gap:48px;max-width:1280px;align-items:start}
.hero .main{overflow:hidden}
.hero .main img{width:100%;aspect-ratio:3/2;object-fit:cover;animation:kb 18s ease-out both}
@keyframes kb{from{transform:scale(1.12)}to{transform:scale(1)}}
.hero .side{padding-top:48px;display:flex;flex-direction:column;gap:32px}
.hero h1{writing-mode:vertical-rl;font-weight:500;font-size:clamp(20px,2vw,26px);letter-spacing:.3em;line-height:2.1;color:var(--navy);margin:0;height:20em;align-self:flex-end}
.hero .side img{width:200px;aspect-ratio:3/4;object-fit:cover;align-self:flex-end}
.scroll{position:absolute;left:24px;bottom:0;display:flex;align-items:center;gap:12px;font-family:var(--en);font-size:12px;letter-spacing:.3em;color:var(--navy)}
.scroll svg{width:56px;height:56px}
.scroll circle.c{stroke-dasharray:160;animation:circ 2.6s linear infinite}
@keyframes circ{0%{stroke-dashoffset:160}60%{stroke-dashoffset:0}100%{stroke-dashoffset:-160}}
.scroll .dot{animation:spin 2.6s linear infinite;transform-origin:28px 28px}
@keyframes spin{to{transform:rotate(360deg)}}
/* sections */
section{padding:clamp(80px,11vw,140px) 0}
.g{background:var(--bg2)}
.ttl{text-align:center;margin-bottom:56px}
.ttl .en{font-family:var(--en);font-weight:300;font-size:clamp(22px,2.6vw,30px);letter-spacing:.32em;color:var(--navy);display:block;line-height:1.3}
.ttl h2{font-weight:400;font-size:14px;letter-spacing:.2em;margin:.6em 0 0;color:var(--gray)}
h3{font-weight:500;color:var(--navy);font-size:19px;letter-spacing:.12em;line-height:1.7;margin:0 0 .7em}
.center{text-align:center}
.note{font-size:13px}
.arrow{display:inline-flex;align-items:center;gap:16px;min-height:56px;text-decoration:none;font-family:var(--en);letter-spacing:.24em;font-size:13px;color:var(--navy)}
.arrow i{width:56px;height:56px;border:1px solid var(--navy);border-radius:50%;display:grid;place-items:center;font-style:normal;transition:background .3s,color .3s}
.arrow:hover i{background:var(--navy);color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 40px;border:1px solid var(--navy);border-radius:999px;text-decoration:none;color:var(--navy);letter-spacing:.14em;transition:background .3s,color .3s}
.btn:hover,.btn.f{background:var(--navy);color:#fff}
.btn.f:hover{background:var(--navy-d)}
/* topics */
.topics{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.topics .card{background:var(--bg2);padding:40px;position:relative}
.topics .card b{display:block;color:var(--navy);font-size:22px;font-weight:500;letter-spacing:.12em;line-height:1.6}
.topics .card .n{position:absolute;right:24px;bottom:12px;font-family:var(--en);font-weight:300;font-size:56px;color:var(--navy);line-height:1}
.news{list-style:none;margin:0;padding:0}
.news li{padding:14px 0;border-bottom:1px solid var(--line)}
.news time{display:block;font-family:var(--en);font-size:13px;color:var(--navy);letter-spacing:.14em}
/* checks */
.checks{list-style:none;padding:0;margin:0 auto;max-width:820px;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.checks li{padding:18px 0 18px 40px;border-bottom:1px solid var(--line);position:relative;color:var(--navy)}
.checks li::before{content:"";position:absolute;left:4px;top:26px;width:16px;height:9px;border:solid var(--navy);border-width:0 0 1.5px 1.5px;transform:rotate(-45deg)}
/* about */
.about{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.about .pics{position:relative;min-height:560px}
.about .pics img{position:absolute;object-fit:cover}
.about .pics .a{right:0;top:0;width:78%;aspect-ratio:4/3}
.about .pics .b{left:0;top:52%;width:44%;aspect-ratio:3/4}
.about .pics .c{right:8%;bottom:0;width:36%;aspect-ratio:1}
.pros{display:grid;grid-template-columns:1fr 1fr;margin-top:72px}
.pros>div{padding:0 48px;text-align:center}
.pros>div+div{border-left:1px solid var(--line)}
.avatar{width:140px;height:140px;border-radius:50%;margin:0 auto 18px;border:1px solid var(--navy);display:grid;place-items:center;color:var(--navy)}
.avatar svg{width:90px;height:90px}
.pros b{display:block;color:var(--navy);font-weight:500;font-size:20px;letter-spacing:.2em}
.pros small{display:block;font-family:var(--en);font-size:12px;letter-spacing:.24em;color:var(--navy)}
.pros .role{display:inline-block;margin:10px 0;border-bottom:1px solid var(--navy);color:var(--navy)}
.pros p{text-align:left;font-size:14px}
/* service */
.svc{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-bottom:96px}
.svc:last-of-type{margin-bottom:0}
.svc.rev>:first-child{order:2}
.svc img{width:100%;aspect-ratio:4/3;object-fit:cover}
.svc .num{font-family:var(--en);font-weight:300;font-size:44px;color:var(--navy);line-height:1;margin-right:14px}
.svc h3{display:flex;align-items:baseline;font-size:21px}
.svc ul{padding-left:1.2em;margin:0}
/* voice */
.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.voices img{width:200px;height:200px;border-radius:50%;object-fit:cover;margin:0 auto 20px}
.voices b{display:block;color:var(--navy);font-weight:500;letter-spacing:.1em;line-height:1.7}
.voices span{font-size:13px}
/* tables */
.tbl{width:100%;border-collapse:collapse}
.tbl caption{text-align:left;color:var(--navy);font-weight:500;font-size:18px;letter-spacing:.12em;padding-bottom:14px}
.tbl th,.tbl td{padding:18px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl tr:first-child th,.tbl tr:first-child td{border-top:1px solid var(--navy)}
.tbl th{font-weight:500;color:var(--navy);width:42%}
.tbl th small{display:block;font-weight:400;color:var(--gray);font-size:13px}
.tbl td.p{font-family:var(--en);font-size:18px;color:var(--navy);text-align:right;white-space:nowrap}
.stack{display:grid;gap:64px}
.ex{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ex div{background:#fff;padding:28px;border-top:2px solid var(--navy)}
.ex b{display:block;font-family:var(--en);font-size:26px;font-weight:300;color:var(--navy)}
/* flow */
.flow{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:f;max-width:820px;margin:0 auto}
.flow li{display:grid;grid-template-columns:96px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}
.flow li::before{counter-increment:f;content:counter(f,decimal-leading-zero);font-family:var(--en);font-weight:300;font-size:44px;color:var(--navy);line-height:1}
.flow h3{margin:0 0 .3em}.flow p{margin:0}
.flow .free{display:inline-block;font-size:12px;border:1px solid var(--navy);border-radius:999px;padding:0 10px;margin-left:10px;vertical-align:2px;color:var(--navy)}
/* faq */
.faq{max-width:860px;margin:0 auto;border-top:1px solid var(--navy)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;gap:18px;align-items:center;padding:20px 8px;min-height:64px;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q";font-family:var(--en);font-size:22px;font-weight:300;width:44px;height:44px;flex:none;border:1px solid var(--navy);border-radius:50%;display:grid;place-items:center}
.faq summary::after{content:"";margin-left:auto;flex:none;width:9px;height:9px;border:solid var(--navy);border-width:0 1px 1px 0;transform:rotate(45deg);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq .a{margin:0;padding:0 16px 24px 70px}
/* strip */
.strip{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.strip img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 1.2s}
.strip img:hover{transform:scale(1.06)}
/* page head */
.ph{padding:72px 0 48px;text-align:center}
.ph .en{font-family:var(--en);font-weight:300;font-size:clamp(28px,4vw,44px);letter-spacing:.3em;color:var(--navy);display:block;line-height:1.3}
.ph h1{font-weight:400;font-size:15px;letter-spacing:.24em;margin:.8em 0 1.4em}
.ph p{max-width:680px;margin:0 auto}
.crumb{font-size:12px;font-family:var(--en);letter-spacing:.14em}.crumb a{display:inline-flex;align-items:center;min-height:44px;min-width:48px}
.pending{background:#fff7dc;color:#5a4300;padding:12px 16px;font-size:14px}
/* cta */
.cta{background:var(--navy);color:#fff;text-align:center;padding:clamp(64px,9vw,104px) 24px}
.cta .en{font-family:var(--en);font-weight:300;letter-spacing:.32em;font-size:clamp(22px,2.6vw,30px)}
.cta p{margin:.8em auto 28px;max-width:560px}
.cta .acts{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.cta .btn{border-color:#fff;color:#fff}.cta .btn:hover{background:#fff;color:var(--navy)}
.cta .btn.f{background:#fff;color:var(--navy)}
/* footer */
.ft{padding:64px 0 120px;font-size:13.5px}
.ft .wrap{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:start}
.ft ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:0 4px}
.ft li a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;font-family:var(--en);letter-spacing:.16em;text-decoration:none;font-size:13px}
.copy{grid-column:1/-1;font-family:var(--en);font-size:12px;letter-spacing:.14em;margin:0}
.fixed{display:none}
@media (max-width:980px){
 .gn{position:absolute;top:100%;left:0;right:0;background:#fff;display:none;padding:8px 24px 24px;border-bottom:1px solid var(--line)}
 .gn.open{display:block}.gn ul{flex-direction:column;align-items:stretch}.gn .cta a{margin:12px 0 0;justify-content:center}
 .mb{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:48px;border:1px solid var(--navy);border-radius:999px;background:#fff;font-family:var(--en);letter-spacing:.2em;color:var(--navy);font-size:13px}
 .hero .wrap{grid-template-columns:1fr}
 .hero .side{flex-direction:row;padding-top:0;justify-content:space-between}
 .hero h1{writing-mode:horizontal-tb;height:auto;font-size:21px;align-self:center}
 .hero .side img{width:34%}
 .topics,.about,.svc,.pros,.ex,.voices,.checks{grid-template-columns:1fr}
 .svc.rev>:first-child{order:0}
 .pros>div{padding:32px 0}.pros>div+div{border-left:0;border-top:1px solid var(--line)}
 .about .pics{min-height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px}.about .pics img{position:static;width:100%!important}.about .pics .a{grid-column:1/-1}
 .strip{grid-template-columns:1fr 1fr}
 .ft .wrap{grid-template-columns:1fr}
 .flow li{grid-template-columns:64px 1fr}
 .fixed{display:block;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line)}
 .fixed .btn{width:100%}
 .scroll{display:none}
}

svg.ill{display:block;width:100%;height:auto;color:var(--navy)}
.ill .f{fill:#e6eef4;stroke:none}
/* 数字で見る */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--navy);border-bottom:1px solid var(--line)}
.stats div{padding:36px 16px;text-align:center;position:relative}
.stats div+div::before{content:"";position:absolute;left:0;top:24%;bottom:24%;width:1px;background:var(--line)}
.stats b{display:block;font-family:var(--en);font-weight:300;font-size:clamp(40px,5vw,60px);color:var(--navy);line-height:1.1}
.stats b small{font-size:.35em;margin-left:4px;font-family:var(--jp)}
.stats span{font-size:13px}
.stats b span{font-size:1em}
/* お悩み：イラストを中央に */
.worries2{display:grid;grid-template-columns:1fr 280px 1fr;gap:40px;align-items:center}
.worries2 ul{list-style:none;margin:0;padding:0}
.worries2 li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line);position:relative;color:var(--navy)}
.worries2 li::before{content:"";position:absolute;left:4px;top:24px;width:14px;height:8px;border:solid var(--navy);border-width:0 0 1.5px 1.5px;transform:rotate(-45deg)}
/* 3人のお客さま像 */
.who3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px}
.who3 a{display:block;text-decoration:none;padding:28px 24px;text-align:center;color:var(--gray);transition:background .4s}
.who3 a+a{border-left:1px solid var(--line)}
.who3 a:hover{background:#fff}
.who3 svg{width:120px;margin:0 auto 12px}
.who3 b{display:block;color:var(--navy);font-weight:500;letter-spacing:.12em}
/* 声：写真を大きく、ずらす */
.voices2{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;align-items:start}
.voices2 article{grid-column:span 4}
.voices2 article:nth-child(2){margin-top:80px}.voices2 article:nth-child(3){margin-top:30px}
.voices2 img{width:100%;aspect-ratio:4/5;object-fit:cover}
.voices2 b{display:block;color:var(--navy);font-weight:500;letter-spacing:.1em;line-height:1.7;margin-top:16px}
.voices2 span{font-size:13px}
/* 横に流れる写真 */
.flowimg{overflow:hidden}
.flowimg .t{display:flex;gap:0;width:max-content;animation:fimg 60s linear infinite}
.flowimg img{width:360px;height:260px;object-fit:cover;flex:none}
@keyframes fimg{to{transform:translateX(-50%)}}
/* 流れ：線が伸びる */
.flow{position:relative}
.flow::after{content:"";position:absolute;left:21px;top:40px;bottom:40px;width:1px;background:var(--navy);transform-origin:top;transform:scaleY(var(--p,0));transition:transform 2.4s ease}
.flow.is-in{--p:1}
.wide{height:clamp(260px,38vw,480px);overflow:hidden;position:relative}
.wide img{width:100%;height:130%;object-fit:cover;position:absolute;top:-15%}
.wide p{position:absolute;left:clamp(16px,6vw,80px);bottom:clamp(16px,4vw,48px);margin:0;color:#fff;font-size:clamp(18px,2.4vw,26px);letter-spacing:.2em;writing-mode:vertical-rl;text-shadow:0 2px 12px rgba(0,0,0,.4);line-height:2}
.withill{display:grid;grid-template-columns:1fr 260px;gap:48px;align-items:center}
.hero h1 .ch{display:inline-block}
@media (max-width:980px){
 .stats{grid-template-columns:1fr 1fr}.stats div:nth-child(3)::before{display:none}
 .worries2{grid-template-columns:1fr}.worries2 svg{max-width:220px;margin:0 auto;order:-1}
 .who3{grid-template-columns:1fr}.who3 a+a{border-left:0;border-top:1px solid var(--line)}
 .voices2{grid-template-columns:1fr}.voices2 article{grid-column:auto;margin-top:0!important}
 .withill{grid-template-columns:1fr}
 .flow::after{display:none}
 .wide p{writing-mode:horizontal-tb}
}

html,body{overflow-x:clip}
.js [data-rv]{opacity:0;transition:opacity 1s cubic-bezier(.165,.84,.44,1),transform 1s cubic-bezier(.165,.84,.44,1),filter 1s ease}
.js [data-rv=up]{transform:translateY(32px)}
.js [data-rv=left]{transform:translateX(-40px)}
.js [data-rv=right]{transform:translateX(40px)}
.js [data-rv=pop]{transform:scale(.85);transition-timing-function:cubic-bezier(.34,1.56,.64,1)}
.js [data-rv=blur]{filter:blur(12px)}
.js [data-rv=flip]{transform:perspective(600px) rotateX(70deg);transform-origin:50% 0}
@media (max-width:860px){.js [data-rv=left],.js [data-rv=right]{transform:translateY(32px)}}
.js [data-rv=wipe]{opacity:1;clip-path:inset(0 100% 0 0);transition:clip-path 1.3s cubic-bezier(.77,0,.175,1)}
.js [data-rv=wipe-up]{opacity:1;clip-path:inset(100% 0 0 0);transition:clip-path 1.3s cubic-bezier(.77,0,.175,1)}
.js [data-rv=circle]{opacity:1;clip-path:circle(0% at 50% 50%);transition:clip-path 1.4s cubic-bezier(.65,0,.35,1)}
.js [data-rv=zoom]{transform:scale(1.15);transition-duration:1.6s}
.js [data-rv=tilt]{transform:rotate(-6deg) translateY(30px);transition-timing-function:cubic-bezier(.34,1.56,.64,1)}
.js [data-rv=drop]{transform:translateY(-40px);transition-timing-function:cubic-bezier(.34,1.56,.64,1)}
.js [data-rv=wipe].is-in,.js [data-rv=wipe-up].is-in{clip-path:inset(0 0 0 0)}
.js [data-rv=circle].is-in{clip-path:circle(75% at 50% 50%)}
.js [data-rv=chars]{opacity:1}
.js [data-rv=chars] .ch{display:inline-block;opacity:0;transform:translateY(.6em) rotate(8deg);transition:opacity .6s,transform .6s cubic-bezier(.34,1.56,.64,1)}
.js [data-rv=chars].is-in .ch{opacity:1;transform:none}
.js [data-rv=draw]{opacity:1}
.js [data-rv=draw] .dr{stroke-dasharray:var(--len,1200);stroke-dashoffset:var(--len,1200);transition:stroke-dashoffset 2.4s ease}
.js [data-rv=draw].is-in .dr{stroke-dashoffset:0}
.js [data-rv=mark]{opacity:1;background-size:0% 100%!important;transition:background-size 1.2s .3s ease}
.js [data-rv=mark].is-in{background-size:100% 100%!important}
.js [data-rv].is-in{opacity:1;transform:none;filter:none}
[data-d="1"]{transition-delay:.12s!important}[data-d="2"]{transition-delay:.24s!important}[data-d="3"]{transition-delay:.36s!important}[data-d="4"]{transition-delay:.48s!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js [data-rv]{opacity:1;transform:none;filter:none;clip-path:none}.js [data-rv] .ch{opacity:1;transform:none}.js [data-rv] .dr{stroke-dashoffset:0}[data-px]{transform:none!important}}

/* ===== 動きの調整（2026-10-16）：要所だけ、ふわっと出す1種類にそろえる ===== */
.js [data-rv]:not([data-rv=draw]):not([data-rv=mark]){clip-path:none!important;filter:none!important;transform:translateY(20px);transition:opacity .9s ease,transform .9s ease!important}
.js [data-rv].is-in:not([data-rv=draw]):not([data-rv=mark]){transform:none}
/* 文章・表・リストの中身は動かさない */
.js p[data-rv],.js dl[data-rv],.js table[data-rv],.js ul[data-rv],.js ol[data-rv],.js dd[data-rv],.js tr[data-rv],.js cite[data-rv],.js small[data-rv]{opacity:1!important;transform:none!important;transition:none!important}
/* 見出しは1文字ずつではなく、まとめて出す */
.js [data-rv=chars] .ch{transform:none!important;transition:opacity .9s ease!important;transition-delay:0s!important}
/* スクロールでずれる動きは止める */
[data-px]{transform:none!important}

/* header: 高さ150px＋右上の青い帯（2026-10-18） */
.hd .wrap{min-height:150px;align-items:stretch}
.hd .logo{align-self:center}
.hd .gn{display:flex;align-items:stretch}
.gn li.cta{align-self:stretch;display:flex;padding:0;margin-left:16px;background:var(--navy);color:#fff;text-align:center}
.gn li.cta a{flex:1;justify-content:center;min-width:176px;margin:0;border:0;border-radius:0;color:#fff;font-size:14px;letter-spacing:.2em;transition:background .3s}
.gn li.cta a:hover{background:var(--navy-d);color:#fff}
@media (max-width:980px){
 .hd .wrap{min-height:72px;align-items:center}
 .hd .gn{display:none}.hd .gn.open{display:block}
 .gn li.cta{margin:12px 0 0}.gn li.cta a{min-height:52px}
}

/* header: スクロール時に100pxへ縮める（2026-10-18） */
.hd .wrap{transition:min-height .3s ease}
.hd.sm .wrap{min-height:100px}
.hd.sm{box-shadow:0 1px 0 var(--line)}
@media (max-width:980px){.hd.sm .wrap{min-height:72px}}

html,body{overflow-anchor:none}


/* ===== 改行と文の切り方（日本語の折り返しを整える） ===== */
body {
  word-break: auto-phrase;      /* 言葉のかたまりで折り返し、言葉の途中で切らない（対応ブラウザー） */
  line-break: strict;           /* 句読点や「ー」を行の頭に置かない */
}
h1, h2, h3, h4 { text-wrap: balance; }   /* 複数行のとき行の長さをそろえる */
p, li, dd, td, figcaption, blockquote { text-wrap: pretty; }   /* 最後の行に1〜2文字だけ残るのを防ぐ */
.nobr { display: inline-block; }
@media (max-width: 767px) { .pc-only { display: none; } }
