@charset "UTF-8";
*,*::before,*::after{box-sizing:border-box}
html,body,h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,figure,table,th,td,form,fieldset{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
input,select,textarea{font:inherit;color:inherit;border:0;border-radius:0}
table{border-collapse:collapse}
:root{
  --base-vw:390; --vw:390px;
  --header-height:72rem;
  --c-navy:#203E73;        
  --c-navy-1:#2D5C9E;      
  --c-navy-2:#2E6CA8;      
  --c-navy-3:#3B4A9A;      
  --c-navy-d:#152B52;      
  --c-pill:#3A87D6;        
  --c-hover:#4F9BE8;
  --c-link:#2366B0;
  --c-font:#333;
  --c-gray:#666;
  --c-crumb:#666;
  --c-line:#ddd;
  --c-bg:#f1f1f1;
  --c-bg2:#ebebeb;
  --c-tag:#ededed;
  --c-red:#d6002a;
  --c-white:#fff;
  --f-jp:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  --f-en:"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif;
  --grid-columns:24; --grid-gutter:min(48px,48rem); --grid-margin:min(64px,64rem);
  --e-out-expo:cubic-bezier(.19,1,.22,1); --e-out-quint:cubic-bezier(.23,1,.32,1);
  --e-out-quad:cubic-bezier(.25,.46,.45,.94); --e-out-cubic:cubic-bezier(.215,.61,.355,1);
  --e-out-quart:cubic-bezier(.165,.84,.44,1);
}
@media (min-width:768px){:root{--base-vw:1512;--vw:1512px;--header-height:60px}}
html{font-size:calc(var(--vw)/var(--base-vw));-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--f-jp);font-size:16rem;color:var(--c-font);background:#fff;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;
  line-break:strict;word-break:keep-all;overflow-wrap:anywhere}
