.top-renewal .header+main{padding-top:90px}.top-header{height:90px}.top-header__inner{width:calc(100% - 28px);max-width:none}.top-brand{position:relative;display:flex;flex-direction:column;justify-content:center;height:100%;padding-left:14px;color:#fff;line-height:1.15;margin-left: 1%;}.top-brand:before{content:"";position:absolute;inset:10px auto 10px 0;width:4px;background:var(--gold)}.top-brand__office{font-size:20px}.top-brand__name{margin-top:5px;font:600 20px "Noto Serif JP",serif;letter-spacing:.05em}.top-brand__name span{}.top-renewal .nav{top:90px}
.renewal-hero{position:relative;height:560px;overflow:hidden}.renewal-hero__background{position:absolute;inset:0}.renewal-hero__background img{width:100%;height:100%;object-fit:cover}.renewal-hero__inner{position:relative;z-index:2;width:min(calc(100% - 40px),1244px);height:100%;margin:auto;padding-top:70px}.renewal-hero h1{width:min(70%,520px);margin:0}.renewal-hero__inner p{margin:32px 0 0;font-size:13px;font-weight:500;line-height:2.1}.renewal-hero__portrait{position:absolute;right:0;bottom:0;width:70%;height:94%}.renewal-hero__portrait img{width:100%;height:100%;object-fit:contain;object-position:right bottom}
.renewal-section{padding:76px 0}.renewal-title{position:relative;margin:0 0 54px;font:500 36px/1.2 "Noto Serif JP",serif;letter-spacing:.05em;text-align:center}.renewal-title:after{content:"";position:absolute;left:50%;bottom:-25px;width:104px;height:4px;background:linear-gradient(90deg,var(--gold) 14%,var(--navy) 14% 86%,var(--gold) 86%);transform:translateX(-50%)}/* ショートコードのフィード全体を受ける枠。列数・画像比率はプラグイン側で管理する。 */
.renewal-sns__gallery{display:block;width:min(calc(100% - 40px),1300px);height:auto;margin:auto;overflow:visible}.renewal-sns__gallery>*{min-width:0;max-width:100%}
.renewal-origin{position:relative;padding:82px 0 100px;background:url("../images/top-new-03.png") center/100% 100% no-repeat}.renewal-origin__catch{display:block;width:min(100%,750px);margin:65px auto 45px}.renewal-origin__text{position:relative;z-index:1;max-width:900px;margin:auto;font:15px/2 "Noto Serif JP",serif;letter-spacing:.04em}.renewal-origin__text p{margin:0 0 1.45em}.renewal-origin__portrait{width:190px;margin:20px 0 -100px -20px}
.renewal-blog__lead{margin:-12px auto 38px;font:15px/2 "Noto Serif JP",serif;text-align:center}.renewal-blog__grid{display:grid;gap:22px}.renewal-blog article{border:1px solid #e1e4e8;background:#fff;box-shadow:0 8px 20px rgba(2,25,61,.08);transition:.3s}.renewal-blog article:hover{transform:translateY(-5px);box-shadow:0 16px 30px rgba(2,25,61,.15)}.renewal-blog article>a{display:flex;height:100%;padding:20px;flex-direction:column}.renewal-blog article b{align-self:flex-start;padding:5px 12px;color:#fff;background:var(--navy);font-size:12px}.renewal-blog time{margin-top:14px;color:var(--gold);font:14px "Noto Serif JP",serif}.renewal-blog h3{min-height:72px;margin:9px 0 5px;color:var(--navy);font:19px/1.55 "Noto Serif JP",serif}.renewal-blog article picture{height:220px;overflow:hidden;border-radius:5px}.renewal-blog article picture img{width:100%;height:100%;object-fit:cover}.renewal-blog article p{margin:20px 0;font:16px/1.85 "Noto Serif JP",serif}.renewal-blog article span{margin-top:auto;padding-top:15px;    padding-bottom: 10px;border-bottom:1px solid #ccd5df;color:var(--navy);font:14px "Noto Serif JP",serif}.renewal-button{display:flex;align-items:center;justify-content:center;width:min(calc(100% - 40px),400px);height:66px;margin:55px auto 0;color:#fff;background:var(--navy);border-radius:100px;font-weight:600;letter-spacing:.08em;transition:.3s}.renewal-button:hover{background:#0b2d5c;transform:translateY(-4px)}
.renewal-policy{padding:72px 0 64px}.renewal-policy>.renewal-title{margin-bottom:30px}.renewal-policy>picture{display:block;width:min(100%,1222px);margin:auto}.renewal-policy>picture img{width:100%;height:auto}.renewal-policy .renewal-button{position:relative;z-index:2;margin-top:-95px}.renewal-social{padding:28px 20px 70px}.renewal-social>div{position:relative;width:min(100%,1100px);margin:auto}.renewal-social picture img{width:100%}.renewal-social__qr{position:absolute;right:4.7%;top:20%;width:10.8%}.renewal-social a{position:absolute;top:0;height:100%}.renewal-social a:nth-of-type(1){left:0;width:32%}.renewal-social a:nth-of-type(2){left:33%;width:32%}.renewal-social a:nth-of-type(3){right:0;width:34%}
.renewal-footer{min-height:500px;padding-top:36px;color:#fff;background:var(--navy)}.renewal-footer__top{display:flex;flex-direction:column;gap:35px;width:calc(100% - 40px);margin:auto}.renewal-footer__office{margin:0;font-size:24px}.renewal-footer__name{margin:2px 0 22px;font:25px "Noto Serif JP",serif}.renewal-footer__name span{font-size:.6em}.renewal-footer address{font:normal 14px/1.7 "Noto Serif JP",serif}.renewal-footer nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0 20px}.renewal-footer nav a{padding:10px 0;border-bottom:1px solid #ffffff40}.renewal-footer__banners{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:calc(100% - 40px);margin:45px auto}.renewal-footer__banners>a{display:block}.renewal-footer__banners img{width:100%;height:70px;object-fit:contain}.renewal-footer .footer__copyright{position:static;margin:0;padding:14px 20px;border-top:1px solid #ffffff55;text-align:right}
@media(min-width:768px){.renewal-blog__grid{grid-template-columns:repeat(3,1fr)}.renewal-footer__top{flex-direction:row;justify-content:space-between}.renewal-footer nav{grid-template-columns:repeat(5,auto);align-content:start;gap:24px}.renewal-footer nav a{border:0}.renewal-footer__banners{grid-template-columns:repeat(5,1fr)}}
@media(min-width:1024px){.top-renewal .header+main{padding-top:131px}.top-header{height:131px}.top-renewal .nav{top:auto}.top-brand{padding-left:19px;}.top-brand__office,.top-brand__name{font-size:40px}.top-brand__name span{}.top-renewal .nav__link{font-size:16px}.renewal-hero{height:697px}.renewal-hero__inner{padding-top:185px}.renewal-hero h1{width:649px}.renewal-hero__inner p{margin-top:48px;font-size:20px;line-height:42px}.renewal-hero__portrait{width:630px;height:676px}.renewal-section{padding:103px 0}.renewal-title{font-size:48px}.renewal-origin{padding-top:103px}.renewal-origin__text{font-size:20px;line-height:40px}.renewal-origin__portrait{position:absolute;left:0px;bottom:0px;width:249px;margin:0}.renewal-blog__grid{width:min(calc(100% - 160px),1280px)}.renewal-policy{padding-top:60px}.renewal-footer__top{width:calc(100% - 102px)}.renewal-footer__office,.renewal-footer__name{font-size:40px}.renewal-footer__name span{font-size:20px}.renewal-footer__banners{width:min(calc(100% - 160px),1150px)}.renewal-footer__banners img{height:86px}}
.top-renewal .nav>li,.renewal-footer nav>li{display:contents}
@media(max-width:767px){.renewal-hero__portrait{opacity:.82}.renewal-hero__inner p{position:relative;z-index:3;width:90%;font-size:12px}.renewal-policy .renewal-button{margin-top:15px}.renewal-social__qr{position:static;display:block;width:120px;margin:15px auto}.renewal-social a{display:none}}

/* 政策：デザイン画像を一枚で置かず、カード単位で保守できる構造にする */
.renewal-policy{padding:80px 20px 72px;background:#fff;text-align:center}
.renewal-policy__inner{width:min(100%,1440px);margin:auto}
.renewal-policy>.renewal-title,.renewal-policy .renewal-title{margin-bottom:46px}
.renewal-policy__label{margin:0 0 34px;color:#0069d6;font-size:15px;letter-spacing:.42em}
.renewal-policy h3{margin:0;color:var(--navy);font:500 clamp(30px,3.2vw,52px)/1.4 "Noto Serif JP",serif;letter-spacing:.08em}
.renewal-policy h3 strong{font-size:1.9em;font-weight:500;background:linear-gradient(90deg,#0870dd,#0090bd,#00a16f);-webkit-background-clip:text;background-clip:text;color:transparent}
.renewal-policy__lead{margin:25px auto 44px;color:var(--navy);font:17px/2 "Noto Serif JP",serif}
.renewal-policy__cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.policy-card{--card-color:#0670e5;display:flex;min-height:405px;padding:24px 18px 27px;flex-direction:column;align-items:center;border:1px solid #dce3e9;border-radius:7px;background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(2,25,61,.025);transition:transform .35s,box-shadow .35s}
.policy-card--02{--card-color:#009855}.policy-card--03{--card-color:#ee2870}.policy-card--04{--card-color:#f47b00}.policy-card--05{--card-color:#7225cf}
.policy-card b{align-self:flex-start;margin-left:25%;color:var(--card-color);font:italic 500 34px/1 "Noto Serif JP",serif}
.policy-card i{position:relative;display:grid;width:142px;height:142px;margin:16px auto 17px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--card-color) 9%,white);box-shadow:0 10px 25px rgba(2,25,61,.06)}
.policy-card i:before{content:"";display:block;width:70px;height:70px;background:var(--card-color);mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.policy-card--01 i:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Crect x='6' y='6' width='12' height='12' rx='1.5'/%3E%3Cpath d='M9 1v5m3-5v5m3-5v5M9 18v5m3-5v5m3-5v5M1 9h5m-5 3h5m-5 3h5m12-6h5m-5 3h5m-5 3h5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Crect x='6' y='6' width='12' height='12' rx='1.5'/%3E%3Cpath d='M9 1v5m3-5v5m3-5v5M9 18v5m3-5v5m3-5v5M1 9h5m-5 3h5m-5 3h5m12-6h5m-5 3h5m-5 3h5'/%3E%3C/g%3E%3C/svg%3E")}
.policy-card--02 i:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M12 22V11M12 15C8 15 5 12 5 7c4 0 7 2 7 6M12 12c1-5 4-8 8-9 0 5-3 9-8 9'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M12 22V11M12 15C8 15 5 12 5 7c4 0 7 2 7 6M12 12c1-5 4-8 8-9 0 5-3 9-8 9'/%3E%3C/g%3E%3C/svg%3E")}
.policy-card--03 i:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M12 21S3 15 3 8.5C3 3 10 2 12 6c2-4 9-3 9 2.5C21 15 12 21 12 21Z'/%3E%3Cpath d='M12 8v7M8.5 11.5h7'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M12 21S3 15 3 8.5C3 3 10 2 12 6c2-4 9-3 9 2.5C21 15 12 21 12 21Z'/%3E%3Cpath d='M12 8v7M8.5 11.5h7'/%3E%3C/g%3E%3C/svg%3E")}
.policy-card--04 i:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M3 5c4-1 7 0 9 3v13c-2-3-5-4-9-3V5Zm18 0c-4-1-7 0-9 3v13c2-3 5-4 9-3V5Z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Cpath d='M3 5c4-1 7 0 9 3v13c-2-3-5-4-9-3V5Zm18 0c-4-1-7 0-9 3v13c2-3 5-4 9-3V5Z'/%3E%3C/g%3E%3C/svg%3E")}
.policy-card--05 i:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3 4 6 4 9s-1 6-4 9c-3-3-4-6-4-9s1-6 4-9Z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.35'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3 4 6 4 9s-1 6-4 9c-3-3-4-6-4-9s1-6 4-9Z'/%3E%3C/g%3E%3C/svg%3E")}
.policy-card span{font:600 24px/1.5 "Noto Serif JP",serif;letter-spacing:.03em}
.policy-card em{display:grid;width:55px;height:55px;margin-top:auto;place-items:center;border:2px solid var(--card-color);border-radius:50%;color:var(--card-color);font:normal 26px/1 sans-serif;transition:transform .3s}
.renewal-policy .renewal-button{margin-top:42px}

/* 公式SNS：各バナーを独立したリンクとして実装 */
.renewal-social{position:relative;z-index:1;padding:34px 20px 76px;background:#fff}
.renewal-social__links{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px;width:min(100%,1100px);margin:auto}
.renewal-social .social-button{position:relative;top:auto;display:flex;width:auto;height:auto;min-height:138px;padding:20px 28px;align-items:center;gap:22px;overflow:hidden;border-radius:8px;color:#fff;transition:transform .35s,box-shadow .35s}
.renewal-social .social-button:nth-of-type(1),.renewal-social .social-button:nth-of-type(2),.renewal-social .social-button:nth-of-type(3){left:auto;right:auto;width:100%;height:auto}
.social-button--facebook{background:linear-gradient(120deg,#054386,#1162a1)}
.social-button--instagram{background:linear-gradient(115deg,#8e28c6,#ee2874 52%,#ff922c)}
.social-button--line{background:linear-gradient(115deg,#00bf53,#00cb69)}
.social-button__icon{display:grid;flex:0 0 72px;height:72px;place-items:center;color:inherit}
.social-button__icon--facebook{border-radius:50%;background:#fff;color:#10528d;font:bold 67px/1 Arial;align-items:end}
.social-button__icon--instagram{position:relative;width:66px;height:66px;border:6px solid #fff;border-radius:17px}
.social-button__icon--instagram:before{content:"";width:24px;height:24px;border:5px solid #fff;border-radius:50%}
.social-button__icon--instagram:after{content:"";position:absolute;right:8px;top:8px;width:8px;height:8px;border-radius:50%;background:#fff}
.social-button__icon--line{position:relative;border-radius:50%;background:#fff;color:#00b84f;font:bold 17px Arial}
.social-button__icon--line:after{content:"";position:absolute;left:10px;bottom:0;border:12px solid transparent;border-top-color:#fff;transform:rotate(28deg)}
.social-button__copy{display:flex;min-width:0;flex-direction:column;text-align:left}
.social-button__copy b{font:500 29px/1.25 "Noto Serif JP",serif;letter-spacing:.04em}
.social-button__copy small{margin-top:8px;font:14px/1.4 "Noto Serif JP",serif}
.social-button__arrow{margin-left:auto;font:48px/1 sans-serif;transition:transform .3s}
.social-button--line img{width:104px;height:104px;margin-left:auto;border:8px solid #fff;border-radius:8px;object-fit:cover;background:#fff}
.social-button--facebook:after,.social-button--instagram:after{content:"";position:absolute;right:18px;top:-24px;width:2px;height:190px;background:rgba(255,190,36,.9);transform:rotate(27deg);transform-origin:center}
.social-button--facebook .social-button__arrow,.social-button--instagram .social-button__arrow{position:relative;z-index:1;margin-right:18px}
.social-button--line img{padding-left:0;border:8px solid #fff;border-radius:8px;box-shadow:-18px 0 0 -17px rgba(255,255,255,.65)}

/* 「記事を読む」の矢印のみ赤にする */
.renewal-blog article span{font-size:0}
.renewal-blog article span:before{content:"記事を読む";color:var(--navy);font:14px "Noto Serif JP",serif}
.renewal-blog article span:after{content:"›";margin-left:14px;color:#cf0018;font:22px/1 "Noto Serif JP",serif}

@media(max-width:1023px){
  .renewal-policy__cards{grid-template-columns:repeat(2,1fr)}
  .policy-card:last-child{grid-column:1/-1;width:calc(50% - 8px);justify-self:center}
  .renewal-social__links{grid-template-columns:1fr}
}
@media(max-width:767px){
  .renewal-policy{padding:65px 20px 58px}
  .renewal-policy h3{font-size:28px}.renewal-policy h3 strong{display:block;margin-top:5px;font-size:1.65em}
  .renewal-policy__lead{font-size:14px;text-align:left}.renewal-policy__lead br{display:none}
  .renewal-policy__cards{grid-template-columns:1fr;gap:12px}
  .policy-card,.policy-card:last-child{width:100%;min-height:265px;grid-column:auto;padding:20px}
  .policy-card b{margin-left:8%;font-size:29px}.policy-card i{width:105px;height:105px;margin:5px auto}.policy-card i:before{width:55px;height:55px}
  .policy-card span{font-size:20px}.policy-card em{width:44px;height:44px;font-size:21px}
  .renewal-social a{display:flex}
  .social-button{min-height:112px;padding:16px;gap:15px}.social-button__icon{flex-basis:58px;height:58px}
  .social-button__icon--facebook{font-size:54px}.social-button__icon--instagram{width:54px;height:54px;border-width:5px}
  .social-button__copy b{font-size:23px}.social-button__copy small{font-size:12px}
  .social-button--line img{width:78px;height:78px;margin-left:auto;border-width:5px}
  .renewal-origin {
    background: url(../images/top-new-03.png) bottom / 100% auto no-repeat;
}
}