body.is-lower{background:var(--c-bg)}
.en{font-family:var(--f-en)}
.lMain{display:block;width:100%;overflow-x:clip}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nw{white-space:nowrap}
.uPc{display:none!important}
@media (min-width:768px){.uSp{display:none!important}.uPc{display:revert!important}}
:focus-visible{outline:2px solid var(--c-pill);outline-offset:2px}
p,li,dd,td{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
.ar{display:block;width:6rem;height:7rem;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.cir{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:40rem;height:40rem;border:1px solid currentColor;border-radius:50%}
.cir .ar{width:10rem;height:11rem;margin-left:2rem}
@media (min-width:768px){.cir{width:40px;height:40px}.cir .ar{width:10px;height:11px}}
.btn{position:relative;display:flex;align-items:center;justify-content:center;width:250rem;height:56rem;
  background:var(--c-navy);color:#fff;border-radius:8rem;transition:background-color .4s var(--e-out-expo)}
.btn__t{margin-left:-16rem;font-size:14rem;font-weight:500;line-height:1.2;letter-spacing:.03em}
.btn .ar{position:absolute;top:calc(50% - 3.5rem);right:8rem}
.btn--w{background:#fff;color:var(--c-navy)}
@media (min-width:768px){
  .btn{height:56px;border-radius:8px}
  .btn__t{margin-left:-16px;font-size:14px}
  .btn .ar{top:calc(50% - 3.5px);right:8px;width:6px;height:7px}
}
@media (min-width:768px) and (any-hover:hover){
  .btn:hover{background:var(--c-link)}
  .btn--w:hover{background:#dfe8f5}
}
.hdBg{position:fixed;top:0;left:0;z-index:10;width:100%;height:var(--header-height);overflow:hidden;pointer-events:none}
.hdBg__in{width:100%;height:100%;background:var(--c-navy);transform:translateY(-101%);transition:transform .4s var(--e-out-quint)}
.hdBg.is-fixed .hdBg__in{transform:translateY(0)}
.hd{position:fixed;top:0;left:0;z-index:130;width:100%;height:var(--header-height);transition:transform .4s var(--e-out-expo)}
.hd__in{display:flex;align-items:center;width:100%;height:100%;padding:0 13rem 0 20rem;background:var(--c-navy)}
.hd__logo{display:flex;align-items:center;gap:10rem;flex-shrink:0;color:#fff}
.hd__logo svg{width:auto;height:22rem}
.hd__logo b{font-size:12rem;font-weight:700;letter-spacing:.06em;white-space:nowrap}
.hd__nav{display:none}
.hd__contact{display:none}
.hd__menu{width:54rem;height:54rem;margin-left:auto}
.hd__menu button{display:flex;flex-direction:column;gap:6rem;align-items:center;justify-content:center;width:100%;height:100%}
.hd__menu i{display:block;width:32rem;height:2px;background:#fff;transition:transform .4s var(--e-out-expo)}
.is-menu-open .hd__menu i:first-child{transform:translateY(4rem) rotate(225deg)}
.is-menu-open .hd__menu i:last-child{transform:translateY(-4rem) rotate(-225deg)}
@media (min-width:768px){
  .hdBg{top:30px;width:calc(100% - 176rem);margin:0 88rem}
  .hdBg__in{border-radius:8px}
  .hd{position:absolute;top:30px;transform:translateY(19px)}
  .hd.is-fixed{position:fixed;transform:translateY(0)}
  .hd__in{width:calc(100% - 128rem);margin:0 64rem;padding:0;background:transparent;transition:width .4s var(--e-out-expo),margin .4s var(--e-out-expo),padding .4s var(--e-out-expo)}
  .hd.is-fixed .hd__in{width:calc(100% - 176rem);margin:0 88rem;padding:0 30rem 0 40rem}
  .hd__logo svg{height:25px}
  .hd__logo b{font-size:13px}
  .hd.is-fixed .hd__logo svg{height:21px}
  .hd__nav{display:block;flex-grow:1;margin-right:36px}
  .hd__nav ul{display:flex;gap:36px;justify-content:flex-end}
  .hd__nav a{font-size:15px;font-weight:500;line-height:1.2;color:#fff;letter-spacing:.03em;white-space:nowrap;transition:color .4s var(--e-out-expo)}
  .hd__nav a[aria-current="page"]{color:#a9cdf4}
  .hd__contact{display:flex;align-items:center;justify-content:center;height:30px;padding:0 30px;background:var(--c-pill);border-radius:48px;font-size:14px;font-weight:500;color:#fff;letter-spacing:.03em;white-space:nowrap;transition:background-color .4s var(--e-out-expo)}
  .hd__menu{display:none}
}
@media (any-hover:hover){.hd__nav a:hover{color:#a9cdf4}.hd__contact:hover{background:var(--c-hover)}}
@media (max-width:1400px) and (min-width:1261px){.hd,.hdBg{zoom:.9}}
@media (max-width:1260px) and (min-width:1121px){.hd,.hdBg{zoom:.8}}
@media (max-width:1120px) and (min-width:981px){.hd,.hdBg{zoom:.7}}
@media (max-width:980px) and (min-width:841px){.hd,.hdBg{zoom:.6}}
@media (max-width:840px) and (min-width:768px){.hd,.hdBg{zoom:.55}}
.menu{position:fixed;inset:0;z-index:120;overflow-y:auto;overscroll-behavior:contain;background:var(--c-navy);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s var(--e-out-expo),visibility .4s}
.is-menu-open .menu{opacity:1;visibility:visible;pointer-events:auto}
.menu__in{padding:calc(var(--header-height) + 24rem) 30rem calc(64rem + env(safe-area-inset-bottom,0px))}
.menu__list{display:grid;grid-template-columns:1fr 1fr;gap:28rem 16rem}
.menu__list>li{overflow:hidden}
.menu__list>li.is-wide{grid-column:span 2}
.menu__list a{display:block;font-size:16rem;font-weight:500;line-height:1.3;color:#fff;letter-spacing:.03em;
  opacity:0;transform:translateY(100%);transition:opacity .4s var(--e-out-expo),transform .4s var(--e-out-cubic)}
.is-menu-open .menu__list a{opacity:1;transform:none;transition-delay:.15s}
.menu__sub{margin-top:14rem;padding-left:20rem;border-left:1px solid #4a6aa5;display:flex;flex-direction:column;gap:14rem}
.menu__sub a{font-size:14rem;font-weight:400}
.menu__tel{margin-top:40rem;color:#fff;font-size:13rem;line-height:1.8}
.menu__tel a{font-family:var(--f-en);font-size:26rem;font-weight:700;letter-spacing:.02em}
.menu__btn{margin:32rem auto 0}
@media (min-width:768px){.menu{display:none}}
.ft{width:100%}
.ft__in{padding:80rem 30rem 54rem;color:var(--c-navy);background:var(--c-bg)}
.is-lower .ft__in{background:#e6e8ec}
.ft__logo svg{width:auto;height:24rem}
.ft__name{margin-top:12rem;font-size:15rem;font-weight:700;letter-spacing:.04em}
.ft__addr{display:flex;flex-direction:column;margin-top:10rem;font-size:13rem;font-weight:500;line-height:1.6;letter-spacing:.03em}
.ft__addr div{display:flex;gap:4rem}
.ft__addr dt{flex-shrink:0;width:3em}
.ft__para{margin-top:32rem;font-size:12rem;font-weight:500;line-height:1.9;letter-spacing:.03em}
.ft__contact{display:flex;justify-content:center;margin-top:32rem}
.ft__contact a{display:flex;align-items:center;justify-content:space-between;width:250rem;padding:20rem 8rem 21rem;color:#fff;background:var(--c-navy);border-radius:8px}
.ft__contact span{flex-grow:1;margin-left:-10rem;font-size:14rem;font-weight:500;line-height:1.2;text-align:center;letter-spacing:.03em}
.ft__contact .ar{width:5rem;height:6rem}
.ft__nav{display:none}
.ft__bottom{display:flex;flex-wrap:wrap;gap:20rem;justify-content:space-between;margin-top:63rem}
.ft__bottom a,.ft__copy{font-family:var(--f-en);font-size:15rem;font-weight:500;line-height:1.9;letter-spacing:.03em}
.ft__bottom a{font-family:var(--f-jp);font-size:13rem}
@media (min-width:768px){
  .ft__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:200px var(--grid-margin) 56px}
  .ft__brand{grid-column:2/10}
  .ft__logo svg{height:33px}
  .ft__name{font-size:17px}
  .ft__addr{font-size:15px;margin-top:12px}
  .ft__para{width:324rem;margin-top:48px;font-size:15px}
  .ft__contact{justify-content:flex-start;margin-top:48px}
  .ft__contact a{width:320px;max-width:320px;padding:18px 8px 21px}
  .ft__contact span{font-size:14px}
  .ft__contact .ar{width:5px;height:6px}
  .ft__nav{display:grid;grid-column:12/24;grid-template-columns:repeat(12,1fr);column-gap:var(--grid-gutter);align-content:start;margin-top:-16px}
  .ft__col{grid-column:span 4}
  .ft__col--wide{grid-column:span 4}
  .ft__h{display:block;padding:16px 0;font-size:17px;font-weight:500;line-height:1.2;letter-spacing:.03em}
  .ft__h.is-small{font-size:15px}
  .ft__plist{display:flex;flex-direction:column;gap:24px;margin-top:7px}
  .ft__plist>li{position:relative;padding-left:24px}
  .ft__plist>li::before{position:absolute;top:0;left:0;width:1px;height:100%;content:"";background:#ccc}
  .ft__plist>li>a{display:block;padding:2px 0;font-size:15px;font-weight:500;line-height:1.4}
  .ft__clist{margin-top:7px}
  .ft__clist a{display:block;padding:6px 0;font-size:14px;line-height:1.4}
  .ft__bottom{grid-column:2/24;margin-top:110rem}
  .ft__bottom a,.ft__copy{font-size:15px}
  .ft__bottom a{font-size:14px}
}
@media (any-hover:hover){.ft__nav a,.ft__bottom a{transition:color .4s var(--e-out-expo)}.ft__nav a:hover,.ft__bottom a:hover{color:var(--c-link)}}
@media (min-width:768px) and (max-width:1425px) and (min-width:1367px){.ft{zoom:.9}}
@media (min-width:768px) and (max-width:1366px) and (min-width:1231px){.ft{zoom:.85}}
@media (min-width:768px) and (max-width:1230px) and (min-width:1091px){.ft{zoom:.75}}
@media (min-width:768px) and (max-width:1090px) and (min-width:981px){.ft{zoom:.7}}
@media (min-width:768px) and (max-width:980px){.ft{zoom:.55}}
.totop{position:fixed;right:max(14rem,env(safe-area-inset-right,0px));bottom:calc(14rem + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;justify-content:center;width:44rem;height:44rem;color:#fff;background:var(--c-navy);border-radius:50%;opacity:0;pointer-events:none;transition:opacity .4s}
.totop.is-show{opacity:.9;pointer-events:auto}
.totop .ar{transform:rotate(-90deg);width:9rem;height:10rem}
@media (min-width:768px){.totop{width:48px;height:48px;right:24px;bottom:24px}.totop .ar{width:9px;height:10px}}
.crumb{width:100%;padding:0 20rem;margin-top:72rem}
.crumb ol{display:flex;flex-wrap:wrap;gap:0 10rem;align-items:center}
.crumb li{font-size:11rem;color:var(--c-crumb)}
.crumb li a{display:inline-flex;gap:7rem;padding:12rem 0}
.crumb li a::after{flex-shrink:0;width:1px;height:16rem;margin-right:-3rem;content:"";background:var(--c-crumb);rotate:44deg}
.crumb li:last-child{padding:12rem 0}
@media (min-width:768px){
  .crumb{padding:0 96rem;margin-top:100px}
  .crumb ol{gap:15px}
  .crumb li{font-size:12px}
  .crumb li a{gap:12px;padding:11px 0 14px}
  .crumb li a::after{height:16px;margin-right:1px}
  .crumb li:last-child{padding:11px 0 14px}
}
.ttl{display:flex;flex-direction:column;gap:16rem;color:var(--c-navy)}
.ttl__jp{font-size:24rem;font-weight:700;line-height:1.3}
.ttl__en{font-family:var(--f-en);font-size:13rem;font-weight:700;line-height:1.2}
@media (min-width:768px){.ttl{gap:33px}.ttl__jp{font-size:48px}.ttl__en{margin-left:2px;font-size:16px}}
.fi{display:inline-block;overflow:hidden;vertical-align:bottom}
.fi>span{display:inline-block}
.js .fi>span{opacity:0;transform:translate(0,100%) skewX(1deg);transition:opacity .6s var(--e-out-quad),transform .6s var(--e-out-quad)}
.js .is-in .fi>span,.js .fi.is-in>span{opacity:1;transform:none}
.mk{position:relative;overflow:hidden}
.mk::after{position:absolute;inset:-2px;content:"";background:var(--mk,var(--c-navy));clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transition:clip-path .8s var(--e-out-quint);pointer-events:none}
.no-js .mk::after{display:none}
.mk.is-in::after{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}
.js .up{opacity:0;transform:translateY(24px);transition:opacity .9s var(--e-out-quint),transform .9s var(--e-out-quint)}
.js .up.is-in{opacity:1;transform:none}
.op{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--c-navy);transition:opacity .7s var(--e-out-quad),visibility .7s}
.op__mark{width:44rem;opacity:0;transform:translateY(20rem);animation:opMark .9s var(--e-out-quint) .15s forwards}
.op__logo{position:absolute;left:50%;top:calc(50% + 78rem);width:220rem;transform:translateX(-50%);opacity:0;animation:opIn .9s var(--e-out-quint) .75s forwards}
.op__mark svg,.op__logo svg{width:100%;height:auto}
.op__bar{position:absolute;left:50%;top:calc(50% + 120rem);width:180rem;height:2px;margin-left:-90rem;background:rgba(255,255,255,.18);overflow:hidden}
.op__bar::after{content:"";position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:left;animation:opBar 1.6s var(--e-out-quad) .6s forwards}
.op.is-done{opacity:0;visibility:hidden}
@keyframes opMark{to{opacity:1;transform:none}}
@keyframes opIn{to{opacity:1}}
@keyframes opBar{to{transform:scaleX(1)}}
@media (min-width:768px){.op__mark{width:64px}.op__logo{width:300px;top:calc(50% + 96px)}.op__bar{width:240px;margin-left:-120px;top:calc(50% + 150px)}}
.no-js .op{display:none}
.curtain{position:fixed;inset:0;z-index:190;background:var(--c-navy);transform:translateY(100%);visibility:hidden;pointer-events:none}
.curtain.is-leave{visibility:visible;transform:translateY(0);transition:transform .45s var(--e-out-quart)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .js .fi>span,.js .up{opacity:1!important;transform:none!important}
  .mk::after{display:none!important}
}
.hd__logo,.op,.menu{--lgT:var(--c-navy)}
.ft__logo{--lgT:#fff}
.is-lower .hdBg__in{transform:translateY(0)}
@media (min-width:768px){
  .is-lower .hd{position:fixed;transform:translateY(0)}
  .is-lower .hd .hd__in{width:calc(100% - 176rem);margin:0 88rem;padding:0 30rem 0 40rem}
  .is-lower .hd .hd__logo svg{height:21px}
}
a[href^="tel:"]{white-space:nowrap}
@media (min-width:768px){.btn{width:max(250rem,230px)}}
.op{color:#fff}
.op__mark{margin-top:-60rem}
.op__logo{top:calc(50% + 40rem)}
.op__bar{top:calc(50% + 120rem)}
@media (min-width:768px){.op__mark{margin-top:-80px}.op__logo{top:calc(50% + 40px)}.op__bar{top:calc(50% + 140px)}}
.fv__in{position:relative;z-index:2;padding-bottom:72rem;overflow-x:clip;background:var(--c-navy)}
.fv__mv{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}
.fv__bg{position:absolute;inset:0;overflow:hidden}
.fv__bg::before{position:absolute;inset:0;content:"";background:#264983;clip-path:polygon(64% 0,100% 0,100% 100%,18% 100%)}
.fv__bg::after{position:absolute;inset:0;content:"";background:#1b3767;clip-path:polygon(0 0,34% 0,8% 100%,0 100%)}
.fv__img{position:absolute;overflow:hidden;opacity:0;transition:transform 1.5s var(--e-out-quint),opacity 1.5s var(--e-out-quint)}
.fv__img img{width:100%;height:100%;object-fit:cover}
.fv__img[data-id="1"]{top:0;right:0;width:100%;height:338rem;transform:translateY(-10%)}
.fv__img[data-id="2"]{top:548rem;left:0;z-index:1;width:284rem;height:140rem;transform:translateX(-10%)}
.fv__img[data-id="3"]{top:500rem;right:-3rem;width:198rem;height:112rem;transform:translateX(20%)}
.fv__img.is-active{opacity:1;transform:translate(0,0)}
.fv__content{padding:313rem 0 0;color:#fff}
.fv__h{width:100%;padding-left:18rem;font-size:38rem;font-weight:700;line-height:1.1}
.fv__h .k{letter-spacing:.05em}
.fv__h .k1{display:inline-block;margin-left:-8rem}
.fv__h .k2{display:block;margin-top:.12em}
.fv__h .ch{display:inline-block;opacity:0;transform:translate(0,100%) skewX(1deg);transition:opacity .6s var(--e-out-quad),transform .6s var(--e-out-quad)}
.fv__h .ln{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em}
.isOp2 .fv__h .ch{opacity:1;transform:none}
.fv__copy{width:fit-content;max-width:100%;padding:0 18rem;margin-top:14rem;font-size:13rem;font-weight:500;line-height:1.8;letter-spacing:.04em;
  clip-path:polygon(0 0,0 0,0 100%,0 100%);transition:clip-path 1.2s var(--e-out-quad)}
.fv__copy.is-active{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.fvS{margin-top:150rem;margin-bottom:-144rem;opacity:0;transform:translateY(5%);transition:transform 1s var(--e-out-quint),opacity 1s var(--e-out-quint)}
.fvS.is-active{opacity:1;transform:none}
.fvS__track{display:flex;gap:16rem;padding:0 25rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.fvS__track::-webkit-scrollbar{display:none}
.fvS__item{flex-shrink:0;scroll-snap-align:start}
.fvS__link{position:relative;display:block;width:340rem;height:180rem;overflow:hidden;border-radius:3rem;color:#fff}
.fvS__link img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--e-out-expo)}
.fvS__link::after{position:absolute;inset:0;content:"";background:linear-gradient(0deg,rgba(14,28,54,.78),rgba(14,28,54,.08) 62%)}
.fvS__cap{position:absolute;left:18rem;right:18rem;bottom:14rem;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:10rem}
.fvS__cap small{display:block;font-family:var(--f-en);font-size:11rem;font-weight:700;letter-spacing:.04em;opacity:.85}
.fvS__cap b{display:block;font-size:17rem;font-weight:700;line-height:1.35;letter-spacing:.03em}
.fvS__cap .cir{width:30rem;height:30rem;border-color:#fff}
.fvS__cap .cir .ar{width:7rem;height:8rem}
.isOpSkip .fv__img{opacity:1;transform:none;transition:none}
.isOpSkip .fv__h .ch{opacity:1;transform:none;transition:none}
.isOpSkip .fv__copy{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transition:none}
.isOpSkip .fvS{opacity:1;transform:none;transition:none}
.no-js .fv__img,.no-js .fvS{opacity:1;transform:none}
.no-js .fv__h .ch{opacity:1;transform:none}
.no-js .fv__copy{clip-path:none}
.hp__in{position:relative;z-index:1;padding:144rem 0 64rem;overflow:hidden;background:var(--c-bg2)}
.hp__in::before{position:absolute;inset:0;z-index:-1;content:"";background:#f1f1f1;clip-path:polygon(0 0,40% 0,12% 100%,0 100%)}
.shd{display:flex;flex-direction:column;gap:22rem;padding:0 20rem;color:var(--c-navy)}
.shd__en{font-family:var(--f-en);font-size:13rem;font-weight:700;line-height:1.2}
.shd__jp{font-size:24rem;font-weight:700;line-height:1.3}
.hp__intro{padding:0 20rem;margin-top:24rem;font-size:13rem;font-weight:500;line-height:1.8;letter-spacing:.04em}
.hp__top{display:none}
.hp__list{margin-top:29rem;padding:0 0 0 20rem;overflow-x:auto;scrollbar-width:none}
.hp__list::-webkit-scrollbar{display:none}
.hp__grid{display:flex;gap:16rem;padding-right:20rem}
.pc{flex-shrink:0;width:318rem}
.pc__a{display:block}
.pc__up{display:flex;flex-direction:column;align-items:center;background:#fff;border-radius:4rem;overflow:hidden}
.pc__hd{display:flex;justify-content:space-between;gap:12rem;width:100%;padding:17rem 16rem 0 24rem;color:var(--c-navy)}
.pc__hdi{display:flex;flex-direction:column;gap:11rem;margin-top:3rem}
.pc__en{height:53rem;overflow:hidden;font-family:var(--f-en);font-size:24rem;font-weight:700;line-height:1.1;letter-spacing:-.01em}
.pc__jp{font-size:12rem;font-weight:700;line-height:1.4}
.pc__img{width:318rem;height:318rem;margin-top:37rem;overflow:hidden;background:#fff}
.pc__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--e-out-expo)}
.pc__img.is-contain img{object-fit:contain;padding:18rem}
.pc__desc{margin-top:16rem;font-size:13rem;font-weight:500;line-height:1.8}
.hp__use{padding:0 20rem;margin-top:40rem}
.hp__useH{font-size:20rem;font-weight:700;line-height:1.2;color:var(--c-navy)}
.uc{display:flex;flex-direction:column;gap:2rem;margin-top:22rem}
.uc__a{display:flex;gap:12rem;align-items:center;justify-content:space-between;height:56rem;padding:0 16rem;color:#fffbfb;background:var(--c-navy);border-radius:4rem;transition:background-color .4s var(--e-out-expo)}
.uc__t{flex-grow:1;font-size:18rem;font-weight:500;line-height:1.3}
.uc__t small{display:none}
.uc__a .cir{width:24rem;height:24rem;border-color:#fffbfb}
.uc__a .cir .ar{width:6rem;height:7rem}
.hp__link{margin:36rem auto 0}
@media (min-width:768px){
  .hp__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:244rem var(--grid-margin) 128px}
  .hp .shd{grid-row:1;grid-column:1/6;gap:22px;padding:0}
  .shd__en{font-size:24px}
  .shd__jp{font-size:48px;letter-spacing:.04em}
  .hp__intro{grid-row:1;grid-column:6/19;padding:0;margin:58px 0 0;font-size:15px;font-weight:400}
  .hp__top{display:flex;grid-row:1;grid-column:20/25;width:250rem;margin:54px 0 0 auto}
  .hp__list{grid-row:2;grid-column:4/25;padding:0;margin-top:51rem;overflow:visible}
  .hp__grid{display:grid;grid-template-columns:repeat(3,1fr);row-gap:64rem;column-gap:48rem;padding:0}
  .pc{width:100%}
  .pc__up{border-radius:4px}
  .pc__hd{padding:max(16px,16rem) min(16px,16rem) 0 min(24px,24rem)}
  .pc__hdi{gap:12px;margin-top:3px}
  .pc__en{height:62px;font-size:28px}
  .pc__jp{height:20px;font-size:14px}
  .pc__img{width:370rem;height:370rem;margin-top:max(15px,15rem)}
  .pc__desc{margin-top:23px;font-size:15px;font-weight:400}
  .hp__use{grid-row:3;grid-column:4/25;padding:0;margin-top:80rem}
  .hp__useH{font-size:26px}
  .uc{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:136rem;gap:4rem;margin-top:23rem}
  .uc__a{align-items:flex-start;height:100%;padding:16rem 16rem 6rem;gap:12px}
  .uc__t{font-size:24px}
  .uc__t small{display:block;margin-top:6px;font-size:13px;font-weight:400;opacity:.8}
  .uc__a .cir{width:40px;height:40px}
  .uc__a .cir .ar{width:11px;height:10px}
  .hp__link{grid-row:4;grid-column:10/19;width:100%;margin:80rem auto 0}
}
@media (min-width:768px) and (any-hover:hover){
  .pc__a:hover .pc__img img{transform:scale(1.1)}
  .uc__a:hover{background:var(--c-link)}
}
@media (min-width:768px) and (max-width:1366px) and (min-width:1201px){.pc__hdi,.pc__desc{zoom:.9}.uc__a{zoom:.9}}
@media (min-width:768px) and (max-width:1200px) and (min-width:1081px){.pc__hdi,.pc__desc{zoom:.8}.uc__a{zoom:.8}}
@media (min-width:768px) and (max-width:1080px) and (min-width:921px){.pc__hdi,.pc__desc{zoom:.7}.uc__a{zoom:.7}.hp .shd__jp{font-size:39px}}
@media (min-width:768px) and (max-width:920px){.pc__hdi,.pc__desc{zoom:.6}.uc__a{zoom:.6}.hp .shd__jp{font-size:39px}}
.hx__in{padding:48rem 20rem 64rem;background:#fff}
.hx .shd{padding:0;gap:24rem}
.hx__intro{margin-top:32rem;font-size:13rem;font-weight:500;line-height:1.8}
.hx__list{display:flex;flex-direction:column;gap:34rem;margin-top:32rem}
.hx__img{width:100%;height:175rem;overflow:hidden;background:var(--c-line)}
.hx__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--e-out-expo)}
.hx__cat{display:flex;flex-wrap:wrap;gap:5rem;margin-top:16rem}
.hx__cat span{padding:0 7rem 1rem;font-size:11rem;font-weight:700;line-height:1.8;letter-spacing:.04em;border:1px solid rgba(32,62,115,.2)}
.hx__ttl{margin-top:7rem;font-size:13rem;font-weight:700;line-height:1.8;letter-spacing:.04em}
.hx__txt{margin-top:7rem;font-size:11rem;font-weight:500;line-height:1.6}
.hx__link{margin:42rem auto 0}
@media (min-width:768px){
  .hx__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:66px var(--grid-margin) 77px}
  .hx .shd{flex-direction:row;align-items:flex-end;grid-column:1/18;gap:16px}
  .hx .shd__en{order:2;font-size:24px}
  .hx .shd__jp{order:1;font-size:40px}
  .hx__link{grid-row:1;grid-column:20/25;width:100%;margin:16rem 0 0}
  .hx__intro{grid-row:2;grid-column:4/25;margin-top:53rem;font-size:15px;font-weight:400}
  .hx__list{display:grid;grid-template-columns:repeat(3,1fr);grid-row:3;grid-column:4/25;gap:48rem;margin-top:40rem}
  .hx__img{height:185rem}
  .hx__cat{gap:5px;margin-top:16px}
  .hx__cat span{padding:0 7px 1px;font-size:11px}
  .hx__ttl{margin-top:8px;font-size:15px}
  .hx__txt{margin-top:8px;font-size:13px}
}
@media (any-hover:hover){.hx__a:hover .hx__img img{transform:scale(1.1)}}
.ht__in{overflow:hidden;color:#fff;background:var(--c-navy)}
.ht__mv{position:relative;width:100%;height:264rem;overflow:hidden;background:#fff}
.ht__mi{position:absolute;overflow:hidden}
.ht__mi img{width:100%;height:100%;object-fit:cover}
.ht__mi--1{top:0;left:-3px;width:361rem;height:264rem}
.ht__mi--2{top:0;right:3px;width:233rem;height:172rem}
.ht__mi--3{right:3px;bottom:0;width:233rem;height:92rem}
.ht__mi::after{position:absolute;inset:-3px;content:"";background:#fff;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transition:clip-path .6s var(--e-out-quint)}
.ht.is-in .ht__mi::after{clip-path:polygon(0 0,100% 0,100% 0,0 0)}
.ht.is-in .ht__mi--2::after{transition-delay:.2s}
.ht.is-in .ht__mi--3::after{transition-delay:.35s}
.no-js .ht__mi::after{display:none}
.ht__line{position:absolute;top:0;right:0;width:294rem;height:265rem;background:var(--c-navy);clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);transition:clip-path .8s var(--e-out-quint)}
.ht.is-in .ht__line{clip-path:polygon(100% 0,100% 0,100% 100%,0 100%)}
.ht__content{position:relative;z-index:1;padding:24rem 20rem 40rem}
.ht__deco{position:absolute;width:347rem;height:347rem;opacity:.08;pointer-events:none;border:1px solid #fff;border-radius:50%}
.ht__deco::before,.ht__deco::after{position:absolute;inset:18%;content:"";border:1px solid #fff;border-radius:50%}
.ht__deco::after{inset:36%}
.ht__deco[data-id="1"]{top:-46rem;right:-109rem}
.ht__deco[data-id="2"]{top:171rem;left:-73rem}
.ht .shd{padding:0;color:#fff;gap:24rem}
.ht .shd__jp{font-size:36rem}
.ht__txt{margin-top:24rem;font-size:13rem;font-weight:500;line-height:1.8;letter-spacing:.04em}
.ht__ach{position:relative;padding-top:22rem;margin-top:35rem}
.ht__ach::before{position:absolute;top:0;left:0;width:100%;height:2px;content:"";background:#fff}
.ht__achIn{display:flex;gap:30rem}
.ht__achH{flex-shrink:0;font-size:16rem;font-weight:700;line-height:1.2}
.ht__achL{display:flex;flex-direction:column;gap:9rem}
.ht__achT{display:flex;flex-direction:column;gap:2rem}
.ht__achT b{font-size:16rem;font-weight:700;line-height:1.2}
.ht__achT small{font-family:var(--f-en);font-size:10rem;font-weight:600;line-height:1.2}
.ht__achD{display:flex;align-items:flex-end;margin-top:-4rem;font-family:var(--f-en);font-weight:700}
.ht__achD .n{font-size:48rem;line-height:1.2}
.ht__achD .u{padding:0 0 10rem 4rem;font-size:16rem;line-height:1}
.ht__link{width:100%;margin:29rem auto 0}
@media (min-width:768px){
  .ht__mv{height:550rem}
  .ht__line{right:219rem;width:781rem;height:551rem}
  .ht__mi--1{width:958rem;height:550rem}
  .ht__mi--2{width:652rem;height:296rem}
  .ht__mi--3{width:833rem;height:254rem}
  .ht__content{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:83rem var(--grid-margin) 152rem}
  .ht__deco{width:504rem;height:504rem}
  .ht__deco[data-id="1"]{top:-76rem;right:-56rem}
  .ht__deco[data-id="2"]{top:219rem;right:270rem;left:auto}
  .ht__intro{grid-column:1/11}
  .ht .shd{gap:24px}
  .ht .shd__en{font-size:24px}
  .ht .shd__jp{font-size:62px;line-height:1.2}
  .ht__txt{margin-top:33px;font-size:15px}
  .ht__ach{grid-column:11/25;padding-top:0;margin-top:8rem}
  .ht__ach::before{display:none}
  .ht__achIn{flex-direction:column;gap:33px}
  .ht__achH{position:relative;padding-bottom:34px;font-size:26px}
  .ht__achH::before{position:absolute;bottom:0;left:0;width:100%;height:2px;content:"";background:#fff}
  .ht__achL{flex-direction:row;flex-wrap:wrap;gap:24rem;justify-content:space-between;max-width:900px;padding-right:8rem}
  .ht__achT{gap:5px}
  .ht__achT b{font-size:26px}
  .ht__achT small{font-size:15px}
  .ht__achD .n{font-size:80px}
  .ht__achD .u{padding:0 0 18px 6px;font-size:min(22px,22rem)}
  .ht__link{width:100%;margin:34px 0 0}
}
.hr__in{position:relative;z-index:1}
.hr__bg{position:absolute;inset:0;z-index:-1}
.hr__bg img{width:100%;height:100%;object-fit:cover}
.hr__bg::after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgba(18,36,68,.82),rgba(18,36,68,.35))}
.hr__content{padding:56rem 45rem 97rem;color:#fff}
.hr__copy{font-size:22rem;font-weight:700;line-height:1.6;letter-spacing:.06em}
.hr__wrap{margin-top:48rem}
.hr__head{display:flex;align-items:flex-end;gap:14rem}
.hr__en{font-family:var(--f-en);font-size:51rem;font-weight:600;line-height:.9}
.hr__jp{padding-bottom:4rem;font-size:22rem;font-weight:700;line-height:1.2}
.hr__txt{margin-top:18rem;font-size:13rem;line-height:1.8}
.hr__link{margin:33rem 0 0}
@media (min-width:768px){
  .hr__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:109rem var(--grid-margin)}
  .hr__content{display:flex;grid-column:3/24;align-items:center;justify-content:space-between;padding:0}
  .hr__copy{font-size:44rem;line-height:1.55}
  .hr__wrap{width:380rem;margin:0 40rem 0 0}
  .hr__en{font-size:64rem}
  .hr__jp{font-size:28rem}
  .hr__txt{font-size:15px}
  .hr__link{width:100%;margin:40rem 0 0}
}
@media (min-width:768px) and (max-width:1366px){.hr__head{zoom:.9}}
.hn__in{padding:49rem 20rem 80rem;overflow:hidden;background:var(--c-bg)}
.hn .shd{padding:0;gap:24rem}
.hn__list{display:flex;flex-direction:column;gap:8rem;margin-top:32rem}
.hn__a{display:flex;flex-direction:column;gap:8rem;padding:24rem 24rem;background:#fff;border-radius:4rem;transition:background-color .4s var(--e-out-expo)}
.hn__info{display:flex;gap:8rem;align-items:center;color:var(--c-navy)}
.hn__no{font-family:var(--f-en);font-size:13rem;font-weight:600}
.hn__cat{display:flex;align-items:center;justify-content:center;min-width:124rem;height:20rem;padding:0 8rem 1rem;font-size:11rem;font-weight:500;border:1px solid rgba(32,62,115,.2)}
.hn__ttl{font-size:14rem;font-weight:500;line-height:1.6;letter-spacing:.04em}
.hn__ttl small{display:block;margin-top:4rem;font-size:12rem;font-weight:400;color:#555}
.hn__tel{margin-top:28rem;color:var(--c-navy);font-size:13rem;font-weight:500;line-height:1.7}
.hn__tel a{font-family:var(--f-en);font-size:30rem;font-weight:700;letter-spacing:.02em}
.hn__link{margin:32rem auto 0}
@media (min-width:768px){
  .hn__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:128px var(--grid-margin) 128px}
  .hn .shd{flex-direction:row;grid-column:2/18;gap:16px;align-items:flex-end;padding-bottom:3px}
  .hn .shd__en{order:2;font-size:24px}
  .hn .shd__jp{font-size:40px}
  .hn__link{grid-row:1;grid-column:19/24;width:100%;margin:0}
  .hn__list{grid-row:2;grid-column:2/24;margin-top:48rem}
  .hn__a{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center;padding:max(24px,24rem) 32px;border-radius:4px}
  .hn__info{gap:16px;width:220px}
  .hn__no{font-size:16px}
  .hn__cat{width:124px;min-width:auto;height:auto;padding:0 0 1px;font-size:13px}
  .hn__ttl{font-size:15px}
  .hn__ttl small{font-size:13px}
  .hn__tel{grid-row:3;grid-column:2/24;margin-top:40px;font-size:15px}
  .hn__tel a{font-size:40px;margin-left:12px}
}
@media (min-width:768px) and (any-hover:hover){.hn__a:hover{background:#e3ebf6}}
@media (min-width:768px){
  .fv__in{padding-bottom:44rem}
  .fv__mv{overflow:hidden}
  .fv__img[data-id="1"]{width:601rem;height:644rem}
  .fv__img[data-id="2"]{top:0;right:601rem;left:auto;width:536rem;height:329rem;transform:translateX(-10%)}
  .fv__img[data-id="3"]{top:557rem;right:342rem;width:339rem;height:214rem;transform:translate(0,20%)}
  .fv__content{padding:434rem 36rem 0}
  .fv__h{padding-left:0;font-size:78px}
  .fv__h .k1{margin-left:-20px}
  .fv__copy{padding-left:23px;margin-top:16rem;font-size:17px;max-width:760rem;transition:clip-path .9s var(--e-out-quad)}
  .fvS{margin-top:58rem;margin-bottom:-88rem;padding:0 var(--grid-margin)}
  .fvS__track{display:grid;grid-template-columns:repeat(5,1fr);gap:16rem;padding:0;overflow:visible}
  .fvS__link{width:100%;height:180rem;border-radius:3px}
  .fvS__cap{left:20rem;right:16rem;bottom:16rem}
  .fvS__cap small{font-size:12px}
  .fvS__cap b{font-size:min(18px,18rem)}
  .fvS__cap .cir{width:30px;height:30px}
  .hp__in{padding-top:204rem}
}
@media (min-width:768px) and (max-width:1366px){.fv__h{zoom:.9}}
@media (min-width:768px) and (any-hover:hover){.fvS__link:hover img{transform:scale(1.08)}}
.fv__img[data-id="1"]::after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,rgba(18,36,68,.62),rgba(18,36,68,0) 32%);pointer-events:none}
.hp__link,.hx__link,.hn__link{display:flex;justify-content:center}
@media (min-width:768px){.hx__link .btn,.hn__link .btn,.hp__top .btn{width:100%}.hp__link{justify-content:center}}
@media (max-width:767px){.hn__tel a{display:block;margin-top:4rem}}
@media (min-width:768px) and (max-width:1023px){
  .fvS__track{display:flex;gap:12px;overflow-x:auto;padding:0 0 4px}
  .fvS__item{flex:0 0 260px}
  .fvS__link{height:140px}
  .fvS__cap b{font-size:15px}
  .fvS__cap small{font-size:11px}
  .hp .shd{grid-column:1/9}
  .hp .shd__jp{font-size:34px}
  .hp__intro{grid-column:9/25}
  .hp__top{display:none}
  .ht .shd__jp{font-size:42px}
  .ht__intro{grid-column:1/12}
  .ht__ach{grid-column:13/25}
  .ht__achD .n{font-size:52px}
  .hp__grid{grid-template-columns:repeat(2,1fr)}
  .pc__img{width:100%;height:auto;aspect-ratio:1/1}
}
@media (min-width:768px) and (max-width:1023px){.hn .shd{grid-column:2/14}.hn__link{grid-column:15/24}.hx .shd{grid-column:1/16}.hx__link{grid-column:17/25}}
@media (min-width:768px) and (max-width:1023px){.hn .shd{flex-direction:column;align-items:flex-start}.hn .shd__en{order:0}}
@media (min-width:768px) and (max-width:1023px){
  .fv__h{font-size:46px;zoom:1}
  .fv__h .k1{margin-left:0}
  .fv__copy{font-size:14px;max-width:none}
  .fv__img[data-id="3"]{right:40rem}
}
@media (min-width:768px) and (max-width:1199px){.fv__img[data-id="3"]{display:none}}
@media (min-width:1024px) and (max-width:1199px){.fv__h{font-size:60px;zoom:1}.fv__copy{max-width:640px}}
.wp{width:100%;padding:24rem 0 0}
.wp__up{padding:0 20rem}
.wp__btns{margin-top:40rem}
.pb__prod{display:flex;flex-direction:column;gap:8rem}
.pb__item{background:#fff;border-radius:8rem}
.pb__a{position:relative;display:flex;align-items:center;height:56rem;padding:0 10rem 0 12rem}
.pb__img{width:56rem;height:56rem;flex-shrink:0;overflow:hidden;border-radius:4rem}
.pb__img img{width:100%;height:100%;object-fit:cover}
.pb__t{flex-grow:1;margin:-4rem 0 0 -30rem;font-size:13rem;font-weight:500;line-height:1.2;color:var(--c-navy);text-align:center;letter-spacing:.03em}
.pb__a .ar{width:6rem;height:6rem;color:var(--c-navy)}
.pb__use{padding-top:16rem;margin-top:16rem;border-top:1px solid #ccc}
.pb__use .pb__t{margin:-4rem 0 0 3rem}
@media (min-width:768px){
  .wp{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin);margin-top:182px}
  .wp--top{margin-top:72px}
  .wp__up{grid-row:1;grid-column:2/24;padding:0}
  .wp__btns{display:flex;margin-top:56px}
  .pb__prod{display:grid;grid-template-columns:repeat(3,319rem);gap:8rem}
  .pb__item{border-radius:8px}
  .pb__a{height:56px;padding:0 7px 0 10px}
  .pb__img{width:56px;height:56px}
  .pb__t{margin:-4px 0 0 -10rem;font-size:14px}
  .pb__use{width:100%;padding:0 0 0 24rem;margin:0 0 0 24rem;border-top:0;border-left:1px solid #ccc}
  .pb__use .pb__t{margin:-4px 0 0 8px}
  .pb__a .ar{width:6px;height:6px}
}
@media (any-hover:hover){.pb__item{transition:background-color .4s var(--e-out-expo)}.pb__item:hover{background:#e3ebf6}}
@media (min-width:768px) and (max-width:1366px) and (min-width:1201px){.pb__a{zoom:.9}}
@media (min-width:768px) and (max-width:1200px) and (min-width:1081px){.pb__a{zoom:.8}}
@media (min-width:768px) and (max-width:1080px) and (min-width:921px){.pb__a{zoom:.7}}
@media (min-width:768px) and (max-width:920px){.pb__a{zoom:.6}}
.wpI{padding-top:71rem;scroll-margin-top:90px}
.wpI__in{color:#fff;background:var(--pc,var(--c-navy))}
.wpI__in--2{--pc:var(--c-navy-2)}
.wpI__in--3{--pc:var(--c-navy-3)}
.wpI__hd{display:flex;flex-direction:column;gap:8rem;height:148rem;padding:24rem;overflow:hidden}
.wpI__en{font-family:var(--f-en);font-size:28rem;font-weight:700;line-height:1.1}
.wpI__jp{font-size:12rem;font-weight:500;line-height:1.3;letter-spacing:.03em}
.wpI__img{position:relative;width:100%;height:225rem;overflow:hidden}
.wpI__img img{width:100%;height:100%;object-fit:cover}
.wpI__img.mk::after{background:var(--pc,var(--c-navy))}
.wpI__desc{width:100%;padding:0 36rem;margin-top:48rem;font-size:13rem;font-weight:400;line-height:1.8;letter-spacing:.04em}
.wpC{display:flex;flex-direction:column;gap:35rem;padding:48rem 36rem 0}
.wpC .pc{width:100%}
.wpC .pc__img{width:100%;height:auto;aspect-ratio:1/1}
@media (min-width:768px){
  .wp__inner{display:flex;flex-direction:column;grid-row:2;grid-column:1/25;gap:125px;margin-top:96px}
  .wpI{display:grid;grid-template-columns:repeat(24,1fr);column-gap:var(--grid-gutter);padding-top:0;scroll-margin-top:110px}
  .wpI__in{display:flex;grid-row:1;grid-column:1/25;height:400px;overflow:hidden;border-radius:4px}
  .wpI__hd{justify-content:flex-end;gap:10px;width:50%;height:100%;padding:46px 40rem}
  .wpI__en{font-size:62px}
  .wpI__jp{font-size:20px}
  .wpI__img{width:50%;height:100%}
  .wpI__desc{grid-row:2;grid-column:2/24;padding:0;margin-top:80px;font-size:15px}
  .wpC{display:grid;grid-template-columns:repeat(3,1fr);grid-row:3;grid-column:2/24;row-gap:57px;column-gap:48rem;padding:0;margin-top:80px}
  .wpC .pc__img{width:100%;height:auto;margin-top:8px}
}
.wpU{padding-top:64rem;scroll-margin-top:90px}
.wpU__ttl{display:flex;flex-direction:column;gap:5rem;padding:22rem 24rem 37rem;color:var(--c-navy);border-top:4px solid var(--c-line);border-bottom:4px solid var(--c-line)}
.wpU__en{font-family:var(--f-en);font-size:28rem;font-weight:700;line-height:1.1}
.wpU__jp{font-size:12rem;font-weight:500;letter-spacing:.03em}
.wpU .uc{padding:0 20rem;margin-top:40rem}
@media (min-width:768px){
  .wpU{display:grid;grid-template-columns:repeat(25,1fr);column-gap:var(--grid-gutter);padding-top:124px;scroll-margin-top:110px}
  .wpU__ttl{grid-row:1;grid-column:2/25;gap:8px;justify-content:flex-end;height:400px;padding:40px 35rem;border:4px solid var(--c-line);border-radius:4px}
  .wpU__en{font-size:62px}
  .wpU__jp{font-size:20px}
  .wpU .uc{grid-row:2;grid-column:3/24;padding:0;margin-top:80rem}
}
.dt{width:100%;padding-top:24rem}
.dt__in{padding-bottom:48rem}
.dt__thumb{display:flex;align-items:center;justify-content:center;width:100%;background:#fff}
.dt__thumbI{width:320rem;height:320rem;overflow:hidden}
.dt__thumbI img{width:100%;height:100%;object-fit:cover}
.dt__box{padding:0 18rem 0 20rem;margin-top:16rem}
.dt__en{font-family:var(--f-en);font-size:30rem;font-weight:900;line-height:1.15;color:#111}
.dt__jp{margin-top:5rem;font-size:12rem;font-weight:700;line-height:1.3;color:var(--c-gray)}
.dt__tags{display:flex;flex-wrap:wrap;gap:2rem;margin-top:16rem}
.dt__tags span{display:flex;align-items:center;justify-content:center;min-width:88rem;height:20rem;padding:0 8rem 1rem;font-size:11rem;font-weight:500;color:var(--c-navy-1);background:var(--c-tag);border-radius:4rem}
.dt__h{margin-top:24rem;font-size:16rem;font-weight:700;line-height:1.6;color:#111}
.dt__p{margin-top:8rem;font-size:13rem;line-height:1.8;letter-spacing:.04em}
.dt__cta{display:flex;align-items:center;justify-content:center;gap:12rem;width:318rem;height:56rem;margin:24rem auto 0;background:var(--c-navy);color:#fff;border-radius:8rem;font-size:14rem;font-weight:500;letter-spacing:.03em}
.dt__cta .ar{width:6rem;height:7rem}
.blk{padding:48rem 20rem 77rem;background:#fff}
.blk:nth-of-type(odd){background:var(--c-bg)}
.blk__h{position:relative;width:100%;padding-bottom:48rem;font-size:24rem;font-weight:700;line-height:1.3;color:var(--c-navy);letter-spacing:.04em}
.blk__h::after{position:absolute;bottom:0;left:0;width:100%;height:4rem;content:"";background:var(--c-line)}
.blk__in>*{margin-top:48px}
.fx{display:flex;flex-direction:column;gap:16rem}
.fx__t{display:flex;flex-direction:column;gap:16rem}
.fx__h3{font-size:19rem;font-weight:700;line-height:1.5;color:var(--c-navy)}
.fx__p{font-size:14rem;line-height:1.8}
.fx__img{width:100%;overflow:hidden;background:#fff}
.fx__img img{width:100%;height:auto}
.c3{display:flex;flex-direction:column;gap:48rem}
.c3__img{width:100%;padding:24rem;background:#fff}
.c3__img img{width:100%;height:auto}
.c3__h{margin-top:16rem;font-size:18rem;font-weight:700;line-height:1.5;color:var(--c-navy);letter-spacing:.04em}
.c3__p{margin-top:12rem;font-size:13rem;line-height:1.7;letter-spacing:.04em}
.step{display:flex;flex-direction:column;gap:24rem}
.step__i{display:flex;flex-direction:column;padding:16rem 20rem;background:var(--c-bg);border-radius:4rem}
.blk:nth-of-type(odd) .step__i{background:#fff}
.step__n{position:relative;padding-bottom:16rem;font-family:var(--f-en);font-size:20rem;font-weight:700;line-height:1.2;color:var(--c-navy);text-align:center}
.step__n::after{position:absolute;bottom:0;left:0;width:100%;height:1px;content:"";background:var(--c-line)}
.step__t{margin-top:16rem;font-size:15rem;font-weight:500;line-height:1.7;text-align:center}
.step__t small{display:block;margin-top:4rem;font-size:12rem;font-weight:400;color:#555}
.dl{padding:48rem 20rem;color:#fff;background:var(--c-navy-d)}
.dl__up{padding-bottom:36rem;border-bottom:4px solid rgba(255,255,255,.15)}
.dl__h{font-size:24rem;font-weight:700;line-height:1.3;letter-spacing:.04em}
.dl__p{margin-top:16rem;font-size:13rem;line-height:1.8;opacity:.9}
.dl__btns{display:flex;flex-direction:column;gap:12rem;margin-top:32rem}
.dl .btn{width:100%}
.rel{padding:48rem 20rem 77rem;background:#fff}
.rel__list{display:flex;flex-direction:column;gap:24rem;margin-top:40rem}
.back{display:flex;justify-content:center;padding:40rem 20rem}
@media (min-width:768px){
  .dt{padding-top:78px}
  .dt__in{display:flex;gap:91rem;padding:0 64rem 133px calc(64rem + 120rem)}
  .dt__thumb{flex-shrink:0;width:524rem;height:524rem}
  .dt__thumbI{width:100%;height:100%}
  .dt__box{flex-grow:1;padding:0;margin-top:17rem}
  .dt__en{font-size:64px}
  .dt__jp{font-size:20px}
  .dt__tags{gap:8rem;margin-top:22px}
  .dt__tags span{min-width:120px;height:26px;padding:0 10px 2px;font-size:14px}
  .dt__h{margin-top:40px;font-size:18px}
  .dt__p{width:607rem;margin-top:18px;font-size:15px}
  .dt__cta{width:428rem;height:56px;margin:40px 0 0;font-size:14px}
  .blk{padding:64px 64rem 120px calc(64rem + 120rem)}
  .blk__h{padding-bottom:64px;font-size:32px}
  .blk__in>*{margin-top:80px}
  .fx{flex-direction:row;justify-content:space-between;gap:48rem;align-items:flex-start}
  .fx--r{flex-direction:row-reverse}
  .fx__img{flex-shrink:0;width:608rem}
  .fx__t{gap:32px;width:490rem}
  .fx__h3{font-size:32px}
  .fx__p{font-size:15px}
  .c3{display:grid;grid-template-columns:repeat(3,1fr);gap:48rem}
  .c3--2{grid-template-columns:repeat(2,1fr)}
  .c3__h{margin-top:16px;font-size:18px}
  .c3__p{margin-top:12px;font-size:13px}
  .step{display:grid;grid-template-columns:repeat(var(--cols,4),1fr);gap:32rem}
  .step__n{font-size:20px}
  .step__t{margin-top:16px;font-size:16px}
  .step__t small{font-size:13px}
  .dl{padding:58px 64rem 120px calc(64rem + 120rem)}
  .dl__up{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:53px}
  .dl__h{font-size:32px}
  .dl__p{font-size:15px}
  .dl__btns{flex-direction:row;flex-wrap:wrap;margin-top:40px;gap:16px}
  .dl .btn{width:360px}
  .rel{padding:64px 64rem 120px calc(64rem + 120rem)}
  .rel__list{display:grid;grid-template-columns:repeat(3,1fr);gap:25rem;margin-top:78px}
  .back{padding:40px 64rem}
}
.cpc{overflow:hidden;background:#fff;border-radius:4rem}
.cpc__a{display:flex;flex-direction:column;height:100%}
.cpc__hd{display:flex;gap:9rem;justify-content:space-between;width:100%;padding:13rem 13rem 15rem 15rem;color:#fff;background:var(--c-navy)}
.cpc__hdi{flex-grow:1;margin-top:7rem}
.cpc__en{font-family:var(--f-en);font-size:24rem;font-weight:700;line-height:1.1;letter-spacing:-.01em}
.cpc__jp{margin-top:10rem;font-size:12rem;line-height:1.4}
.cpc__hd .cir{border-color:#fff}
.cpc__dt{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;width:100%;padding:8rem 24rem 24rem}
.cpc__img{display:flex;justify-content:center;width:100%;aspect-ratio:1/1;overflow:hidden;background:#fff}
.cpc__img img{width:100%;height:100%;object-fit:contain;transition:transform .4s var(--e-out-expo)}
.cpc__img.is-cover img{object-fit:cover}
.cpc__desc{margin-top:8rem;font-size:12rem;line-height:1.6;letter-spacing:.04em}
.cpc__tags{display:flex;flex-wrap:wrap;gap:2rem;margin-top:16rem}
.cpc__tags span{padding:2rem 8rem 3rem;font-size:11rem;font-weight:500;color:var(--c-navy-1);background:var(--c-tag);border-radius:4rem}
@media (min-width:768px){
  .cpc{border-radius:4px}
  .cpc__hd{gap:18rem;padding:16px 16rem 25px 24rem}
  .cpc__hdi{margin-top:12px}
  .cpc__en{min-height:31px;font-size:28px}
  .cpc__jp{font-size:14px}
  .cpc__desc{margin-top:8px;font-size:13px}
  .cpc__tags{margin-top:16px}
  .cpc__tags span{font-size:11px;padding:1px 10px 2px}
}
@media (min-width:768px) and (any-hover:hover){.cpc__a:hover .cpc__img img{transform:scale(1.08)}}
.uf{padding:24rem 20rem 0}
.uf__w{display:flex;flex-direction:column;justify-content:space-between;width:100%;padding:32rem 24rem 40rem;background:var(--c-navy);border-radius:4rem;color:#fff;position:relative;overflow:hidden}
.uf__tag{width:fit-content;padding:1rem 7rem 2rem;font-size:12rem;font-weight:700;border:1px solid #fff;border-radius:2rem}
.uf__h{margin-top:12rem;font-size:26rem;font-weight:500;line-height:1.25;letter-spacing:.03em}
.uf__en{margin-top:10rem;font-family:var(--f-en);font-size:14rem;font-weight:700;opacity:.75}
.uf__p{margin-top:28rem;font-size:13rem;line-height:1.9;letter-spacing:.04em;max-width:640px}
.uf__img{position:absolute;right:0;top:0;width:44%;height:100%;display:none}
.uf__img img{width:100%;height:100%;object-fit:cover}
.uw{padding:49rem 0 0}
.uw__list{display:flex;flex-direction:column;gap:36rem;padding:0 36rem}
.uw__h{padding:0 20rem;margin:64rem 0 24rem;font-size:20rem;font-weight:700;color:var(--c-navy)}
.uw__btn{padding:0 20rem;margin-top:64rem;display:flex;justify-content:center}
@media (min-width:768px){
  .uf{padding:56px 64rem 0}
  .uf__w{min-height:400px;padding:40px 40rem 44px;border-radius:4px}
  .uf__body{width:52%}
  .uf__tag{padding:0 7px 1px;font-size:16px;border-radius:2px}
  .uf__h{font-size:36px}
  .uf__en{font-size:18px}
  .uf__p{font-size:15px}
  .uf__img{display:block}
  .uw{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin);margin-top:81px}
  .uw__h{grid-column:2/24;padding:0;margin:96px 0 0;font-size:26px}
  .uw__h:first-child{margin-top:0}
  .uw__list{display:grid;grid-template-columns:repeat(3,1fr);grid-column:2/24;gap:64px 48rem;padding:0;margin-top:32px}
  .uw__btn{grid-column:2/24;padding:0;margin-top:80px}
}
.uw__other{padding:64rem 20rem 80rem}
.uw__other .uc{margin-top:24rem}
@media (min-width:768px){.uw__other{padding:120px calc(var(--grid-margin) + 120rem) 120px}}
.ph{padding:0}
.ph__t{width:100%;padding:0 20rem;margin-top:24rem}
.ph__nav{display:none}
.ph__fv{margin-top:40rem}
.ph__fvIn{display:flex;width:100%;height:222rem;overflow:hidden}
.ph__fvIn figure{height:100%;overflow:hidden}
.ph__fvIn figure:first-child{flex:0 0 64%}
.ph__fvIn figure:last-child{flex:1}
.ph__fvIn img{width:100%;height:100%;object-fit:cover}
@media (min-width:768px){
  .ph{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:72px var(--grid-margin) 0}
  .ph__t{grid-row:1;grid-column:2/12;padding:0;margin:0}
  .ph__nav{display:block;grid-row:1;grid-column:16/24;color:var(--c-navy)}
  .ph__nav ul{display:grid;grid-template-rows:repeat(3,auto);grid-auto-flow:column;column-gap:min(48px,48rem);margin:5px 0}
  .ph__nav a{position:relative;display:block;padding:6px 0 6px 17px;font-size:15px;font-weight:500;line-height:1.3;letter-spacing:.04em;white-space:nowrap}
  .ph__nav a::before{position:absolute;top:14px;left:0;width:9px;height:2px;content:"";background:currentColor}
  .ph__fv{margin-top:64rem}
  .ph__fvIn{height:540rem}
}
.cc{position:relative;z-index:1;padding:48rem 0 0}
.cc::before{position:absolute;inset:0 0 auto;z-index:-1;height:889rem;content:"";background:var(--c-bg2);clip-path:polygon(0 0,100% 0,100% 30%,0 100%)}
.cc__in{padding:0 20rem}
.cc__copy{display:flex;flex-direction:column;font-size:30rem;font-weight:700;line-height:1.35;color:var(--c-navy)}
.cc__txt{display:flex;flex-direction:column;gap:24rem;margin-top:40rem;font-size:14rem;font-weight:500;line-height:1.9;letter-spacing:.04em}
@media (min-width:768px){
  .cc{padding-top:77rem}
  .cc::before{height:1300rem}
  .cc__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin)}
  .cc__copy{grid-column:2/15;font-size:62px}
  .cc__txt{grid-column:15/24;gap:31px;margin-top:16px;font-size:18px;color:var(--c-navy)}
}
.pp{padding:0 20rem;margin-top:72rem;scroll-margin-top:90px}
.pp__in{padding:32rem 24rem;background:#fff}
.sh{display:flex;flex-direction:column;gap:8rem;color:var(--c-navy)}
.sh__jp{font-size:18rem;font-weight:700;line-height:1.3;letter-spacing:.04em}
.sh__en{font-family:var(--f-en);font-size:12rem;font-weight:700;line-height:1.2}
.pp__list{display:flex;flex-direction:column;gap:40rem;margin-top:40rem}
.pp__lt{display:flex;gap:8rem;align-items:center;color:var(--c-navy)}
.pp__lt b{font-family:var(--f-en);font-size:24rem;font-weight:600;line-height:1.2}
.pp__lt span{font-size:13rem;font-weight:700;letter-spacing:.04em}
.pp__desc{display:flex;flex-direction:column;gap:12rem;padding-top:17rem}
.pp__desc p{font-size:15rem;line-height:1.8;letter-spacing:.04em}
.pp__ul{display:flex;flex-direction:column;gap:12rem}
.pp__ul li{position:relative;padding-left:22rem;font-size:15rem;line-height:1.6;letter-spacing:.04em}
.pp__ul li::before{position:absolute;top:8rem;left:0;width:9rem;height:9rem;content:"";background:var(--c-navy);border-radius:50%}
.pp__ul li b{font-family:var(--f-en);color:var(--c-navy);margin-right:6rem}
.pp__sign{margin-top:16rem;font-size:14rem;text-align:right}
@media (min-width:768px){
  .pp{padding:0 var(--grid-margin);margin-top:176rem;scroll-margin-top:110px}
  .pp__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:88rem 0}
  .pp .sh{grid-column:2/24;gap:16px;padding-left:4rem}
  .sh__jp{font-size:28px}
  .sh__en{font-size:16px}
  .pp__list{grid-column:6/24;gap:44px;margin-top:64rem;margin-left:-4px}
  .pp__lt{gap:16px}
  .pp__lt b{font-size:40px}
  .pp__lt span{font-size:15px}
  .pp__desc{gap:15px;padding:28px 0 0 60px}
  .pp__desc p,.pp__ul li{font-size:16px}
  .pp__ul li::before{top:9px}
  .pp__sign{font-size:15px}
}
.po{margin-top:64rem;scroll-margin-top:90px}
.po__in{padding:0 20rem}
.po__list{display:flex;flex-direction:column;margin-top:40rem}
.po__item{display:flex;flex-direction:column;gap:8rem;padding:24rem 8rem;border-top:1px solid #ccc}
.po__item:last-child{border-bottom:1px solid #ccc}
.po__t{font-size:13rem;font-weight:700;line-height:1.6;color:var(--c-navy);letter-spacing:.03em}
.po__d{font-size:16rem;line-height:1.6;letter-spacing:.03em}
.po__d a{color:var(--c-link);text-decoration:underline;text-underline-offset:3px}
@media (min-width:768px){
  .po{margin-top:168rem;scroll-margin-top:110px}
  .po__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin)}
  .po .sh{grid-column:2/24;gap:16px}
  .po__list{display:grid;grid-template-columns:1fr 1fr;column-gap:16rem;grid-column:6/24;margin-top:0}
  .po__item{padding:32px 16rem 31px}
  .po__item:nth-last-child(2):nth-child(odd){border-bottom:1px solid #ccc}
  .po__t{font-size:15px}
  .po__d{font-size:18px}
}
.hs{margin-top:62rem;scroll-margin-top:90px}
.hs .sh{padding:0 20rem}
.hs__fig{margin-top:40rem;height:240rem;overflow:hidden}
.hs__fig img{width:100%;height:100%;object-fit:cover}
.hs__panel{padding:20rem 20rem 28rem;background:#fff}
.hs__list{display:flex;flex-direction:column}
.hs__row{display:grid;grid-template-columns:62rem 1fr;column-gap:10rem;padding:14rem 0;border-bottom:1px solid #ccc}
.hs__y{font-family:var(--f-en);font-size:16rem;font-weight:700;line-height:1.4;color:var(--c-navy)}
.hs__d{font-size:13rem;line-height:1.75;letter-spacing:.03em}
.hs__d small{display:block;margin-top:4rem;font-size:12rem;color:#555}
@media (min-width:768px){
  .hs{margin-top:148rem;scroll-margin-top:110px}
  .hs .sh{padding:0 var(--grid-margin) 0 calc(var(--grid-margin) + 63rem)}
  .hs__body{display:grid;grid-template-columns:1fr 914rem;margin-top:48px;align-items:start}
  .hs__fig{position:sticky;top:110px;height:640px;margin:0}
  .hs__panel{padding:38px 38px 38px 53px}
  .hs__row{grid-template-columns:110px 1fr;column-gap:20px;padding:18px 0}
  .hs__y{font-size:26px}
  .hs__d{font-size:15px}
  .hs__d small{font-size:13px}
}
.ac{margin-top:64rem;scroll-margin-top:90px}
.ac__in{padding:0 20rem}
.ac__body{margin-top:40rem}
.ac__txt{font-size:16rem;line-height:1.6;letter-spacing:.03em}
.ac__tel{margin-top:12rem;font-size:14rem;line-height:1.8}
.ac__map{position:relative;width:100%;padding-top:93%;margin-top:16rem;background:#dde2ea}
.ac__map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ac__gm{display:inline-block;margin-top:12rem;font-size:13rem;color:var(--c-link);text-decoration:underline;text-underline-offset:3px}
@media (min-width:768px){
  .ac{margin-top:168rem;scroll-margin-top:110px}
  .ac__in{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin)}
  .ac .sh{grid-column:2/24;gap:16px}
  .ac__body{grid-column:6/24;margin-top:0}
  .ac__txt{font-size:18px}
  .ac__tel{font-size:15px}
  .ac__map{padding-top:43%;margin-top:32px}
  .ac__gm{font-size:14px}
}
.gl{margin-top:64rem;scroll-margin-top:90px}
.gl .sh{padding:0 20rem}
.gl__grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:32rem}
.gl__grid figure{position:relative;aspect-ratio:4/3;overflow:hidden}
.gl__grid figure:first-child{grid-column:1/3;aspect-ratio:16/10}
.gl__grid img{width:100%;height:100%;object-fit:cover}
.gl__grid figcaption{position:absolute;left:0;bottom:0;padding:4rem 12rem 5rem;font-size:11rem;font-weight:500;color:#fff;background:var(--c-navy)}
@media (min-width:768px){
  .gl{margin-top:168rem;padding:0 var(--grid-margin);scroll-margin-top:110px}
  .gl .sh{padding:0 0 0 calc((100% - 22 * (100% - 23 * var(--grid-gutter)) / 24 - 22 * var(--grid-gutter)) / 2 + 0px)}
  .gl__grid{grid-template-columns:2fr 1fr 1fr;grid-template-rows:260rem 260rem;gap:6px;margin-top:48px}
  .gl__grid figure,.gl__grid figure:first-child{aspect-ratio:auto}
  .gl__grid figure:first-child{grid-row:1/3;grid-column:1}
  .gl__grid figure:nth-child(2){grid-column:2/4}
  .gl__grid figcaption{padding:6px 14px 7px;font-size:13px}
}
.lp{padding:0 0 80rem}
.lp__in{padding:0 20rem}
.lp__lead{margin-top:32rem;font-size:14rem;line-height:1.95;letter-spacing:.04em}
@media (min-width:768px){
  .lp{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin) 120px}
  .lp__in{grid-column:2/24;padding:0}
  .lp__lead{max-width:860px;margin-top:48px;font-size:16px}
}
.sec{padding:56rem 20rem;scroll-margin-top:90px}
.sec--w{background:#fff}
.sec__in{max-width:1180px;margin:0 auto}
.sec__h{position:relative;padding-bottom:28rem;font-size:22rem;font-weight:700;line-height:1.4;color:var(--c-navy);letter-spacing:.04em}
.sec__h small{display:block;margin-bottom:8rem;font-family:var(--f-en);font-size:13rem;font-weight:700;letter-spacing:.02em}
.sec__h::after{position:absolute;bottom:0;left:0;width:100%;height:4rem;content:"";background:var(--c-line)}
.sec__p{margin-top:28rem;font-size:14rem;line-height:1.9;letter-spacing:.04em}
.sec__note{margin-top:16rem;font-size:12rem;line-height:1.8;color:#555}
@media (min-width:768px){
  .sec{padding:96px var(--grid-margin) 110px calc(var(--grid-margin) + 63rem);scroll-margin-top:110px}
  .sec__in{max-width:none;margin:0;padding-right:63rem}
  .sec__h{padding-bottom:48px;font-size:32px}
  .sec__h small{margin-bottom:12px;font-size:16px}
  .sec__p{margin-top:40px;max-width:860px;font-size:16px}
  .sec__note{font-size:13px}
}
.fig{margin-top:32rem;padding:16rem;background:#fff;border-radius:4rem}
.sec--w .fig{background:var(--c-bg)}
.fig img{width:100%;height:auto;margin:0 auto}
.fig figcaption{margin-top:10rem;font-size:12rem;line-height:1.7;color:#555}
@media (min-width:768px){.fig{margin-top:48px;padding:40rem}.fig figcaption{font-size:13px}}
.g3{display:flex;flex-direction:column;gap:32rem;margin-top:32rem}
.card{display:flex;flex-direction:column;background:#fff;border-radius:4rem;overflow:hidden}
.sec--w .card{background:var(--c-bg)}
.card__img{aspect-ratio:4/3;overflow:hidden;background:#fff}
.card__img img{width:100%;height:100%;object-fit:cover}
.card__b{padding:20rem 22rem 26rem}
.card__k{display:inline-block;padding:1rem 8rem 2rem;font-size:11rem;font-weight:700;color:var(--c-navy-1);background:var(--c-tag);border-radius:4rem}
.card__h{margin-top:10rem;font-size:18rem;font-weight:700;line-height:1.45;color:var(--c-navy)}
.card__p{margin-top:10rem;font-size:13rem;line-height:1.8;letter-spacing:.03em}
.card__spec{display:flex;flex-direction:column;margin-top:14rem;border-top:1px solid #ccc}
.card__spec div{display:grid;grid-template-columns:7em 1fr;padding:8rem 0;border-bottom:1px solid #ccc;font-size:13rem}
.card__spec dt{font-weight:700;color:var(--c-navy)}
@media (min-width:768px){
  .g3{display:grid;grid-template-columns:repeat(3,1fr);gap:48rem;margin-top:56px}
  .g3--2{grid-template-columns:repeat(2,1fr)}
  .g3--4{grid-template-columns:repeat(4,1fr);gap:24rem}
  .card{border-radius:4px}
  .card__b{padding:24px 26px 30px}
  .card__k{font-size:12px;padding:1px 10px 2px}
  .card__h{font-size:20px}
  .card__p{font-size:14px}
  .card__spec div{font-size:14px}
}
.tbl{width:100%;margin-top:32rem;font-size:13rem;line-height:1.7;background:#fff}
.tbl-wrap{overflow-x:auto;margin-top:32rem}
.tbl-wrap .tbl{margin-top:0;min-width:640px}
.tbl th,.tbl td{padding:12rem 14rem;border:1px solid #c9d0db;text-align:left;vertical-align:top}
.tbl thead th{background:#d9dee5;font-weight:500;text-align:center;white-space:nowrap}
.tbl tbody th{background:#eff0f2;font-weight:700;color:var(--c-navy);white-space:nowrap}
.tbl .no{font-family:var(--f-en);font-weight:700;color:var(--c-navy);text-align:center;width:3em}
@media (min-width:768px){.tbl{font-size:15px;margin-top:48px}.tbl-wrap{margin-top:48px}.tbl th,.tbl td{padding:16px 20px}}
.flow{display:flex;flex-direction:column;gap:6rem;margin-top:32rem;counter-reset:fl}
.flow li{display:flex;align-items:center;gap:14rem;padding:14rem 18rem;background:#fff;border-radius:4rem;font-size:15rem;font-weight:500;color:var(--c-navy)}
.sec--w .flow li{background:var(--c-bg)}
.flow li b{flex-shrink:0;font-family:var(--f-en);font-size:13rem;font-weight:700;color:var(--c-link)}
.flow li.is-hl{background:var(--c-navy);color:#fff}
.flow li.is-hl b{color:#a9cdf4}
.flow__loop{margin-top:14rem;font-size:13rem;line-height:1.8;color:#444}
@media (min-width:768px){
  .flow{display:grid;grid-template-columns:repeat(var(--cols,7),1fr);gap:6px;margin-top:48px}
  .flow li{flex-direction:column;justify-content:center;gap:10px;min-height:150px;padding:20px 12px;text-align:center;font-size:16px;line-height:1.5}
  .flow li b{font-size:15px}
  .flow__loop{font-size:14px}
}
.fk{display:grid;grid-template-columns:1fr 1fr;gap:14rem 10rem;margin-top:28rem}
.fk__i{display:flex;flex-direction:column;background:#fff;border-radius:4rem;overflow:hidden}
.sec--w .fk__i{background:var(--c-bg)}
.fk__img{aspect-ratio:1/1;overflow:hidden}
.fk__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--e-out-expo)}
.fk__b{display:flex;align-items:center;justify-content:space-between;gap:6rem;padding:10rem 12rem 12rem}
.fk__n{font-family:var(--f-en);font-size:13rem;font-weight:700;line-height:1.3;color:var(--c-navy)}
.fk__pdf{flex-shrink:0;padding:2rem 7rem 3rem;font-family:var(--f-en);font-size:10rem;font-weight:700;color:#fff;background:var(--c-navy);border-radius:3rem}
@media (min-width:768px){
  .fk{grid-template-columns:repeat(6,1fr);gap:16rem;margin-top:48px}
  .fk__b{padding:12px 14px 14px}
  .fk__n{font-size:15px}
  .fk__pdf{font-size:11px;padding:2px 8px 3px}
}
@media (any-hover:hover){.fk__i:hover .fk__img img{transform:scale(1.08)}}
.mem{display:flex;flex-wrap:wrap;gap:8rem;margin-top:24rem}
.mem li{padding:6rem 12rem;font-size:13rem;background:#fff;border:1px solid #d5dbe4;border-radius:4rem}
.sec--w .mem li{background:var(--c-bg)}
@media (min-width:768px){.mem{gap:10px;margin-top:32px}.mem li{font-size:15px;padding:8px 16px}}
.btns{display:flex;flex-direction:column;align-items:center;gap:12rem;margin-top:36rem}
@media (min-width:768px){.btns{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:16px;margin-top:56px}.btns .btn{width:360px}}
.job{margin-top:32rem;background:#fff}
.job div{display:flex;flex-direction:column;gap:6rem;padding:18rem 18rem;border-bottom:1px solid #ccc}
.job dt{font-size:13rem;font-weight:700;color:var(--c-navy);letter-spacing:.03em}
.job dd{font-size:15rem;line-height:1.75}
@media (min-width:768px){.job{margin-top:48px}.job div{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:24px 32px}.job dt{font-size:15px}.job dd{font-size:16px}}
.ct{padding:0 20rem 80rem}
.ct__side{margin-top:40rem;display:flex;flex-direction:column;gap:24rem;font-size:13rem;line-height:1.9;letter-spacing:.03em}
.ct__side a{text-decoration:underline;text-underline-offset:3px}
.ct__tel{color:var(--c-navy)}
.ct__tel b{display:block;font-family:var(--f-en);font-size:30rem;font-weight:700;letter-spacing:.02em}
.form{display:flex;flex-direction:column;gap:35rem;margin-top:44rem}
.form label,.form .lb{display:flex;gap:8rem;align-items:flex-end;font-size:16rem;font-weight:500;line-height:1.4}
.form .req::after{color:var(--c-red);content:"※"}
.form__f{display:flex;flex-direction:column;gap:7rem}
.form input[type=text],.form input[type=email],.form input[type=tel],.form select,.form textarea{display:block;width:100%;padding:14rem 13rem;font-size:16rem;font-weight:500;line-height:1.3;letter-spacing:.06em;background:#fff;border:1px solid transparent}
.form textarea{min-height:200rem;line-height:1.6;letter-spacing:0}
.form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#333 50%),linear-gradient(135deg,#333 50%,transparent 50%);background-position:calc(100% - 22rem) 50%,calc(100% - 16rem) 50%;background-size:6rem 6rem;background-repeat:no-repeat}
.form input::placeholder,.form textarea::placeholder{color:#c0c0c0}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--c-pill);outline:none}
.form__radio{display:flex;flex-wrap:wrap;gap:12rem 22rem}
.form__radio label{font-size:15rem;font-weight:500;align-items:center;cursor:pointer}
.form__radio input{width:18rem;height:18rem;accent-color:var(--c-navy-1)}
.form__agree{font-size:14rem;line-height:1.8}
.form__agree a{text-decoration:underline}
.form__submit{display:flex;justify-content:center}
.form__submit button{width:280rem}
.formnote{padding:18rem 20rem;font-size:14rem;line-height:1.8;background:#fff;border-left:4px solid var(--c-navy)}
.formnote[hidden]{display:none}
@media (min-width:768px){
  .ct{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin) 140px}
  .ct__t{grid-column:2/24}
  .ct__side{grid-column:2/9;margin-top:72px;font-size:14px}
  .ct__tel b{font-size:34px}
  .ct__main{grid-column:10/24;margin-top:72px}
  .form{gap:36px;margin-top:0}
  .form label,.form .lb{font-size:16px}
  .form input[type=text],.form input[type=email],.form input[type=tel],.form select,.form textarea{padding:14px 16px;font-size:16px}
  .form textarea{min-height:220px}
  .form__radio label{font-size:15px}
  .form__agree{font-size:14px}
  .form__submit{justify-content:flex-start}
  .form__submit button{width:320px}
  .formnote{font-size:15px}
}
.pv{padding:0 20rem 80rem}
.pv__body{margin-top:40rem;padding:28rem 22rem;background:#fff}
.pv__body h2{margin-top:36rem;font-size:17rem;font-weight:700;color:var(--c-navy);line-height:1.5}
.pv__body h2:first-of-type{margin-top:28rem}
.pv__body p,.pv__body li{margin-top:12rem;font-size:14rem;line-height:1.9;letter-spacing:.03em}
.pv__body ol{padding-left:1.4em;list-style:decimal}
.pv__body li{margin-top:6rem}
.pv__sign{margin-top:36rem!important;text-align:right}
@media (min-width:768px){
  .pv{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);column-gap:var(--grid-gutter);padding:0 var(--grid-margin) 140px}
  .pv__t,.pv__body{grid-column:3/23}
  .pv__body{margin-top:72px;padding:64px 72px}
  .pv__body h2{font-size:20px}
  .pv__body p,.pv__body li{font-size:15px}
}
.step__i.is-hl{background:var(--c-navy)!important;color:#fff}
.step__i.is-hl .step__n{color:#fff}
.step__i.is-hl .step__n::after{background:rgba(255,255,255,.3)}
.subh{margin-top:48rem}
.po{position:relative;z-index:2}
.sec__h+.fx,.sec__h+.gl__grid{margin-top:32rem}
.sec--w .form input[type=text],.sec--w .form input[type=email],.sec--w .form input[type=tel],.sec--w .form select,.sec--w .form textarea{background:var(--c-bg)}
.sec .form{margin-top:32rem}
.gl__grid figure:last-child:nth-child(even){grid-column:1/3}
@media (min-width:768px){
  .subh{margin-top:72px}
  .sec__h+.fx,.sec__h+.gl__grid{margin-top:48px}
  .sec .form{margin-top:48px;max-width:860px}
  .gl__grid{grid-template-columns:repeat(3,1fr);grid-template-rows:none;grid-auto-rows:260rem}
  .gl__grid figure:first-child{grid-row:span 2;grid-column:span 2}
  .gl__grid figure:nth-child(2),.gl__grid figure:last-child:nth-child(even){grid-column:auto}
}
.tbl td:nth-child(3){white-space:nowrap}
.fk__n{overflow-wrap:normal}
@media (min-width:768px) and (max-width:1199px){
  .step{grid-template-columns:repeat(4,1fr)}
  .step__t{font-size:14px}
  .wpC,.uw__list,.rel__list{grid-template-columns:repeat(2,1fr)}
  .g3{grid-template-columns:repeat(2,1fr)}
  .g3--4{grid-template-columns:repeat(2,1fr)}
  .fk{grid-template-columns:repeat(4,1fr)}
  .fk__n{font-size:13px}
  .cc__copy{font-size:44px}
  .ct__side{grid-column:2/10}
  .ct__main{grid-column:11/24}
  .ct__tel b{font-size:26px}
}
@media (min-width:768px) and (max-width:1023px){
  .fx,.fx--r{flex-direction:column}
  .fx__img,.fx__t{width:100%}
  .c3{grid-template-columns:repeat(2,1fr)}
  .cpc__en{font-size:22px}
  .ph__t{grid-column:2/14}
  .ph__nav{grid-column:14/24}
  .uf__body{width:100%}
  .uf__img{display:none}
  .po__list{grid-column:2/24}
  .dt__in{flex-direction:column;padding:0 64rem 80px}
  .dt__thumb{width:100%;height:auto}
  .dt__thumbI{width:60%;height:auto;aspect-ratio:1/1}
  .dt__p{width:100%}
  .dt__cta{width:100%;max-width:428px}
  .flow{grid-template-columns:repeat(4,1fr)}
  .card__spec dd{white-space:nowrap}
}
.fk__i{position:relative}
.fk__pdf{position:absolute;top:8rem;right:8rem}
.fk__n{white-space:nowrap}
.cc__copy span{white-space:nowrap}
@media (min-width:768px){.fk__pdf{top:8px;right:8px}}
@media (min-width:768px) and (max-width:1399px){.step{grid-template-columns:repeat(4,1fr)}}
@media (min-width:768px) and (max-width:1199px){.flow{grid-template-columns:repeat(4,1fr)}.fx__h3{font-size:26px}}
@media (min-width:768px) and (max-width:1023px){.cc__copy{font-size:40px}}
